Internet

Jak jsem vytvořil projekt za 86 milionů dolarů v 57 řádcích kódu

07. 10. 2017 | 2 komentářů

Dovolujeme si uveřejnit překlad článku Taita Browna, vývojáře a designéra aplikací z australského Melbourne. Dokazuje, že některé funkční aplikace jde s trochou zkušeností, invence a orientace v problematice vytvořit za řádově nižší náklady, než kolik za ně platí vlády. 
Překlad: Jan Loužek
Zdroj: https://medium.freecodecamp.org/how-i-replicated-an-86-million-project-in-57-lines-of-code-277031330ee9

Aplikace Austrálie

Když se experiment s open-source nástrojem podaří a dobře funguje

Stát Victoria má v rámci Austrálie svůj policejní sbor. Loni zde přitom bylo ukradeno na 16 tisíc aut a škoda dosáhla výše 170 milionů australských dolarů. I proto se místní policie snaží investovat do nových technologií, které by umožnily snížit počet krádeží.

V současné době například existuje internetová stránka VicRoads, kde si lze ověřit stav registrace vozidla. Ta patří mezi ty úspěšnější nástroje v boji proti krádežím aut. Policie rovněž nainstalovala skenery registračních značek na místa, kudy jezdí hodně aut, díky čemuž dokáže ukradená vozidla lépe identifikovat. 

Jednoho dne mě napadlo, že by vůbec nebylo špatné vytvořit zařízení, které bychom mohli dát do auta, a které by automaticky upozornilo na to, že vozidlo bylo ukradeno nebo není registrováno. A protože jednotlivé části už k dané věci existují, bylo mi jasné, že by nebylo moc těžké takové zařízení vytvořit.

Chvíli jsem googlil jak by to šlo udělat a zjistil jsem, že policie státu Victoria v nedávné době uskutečnila výběrové řízení na něco podobného. Paradoxně vyhrála nabídka za cca 86 milionů australských dolarů. Podle jednoho komentáře pod článkem tak při 220 ukradených vozidlech prevence jedné krádeže vyjde na 390 909 AUD.

Řekl jsem si, že to lze dělat lépe a levněji.

Austr2

Současné nástroje na rozpoznávání registračních značek

Kritéria úspěchu

Než jsem začal cokoliv dělat, tak jsem si definoval pár klíčových požadavků pro uvedený systém.

Obraz musí být zpracován lokálně.

Streamování živého videa pro jeden centrální server se ukázalo být jako ne zrovna dobrý nápad. Jednak bychom museli přenášet velké množství dat a policie by se nedoplatila za internetové připojení, jednak by se tím zpomalilo fungování sítě pro policii obecně. 

Proto jsem vyškrtl myšlenku centralizované jednotky, která ale měla tu výhodu, že by se dokázala v rozpoznávání značek postupem času stále více zdokonalovat. Musel jsem tedy zjistit, jestli implementace jednotlivých zařízení přímo v policejních vozidlech bude fungovat dostatečně dobře. 

Software musí zvládnout obraz v nízkém rozlišení

Neměl jsem bohužel pro svůj pokus kvalitní videokameru, a tak jsem musel použít běžnou kameru v autě. Ta může nahrávat okamžitě a navíc jsou v ní hodiny záznamu, které lze použít. V reálu neočekávám, že by policie měla k dispozici lepší kamery, než tuto, takže se vlastně bude jednat o test ve skutečných podmínkách.

Je potřeba stavět na open-source technologiích.

Pokud spoléháte na proprietární software, musíte při každé změně svého nástroje žádat o změnu a schválení příslušného updatu. Je to nekonečný proces, který akorát vytváří nesčetná čekání a zbytečně zpomaluje všechnu práci. S open-source technologiemi vše funguje automaticky.

Řešení

Postup, který jsem navrhl, pracuje s obrazem získaným z kamery ve vozidle a následně jej prožene lokálně nainstalovaným open-source rozpoznávacím systémem.

Výsledná data jsou zaslána on-line nástroji na registraci vozidel. Co projde tímto postupem, se následně zobrazí na displeji. Osádka policejního vozidla pak vidí výrobní číslo vozidla, modelové označení (takže může zjistit, jestli nebyly ukradeny pouze registrační značky), stav registrace a upozornění, jestli byla krádež vozidla nahlášena.

Zní to jednoduše – a jednoduché to opravdu je. Zpracování samotného obrazu dokáže např. knihovna openalpr. Nic víc není v celém procesu vlastně potřeba: 

Austr3

Pozor

Veřejný přístup k API VicRoads není přístupný, takže bylo nezbytné kontrolu registračních značek proscrapovat. I když to byla drobná překážka, ničí servery za to rozhodně kritizovat nebudu.

