Tesseract OCR: Instalimi dhe Përdorimi në Ubuntu 16.04
Tesseract është një nga motorët më të fuqishëm OCR me burim të hapur në dispozicion sot. OCR qëndron për njohjen optike të karaktereve. Ky është procesi i nxjerrjes së teksteve nga imazhet. Për shembull, merrni parasysh imazhin e mëposhtëm që ka një tekst në të që duhet të nxirret jashtë:
Dalja nga motori OCR, pasi të kryhet një përpunim do të jetë diçka e tillë:
Open
Access
Button
Kështu funksionon OCR. Është i dobishëm në shumë aplikacione si njohja e targave të automjeteve, konvertimi i kopjeve të skanuara të dokumenteve në format Word, nxjerrja automatike e detajeve nga faturat, etj. Ai gjithashtu përbën hapin e parë në shumë detyra të Përpunimit të Gjuhës Natyrore. Në këtë tutorial, ne do të shqyrtojmë se si të instalojmë dhe konfigurojmë shpejt Tesseract, imagemagick dhe si t'i përdorim ato për të marrë rezultatet më të mira të mundshme me përpunimin paraprak të imazheve.
Përpunimi paraprak i imazhit është një pjesë e rëndësishme e kryerjes së OCR me Tesseract. Kjo siguron që saktësia e tekstit të nxjerrë është e lartë dhe redukton gabimin. Ne do të kalojmë nëpër disa operacione bazë për të kryer imazhin duke e përdorur atë. Imagemagick është një mjet i bazuar në linjën e komandës për përpunimin e imazhit, që na ndihmon të kryejmë operacione si prerja, ndryshimi i madhësisë, ndryshimi i skemave të ngjyrave, etj.
1 Instaloni Tesseract
Është shumë e thjeshtë për të instaluar tesseract, ekzekutoni komandat e mëposhtme:
sudo apt update sudo apt install tesseract-ocr
Kjo instalon motorin Tesseract. Imazhi më poshtë tregon daljen kur është instaluar saktë:
Gjëja tjetër që duhet të bëni është të instaloni paketat e gjuhës. Tesseract është shumë i fortë dhe mund të nxjerrë mbi 100 gjuhë të ndryshme, me kusht që të shkarkohen paketat e gjuhëve. Ju mund të shkarkoni një paketë të veçantë gjuhësore duke përdorur komandën e përgjithshme më poshtë:
sudo apt-get install tesseract-ocr-[lang]
Në komandën e mësipërme, zëvendësoni \[lang]\ me gjuhën që dëshironi të shkarkoni. Shembujt për anglisht dhe frëngjisht janë më poshtë:
sudo apt-get install tesseract-ocr-eng sudo apt-get install tesseract-ocr-fra
Zakonisht, tesseract vjen me paketën angleze si parazgjedhje. Imazhi më poshtë tregon se anglishtja ishte instaluar tashmë dhe frëngjishtja duhej të shkarkohej dhe instalohej:
Përndryshe, nëse dëshironi të shkarkohen të gjitha paketat e gjuhëve, mund të ekzekutoni komandën e mëposhtme:
sudo apt-get install tesseract-ocr-all
Kjo përfundon instalimin e Tesseract.
2 Instalo Imagemagick Ekzekutoni komandën e mëposhtme për të instaluar imagemagick
sudo apt install imagemagick
Ky mjet përdoret nga linja e komandës duke përdorur komandën konvertim. Për të kontrolluar instalimin e saktë, ekzekutoni komandën e mëposhtme dhe dalja duhet të jetë e ngjashme me imazhin më poshtë:
convert -h
3 Përdorimi Tesseract
Tesseract është i aftë të marrë imazhe të shumë formateve të ndryshme si jpg, png, tiff, etj dhe të nxjerrë tekst prej tij. Ky seksion fokusohet në ekzekutimin e tesseract dhe në seksionin tjetër, do të shohim se si mund të përmirësojmë saktësinë. Këtu janë disa komanda themelore për të ekzekutuar tesseract:
Për të marrë daljen në terminal, ekzekutoni komandën e përgjithshme me shtegun e figurës
tesseract [rruga_image] stdout
Për të ruajtur daljen OCR në një skedar, ekzekutoni komandën e përgjithshme të mëposhtme:
tesseract [image_path] [file_name]
Pas dy imazheve, tregoni imazhin e përdorur dhe rezultatin e ekzekutimit të komandave të mësipërme në atë imazh
Siç mund ta shihni, ekzekutimi i komandës së dytë ka çuar në krijimin e një skedari të quajtur \outfile.txt\ në të cilin mund të gjendet dalja.
4 Përpunimi paraprak i imazhit
Nga dalja e mëparshme, mund të keni vërejtur se ka një gabim në dalje, dhe gjithashtu një gabim duke thënë se madhësia e pikselëve është e vogël. Ky është një nga disavantazhet e Tesseract, ai pret që ju të jepni një imazh të përpunuar në të cilin mund të kryejë OCR. Në këtë pjesë, ne do të shqyrtojmë disa nga taktikat që mund të përdorni me ndihmën e imagemagick për të përmirësuar cilësinë e imazhit dhe për të rritur saktësinë e daljes.
4.1 ndryshimi i madhësisë
Ndryshimi i madhësisë është një nga truket më të dobishme për të përmirësuar saktësinë e OCR. Kjo është për shkak se në shumicën e rasteve imazhet, kanë madhësi shumë të vogël të shkronjave, të cilat nuk mund të lexohen siç duhet nga Tesseract. Ju mund të ndryshoni madhësinë e një imazhi duke përdorur komandën e mëposhtme. Shuma e përqindjes tregon kufirin e ndryshimit të madhësisë. Meqenëse duam të rrisim madhësinë, duhet të japim një vlerë më të madhe se 100. Këtu, ne kemi dhënë një vlerë prej 150% (përdor një metodë prove dhe gabimi për të përcaktuar përqindjen perfekte të ndryshimit të madhësisë për rastin tuaj të përdorimit).
convert -resize 150% [input_file_path] [output_file_path]
në komandën e mësipërme, zëvendësoni [input_file_path] me shtegun e imazhit që duhet të ndryshohet përmasat dhe [output_file_path] me shtegun e imazhit ku duhet të ruhet dalja. Imazhi i mëposhtëm është dalja kur ekzekutova komandën: convert -resize 150% image7.png image7_resize.png
4.2 Përdorni imazhe në shkallë gri
Nëse keni një imazh me ngjyrë, atëherë këshillohet që fillimisht ta shndërroni atë në shkallë gri. Ekziston një shans i mirë që vetëm kjo të jetë e mjaftueshme për të marrë saktësinë OCR që dëshironi. Përndryshe, për të përpunuar më tej, mund të përdorni imazhet në shkallë gri për të binarizuar imazhin. Përdorni komandën e mëposhtme për të kthyer imazhin tuaj për ta kthyer atë në shkallë gri
convert [input_file_path] -type Grayscale [output_file_path]
Imazhi i mëposhtëm tregon daljen për ekzekutimin e komandës convert image6_resize.png -type Grayscale image6_gray.png
4.3 Binarizimi i imazhit
Binarizimi ose pragu përfshin konvertimin e imazhit në vlerat e bardha dhe të zeza. Çdo piksel në këtë imazh ka vetëm një nga dy vlerat, të zezë ose të bardhë. Kjo redukton në mënyrë drastike kompleksitetin e imazheve. Nëse keni imazhe me zhurmë ose imazhe me hije, ose shumë tekst, mund të përdorni këtë metodë të parapërpunimit. Për të binarizuar këtë imazh, sigurohuni që së pari të keni një imazh në shkallë gri dhe më pas përdorni komandën e mëposhtme:
convert [input_file_path] -threshold 55% [output_file_path]
Përqindja e pragut mund të ndryshohet për të marrë rezultatin më të mirë për rastin tuaj të përdorimit. Imazhi më poshtë tregon një shembull. Është e rëndësishme të theksohet se për imazhin në fjalë, Binarizimi nuk është alternativa më e mirë pasi humb disa të dhëna.
Pikat e mëposhtme duhet të mbahen parasysh përpara se të aplikoni ndonjë ose të gjitha teknikat e para-përpunimit të përmendura më sipër:
- Në varësi të rastit të përdorimit, një ose një kombinim i hapave të parapërpunimit do të jetë i dobishëm.
- kur një hap i para-përpunimit çon në uljen e saktësisë, ai duhet të injorohet nga hapat e para-përpunimit.
- Përqindjet gjatë ndryshimit të madhësisë ose pragut ndryshojnë nga imazhi në imazh, dhe për këtë arsye duhet të zbatohet një metodë prove dhe gabimi për të marrë vlerën më të mirë të mundshme të përqindjes për të dhënë saktësinë më të lartë kur ekzekutohet Tesseract
Pasi të keni përfunduar parapërpunimin, ekzekutoni Tesseract me imazhin e përpunuar për të kontrolluar saktësinë. Tesseract është shumë i fuqishëm, por ka disa kufizime kur bëhet fjalë për llojin e imazhit që jepet si hyrje. Shpresoj se e keni gjetur të dobishëm këtë tutorial.