OCR alətlərinin müqayisəsi: layihəniz üçün ən yaxşı vasitəni necə seçmək olar

Optik xarakter tanıma (qısa: OCR), şəkillərdən mətnin avtomatik çıxarılması vəzifəsidir. Hal-hazırda, istifadəsi asan olan və bu vəzifəni heç düşünməyən hala gətirən müxtəlif vasitələr və xidmətlər mövcuddur. Bu blog yazıda ən populyar dörd vasitəni müqayisə edəcəyəm:

  1. Tesseract OCR
  2. ABBYY FineReader
  3. Google Cloud Vision
  4. Amazon Textract

Onlardan necə istifadə edəcəyimi göstərəcəyəm və güclü və zəif tərəflərini bir sıra vəzifələrdəki performanslarına görə qiymətləndirəcəyəm. Bu yazını oxuduqdan sonra layihənizin ehtiyaclarına uyğun bir OCR alətini seçib tətbiq edə biləcəksiniz.

Qeyd edək ki, təsadüfən mətn olan hər hansı bir görüntüdən fərqli olaraq diqqətimizi yalnız sənəd görüntüləri üçün məhdudlaşdırırıq.

Bu sənəd görüntüsü deyil.

İndi OCR motorlarını qiymətləndirmək üçün istifadə edəcəyimiz sənəd şəkillərinə nəzər salaq.

Test şəkillərimiz

Sənəd şəkilləri müxtəlif formalarda və keyfiyyətlərdə olur. Bəzən onlar taranır, digər vaxtlar əl cihazları tərəfindən tutulur. Çap olunmuş mətndən başqa, əlyazma və qutular və masalar kimi struktur elementlər də ola bilər. Beləliklə ideal OCR aləti olmalıdır

  • yaxşı taranmış mətni etibarlı şəkildə tanıyın,
  • pis görüntü keyfiyyətinə və əl yazısına qarşı möhkəm olun,
  • sənədin formatı və quruluşu barədə məlumat.

Yadda saxladığımız bu ön şərtlərlə OCR alətlərini aşağıdakı dörd görüntü üzərində sınayacağıq:

Skan edilmiş e-poçt, əl ilə yazılmış məktub.Smartfon ələ keçirən elektron poçt, skan edilmiş masa.

Bütün görüntülər Tütün sənayesi sənədlərinin böyük bir korpusundan gəlir. Üçüncüsü çap edildi və sonra adi bir səs-küy təqdim edən bir smartfon tərəfindən tutuldu.

Əvvəlcə Tesseract OCR bu vəzifələrə necə uyğun gəldiyini araşdıracağıq.

Tesseract OCR

Tesseract'ın ən yaxşısı, pulsuz və istifadəsi asan olmasıdır. Əsasən bir əmr satırı vasitəsidir, eyni zamanda pytesseract adlı bir Python sarğı və GUI cəbhəsi gImageReader var, buna görə məqsədlərinizə ən uyğun olanı seçə bilərsiniz.

Komanda xətti alətindən istifadə etmək asandır

tesseract xəyal adı çıxış bazası [çıxış formatı]

Çıxış formatını göstərməsək, tanımadığı simvolları ehtiva edən bir mətn faylıdır. Alternativ olaraq, pdf, axtarış edilə bilən pdf və xarakteristik mövqelər (əlavə olaraq eyni adla gedən XML standartında) kimi əlavə məlumatları ehtiva edən XML fayllarını çıxaracaqdır. Daha çox əlavə arqumentlər üçün buraya baxın.

Tesseractın test görüntülərimizdə tapdıqları budur:

Tesseract: skan edilmiş elektron poçt, əl ilə yazılmış məktub.Tesseract: smartfon tərəfindən ələ keçirilən e-poçt - heç bir nəticə yoxdur, skan edilmiş masa.

Diqqət etdiyiniz kimi, Tesseract OCR yaxşı skan edilmiş e-poçtdakı mətni olduqca yaxşı tanıyır. Ancaq əlyazma məktubu və smartfon ələ keçirilən sənədə gəldikdə, cəfəngiyat və ya sözün əsl mənasında heç bir şey çıxmır.

Cədvəl görüntüsünün çıxışı üçün yuxarıda göstərilən GUI cəbhəsində gImageReader istifadə etdim. Məlum olur ki, Tesseract, mətn olan görüntü sahələri üçün bağlayıcı qutuları çıxarır, lakin bu da düzgün cədvəl hasilatına yaxınlaşmır. Əlbəttə ki, Tesseract məhsulunu öz masa çıxarış vasitənizlə emal edə bilərsiniz. Texniki sənədlərə OCR tətbiq etmək və məktublardan tarix çıxarmaq barədə blog yazılarımız necə bir fikir verir.

ABBYY FineReader

ABBYY OCR ilə əlaqəli bir sıra məhsullar təklif edir. ABBYY Cloud OCR SDK API istifadə edəcəyəm. Bu bulud xidməti ABBYY FineReader OCR mühərrikindən istifadə edir, bu da yerli olaraq quraşdırıla bilər. Tesseract-dan fərqli olaraq, ABBYY Cloud OCR pulsuz deyil (qiymət).

API-dən necə istifadə etməyi öyrənmək istəyirsinizsə, bu sürətli başlanğıc təlimatlarında bilmək üçün lazım olan hər şeyi tapa bilərsiniz.

