Marking denetimi

engiAI · TEXT düğmesi
Kablo, boru, şerit ve ambalaj üzerindeki işaretlerin tanınması ve doğrulanması

Kamera, yazıcı veya lazer işaretleyici ile yan yana yerleştirilir. engiAI, yazdığı metni doğrudan video akışından okur: yazıyı, bölümler halinde geçen metni birleştirir, referans örneği veya listedeki ile karşılaştırır, her işaretlemi veritabanına kaydeder ve sonucu ağ üzerinden (tarayıcı, JSON ve TCP kontrol cihazı aracılığıyla) iletir.

1. BölümVideoda, metin yazan yer
2. Örnek ifade, bu şekilde basılması gereken
3. Analiz Yapay zeka, her kareyi okuyor.
4. Sonuç "Tanıdı" veya "Tanımadı" + veri tabanı
~10 kare/s
Video kartında (CUDA) bölgenin okunması
RU + EN
Kiril alfabesi, Latince alfabesi, sayılar, semboller
0 eğitim
PaddleOCR modeli hemen kullanılabilir
HTTP + TCP
Tarayıcı, JSON, kontrol cihazından gelen sinyal

Çalışma sırasında nasıl görünüyor

engiAI — TEXT: videonun yanındaki pencere
Sol tarafta, kameradan çekilen video, mavi çerçeve, tanınacak bölge. Sağ tarafta, "METİN" penceresi: bölgeden kesilmiş kısım, okunan kelimelerin etrafındaki yeşil çerçeveler ve "Şu anda bölgede" satırı.

"METİN" düğmesi, engiAI ana penceresinin üst kısmındaki ilk satırda, ÇIKIŞLAR, KAMERALAR, TETİKLEYİCİLER, GENEL MODELLER ve SAYIM düğmelerinin yanında bulunur. Bu düğme, "METİN - işaret tanıma" adlı pencereyi açar. Bu pencereyi video üzerinde açık tutabilirsiniz: pencere açıkken veya işaret tanıma özelliği etkinleştirildiğinde, çerçevedeki ilgili alan görünür.

