OCR Motoru Nasıl Çalışır?
Yayınlanan: 2022-08-06Taranan belgelerden, kamera görüntülerinden ve yalnızca görüntü içeren PDF'lerden veri çıkarmak ve yeniden kullanmak zor olabilir.
Ancak, teknolojik olarak gelişmiş bir ML tabanlı OCR motoru, görevi verimli bir şekilde gerçekleştirebilir.
Bu makale, bir OCR motorunun nasıl çalıştığını ve OCR SDK'nın neden ihtiyaçlarınıza uygun olabileceğini tartışacaktır.
Optik Karakter Tanıma (OCR) Nedir?
OCR – Optik Karakter Tanıma – bir metin görüntüsünü yapay zeka destekli, makine tarafından okunabilen bir metin formatına dönüştürür.
OCR, basit taramalara göre çok büyük avantajlara sahiptir çünkü bir metin düzenleyici kullanarak görüntü dosyasındaki sözcükleri düzenleyemez, arayamaz veya sayamazsınız.
Ancak OCR, görüntüyü bir metin belgesine dönüştürebilir ve içeriğini metin verisi olarak saklayabilir.
OCR Motorunun Önemi Nedir?
Bugün, iş akışlarının çoğu, basılı medyadan bilgi almayı içerir. Faturalar, kağıt formlar, taranmış yasal belgeler ve basılı sözleşmeler iş süreçlerinin bir parçasıdır.
Bu büyük hacimli evrak işlerini depolamak ve yönetmek çok fazla zaman ve alan gerektirir.
Burada OCR, sıkıcı ve yavaş olan manuel müdahaleye göre kağıtsız belge yönetimi avantajları sunar.
Geliştirilmiş AI tabanlı OCR teknolojisi, metin görüntülerini diğer iş yazılımları tarafından analiz edilebilecek metin verilerine dönüştürerek sorunu çözer.
İşlenen veriler daha sonra analitik yürütmek, işlemleri kolaylaştırmak ve süreçleri otomatikleştirmek için birleştirilir ve sonuçta üretkenliği artırır.
OCR Motoru Nasıl Çalışır?
Görüntü edinme
Görüntü alma, bir tarayıcının belgeleri okuduğu ve bunları ikili verilere dönüştürdüğü ilk adımdır. Taranan görüntüyü analiz etmek için açık alanları arka plan ve karanlık alanları metin olarak sınıflandırır.
Görüntü Ön İşleme
Edinme süreci kir ve hatalarla birlikte gelir. Bu nedenle, OCR motoru önce görüntüyü temizler ve okumadan önce hataları atar.
Bu temizleme teknikleri:
Metin Tanıma
Örüntü eşleştirme ve özellik çıkarma, OCR yazılımının esas olarak metin tanıma için kullandığı iki ana OCR algoritması süreci türüdür.
Desen Eşleştirme
Sonraki adım, glif adlı bir karakter görüntüsünü ayırarak ve benzer şekilde depolanmış bir glif ile karşılaştırarak deseni eşleştirmektir.
İşlem, yalnızca depolanan glifin giriş glifine benzer bir yazı tipi ve ölçeği olduğunda çalışır.
Özellik çıkarma
Bir sonraki adım, özellik çıkarımıdır. İşlem, glifleri çizgiler, kapalı döngüler, çizgi yönü ve çizgi kesişimleri gibi özelliklere ayırır veya ayrıştırır.
Bu özellikler, saklanan çeşitli glifleri arasında en iyi eşleşmeyi veya en yakın komşuyu bulur.
Rötuş
Son olarak, analizden sonra sistem, çıkarılan metin verilerini bilgisayarlı bir dosyaya dönüştürür.
Tipik OCR Kullanım Durumları Nelerdir?
OCR Motorlarının Günümüzde İşletmelere Yardımcı Olmasının Temel Yolları Nelerdir?
Bir OCR SDK'sını Nasıl Entegre Edebilirsiniz?
FileStack'in OCR SDK'sı, belgeleri dijitalleştirmeye ve kredi kartlarından, pasaportlardan, ehliyetlerden ve vergi makbuzlarından parmağınızı bile kıpırdatmadan veri ayıklayıp düzenlemenize yardımcı olur.
FileStack'ten OCR, veri yakalama sürecini düzenler ve kolaylaştırır, böylece sizin yapmanıza gerek kalmaz.
Görüntülerdeki karmaşık belgelerin içindeki metni çıkarmak için FileStack, doğru şekilde çalışan iki farklı makine öğrenimi tabanlı çözüme sahiptir.
- Akıllı görüntü işleme ile denetimsiz öğrenme
- Denetimli segmentasyon
Gelişmiş belge algılama ve ön işleme araçları, FileStack'in doğruluğu artırabilen en son eklentisidir.
İlk olarak, FileStack'in API'si görüntüleri veritabanlarına yükler. Ardından bunları birleşik bir biçime dönüştürün ve standart bir boyuta yeniden boyutlandırın.
Daha sonra, görüntüyü OCR motoru için daha net hale getirmek için belge algılama ve ön işleme araçlarına beslenirler. Sonuçlar, ayıklanan metinlerin tüm bilgilerini orijinal görüntüye içeren bir JSON yanıtı oluşturur.
İşleme API'sinde OCR, senkronize bir işlem olarak mevcuttur. Bu görevi takiben:
ok |
Buna bağlı olarak, yanıt:
{ "belge": { "metin_alanları": [ { "sınırlayıcı kutu": [ { "x": 834, "y": 478 }, { "x": 3372, "y": 739 }, { "x": 3251, "y": 1907 }, { "x": 714, "y": 1646 } ], "çizgiler": [ { "sınırlayıcı kutu": [ { "x": 957, "y": 490 }, { "x": 3008, "y": 701 }, { "x": 2977, "y": 1009 }, { "x": 925, "y": 797 } ], "metin": "Dosya yığını algılayabilir", "kelimeler": [ { "sınırlayıcı kutu": [ { "x": 957, "y": 490 }, { "x": 1833, "y": 580 }, { "x": 1802, "y": 888 }, { "x": 925, "y": 797 } ], "metin": "Dosya yığını" }, { "sınırlayıcı kutu": [ { "x": 1916, "y": 589 }, { "x": 2266, "y": 625 }, { "x": 2235, "y": 932 }, { "x": 1884, "y": 896 } ], "metin": "olabilir" }, { "sınırlayıcı kutu": [ { "x": 2336, "y": 632 }, { "x": 3008, "y": 701 }, { "x": 2977, "y": 1009 }, { "x": 2304, "y": 939 } ], "metin": "tespit" } ] }, { "sınırlayıcı kutu": [ { "x": 860, "y": 858 }, { "x": 3330, "y": 1049 }, { "x": 3301, "y": 1421 }, { "x": 831, "y": 1229 } ], “metin”: “basılı ve el yazısı”, "kelimeler": [ { "sınırlayıcı kutu": [ { "x": 860, "y": 858 }, { "x": 1550, "y": 912 }, { "x": 1521, "y": 1283 }, { "x": 831, "y": 1229 } ], "metin": "basılı" }, { "sınırlayıcı kutu": [ { "x": 1677, "y": 922 }, { "x": 2047, "y": 951 }, { "x": 2018, "y": 1321 }, { "x": 1648, "y": 1292 } ], "metin": "ve" }, { "sınırlayıcı kutu": [ { "x": 2107, "y": 954 }, { "x": 3330, "y": 1049 }, { "x": 3301, "y": 1421 }, { "x": 2078, "y": 1326 } ], "metin": "el yazısı" } ] }, { "sınırlayıcı kutu": [ { "x": 749, "y": 1305 }, { "x": 2504, "y": 1486 }, { "x": 2469, "y": 1826 }, { "x": 714, "y": 1645 } ], “metin”: “OCR kullanan metinler”, "kelimeler": [ { "sınırlayıcı kutu": [ { "x": 749, "y": 1305 }, { "x": 1233, "y": 1355 }, { "x": 1198, "y": 1695 }, { "x": 714, "y": 1645 } ], "metin": "metinler" }, { "sınırlayıcı kutu": [ { "x": 1317, "y": 1364 }, { "x": 1910, "y": 1425 }, { "x": 1875, "y": 1765 }, { "x": 1282, "y": 1704 } ], "metin": "kullanmak" }, { "sınırlayıcı kutu": [ { "x": 1972, "y": 1431 }, { "x": 2504, "y": 1486 }, { "x": 2469, "y": 1826 }, { "x": 1937, "y": 1771 } ], "metin": "OCR" } ] } ], "metin": "Dosya yığını, OCR kullanarak\nbasılı ve el yazısı\nmetinleri algılayabilir" } ] }, “metin”: “Dosya yığını, OCR kullanarak\nbasılı ve el yazısı\nmetinleri algılayabilir\n”, "metin_alanı_yüzdesi": 23.40692449819434 } |
Yanıt parametrelerine bağlı olarak, görüntünüzde aşağıdaki gibi OCR yanıtını alabilirsiniz:
https://cdn.filestackcontent.com/security=p:<POLİTİKA>,s:<İMZA>/ocr/<HANDLE> |
OCR'yi doc_detection gibi diğer görevlerle bir zincirde kullanabilirsiniz:
https://cdn.filestackcontent.com/security=p:<POLİTİKA>,s:<İMZA>/doc_detection=coords:false,preprocess:true/ocr/<HANDLE> |
Ayrıca, OCR'yi harici bir URL ile kullanın:
https://cdn.filestackcontent.com/<FILESTACK_API_KEY>/security=p:<POLİTİKA>,s:<SIGNATURE>/ocr/<HARİCİ_URL> |
Son olarak, Depolama Takma Adları ile OCR kullanın:
https://cdn.filestackcontent.com/<FILESTACK_API_KEY>/security=p:<POLICY>,s:<SIGNATURE>/ocr/src://<STORAGE_ALIAS>/<PATH_TO_FILE> |