Yenə də OCR çıxış formatı ilə əlaqədar fərqli seçimlərimiz var. Tesseract tərəfindən təmin edilənlərdən başqa, ABBYY-dən XLSX elektron tablolar çıxartmağı xahiş edə bilərik. Bu seçimi masamızın görüntüsü üçün istifadə edəcəyəm.

ABBYY: skan edilmiş elektron poçt, əl ilə yazılmış məktub.ABBYY: smartfon ələ keçirilmiş elektron poçt, skan edilmiş masa.

ABBYY FineReader yaxşı taranmış e-poçt ilə problem yaşamır və smartfon ələ keçirən sənəddə kifayət qədər yaxşı deyil. Əllə yazılmış sənəddə tamamilə uğursuz olur.

Əsas fəzilət cədvəlin çıxarılması qabiliyyətidir: son şəkildəki kimi gördüyünüz kimi, çıxış cədvəl quruluşunu qoruyur. XML çıxışı ilə yaxından tanış olmaq FineReader-in cədvəl bölmələrini və fərdi hüceyrələri həqiqətən tanıdığını və hətta şrift üslubu kimi detalları çıxartdığını göstərir (ABBYY-nin XML sxeminin təsviri üçün buraya baxın).

Google Cloud Vision

Sonrakı yerdə API vasitəsilə istifadə edəcəyimiz Google Cloud Vision var. FineReader kimi, pullu bir xidmətdir (qiymət).

Cloud Vision API istifadə ABBYY'nin API və ya Tesseract istifadə etməkdən daha çətin bir şeydir. Bunun necə işlədiyini öyrənmək üçün burada və burada yaxşı başlanğıc nöqtələri tapırsınız.

Aşağıdakı nəticəni alırıq:

Google: skan edilmiş e-poçt, əl ilə yazılmış məktub.Google: smartfon ələ keçirilmiş elektron poçt, skan edilmiş masa.

Google skan edilmiş e-poçtda yaxşı işləyir və ABBYY-də olduğu kimi, smartfon tərəfindən ələ keçirilən sənəddəki mətni də tanıyır. Ancaq ikinci nəticə görüntüsündə göstərildiyi kimi əl yazısını tanımaqda Tesseract ya da ABBYY-dən daha yaxşıdır: hələ mükəmməldən çox uzaqdır, amma heç olmasa bəzi şeyləri düzəldir. Digər tərəfdən, Google Cloud Vision masaları çox yaxşı idarə etmir: Mətni çıxarır, amma bu barədə.

Əslində, orijinal Cloud Vision çıxışı, xarakter mövqeləri haqqında məlumat olan JSON sənədidir. Tesseract'a gəldikdə, bu məlumatlara əsaslanaraq cədvəlləri aşkarlamağa cəhd edə bilərsiniz, lakin yenə də bu funksiya qurulmamışdır.

Qeyd edək ki, hazırda AI beta versiyasını başa düşən Google Sənəd Anlayışı var, bu nöqtədə sınaqdan keçirməmişik.

Amazon Textract

Son namizədimiz də ödənişli bulud əsaslı bir həlldir (qiymət).

Sınaq məqsədləri üçün süründürmə və açılan brauzer interfeysi ilə rahatlıqla Çıxarışdan istifadə edə bilərsiniz, lakin istehsal hazır tətbiqetmələr üçün, ehtimal ki, verilən API-dən istifadə etmək istəyəcəksiniz.

Brauzer interfeysindən istifadə edərək çıxıntıları çıxarın

  • JSON faylı olaraq API cavabı,
  • xam mətni,
  • ayrı CSV fayllarında aşkar edilmiş cədvəllər,
  • açar dəyər cütləri (girişi bir forma kimi şərh edir), həmçinin CSV faylı.

Bunlar bizə aşağıdakı nəticələr verir:

Amazon: skan edilmiş elektron poçt, əl ilə yazılmış məktub.Amazon: smartfon ələ keçirilmiş elektron poçt, skan edilmiş masa.

Əvvəllər olduğu kimi, e-poçt da yaxşı görünür, amma görünür Textract əlyazma mətnlərini çox yaxşı idarə etmir. Bundan əlavə, smartfon ələ keçirmiş sənəd ilk baxışdan yaxşı görünsə də, Amazon-un OCR xətləri (sənəd görüntüsünün əyriliyi səbəbindən) qarışdırdığını göstərir.

Cədvəlli sənəd üçün yalnız müəyyən edilmiş üç cədvəldən birini göstəririk. Ancaq bəzi sütun başlıqlarının olmaması və bəzi nömrələrin səhv yerlərdə olması artıq görünür.

Nəticə

Bu cədvəl testlərimizin nəticələrini yekunlaşdırır:

Sözlərdə əsas götürmə yolları:

  • Maşınla yazılmış və yaxşı taranmış sənədlərlə və ya bəlkə də metadata sahib olmayan PDF sənədləri ilə məşğul olsanız, ticarət xidmətləri daha etibarlı olmasına baxmayaraq Tesseract OCR bu işi edə bilər.
  • Əllə yazılmış simvolların tanınması sizin üçün vacibdirsə, Google Cloud Vision bu gündən etibarən sınananlar arasındakı yeganə məqbuldur.
  • Sənədin görüntü keyfiyyəti pisdirsə, həm ABBYY FineReader, həm də Google Cloud Vision hələ də yaxşı bir iş görür.
  • Məqsədiniz cədvəlli məlumat çıxarmaqdırsa, ABBYY FineReader seçmək istəyə bilərsiniz.

Əvvəlcə 20 yanvar 2020-ci ildə https://dida.do saytında yayımlandı.