Udvikler: Open source-kode kan erstatte milliondyrt projekt

Hvorfor udvikle fra bunden, når noget kan gøre billigere med allerede tilgængelige open source-værktøjer, spørger en australsk udvikler.

I 2015 fik politiet i den australske delstat Victoria en anbefaling om at montere kameraer i patruljevognene. Kameraerne skulle kobles op til et it-system til automatisk genkendelse af nummerplader og systemer, som kan informere om, hvorvidt køretøjet f.eks. er stjålet.

Det skriver digi.no. Systemet minder meget om det danske ANPG nummerpladescanning-system, som dansk politi har haft det seneste år.

Pris? 86 millioner australske dollars for udstyr i 220 patruljebiler. Det svarer til cirka 2,4 millioner kroner pr. patruljebil.

Systemet, som kaldes BlueNet, blev pilottestet i seks patruljebiler i omkring et år i 2014 og 2015. I løbet af perioden bidrog systemet til at afdække over 16.000 lovbrud.

Tait Brown, som er australsk udvikler, havde læst om pilottesten og bestemte sig for at finde ud af, om det kunne gøres billigere. Følgende kriterier skulle opfyldes:

  • billedbehandlingen skulle udføres på den lokale enhed
  • systemet skulle kunne fungere med billeder i lav opløsning
  • det skulle bygges på open source-teknologi

Velfungerende prototype

Det enkleste havde måske været at bruge en Raspberry Pi eller tilsvarende enhed med et USB-kamera. Men siden Brown ikke havde nogen af delene, valgte han at bruge billeder fra sit almindelige dash-kamera, altså et kamera som er monteret i bilen.

Billederne fra dash-kameraet sendes til et enkelt system, så nummerpladerne kan analyseres. Tait Brown valgte at bruge open source-biblioteket OpenALPR, som bygger på OCR-biblioteket Tesseract OCR og computer vision-biblioteket OpenCV.

Brugen af billedbiblioteket handler primært om at sende billedfiler til OpenALPR ved hjælp af en tekstkommando og få registreringsnummeret tilbage sammen med en procentvurdering af, hvor sikker tolkningen er. Det vil som udgangspunkt kunne gøres med én kodelinje. OpenALPR understøtter både billed- og videofiler som input, men også videostream.

57 linjer

Derudover behøves der et lille script for at tjekke køretøjet. Politiet og andre myndigheder i Victoria kan gøre dette ved at bruge API’er, som tilbydes af vejvæsnet i staten, VicRoads. Men Tait Brown har ikke adgang til dette, så han har i sin prototype i stedet lagt et JavaScript på 57 linjer, som benytter denne offentligt tilgængelige tjeneste.

Selv om det drejer sig om en relativt grov og ufuldstændig prototype, viser den i princippet, at med de rette API-tilgange er det en smal sag at udvikle et billigt system, som løbende kan tjekke oplysninger om motorkøretøjer baseret på genkendelse af nummerplader.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (13)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Povl H. Pedersen

Her er et godt eksempel, hvor man får foræret 90% af funktionaliteten hvis man vælger det. Rigtigt mange løsninger kunne bygges på samme måde.

Det eneste specifikke der skal laves er kaldet til backend systemet, som forhåbentlig er udviklet med et anvendeligt API.

Man kommer rigtigt langt for 1000 kr pr. bil i hardware + noget dataforbindelse, der forhåbentlig deles med resten af bilens systemer. 1 mio + 10.000 kr/bil, så er der også penge til leverandøren.

Joe Sørensen

Ja, det er faktisk et glimrende eksempel.

For det første er det et eksempel på en succes.
Det har kostet 86 mill. for de første 220 biler. Jeg går ud fra at systemet bliver meget billigere for de næste politibiler. Og systemet virker efter hensigten. Så dette er ikke et eksempel på at man forgæves har smidt gode penge ned i et bundløst hul i håb om at noget skulle flyde op til overfladen. De har faktisk fået det aftalte produkt.

Og så er dette også et eksempel der viser at en dygtige person kan udvikle noget som 100 udviklere med tilførende stab af jurister mv. ikke kan gøre lige så godt. Jeg kunne godt tænke mig at vide hvor de 86 mill er havnet. Fx hvor stor de penge der har gået til udvikling og hardware. Mit gæt er at det er en forsvindende lille del.
En stor del er sikkert gået til cover-my-ass aktiviteter.

Bjarne Nielsen

Helt sikkert en fin løsning, men desværre er opgaven misforstået.

Opgaven er ikke at kunne eftersætte biler med stjålne nummerplader eller forsikringsrestancer ... det har en patruljevogn på arbejde nemlig kun sjældent tid til (lyt f.eks. hen imod slutningen her).