Pencerenin baş kısmında, tüm sekeler için ortak olan üç öğe:

  • Metin tanıma – ana anahtardır. Bu özellik kapalıyken, tanıma işlemi çalışmaz ve programın performansını etkilemez.
  • ▭ Alanı Belirleme – Videodaki alanı, fare ile tıklayarak ve sürterek belirleyin. Alan açıkken, fare ile sağ tıklayarak da alanı belirleyebilirsiniz. ✖ Alanı Sıfırla – Alanı sıfırlar.
  • Sağdaki durum: `BEKLENİYOR, KAYIT, DUR veya GİRİŞ SİGNALİNE GÖRE işaretleri. Altında, hangi donanımın (GPU CUDA veya işlemci) kullanıldığı, saniyede kaç kare okunduğu ve her kare için geçen milisaniye sayısı belirtilir.
Öneri. İşaretleme alanını, metnin görünür kısmının ve hareket yönüne doğru uzanan kısmının genişliğine dikkat edin: Alan içinde aynı anda daha fazla işaret varsa, karelerin daha güvenli bir şekilde birleştirilmesi sağlanır. Kamera, işaretleme uygulandıktan sonra, metin net ve bulanık olmamalıdır.

"İşaretleme" sekmesi: sonuç ve örnekle karşılaştırma

engiAI — TEXT: örnek ifade
"İşaretleme" sekmesi: örnek cümle, bölgenin önizlemesi, şu anda bölgede ve kaydedilen, aşağıda ise hazır işaretleme listesi. Yeşil satırlar "Tanımlandı", kırmızı satırlar "Tanımlanmadı", parantez içinde örnekle eşleşme oranı.

Bu, operatörün kullandığı bir araçtır. Üst kısımda ise "Alan içindeki tüm öğeleri örnekle karşılaştırma" modu bulunmaktadır:

engiAI — TEXT: İşaretlemeler
"Örnek" alanı, yazılması gereken ifadeyi belirtir; "% Eşleşme eşiği", işaretlemenin doğru kabul edilmesini hangi orandan itibaren belirleyeceğinizi gösterir. Sağ tarafta, gerçek durum bulunur.
1
"Tüm alanı örnekle karşılaştırmak için Bu seçeneği işaretleyin ve Örnek alanına tam olarak ifadeyi girin, örneğin Энергокомплект UTCAB-PV1-F 6 4 ТУ BY 300528652.036-2014 EAC 2026 Беларусь. Büyük/küçük harf, boşluklar ve benzer görünen Rus ve Latin harfleri (T ve T, U ve Y, E ve E) önemli değildir.
2
Belirtin Eşleşme eşiğini, %. 100, tam eşleşme anlamına gelir; 65-80, baskı ve okuma hatalarına karşı bir güvenlik marjı sağlar.
3
"Metin Tanıma özelliğini etkinleştirin. Uzun bir ifade, ekranda tamamen görünmeyebilir; bu durumda program, ifade ekrandan geçerken kare kare olarak onu işler."

Bir programda ifadenin analizi nasıl ilerler:

  • ` Kayıt, ifadenin başlangıcından başlar. Eğer, metnin ortasında başlatılmışsa, metnin sonu atlanır – program, bir sonraki başlangıcı bekler.
  • Her kare, bir örnekteki yerine yerleştirilir ve her harf, içinde görünen tüm karelerden "oy" alır. Sonuç olarak, en sık okunan varyant seçilir. Tek bir karedeki rastgele hatalar (örneğin, karenin kenarından kesilmiş bir harf veya bir yansıma), komşu kareler tarafından düzeltilir; çünkü yavaş bir sistemde daha fazla "oy" bulunur ve bu da daha doğru bir sonuç elde edilmesini sağlar.
  • Sonuç, ifade tamamen işlenirken veya "Tanıma" sekmesindeki ayarlara göre belirtilen süre boyunca yeni karakterler algılanmazken (yani sistem durmuş ve alan boşsa) elde edilir. Sonucun ardından, program bir sonraki ifadenin başlamasını bekler; birbirine çok yakın olan ifadeler her biri ayrı ayrı kaydedilir.
  • Program, hareket yönünü otomatik olarak belirler veya "Metin nereden geliyor" ayarından alır.

Şöyle ifade geçerken, kapının sağ tarafında “40’tan 64 harf tanınıyor” yazısı görülür. “Kaydediliyor” satırında ise, eşleşen yüzde ve toplanan metin yer alır. Sonuç bölümünde ise “%73 – TANINIYOR” veya “TANIMIYOR” şeklinde bir sonuç gösterilir. Bu sonuç, videonun üzerinde büyük harflerle de görüntülenebilir.

"Örnekle alanı içindeki her şeyi karşılaştır" seçeneği etkin değilse, sıralı birleştirme işlemi uygulanır: Her yazı, "Başlangıç ve Bitiş" sekmesindeki kurallara göre başından sonuna kadar yazılır ve gerekirse referans listesiyle karşılaştırılır.

Listenin altında, kontrol seçenekleri bulunur:

  • Tüm işaretleme seçenekleri / Sadece son seçenek – Burada neyi göstermeli ve tarayıcıya neyi iletmeliyim?
  • Tarih, saat ve etiketleme / Sadece etiketleme – Hangi bilgileri tarayıcıya iletmeniz ve JSON dosyasına kaydetmeniz gerektiği.
  • ⚖ Karşılaştırmak – Her hazır işaretlemi, belirtilen referanslarla karşılaştırmak.
  • 💾 JSON'u Kaydet, 📂 JSON'u Yükle (yüklenen işaretlemeler referans olarak kalır), Listeyi Temizle — Ekrandan ve tarayıcıdan satırları siler, ancak veritabanında kalır.

"Referans" sekmesi, doğru işaretleme listesini gösterir.

engiAI — TEXT: Referanslar
"Referans" sekmesi: Yüklenen işaretlemeler, "Buyla karşılaştır" seçeneği, benzerlik eşiği ve örnekle karşılaştırma ile düzeltme seçeneklerini içerir.

