Tegnap este azt hittem, hogy valami újat találtam fel, valami olyat, amire még senki sem gondolt, valami hihetetlen dolgot, ami biztosan megváltoztatja a világot. Mi lenne, ha QR-kód, de RGB? Kiderült, hogy már több megoldás és megvalósítás is létezik erre a dologra, mint például ez a 3 éves repo vagy ez a cikk a Hackaday-en. Ez egy kicsit elkedvetlenített, látva, hogy ezeket valójában senki sem használja, azonban egyik sem egészen olyan, mint amit elképzeltem, így megpróbáltam megcsinálni a sajátom. Ezt 3DQR-nek fogom nevezni.
Amit én akarok, az 3 különböző QR-kód 1 helyett. Ez könnyen megvalósítható, ha egy RGB kép egyes csatornáit veszem, és minden csatornába más QR-kódokat illesztek. Az olvasón elméletileg egyszerűen feloszthatom a kameraképet RGB-re, és minden csatornát külön-külön futtathatok egy QR-kóddetektoron. Generáltam is 3 QR-kódot valamilyen online eszközzel, majd Photoshopban összevontam őket, aminek eredményeképpen ez a színes dolog jött létre:
Ezután lefényképeztem a telefonommal a képernyőt, és megpróbáltam megnézni, hogy szét tudom-e bontani a QR-kódot. Elég jól sikerült, a zöld csatorna valamiért kicsit kényes volt, de egy kis kontrasztnövelés segített.
Megerősítve, hogy ez működik, összedobtam egy kis webes “alkalmazást”, amely ezt OpenCV.js segítségével végzi. Kiderült, hogy van benne egy QR-kód dekóder is, így eggyel kevesebb dolog miatt kell aggódni. Az eredményül kapott alkalmazás a legjobb esetben is lassú és nyűgös, és egyáltalán nem optimalizált - már az OpenCV 10 MB-ot foglal el, de biztos vagyok benne, hogy ezen lehet javítani, ha valaki kedvet kap hozzá.
Most jön a nagy kérdés: Miért? Mire jó ez? Nem tudom. Az egyetlen dolog, amire gondolni tudok, a multiplatformos alkalmazások gyorslinkjei, például az Android a zöld csatornát figyeli, az iOS a kék csatornát, a piros pedig tartalék link. Vagy több fizetési processzorhoz.
Mindegy, kisütött a Nap, kimegyek.