লিনাক্সের কমান্ড লাইন থেকে কীভাবে ওসিআর ব্যবহার করবেন?


30

আমার স্ক্যান করা বইয়ের পৃষ্ঠা কয়েক হাজার পৃষ্ঠা রয়েছে। প্রতিটি পৃষ্ঠা পৃথকভাবে একটি জেপিজি হিসাবে সংরক্ষণ করা হয়। লেখাটি পরিষ্কার, তবে হরফগুলি পরিবর্তিত হয় এবং পৃষ্ঠাগুলিতে ছবি এবং চিত্রগুলি অন্তর্ভুক্ত থাকে।

প্রতিটি জেপিজি ফাইলে উপস্থিত সমস্ত শব্দের একটি তালিকা তৈরি করতে হবে। শব্দগুলি প্রদর্শিত হচ্ছে এমন একটি চিত্র স্ক্যান করার জন্য একটি কমান্ড লাইন সরঞ্জাম আছে? এটি নিখুঁত স্ক্যানিং করার দরকার নেই, কেবল একটি অনুমান।


github.com/tesseract-ocr/tesseract/wiki/Command-Line-Uageage - এটি অক্রমিপডিএফ এর পিছনে ইঞ্জিন এবং সাধারণভাবে, আপনাকে আপনার সেটআপে কম পদক্ষেপ নিতে দেয়।
ওকাদ


2
সদৃশটি কিছুটা পুরানো, নতুন জিনিস থাকতে পারে। আমি ভোট খোলা ছেড়ে দেব।
আরচেমার

উত্তর:


25

টেস্টেরাক্ট সম্ভবত এখানে সর্বাধিক ব্যবহৃত সমাধান। এটি বেশিরভাগ প্যাকেজ সংগ্রহস্থলে পাওয়া যায়, যেমন,

sudo apt install tesseract-ocr

এবং ব্যবহার করা যেতে পারে

tesseract input.png out.txt

19

ইনস্টল করুন imagemagick, pdftotext(নামে একজন প্যাকেজে পাওয়া poppler-utilsএবং কিছু প্যাকেজ ম্যানেজার মধ্যে) ocrmypdf । পরেরটি একটি দ্রুত (ওসিআর প্রচুর সিপিইউ নেয় এবং এটি আপনার সমস্ত কোর ব্যবহারের জন্য কনফিগার করা হয়), ওপেন সোর্স এবং ওসিআর সফ্টওয়্যারটির প্রায়শই আপডেট হওয়া টুকরা। এই পদ্ধতির সম্ভবত অতিরিক্ত দক্ষতা রয়েছে কারণ এটি কেবল একটি শব্দের উপর লেবেল না দিয়ে কেবল প্রতিটি শব্দের একটি স্ট্রিং নির্ধারণ করার চেষ্টা করে তবে সাধারণভাবে ওপেনসোর্স ওসিআর সফ্টওয়্যারটি ব্যবহার করার জন্য ভাল এবং সহজেই খুঁজে পেতে আমার অনেক সমস্যা হয়েছিল। তারপরে, যে ডিরেক্টরিটিতে আপনি আপনার সমস্ত জেপিজি সংরক্ষণ করেছেন:

$ convert *.jpg pictures.pdf
$ ocrmypdf pictures.pdf scanned.pdf
$ pdftotext scanned.pdf scanned.txt
$ wc -w scanned.txt

2
নতুনভাবে, এটি নীচে উল্লিখিত পরীক্ষামূলক ব্যবহার করে।
এক্সিক

ocrmypdfআমার দিনটি তৈরি করেছে
প্রতিদিনের নভোচারী

প্রথমে পিডিএফ রূপান্তর করার ধারণাটি বোকামি। আমি কেন একটি জেপিজি ফাইল ইনপুট করে কিছু কাঁচা টেক্সট বের করতে পারি না?
মাইকেল

আপনার জন্য সমস্ত কমান্ড লাইনগুলি করতে আপনি একটি ব্যাশ ফাইল ব্যবহার করতে পারেন।
প্রজেক্টএমবি

7

Upscale image file.png 480% দ্বারা, গ্রেস্কেলতে পরিবর্তন করুন, সাদা দিয়ে ব্যাকফিল করুন, তীক্ষ্ণ করুন এবং তারপরে টেসেরাক্ট ওসিআর ব্যবহার করে এক্সট্রাক্ট করুন। এটি আমার জন্য বেশিরভাগ সময় ভালভাবে কাজ করে, খুব বড় ফন্ট বাদে এবং কালো রঙের উপর সাদা। হরফ যদি খুব বড় হয় তবে কেবল 200% বা 300%।

 convert -colorspace gray -fill white  -resize 480%  -sharpen 0x1  file.png file.jpg
 tesseract file.jpg file

ফলাফলটি file.txt এ।


এটি হ'ল ছোট্ট ফন্টের আকারের সাথে অ-ইংরাজী পাঠ্যের খুব ছোট্ট টুকরো নিয়ে আমার পক্ষে কাজ করেছিল। অ্যামেজিং।
এভিও


0

টি এল; ডিআর

for i in /path_to/*.jpg;do ./myocr.sh $i $(basename $i .jpg);done

#!/bin/bash
# PROGRAM=myocr.sh
if [ "$1" ] && [ -e "$1" ]; then
  TMPF=$(mktemp myocr.sh.XXXXXXXX.tif)
  DEST="$2"
  if [ ! "$DEST" ]; then
    DEST="${1%.*}.txt"
    if [ -e "$DEST" ]; then
      echo "$DEST already exists; please provide a new textfile name" >&2
      exit 1
    fi
  fi
  /usr/bin/convert "$1" -colorspace Gray -depth 8 -resample 200x200 -flatten -alpha Off $TMPF \
  && /usr/bin/tesseract $TMPF "$DEST"
  EX=$?
  /bin/rm -f $TMPF
  [ $EX -eq 0 ] && [ "$TERM" ] && echo "created $DEST"
  exit $EX
else
  echo "Usage: $0 imagefile [textfile]" >&2
  echo " creates a plain text file with the text found in imagefile" >&2
  exit 1
fi

সূত্র: https://help.ubuntu.com/commune/OCR

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.