Extrakce dat z videa pomocí OCR a export do tabulky

Extrakce dat z videa pomocí OCR a export do tabulky
« kdy: 29. 09. 2022, 11:33:48 »
Zdravím,
Pomocí OBS Studia, dvou VNC sessions a jedné webkamerky jsem si do videa zaznamenal průběh laboratorního měření na dvou osciloskopech a signálním generátoru.

Teď bych potřeboval z videa dostat pomocí OCR naměřené hodnoty do tabulky. Například pro každý snímek.

Vůbec nevím kde začít. Hotový, dedikovaný program na tohle jsem neobjevil.

Asi by šlo extrahovat video do jednotlivých snímků, nad každým snímkem pustit OCR, zapsat nový řádek do souboru a pustit to skriptem cyklicky.

Jestli někdo něco podobného řešil, každý tip je vítaný.

Každý z přístrojů sice má USB i Ethernet, ale dostat z nich snadno a elegantně data prostě nejde. Přes LabVIEW, BenchVue atd. by to teoreticky šlo, ale tyhle softwary jsou takové zabugované bastly.....

Metoda OCR z videa by šla použít i na jednodušší přístroje, které mají pouze display.

V příloze je snímek z videa a příklad dat která bych chtěl dostat do tabulky.


RDa

  • *****
  • 1 993
    • Zobrazit profil
    • E-mail
Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #1 kdy: 29. 09. 2022, 11:54:43 »
Ja jsem nedavno zkousel Tesseract na screenshoty. Ale je to fakt marny, protoze mi 1I detekuje jako 11 a nedokazu to nijak donutit, ze ta I neni 1.

Jinak si to zkuste sam - ffmpeg/mplayer umi ulozit obrazek z videa, imagemagick pouzijte na orezani, pripadne barevne upravy a zvetseni, a pak to predhodte na tesseract.

Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #2 kdy: 29. 09. 2022, 12:05:18 »
Minul si sa profesiou. Zabal to a stan sa reziserom na youtube...

A teraz vazne. To ze si software ktory by dokazal to co ches nenasiel ma dobry dovod. Preco by sa s tym niekto patlal, ked tie udaje je mozne dostat z tych merakov po sieti?

a6b

  • ***
  • 119
    • Zobrazit profil
    • E-mail
Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #3 kdy: 29. 09. 2022, 12:05:41 »
kdyz vi, ze to ma byt vzdy ve tvaru desetinne cislo a milivolty, tak to muze prohnat tesseractem a pak nahradit vyskyty i za 1, z za 2 apod. az ve vyslednem textovem souboru.

Mlocik97

  • *****
  • 676
  • Linuxák, JS dev.
    • Zobrazit profil
    • E-mail
Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #4 kdy: 29. 09. 2022, 12:36:57 »
Ja som skúšal rôzne OCR nástroje, najlepší výstup mal Tesseract ale aj ten je tragédia... vo výsledku mi príde lepšie u kratších textov (čo tie namerané údaje asi nebude veľa textu) prepísať ručne. OCR nástroje často buď neprečítajú text z obrázka vôbec, alebo prečítajú nezmysli. Z videa to bude už len problematickejšie (najmä preto lebo jednotlivé snímky môžu byť rozmazané, prelínať sa s inými). Často stráviť hodinu nad prepisovaním údajov je jednoduchšie než tráviť hodinu "zfunkčnením" OCR, ktorý to potom vyrieši za minútu s nejasným výsledkom. Aj tie zabugované softwary budú podľa mňa menej problematické než OCR.


Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #5 kdy: 29. 09. 2022, 14:55:41 »
Já myslim, že ať na to použijete co chcete, stejně skončíte u ručního procházení snímku po snímku a kontrolou zda se to převedlo správně.
Já bych ocr vynechal a přepsal to rovnou ze snímků ručně.
No a pro příště bych strávil trochu času nastavením výstupu přístrojů do logů - což je imho přínosnější činnost než opisovat rozmazaný čísla z bitmap.
Gréta je nejlepší.

_Jenda

  • *****
  • 1 199
    • Zobrazit profil
    • https://jenda.hrach.eu/
    • E-mail
Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #6 kdy: 29. 09. 2022, 17:55:50 »
Ale je to fakt marny, protoze mi 1I detekuje jako 11 a nedokazu to nijak donutit, ze ta I neni 1.
Hodně pomáhalo správně nastavit DPI - když je blbě, tak se nechytá. Na screenshotu tedy podle velikosti fontu.

Potřeboval bys to dotrénovat na daných datech/fontu, a vyrobit jazykový model, který bude odpovídat tvé technické aplikaci. Možná, že pokud jsou to dost jasné věci (čísla, známý alfanumerický formát…), tak by se ten model dal i ručně nahardcodovat.

Pokud je obrázek skutečně statický, tak by možná šlo udělat klasifikátor i ručně. Na screenshotu by to mělo být jednoduché - vezmeš si těch 10 číslic a protože je to pixel-perfect (OK až na nějaký hinting/antialiasing) tak by to mohlo jít matchovat normálně natvrdo jako pixely. Na té kamerce už to bude chtít nějakou „inteligenci“, doufal bych že zvládnu natrénovat nějaký triviální klasifikátor třeba dle MNISTu na pár vzorcích.

Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #7 kdy: 02. 10. 2022, 15:15:59 »
Pokud je to jednorázová věc, a těch dat je příliš mnoho na to, aby se ti chtělo projít si to sám, tak je tu mechanický turek. https://www.mturk.com

Uděláš zadání, nabídneš cenu, a někdo ti to přepíše z videa do textu. Jen je asi dobrý nápad si to nechat přepsat několikrát od různých lidí, a pak se podívat na segmenty, kde se neshodují mezi sebou.

Re:Extrakce dat z videa pomocí OCR a export do tabulky
« Odpověď #8 kdy: 03. 10. 2022, 09:11:44 »
Pohoda. To som robil cca 3+ roky dozadu. Nasekaj si to na snimky ako chces (pozor niektore mozu byt aj blank alebo necitaletne) a potom mas 2 cesty. (Pocitam ze je to "digital")
 1. Python + OpenCV  mas to za chvilku.
 2. Trosku krkolomnejsia a ciastocne divna ale tiez funguje uplne super. Spolocnost Cognex ponuka priemyselne kamery a skenery. Maju SW InSight ktory tieto kamery vie nastavit ale ma aj skvelu moznost kamery emulovat a cele je to free. A tam je ten postup rovnaky. Nahodis si zlozku ktora obsahuje obrazky, naucis OCR tool na citanie a pripadne podoladujes a stacis "play". V pohode zvlada aj exporty a cele to nastavenie je cca 10min aj s instruktaznim videom.

Osobne ak nemas skusenost s Cognexom by som siel Python a OpenCV