A takto moje scrapování vypadalo: 

Austr4

Výsledky

Musím říci, že jsem byl příjemně překvapen.

Očekával jsem, že open-source řešení bude v tomto případě velmi mizerné. Navíc to, co se přirozeně nabízí, není žádným způsobem přizpůsobeno na registrační značky, které máme v Austrálii.

Navržené řešení ale dokázalo rozpoznat značky téměř všude a téměř všechny. 

Austr5

Anotace přidány pro větší názornost. I když obraz zkreslovaly odrazy a nevhodná čočka, výsledek byl dobrý.

Občas se vyskytly problémy s některými písmeny. 

Austr6

Zařízení si pletlo M a H.

Opravy nicméně přinesly přesné výsledky. 

Austr7

O několik obrazů později je M správně identifikováno s vyšší mírou jistoty.


Jak můžete vidět u dvou obrázků nahoře, stačilo jen nechat pro analýzu registrační značky udělat více snímků a přesnost se zvýšila z 87 % na 91 %.

Stačí zaznamenat registrační značku vozidla po delší dobu a výsledky budou ještě lepší. Počítač si poté vybere ten rozpoznaný výsledek, který měl nejlepší hodnocení. Alternativně lze nastavit, že software bude pracovat pouze s takovými výsledky, kde byla jistota rozpoznání minimálně 90 %. Poté dá výslednou značku k validaci. 

Tím jsem opravil kód velmi jednoduše a ani jsem nemusel počítat s tím, že by kvůli odlišnostem australských registračních značek bylo potřebné samotný software nejdříve upravit. 

Otázka za 86 milionů dolarů.

Upřímně řečeno netuším, co stojí na policejní zakázce 86 milionů dolarů. Ani nemohu mluvit o přesnosti open-source nástroje, který není přizpůsoben na australské poměry ve srovnání s pilotním systémem BlueNet, který policie zavádí.

Očekával bych, že část z těchto peněz půjde na nahrazení několika starších databází a softwarových aplikací, které budou muset rychle vyhodnocovat obrazy z kamer, zaznamenávajících registrační značky.

Cena cca 390 tisíc na vozidlo je poměrně vysoká, když navíc vezmeme v úvahu fakt, že společnost BlueNet nemá zrovna nejpřesnější software. V současné době navíc žádný rozsáhlý IT systém, který by rozpoznával dopravní značky, nasazen není.

Budoucí užití

Dalo by se poměrně snadno říci, že takovou technologii lze zneužít k dokonalému sledování všech řidičů. Má však i své pozitivní stránky. Dokáže například zaznamenat vozidlo únosce a automaticky informovat policii a příbuzné tak, aby věděli, kde se unesený člověk nachází.

Automobily značky Tesla dnes vyjíždějí z továren přímo napěchované různými kamerami a senzory. Představte si, že bychom jejich schopnosti dokázali do tohoto systému zapojit. Auta mají navíc připojení na internet, a tak je možné do nich uvedený software nahrát stejně, jako na telefon. Představte si, že by najednou tisíce aut dokázaly odhalit případné zloděje, únosce nebo narušitele pořádku. Podobná zařízení mohou mít i řidiči služeb, jako je např. Uber, nebo Lyft. Tím by se podstatným způsobem zvýšilo pokrytí silniční sítě. Zloději by se pak neměli kam schovat. 

Díky open-source softwaru a využití již existujících technologií a možností lze nabídnout řešení, které by stálo méně než 86 milionů dolarů, a které by dosáhlo mnohem vyšší míry návratnosti. 

Autor: Tait Brown

Štítky: #Austrálie #policie #poznávací značky #registrace #registrační značky #scanner

Komentáře k článku

Adam Růžička, Ostrava 27.10.2017 23:43

Je to lákavé řešení ale zneužití takového systému, k nevhodným účelům může vést paradoxně k totální kontrole a ne svobodě.

Palo 14.10.2017 22:49

Žel každý stát/vláda je vědomě či nevědomě TUNELOVÁNA.
-
V monopolním prostředí se navíc tuneluje velmi jednoduše :((
-
Další kapitolou je Crony capitalism nebo lépe Korporátní socialismus ...

Facebook Pirátské listy Twitter Pirátské listy Redakce Pirátských listů Česká pirátská strana
Redakce | Kontakt | Piráti | Facebook | Twitter | RSS články | RSS aktuality

Copyleft Pirátské listy. Publikování nebo další šíření obsahu serveru Pirátské listy je umožněno i bez písemného souhlasu. Všechna práva vyhlazena.