Operácie

Rozpoznávanie čiarových kódov: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Bez shrnutí editace
Balogh (diskusia | príspevky)
Bez shrnutí editace
Riadok 1: Riadok 1:
Modifikované cvičenie  na DOMA:
Modifikované cvičenie  na DOMA:


'''Úloha č. 1:'''  
 
== '''Úloha č. 1:''' ==


Nájdite doma ľubovoľnú šošovku a odmerajte jej ohniskovú vzdialenosť. Metódu merania si vymyslite, meranie a jeho výsledky
Nájdite doma ľubovoľnú šošovku a odmerajte jej ohniskovú vzdialenosť. Metódu merania si vymyslite, meranie a jeho výsledky
Riadok 11: Riadok 13:




'''Úloha č. 2:'''
 
== '''Úloha č. 2:''' ==
 


Pomocou kamery vo svojom notebooku alebo mobile rozpoznajte čo najviac z týchto čiarových kódov. Za každý rozpoznaný kód je jeden bod. Pri demonštrácii správnej funkcie musíte ukázať viac ako jeden úspešný pokus a musíte tiež predviesť, že vám program nerozpoznáva kódy nesprávne (napríklad, ak niekto dokáže detekovať len A,  
Pomocou kamery vo svojom notebooku alebo mobile rozpoznajte čo najviac z týchto čiarových kódov. Za každý rozpoznaný kód je jeden bod. Pri demonštrácii správnej funkcie musíte ukázať viac ako jeden úspešný pokus a musíte tiež predviesť, že vám program nerozpoznáva kódy nesprávne (napríklad, ak niekto dokáže detekovať len A,  
Riadok 18: Riadok 22:
[[Súbor:CameraLineSensorSample.png|400px]]
[[Súbor:CameraLineSensorSample.png|400px]]


Návod:
'''Návod:'''


Prepojenie kamery a spracovanie obrázku v Processingu už viete z minulého cvičenia. Nižšie máte ukážkový program, ktorý zobrazí v okne
Prepojenie kamery a spracovanie obrázku v Processingu už viete z minulého cvičenia. Nižšie máte ukážkový program, ktorý zobrazí v okne
Riadok 25: Riadok 29:


[[Súbor:CameraLineSensorExample1.jpg]]
[[Súbor:CameraLineSensorExample1.jpg]]
 
'''
Čo ďalej?  
Čo ďalej?'''


Stanovte si nejakú rozhodovaciu úroveň (threshold), od ktorej vyššie budete považovať farbu za bielu, a od ktorej nižšie za čiernu.  
Stanovte si nejakú rozhodovaciu úroveň (threshold), od ktorej vyššie budete považovať farbu za bielu, a od ktorej nižšie za čiernu.  
Riadok 49: Riadok 53:




'''Vzorový program'''
<source lang="c">


</source>


[[MEMS inteligentné senzory a aktuátory#Cvi.C4.8Denia|Návrat na zoznam cvičení...]]
[[MEMS inteligentné senzory a aktuátory#Cvi.C4.8Denia|Návrat na zoznam cvičení...]]


[[Category:MEMS]]
[[Category:MEMS]]

Verzia z 10:16, 22. marec 2020

Modifikované cvičenie na DOMA:


Úloha č. 1:

Nájdite doma ľubovoľnú šošovku a odmerajte jej ohniskovú vzdialenosť. Metódu merania si vymyslite, meranie a jeho výsledky zdokumentujte a nahrajte do classroomu.

Inšpirovať sa môžete napríklad týmto LEGO strojom na meranie ohniskovej vzdialenosti šošoviek:



Úloha č. 2:

Pomocou kamery vo svojom notebooku alebo mobile rozpoznajte čo najviac z týchto čiarových kódov. Za každý rozpoznaný kód je jeden bod. Pri demonštrácii správnej funkcie musíte ukázať viac ako jeden úspešný pokus a musíte tiež predviesť, že vám program nerozpoznáva kódy nesprávne (napríklad, ak niekto dokáže detekovať len A, nesmie jeho program ako A označiť aj B alebo C, ale práve len A).

Návod:

Prepojenie kamery a spracovanie obrázku v Processingu už viete z minulého cvičenia. Nižšie máte ukážkový program, ktorý zobrazí v okne okrem obrazu z kamery aj úroveň jasu jedného (prostredného) riadku. Úroveň jasu (brightness) sa pohybuje od 0 (čierna) po 255 (biela). Obraz z kamery viete v okne zapnúť/vypnúť klávesou 'c'.

Čo ďalej?

Stanovte si nejakú rozhodovaciu úroveň (threshold), od ktorej vyššie budete považovať farbu za bielu, a od ktorej nižšie za čiernu. Tým dostanete riadok hodnôt len s dvoma hodnotami - čiernou a bielou, napr. 0 a 1.

Nás teraz zaujíma počet pásikov v obraze. Jedna možnosť ako to spočítať, je zistiť, koľko zmien 0->1 sa v poli nachádza. Mimochodom - zmena je vlastne derivácia, ktorá sa v diskrétnom priestore spočíta ako rozdiel dvoch po sebe idúcich hodnôt. Môžete teda pole "zderivovať" a potom už len spočítať, koľko je tam kladných zmien (a prípadne pre istotu porovnať, či je tam aj rovnaký počet záporných zmien). Týmto postupom viete zistiť, koľko čiernych prúžkov v obrázku máte a nebude to ani závislé od ich šírky.

Ak chcete naviac porovnať aj šírku pásikov, pomôže vám domáca úloha z Repl.it.


Pozn. 1: možno bude rozpoznávanie spoľahlivejšie, ak zahodíte zopár pixelov na oboch okrajoch obrazu.

Pozn. 2: úlohy nie je nevyhnutné riešiť v Processingu, môžete použiť ľubovoľný programovací jazyk a prostredie, v ktorom viete pracovať.

Pozn. 3: Predloha vzorov http://senzor.robotika.sk/sensorwiki/images/d/d6/CameraLineSensorSample.png


Vzorový program

Návrat na zoznam cvičení...