Det, som der ønskes, er derimod GPS position og billede af fører og forsædepassagerer på alle biler som passeres i løbet af dagen til backend systemerne - ikke kun dem med stjålne nummerplader eller restancer. Fordi ... terror!

(spor af ironi kan forekomme)

Maciej Szeliga

BEEP - Der er SLET ikke interesse i at gøre det billigt - det skal være Windows, .NET og MS-SQL server eller Windows, Java og Oracle, fordi det er det som konsulenthusene siger at der er fremtid i og det er det konsulenthusene siger at er sikkert - og så er virkeligheden (og også prisen) totalt irelevant.

Lige så snart vi finder et anerkendt konsulenthus som vil løbe rundt og påstå at FOSS er bedre, billigere og sikrere end Microsofts formidable pakke af billige standardløsninger (TM) så vil nogen måske overveje det.

Jacob Gorm Hansen

Nu har jeg for nyligt testet openapr, og den version man kan downloade er uhyggeligt ringe, i det mindste til DK-nummerplader. Der er en web-service som koster penge at bruge, og den er lidt bedre, men stadig ikke specielt imponerende. Tesseract er klassisk OCR-software fra 80erne, og ret langt bagefter i forhold til hvad man kan i dag.

Morten Jensen

OCR-delen bør ikke være super vanskelig.

Er der ikke kun tale om én font? Og bortset fra custom-nummerplader, kender du vel formatet: to bogstaver, fem tal.

Anekdote: Jeg har selv haft stor succes med hjemmelavet OCR implementeret som en simpel K-Nearest-Neighbours algoritme, til at klassificere bogstaver og tal efter at være "trænet" på et datasæt.

Simon Mikkelsen

Det er slet ikke kernefunktionaliteten som er det dyreste i sådan et projekt. Bare at skrive et tilbud og vinde er rigtig dyrt. Så er der alt politikken og integration til diverse dimser, måske krav om noget bestemt authentication, særlige krav til logging, ligesom hardware i biler måske skal være godkendt til at efterleve en masse krav.

Jeg går selv ind for open source, men man kan ikke sammenligne et færdigt system der nogen lunde lever op til kundens krav og sammenligne det med en proof of concept. Det er som at sammenligne æbler og pæretræer.

Morten Bøgh

Den oprindelige arktikel i digi.no er mere nuanceret (og længere...) end version2's meget positive resume. Digo.no skriver bl.a. om en afprøvning af systemet med scanning af nummerplader i realistiske omgivelser: "Med en suksessrate på omtrent 1/877 er det langt igjen før OpenALPR er på nivå hvor det kan være til særlig nytte."
Så et eller andet sted mellem det australske politis hundedyre system, og en open source løsning til 1000 kr ligger den gode løsning måske.

Lasse Mølgaard

Så er der alt politikken og integration til diverse dimser, måske krav om noget bestemt authentication, særlige krav til logging, ligesom hardware i biler måske skal være godkendt til at efterleve en masse krav.

Her er vi vist ude i noget cover-my-***. :-)

Authentifikation: Tjah om man skal autenficeres imod et Linux eller Windows miljø er en relativt triviel opgave. To faktor har jeg jeg ikke selv erfaring med, men er vi kun ude i "et spørgsmål om rette hardware"?

Så er der selve hardwaren i bilen. Er der nogen der kan komme med eksempler på hvad vi er ude i her?

Finn Aarup Nielsen

Jeg har ikke fulgt med i ANPG, og havde egentlig troet at det var et "løst" problem (med dyb læring).

Politiet kan vel ikke benytte skyservice, men jeg har prøvet lidt med:
https://www.sighthound.com/products/cloud For danske nummerplader er den ikke al for god.

https://commons.wikimedia.org/wiki/File:Asfaltvogn_01.jpg
Nummerplade korrekt detekteret. Forkert genkendelse af køretøjstype.

https://commons.wikimedia.org/wiki/File:K%C3%B8benhavns_Kommune_mobile_f...
Nummerplade genkendes ikke. Skrå vinkel. Tekst på side genkendes som nummerplade!

https://commons.wikimedia.org/wiki/File:Falck_roadside_assistance.jpg
Nummerplade nummer korrekt genkendt. Omend tilskrives New York. Forkert genkendt bilmodel.

https://commons.wikimedia.org/wiki/File:Mercedes-Benz_Econic,_Copenhagen...
Nummerplade detekteret, men nummer forkert.

https://commons.wikimedia.org/wiki/File:Hollaendervogn_front_view.jpg
Nummerplade detekteret, men nummer forkert. For bil i baggund er nummerpladen detekteret, men nummeret er helt forkert.

Log ind eller Opret konto for at kommentere
Brugerundersøgelse Version2
maximize minimize