Když jste takový fanda do QR kódů, tak jste se mohl alespoň obtěžovat napsat
čtecí software sám a ne se alibisticky vykroutit a říct, že nic na čtení pro GNU/Linux
neexistuje…Neprofesionalismus
„Bohužel v současné době zřejmě neexistuje funkční čtečka QR kódů pro desktopový Linux. Jistou naději skýtá projekt ZXing, který je psán v jazyce Java a přestože je určen pro mobilní telefony, měl by fungovat i na desktopu. Zatím je ale v silně vývojovém stavu. Pokud ale přesto chcete některý obrázek dekódovat, můžete použít online aplikaci, které jednoduše předložíte URL obrázku nebo jej přímo uploadujete z disku…“
Tu zmiňovanou aplikaci já osobně používat nebudu kvůli obavě z možného zneužití údajů…
S pozdravem SAJBRHLAVA
Pokud vim, tak problem u ZXing neni v napsani kodu, ale v tom, jak vubec zpracovat obraz, ktery je cten pod uhlem jinym nez 90 stupnu (prostorova transformace na zaklade tech ctyr referencnich bodu) a dale pak jak najit ten ctvrty roh – tedy jak rozlisit, co je jeste kod a co uz je prazdne misto mimo prostor kodu.
Ja som skusal kombinaciu Beetag + Nokia 6300 a pre to logo s billboardu som musel naklonit telefen tak aby tie sikmene horizontalne strany, vyzerali aspon ako tak rovno. Inak ho aplikacia nerozoznala. Na treti pokus sa to ale podarilo a precitalo to v pohode. Pri logu s informaciami o root cz samozrejme blbla diakritika.
Optar by mel mit dobre opravne kody. Problem bych osobne videl se ctenim cimkoliv jinym nez skenerem (hlavne rozliseni a uhel cteni jiny nez 90 stupnu) a nalezeni okraju.
Jinak Optaru fandim. Je to snad jediny barcode (spolu s QR), ktere jsou volne k dispozici (tj. je znamy postup kodovani a dekodovani a lze je volne implementovat bez licenci).
DataMatrix by byl sobry kod, ale jeho postup zakodovani je tajny (nutno zakoupit normu).
Problem pri zpracovani toho „zkoseneho“ obrazu umisteneho v prostoru je prave nalezeni tech referencnich bodu.
Jestli je ten referencni bod ctverec („tercik“) pri normalnim zobrazeni, tak kdyz ten papir zkosite, tak jeho prumet do roviny uz je treba jen pootoceny kosoctverec, nehlede na to, ze jine shluky cernych a bilych bodu se mohou jevit jako cerne bloky podobne referencnim bodum apod.
Ted do toho pridejte realne situace, kdy plocha kodu nemusi byt rovina, ale cast zakrivene plochy, uvazujte odrazy svetla, ktere vam cerne body zmeni na sede az bile a rozeznani referencnich bodu pro vypocet transformace uz neni tak trivialni zalezitost.
Já teda nevím jak to řeší optar, ale já bych to řesil tak, že bych nejdřív našel okraje → první křivka. Pravděpodobnost, že o křivku vedle bude nějak extrémně zkřivená je dost malá, takže bych zkusil hledat referenční bod s nějakou rezervou (jinak velikost ref. bodu jde nastavit ve zdrojáku). No a tím pádem bych dostal druhou křivku a mohl bych aproximovat další křivku. Samozřejmě, že při nějakém extrémním zkroucení by to nešlo, ale to se ve skeneru zase často nestává.
> Samozřejmě, že při nějakém extrémním zkroucení by to nešlo, ale to se ve skeneru zase často nestává.
Ja mel na myslim spise situace, kdy se Optar vytiskne treba na tricko a snima se to mobilem. Tam uz je zakriveni a natoceni v prostoru slusne.
Ty „krivky“ jsou pak klidne polynomy vyssich radu.
> to už se z optaru stává obsahem informací už spíš QR kód
Ja myslel, ze to je to, na co jsi se ptal :-)
Je to 2D carovy kod stejne jako QR, tak proc ho take tak nepouzivat. Clock ho ale spise navrhoval jako archivacni kod pro snimani z rovneho media (papiru, filmu) skenerem, ktery je umisteny v normale plochy (tj. je kolmo na medium).
Optar si dela kalibraci cerneho a bileho bodu pro kazdy synchronizacni bod a mezi tim interpoluje. Dela to nejakou celkem komplikovanou iterativni analyzou histogramu.
Ted si nepamatuju jestli ty terce se hledaj globalni bilou a cernou urovni nebo jestli to tam ani neni potreba, ona ta konvoluce si necha libit ledacos.
Pokud jde o rozmazani hloubkou ostrosti skeneru ze by se pixely slily tak to se neprecte. Chtel bych videt kod ktery se precte po takovem rozmazani :)
Pokud jde o deformaci a neni velka, Optar je na to staven. Najde si 4 rohy a mezi nima pak interpoluje sit ocekavanych mist synchronizacnich tercu, ktere si nasledne konvoluci najde a presne jemne doladi na zlomky pixelu. Staci aby tam byla vetsina toho terce muze byt i poskozeny. Mezi nima pak interpoluje pixelovou sit.
Bohužel, optar je z hlediska uživatelského použití stále hodně nedodělaný.
Moc se mi líbí například nápad vytisknout na spodek papíru informační proužek se sadou čísel, která říká, jak byl obrázek zakódován. Ovšem pak jsem zjistil, že dekodér na zadanou sekvenci čísel zvysoka kašle a používá hodnoty natvrdo zadané v hlavičkovém souboru :)
Osobně totiž 200dpi obrázek jsem schopen bezchybně přečíst pouze v případě, že ho dám z tiskárny rovnou na skener. Jakékoli pomačkání, nebo snad dokonce přehnutí záznam velmi znehodnotí.
Ty cisla jsou tam jen na rucni prepsani :-), OCR to asi neda. Spis by bylo zajimavy, kdyby se ty cisla vlozily treba to toho kodu a nebo treba prave do QR pole. Pak by slo misto ty cerny listy pouzit ten prostor pro data.
Jinak ja to tisknul tak, ze pro tisk 150dpi byly na kazdy pixel optaru 3 pixely tisku. Prehnuti jsem nezkousel, ale jeste od 75DPI skenu to slo uspesne dekodovat.
Přece jsem jeden GNU GPL enkodér našel:
http://www.libdmtx.org/
Zdá se mi, že negeneruje nejmenší možný kód, ale co já o tom vím…
I kdybyste vedel, tak to neoverite, protoze nemate volny pristup k te norme (Wikipedia). Takhle musime spolehat na to, ze to ten clovek s normou naprogramoval spravne.
Tech volne dostupnych generatoru je nekolik (jina sekce stejneho clanku na Wikipedii).
Ne zreknes „videl bych problem“ tak si nejdriv zjisti, zda to tak skutecne je.
Optar je napsany tak aby cetl i v pootoceni.
Pokud snimaci zarizeni ma na kod nedostatecne rozliseni pak se nabizi reseni pouzit kod s mensi hustotou.
Optar ma celkem robustni algoritmus ktery nerozhazi ani spina ktera imituje falesne okraje, rohy atd. – podminka je ze spina nesmi obepinat kod kolem dokola bez mezery, a pod stredem obrazku musi byt kod.
Optar ma Golayovy opravne kody, vydrzi 3 vadne bity ze 24 a nahlasi 4 ze 24.
Jinak diky za fandeni! :)
Drahí prítomní… Práve dnes som nahodil na Maemo 5 aplikáciu mbarcode.
Maemo 5 je čo? Linuxová distribúcia pre mobilné zariadenia.
http://maemo.org/packages/view/mbarcode/
Všetci sa „styďte“ ! :D
Zdravim,
podarilo se vam nekomu precist ten QR-kod z billboardu na obrazku ? Ja to zkousel a nic. Dokonce jsem ten obrazek v gimpu shearnul, aby byl kod vicemene pravouhly, zvysil kontrast, zaostril… Mobil (E90) spolehlive nasel obrazek, oramoval jej, opakovane na nej zaostroval, ale vysledek nikdy neposkytl. Ostatni kody v clanku samozrejme do sekundy rozlusteny. Ze by spatne kodovani ?
Zdravi Pavel.
Mám na Nokia E-51 program i-nigma a ten fotku v originál velikosti přečetl v pohodě.
Netolish
Také mám Android a program Barcode Scanner. S přečtením barcodu na billboardu žádný, problém, stejně tak s vizitkou, kde nejenom, že vše správně zobrazil, ale dokonce okamžitě nabídl přejít na odkaz, vyhledat na mapě (skutečně to úplně přesně našel), přidat jako kontakt, zavolat a odeslat email. Tak, jak to má být :-)
Už nekolik let mi na symbianove nokii bezi QuickMark (http://www.quickmark.com.tw/En/basic/index.asp) a zatim spokojenost. Nacetl pokazde vse, co sem mu podstrcil.
Zkoušel jsem Beetag („fotoaparát není podporován“), QR2DBarCode (AKA J2MEQRCode) a to QRDecode → From Camera („java.lang.NullPointerException“) a QRMidlet z qrdemo.com („Chyba aplikace“).
Jediný QR2DBarCode přímo podporoval můj typ telefénu, ale trošku spadl na tom pointeru.
Ve Fedoře 12 jsou defaultně prográmky zbarimg a zbarcam z commandlajny i gtk a qt frontendy, které QR čtou. Je to balíček zbar, zbar-gtk apod.
Obrázky z textu článku to spolehlivě přečte, jen písmena s nabodeníčky jsou v nějaké divné znakové sadě. Nevím, zda je to chyba zbarimg nebo zda to má blbě nakódované root.
tak to nejsou přímo frontendy, jen knihovny.
Co se týče kódování, tak problém s češtinou je s tím qrencode, nikoliv se čtečkou zbar. Qrencode některé znaky zvládá (latin1 subset, ýáí…), jiné ne (latin2 subset. ěščř…). Např místo znaku © qrencode vygeneruje nějaký japonský znak.
Presne tento problem jsem ocekaval a take jsem ocekaval, ze se mu autor clanku bude venovat. Mam takove neblahe tuseni, ze vetsina carovych kodovani si s formatem prenasenych dat hlavu vubec nelame.
Napriklad PDF417, ktere pouziva 602XML Filler a tedy i ceska statni sprava, je v tomto smeru naprosto impotentni. Takze aplikace to resi tak, ze vezmou prosty text v UTF-8, zakoduji jej do Base64 a teprve tuto posloupnost US-ASCII znaku prevedou do caroveho kodu. Prijemce dat to musi samozrejme vedet, jinak dostane nesmyslny retezec. Zadna metadata se neprenaseji.
Jeste usmevnejsi je, ze hardwarove ctecky techto kodu casto simuluji klavesnici. Zatimco v Linuxu se dekodovany znak dostane z jadra jako netransformovany symbol (protoze vstupni zarizeni ctecky ma nezavislou klavesovou mapu), tak ve Windows se udaje interpetuji globalni klavesou mapou jako stisk klavesy, takze nebohy urednik pouzivajici ceske rozlozeni dostane misto cisel ohackovana pismena, zameni se mu Y za Z a podobne.
Trochu špatně jsem se vyjádřil, ty programy fungují perfektně i s češtinou ( je v UTF-8; např ten Qr s dlaždičkama nebo ten japonský plakát), blbá je čeština v tom qr, které vytvořil autor článku.
Ostatně ten zbarcam je dokonalý – pustí kamerku a když jsem ji zaměřil na obrazovku a scrolloval text článku, postupně vysypával na terminál texty jednotlivých qr. Dokonce i toho, kde je barevně vyznačeno, co které pole znamená – je v tom adresa wikipedie.
Zajímalo by mě jakým způsobem jste na tu vizitku dostal ty české znaky. Z tohoto článku je na mém Androidu krásně přečtu. Ale když si vygeneruji svoji vizitku na http://zxing.appspot.com/generator/ tak mám po přečtení (dekódování) místo diakritiky japonské znaky.
Len by som doplnil, že pre webové účely je asi najjednoduchším riešením použiť Google Chart API, ktoré dokáže okrem iného tiež generovať QR kódy.
Článek jako vždy na root.cz kvalitní, ale zmínit všechny os na mobily, včetně ne-moc rozšířeného maema zapomenout na stále velmi populární Windows Mobile (dneska již Windows Phone). Chápu že je tohle spíše ne-MS zaměřený serve. Pokud zná někdo nějakou dobrou app pro WM 6.5 ideálně touch-friendly.
Ak viete niekto o java appl ktora bezi na nokia fonoch a rozbeha toto tak dajte vediet. Beetagg si s tym neporadil.
http://writerresponsetheory.org/wordpress/wp-content/uploads/qrcode_01.png
Vyzkoušené tyto aplikace ovšem nemám, můžete se o zkušenosti podělit v diskusi pod článkem.
mbarcode funguje dobre: http://zelial.sweb.cz//Screenshot-20100301-151250.png
Velky bratr nic takoveho nepotrebuje. Uz nekolik let umi cist klasicke znacky :-/
Stejne slovenske SPZ vypadaji oproti tem ceskym lepe :-(
SK: http://upload.wikimedia.org/wikipedia/commons/5/5e/CRP_SK_new.PNG
CZ: http://upload.wikimedia.org/wikipedia/commons/0/02/CZ_plate_euro.jpg
Na Slovensku máme už 13 rokov EČV, ŠPZ neplatia 6 rokov. :-) Ale myslel som to skôr tak, že by som si „odfotil“ auto a získal tak e-mail majiteľa aby som ho mohol potom pochváliť za ohľaduplnú jazdu alebo parkovanie a tak. ;-)
Ale onedlho už budeme možno rozoznávať tváre a priradzovať im profily na sociálnych sieťach:
http://www.svetandroida.cz/rozsirena-realita-podle-obliceje-v-aplikaci-recognizr-zanedlouho-201002
PS: Nebrať (sa) zbytočne vážne.
Vsetko fici ako ma na Androide v1.6, aplikacia Barcode Scanner … Takto to dostava novy rozmer, je to spica vec v serverovni … Na kazdy server mala nalepka s kodom a po nacitani okamzite viem co je to za komp, aky hw a system … Nice … Pobehujem po serverovni s nalepkami a androidom
Doporučuji myslet hlavou. Aneb: kde generujete a co generujete.
Poučné odkazy:
http://code.google.com/p/zxing/wiki/BarcodeContents
a
projekt ZINT.
http://www.zint.org.uk/zintSite/default.aspx
po přeložení programu máte zajímavou komponentu systému, pro hračičky pak GUI.
Předpokládám, že si zbytek domyslíte.
Pak si můžete, s AJAXEM, vyrobit i ta klikátka do vašich stránek.
Odhaduji to na jeden víkend.
Čtení ponechám na vaše mobily.
Nebo snad ne?
E51 s http://zxing.appspot.com/generator/ funguji, treba se to nekomu hodi :)
Můj starší mobil N73 se softwarem i-nigma si zatím poradil asi se vším, i poškozený kód přelepeý izolepou co navlhla a zbělela.
Kód může být i otočený o libovolný úhel. Pokud nokia nezaostří okamžitě, stačí stisknout tlačítko a telfon si zaostří nebo i přisvítí v nepříznivých podmínkách.
Jen doporučuji vyzkoušet tuto kombinaci
Ahoj,
asi nejvíc info o qr kodech jsem našel na http://www.qr-kody.cz/
tam jsem si vytvořil i svuj vlastni qr kod :) Qr kody jsou fakt pecka. Planuji si udelat popisky tištěných fotoalb přes qr. Snad se k tomu někdy dokopu.
Mě na článku nejvíc zaujalo: "program vše udělá automaticky. Obvykle ani není třeba stisknout tlačítko pro focení. ... Inteligentnější aplikace dokáží rovnou provést standardní událost podle obsahu kódu".
Takže jdu s "chytrým" mobilem po ulici a chci fotit .. a mám to. Při kapce smůly přinejmenším výborný způsob, jak lidem nacpat do mobilů nechtěné kontakty na reklamu, další možnosti každý snadno domyslí.
Zdá se mi, že možnosti zneužití jsou větší, než možnosti využití. Hračičku s trikem s QR znaky chápu jako legraci, ale tu technologii teda rád nevidím.
Vážení, jak to čtu, stále tu řešíte co QR nejlépe přečte. Já mám problém opačný. Potřebuji ho v tabulce Libre office nebo případně excelu vytvářet. Zapisovat do QR kódu údaje v buňkách. Aplikace na webu se mi nehodí, protože bych všechny údaje musel opisovat a pak kopírovat obrázek zpět do tabulky. Nevíte o nějakém makru, které by to umělo a šlo dát jako odkaz do šablony?
Předem dík moc za rady