"Referans", bir hat üzerinde birden fazla farklı işaretleme (farklı bölümler, partiler, müşteriler) olduğunda ve her birinin listede bulunması gerektiğinde kullanılır.

  • 📂 JSON Dosyasını İndir – Dosyadaki liste: JSON verimiz, satırların bir dizisi, "text" alanı olan nesneler veya satır başına tek bir metin. Tekrarlar kaldırılır.
  • ✓ Tümünü işaretle, ☐ Tümünü kaldır, her satırda bulunan "referans" ile karşılaştırmak için işaretli olanlar. ✖ Referansı temizle – listeyi sil.
  • Benzerlik yüzdesi (karşılık), % – %100, bu da aynı harflerin aynı yerlerde (boşluk ve büyük/küçük harf fark etmeksizin) bulunması anlamına gelir. %95 ve üzeri, kabul edilebilir hatalar (yazım veya okuma hataları) için izin verir.
  • Standart ile karşılaştırıldığında, %… kadar fark toleransı – Eğer okunan metin, belirtilen standart ile benzerse, işaretleme standart metinden alınarak yazılır (orijinal okunan metin, kayıt altında kalır).

"Başlangıç ve Bitiş" sekmesi, bir işaretlemenin nerede bittiğini gösterir.

engiAI — TEXT: Başlangıç ve bitiş
"Başlangıç ve Bitiş" bölümü: Başlangıç ve bitiş metni, bitişten sonraki duraklama, boşluk süresi ve en uzun kayıt süresi.

Bu kurallar, programın işaretleme işlemini otomatik olarak belirlediği, ardışık birleştirme modunda (örnek olmadan) çalışır:

  • Metnin başlangıcı – Bu metin okunduğunda kaydın başlaması (örneğin UTCAB) ile başlar. Boş – herhangi bir metinden. Eğer işaretleme, metnin tekrar tekrar görünmesiyle devam ediyorsa, ikinci kez görünen metnin başlangıcı işaretlemeyi tamamlar. İşaretlemeye metnin başlangıcını dahil etmek – Bunu sonuçta bırakmak.
  • Sonuna kadar durma, ms – Hazırlanan işaretleme bittikten sonra, daha fazla bilgi kaydetmekten kaçınmak.
  • Metnin sonu – işaretleme, bu metnin (örneğin BY veya 2026) okunmasıyla sona erer.
  • Boşluk süresi, ms – Eğer bu alanda metin yoksa, işaretleme işlemi tamamlanmış ve kaydedilmiştir.
  • En uzun süre, ile – sürekli metin için, aralıklar olmadan: her bu kadar saniye – ayrı bir işaretleme. 0 – herhangi bir sınırlama yok.

Örnek: "UTCAB" başlangıcı, "BY" bitişi – "UTCAB … BY" olarak kaydedilir, ardından program bir sonraki "UTCAB" bekler. Büyük/küçük harf duyarlılığı olmadan, benzer Rus ve Latince harfler aynı kabul edilir.

"Tanıma" bölümü: Alan, dönüş, modeller

