Demo: DisplayLezer op de RaspberryPi

Tijdens onze testen de testmethode om de displayLezer functionaliteit te testen op een RaspberryPi verbeterd. Hieronder een beschrijving van hoe we dat gedaan hebben. Deze demo kan alleen uitgevoerd worden als de RaspberryPi correct is geïnstalleerd en de rekenmachine repository er op staat. De installatie handleiding is te vinden op de Raspberry Pi.

De opstelling

Met een simpel gemaakte opstelling m.b.v. ijzerdraadjes, witte A4tjes en een schoenendoos, hebben we een manier gevonden om externe factoren zoveel mogelijk uit te sluiten. Uitsluiten van externe factoren is nodig omdat we merkte dat zaken als schaduw en fel licht de uitkomsten beïnvloede van het testen. Na de installatie van de RaspberryPi kun je, bijvoorbeeld via VNC viewer, de projectbestanden clonen op de Pi. Om te zorgen dat de RaspberryPi camera de rekenmachine goed kan lezen moet je de volgende opstelling bouwen:

crop design

Om te de zorgen dat je de externe factoren moet je de bovenstaande opstelling in een (schoenen)doos zetten.

crop design

Door er wat wat A4tjes overheen te leggen zorg je er voor dat er difuus licht op de opstelling komt. Zorg er dus wel voor dat de doos in een goed verlichte ruimte staat! Veel TL-licht is prima, direct zonlicht is beter. De opstelling komt er dan uiteindelijk zo uit te zien:

crop design

De demo

Zet de rekenmachine aan en druk wat willekeurige nummers in. Door de onderstaande code uit te voeren op de Raspberry Pi, kun je de demo draaien.

$ source ~/.profile          # always update file for virtual environment when opening terminal
$ workon rr                  # always work in the virtual environment when running a script on the raspberryPi
$ cd ~/pathways-extensions-training/RekenRobot/Src/DisplayLezen/Demo         # naviagate to the right directory
$ python 'namefile'.py       # run the script of the demo
Bij het draaien van de demo kun je een aantal keuzes maken:
  • Versie van de demo –> Op het moment van schrijven werkt optie 3: ManualDetect het beste
  • Manier van preprocessen –> Hiermee wordt het plaatje klaargemaakt voor de OCR. Kies optie 1 om een snelle demo te laten zien, kies andere opties om het verschil te laten zien (je kunt er meerdere tegelijk kiezen, gescheiden door een “, “).
  • Maak nu een vierhoek om het rekenmachine schermpje, het liefst net iets buiten de schermranden.
    • Druk op “r” als de crop is mislukt om het croppen te herstarten
    • Druk op “c” om verder te gaan
    • Druk op “q” om de demo te stoppen.
  • De demo laat nu live zien welke getallen er in het venster van de rekenmachine staan.
    • Druk op “r” om de crop te herstarten (omdat de rekenmachine scheef is gaan liggen)
    • Druk op “q” om de demo te stoppen.

De voordelen

  • Stabiele rekenmachine positie ten opzichte van de Raspberry Camera. Dus geen onhandig gedoe met de rekenmachine en camera stil proberen te houden.
  • Beeldkwaliteit van het display hoog. Schaduws een weerspiegelingen zijn zoveel mogelijk geminimaliseerd.

De nadelen

  • De lichtinval en intensiteit is nogal variabel door dat de rekenmachine in de schaduw ligt van het laptopscherm.
  • Voor de besturing van de rekenmachine de A4tjes verwijderd worden.

Voortschrijnend inzicht

Buiten sluiten van externe factoren kan veel beter! Denk aan het opstelling waarmee je helemaal niet meer afhankelijk bent van externe factoren. Dan kun je d.m.v. een goede lamp met difuus licht

Uiteindelijk zou het mooi zijn als de DisplayLezer in elke situatie kan lezen. Maar om goed te kunnen begrijpen wat de modules en programma’s doen, is dit voor nu goede oplossing.