engiAI — TEXT: Tanıma
"Tanıma" bölümü: Alanın kesin koordinatları, dönüş ve büyütme, eşik değerler, yeni örnek işaretlerin beklentisi, konveyor yönü, video kartı, izin verilen harfler ve işaretler, sözlük.
  • Karedeki alan, pikseller – X, Y, alanın genişliği ve yüksekliği: orijinal karedeki alanı doğru bir şekilde ayarlamak, fare olmadan.
  • Metni bölgede döndürme – Bölgeyi nasıl döndürürsek metin düz hale gelir? Metin yukarıdan aşağıya doğru – "90° saat yönünün tersine", aşağıdan yukarıya doğru – "90° saat yönünde". Ekran üzerindeki videoyu "Video" sekmesinden döndürmek mümkündür.
  • Büyütme – Küçük metin, daha iyi okunabilmesi için bölgenin büyütülmesi önerilir; "Otomatik" özelliği, bunu otomatik olarak yapar.
  • En düşük güvenilirlik, % – daha düşük güvenilirlikle okunan metinler, yani parmak izleri ve harflerin kenarları, göz ardı edilir.
  • En kısa işaretleme uzunluğu, semboller – daha kısa sonuçlar kaydedilmez.
  • Örnek: Yeni herhangi bir işaret yok, MS sonuç veriyor – Eğer örnekte yeni herhangi bir işaret gelmiyorsa, ne kadar beklemeliyim? (İşlem durmuş, alan boş, metin okunmuyor). Sonuç, okunan metne göre belirlenir ve yeni bir analiz başlar.
  • Metnin kaynağı – yeni metnin, alanın hangi tarafından ortaya çıktığı. "Auto" özelliği, kareleri analiz ederek, "yardımlı birleştirme" yönteminin daha güvenilir olduğunu belirtir.
  • Video kartını (GPU) kullanmak – özellikle NVIDIA ve CUDA ile birlikte çok daha hızlıdır.
  • Harfler ve İsimler – etiketlerde bulunabilecekler: İngilizce ve Rusça kelimeler, sadece İngilizce kelimeler veya herhangi bir isim; sayılar ve boşluk – her zaman, isimler (nokta, tire, ters çizgi, numara vb.) işaretlerle belirtilir. Model, yalnızca izin verilen isimlerden birini seçer – gereksiz olanlar görünmez, benzer olanlar daha doğru bir şekilde tanımlanır.
  • Kelimeyi sözlükten seçmek – tanınan kelime (3 harften, sayı veya kod olmamalı), sözlükteki bir kelimeyle benzerlik oranının belirli bir yüzdenden daha yüksek olduğu kelime, doğru kelimeyle değiştirilir. Sözlük, kendi kelimelerini (her bir kelime ayrı bir satırda) ve ayrıca referans.com'dan kelimeleri içerir.

Bu sayfadaki alt kısımda, model seçimi yer almaktadır: "Satırları arama" (v3 - hızlı, v5 - video kartı için daha doğru) ve "Metin okuma" (Kiril, Latince ve sayılar; sadece Latince ve sayılar; Avrupa dillerinin Latincesi; doğru sunucu modeli; veya aynı anda iki model - her ikisi de satırı okur, daha güvenilir bir seçenek). Eksik olan model, "⬇ İndir" düğmesiyle indirilebilir. "⚖ Mevcut alanda modelleri karşılaştır" düğmesi, en son alım verisini tüm seçenekler üzerinden geçirir; böylece hangi modelin işaretlemeyi daha doğru okuduğu ve bunun için ne kadar süre harcandığı hemen görülebilir.

Bu modeli eğitmek gerekmiyor. Bu sistem, PaddleOCR üzerine kurulmuş ve kurulumdan sonra doğrudan Latince, Kirilçe ve sayıları tanıyabilmektedir. Ayarlama, bölge, açı ve izin verilen işaretlerin listesi ile ilgilidir.

"Veritabanı" bölümü: Tüm işaretler burada saklanır

engiAI — TEXT: Veritabanı
"Veritabanı" bölümü: Kaç işaret saklandığı, JSON'a aktarma, aktarma işlemini referans olarak kullanma ve temizleme.

Ekran üzerinde gösterilen listeden bağımsız olarak, tanınan her işaretleme, programın veritabanında tarih, saat, kamera, metin ve karşılaştırma sonucu ile birlikte kaydedilir.

  • 📤 Veritabanını dışa aktar (JSON) — Tüm verileri bir rapor dosyasına kaydetmek veya bir muhasebe sistemine aktarmak için.
  • 📥 Veritabanını indirin (etiket → referans) – İndirilen verilerden sadece etiketler alınır, bunlar referans olarak kullanılır. Bu şekilde doğrulanmış değişiklikler, gelecekteki kullanımlar için bir örnek olarak kullanılabilir.
  • 🗑 Veritabanını temizle – Tüm kayıtları sil.

"Ağ" sekmesi: Tarayıcı ve JSON'daki sonuç

engiAI — TEXT: Ağ
"Ağ" sekmesi: Yerleşik HTTP sunucusu, tüm bilgisayar ağ adaptörlerine bağlanmak için adresler ve API adreslerinin listesi.

"Ağ üzerinden veri gönderme" seçeneği etkinleştirildiğinde, engiAI bir HTTP sunucusu başlatır (varsayılan port: 8096). Ağdaki herhangi bir bilgisayar veya tablet, normal bir web tarayıcısı aracılığıyla, işaretleme, karşılaştırma ve referans bilgilerini içeren bir sayfayı görüntüleyebilir; herhangi bir kurulum gerektirmez. "Kopyala" ve "Tarayıcıda Aç" butonları, listeden bir adresi alır.

AdresHangi veriyi gönderiyor
/Sayfa: işaretleme, karşılaştırma, referans, JSON
/api/marksİşaretleme: tüm veya son, tarihli veya tarihsiz (pencerede seçilen şekilde)
/api/marks?show=last&format=textSon işaretleme basit metin olarak
/api/lastSon işaretleme
/api/stateAnlık olarak alanın durumu ve metni
/api/refsreferans; POST /api/refs — referansı (JSON formatında) yükle
/api/exportTüm işaretleme veritabanı

İlk açılışta Windows güvenlik duvarı, engiAI için izin isteyebilir – gerekli ağlara erişimi etkinleştirin.

"Giriş" sekmesi: Kontrol cihazından gelen bir görüntü

engiAI — TEXT: Giriş
"Giriş" sekmesi: PLC veya sensörden gelen sinyali almak için TCP sunucusu – ağ, port, sinyal değeri, istemciye yanıt ve "Şimdi fotoğraf" kontrolü.

Ne zaman ürün, sinyalle (sensör, PLC, robot) kameraların karşısına geldiğinde, "Giriş sinyaline göre tanıma (TCP)" seçeneğini işaretleyin. "engiAI, TCP sunucusunu açar; her sinyal, bölgedeki bir görüntüyü temsil eder: metin tanınır, karşılaştırılır ve sürekli modda olduğu gibi veritabanına kaydedilir.

  • Ağ – hangi ağ adaptöründen sinyali beklemelisiniz («Tüm ağlar» – herhangi birinden); IP adresini elle girebilirsiniz. Port – varsayılan olarak 8097.
  • Sinyal – hangi değeri bir komut olarak kabul edileceğini belirtir. Varsayılan değer 1: metin ("1", "1\r\n") veya 0x01 baytıdır.
  • Müşteriye tanınmış metinle yanıt vermek – yanıt olarak, işaretleme içeren bir dize gelir; karşılaştırma sırasında, tab ile OK veya NG olarak belirtilir; METİN YOK – metin bulunamadı, HATA … – alan veya kare bulunamadı.
  • 📸 Şu anki fotoğraf (kontrol) – Aynı şey, ancak bir düğmeden gönderilen sinyal. Kontrol cihazı olmadan, TCP-UDP (müşteri) programı ile kontrol edilebilir: adres, port, "1" değeri, "Gönder".

Giriş ve sürekli tanıma aynı anda çalışır: "Metin tanıma" seçeneği işaretlendiğinde, program, akışı takip etmeye devam eder ve her sinyalle ek olarak bir fotoğraf çeker.

5 dakikada hızlı kurulum

1
`METİN üzerine tıklayın, ardından `Alan Seç` seçeneğini seçin ve videodaki metin boyunca çerçeveyi sürükleyin.
2
"Tanıma" sekmesinde, metnin önizlemeyi düzleştirmek için dönüşü seçin, küçük yazı için ×2–×4 büyütme ve akışın yönü.
3
"Karşılaştırma" sekmesinde, "Alan içindeki tüm öğeleri örnekle karşılaştır" seçeneğini işaretleyin, ardından ifade ve eşik değerini girin.
4
"Metin Tanıma özelliğini etkinleştirin. Her bir satırın metni başarıyla tanınırsa yeşil ("Tanındı") olarak, aksi takdirde kırmızı ("Tanınmadı") olarak listede görüntülenecektir."
5
Gerekirse, tarayıcı ve JSON için "Ağ" ve kontrol cihazından gelen sinyalle "Giriş" seçeneklerini etkinleştirin.