MANIPULATOARE SI ROBOTI INDUSTRIALI -...

Post on 03-Sep-2019

27 views 0 download

Transcript of MANIPULATOARE SI ROBOTI INDUSTRIALI -...

ROBOTI INDUSTRIALI 1

Vederea artificiala

• Un robot lucrand in lumea reala poate realiza

sarcini multiple fara a utiliza vederea artificiala

• Cu cat lumea perceputa de robot devine din

ce in ce mai putin perfecta, viziunea va deveni

din ce in ce mai importanta pentru robot,

ajutandu-l sa se adapteze schimbarilor si

circumstantelor necunoscute.

ROBOTI INDUSTRIALI 2

Viziunea umana

• Serveste atat ca sistem senzorial pentru distante scurte cat

si pentru distante lungi

• Organul de procesare al imaginii : OCHIUL

• Informatia vizuala plecand de la ambii ochi urmareste doua

cai numite:

• calea informatiei “ce a fost vazuta”

• calea informatiei “unde a fost vazuta scena sau

obiectul”.

ROBOTI INDUSTRIALI 3

Viziunea umana

ROBOTI INDUSTRIALI 4

Ochiul unei muste

Marit de

200 de ori

ROBOTI INDUSTRIALI 5

Etapele viziunii umane pe care le-

am dori realizate de catre roboti

Procesul viziunii porneste de la momentul

observarii unui obiect care este iluminat de

o sursa de lumina observabila.

SURSA DE ILUMINARE – pentru om –

consta in energie electromagnetica din

domeniul vizibil.

Spectrul Electromagnetic

ROBOTI INDUSTRIALI 6

Spectru Vizibil

700 nm 400 nm

ROBOTI INDUSTRIALI 7

Etapele viziunii umane pe care le-

am dori realizate de catre roboti

Ochiul converteste energia luminoasa in

semnale electrice care pot fi procesate de catre

lantul sistemului vizual.

In cadrul acestui sistem, semnalul este analizat

pentru detectarea miscarii si marginilor, apoi, a

liniilor, a formelor si in final pentru intelegerea

imaginii.

ROBOTI INDUSTRIALI 8

Senzorul vizual - OCHIULActioneaza ca o camera de luat vederi inteligenta procesand

informatia inainte de a o transmite la creier.

Comparatie

9

Sase muschi extraoculari (fixeaza

globul ocular in orbite)

CMUcam2+

ROBOTI INDUSTRIALI 10

Etape in extragerea

caracteristicilor scenei

Detectare contururi - procesul de gasire a marginilor intre

diverse arii cu intensitati luminoase diferite ale energiei

vizuale. Sarcina realizata de catre ochiul uman.

Detectare miscare - procesul de detectare a lucrurilor care

se misca in campul vizual. La om acest proces are loc la

nivelul creierului (mesencephalon).

ROBOTI INDUSTRIALI 11

Etape in extragerea

caracteristicilor scenei

Detectare linii obiecte - procesul de reprezentare a

marginilor identificate sub forma de linii.

Detectare forma obiecte - procesul de preluare a liniilor

detectate si studiul in a identifica daca acestea formeaza

obiecte de forme cunoscute.

ROBOTI INDUSTRIALI 12

Perfomanta sistem de viziune

uman si animal

Capacitati deosebite in a

recunoaste obiecte

plecand de la

vizualizarea numai a

unor parti ale acestora.

Abilitatea aceasta

provine din experienta.

ROBOTI INDUSTRIALI 13

Etape in extragerea

caracteristicilor scenei

Intelegerea scenei - procesul final din lantul de procesare a

informatiei vizuale. Uneori nici oamenii nu finalizeaza acest

pas.

Culoare, Nuante, Textura – informatii suplimentare asupra

scenei vizualizate.

ROBOTI INDUSTRIALI 14

Etape in extragerea

caracteristicilor scenei

Informatie preconizata – informatie care ia

in calcul experienta umana => cheia

procesarii atat de rapide in sistemul de

viziune umana. Utilizarea acestui tip de

informatie reprezinta in fapt o filtrare. Ajuta

la reducerea supraincarcarii cu informatie.

ROBOTI INDUSTRIALI 15

Etape in extragerea

caracteristicilor sceneiAlt mod de evitare al captarii excesului de informatie – operare

cu senzori vizuali cu intrerupere controlata si detectare de nivel

luminos.

Controlul intreruperii unui dispozitiv tip senzor vizual conduce

la furnizarea informatiei catre procesor numai in momentul in care

intrarea contine ceva nou, unic de analizat.

Detectie nivel informatie vizuala – permite intrarii sa solicite o

intrerupere numai cand noua informatie primita constituie o

modificare fata de informatia anterioara cu cel putin un nivel

anterior setat al unei caracteristici a informatiei vizuale.

ROBOTI INDUSTRIALI 16

Ce intelegem dintr-o imagine ?

FLY

pe verticala

ROBOTI INDUSTRIALI 17

Ce intelegem dintr-o imagine ?

WIN

pe verticala

ROBOTI INDUSTRIALI 18

Ce intelegem dintr-o imagine ?

ROBOTI INDUSTRIALI 19

Ati vazut si tanara doamna ?

ROBOTI INDUSTRIALI 20

Sistemul de viziune artificial

Obiect

Elem.

sensibile

Convertor

semnal optic

in electric

Reprez.

Imag.

Extrag.

caract.

Caract.

Obiect

Caract.

Obiecte

Actiune robot

Lumina

reflectata Senzori vizuali

Recunoastere totala sau partiala

+ -

ROBOTI INDUSTRIALI 21

Analizoare de imagine cu matrice

de diode

Cir

cuit

de

ad

resa

re s

i ta

ct

Reg

istr

u

Poarta de

transfer

Poarta de

transfer

Poarta de

transfer

Registru

de citire

Matrice

bidimensionala

de fotodiode

start

ROBOTI INDUSTRIALI 22

Analizoare de imagine cu tub

Vidicon

Constructia tubului Vidicon

ROBOTI INDUSTRIALI 23

Analizoare de imagine cu tub Vidicon

Schema electrica

echivalenta

Acest analizor realizeaza

prelucrarea imaginii linie

cu linie printr-un baleiaj

al tintei cu un fascicul

electronic emis de un tun

electronic, sub actiunea

unor campuri electrice si

magnetice.

ROBOTI INDUSTRIALI 24

Captarea imaginii

Imginea este captata de catre

un senzor ( camera TV

monocroma sau color) si

digitizata.

Daca iesirea senzorului nu

furnizeaza deja semnalul in

forma digitala, se utilizeaza un

convertor analog-digital.

ROBOTI INDUSTRIALI 25

Captarea imaginii

Camera video are 2 parti:

Lentile care colecteaza tipul de

radiatie corespunzator emis de

catre obiect si care formeaza

imaginea obiectului real.

Un dispozitiv semiconductor

CCD care converteste radiatia

planului de imagine in semnal

electric.

ROBOTI INDUSTRIALI 26

“Frame Grabber”

“Frame grabber” – circuite

care digitizeaza semnalul

electric furnizat de

senzorul de imagine

pentru a stoca imaginea

in memoria RAM a

calculatorului.

Reprezentare imagine

Imaginile sunt reprezentate printr-o functie

intensitate luminoasa f(x,y) unde:

– x si y sunt coordonate spatiale;

– Valoarea functiei f este proportionala cu

luminozitatea (nivel de gri) imaginii.

O imagine digitala u(m,n) este reprezentata

printr-o matrice (nr. liniei si al coloanei

identifica punctul imaginii iar valoarea in

matrice indica nivelul de gri al acelui

punct). Un punct = „pixel‟.

Imaginea Imagine : o arie de pixeli bidimensionala

Indicii [i, j] ai pixelilor : valori intregi

Reprezentare Imagine

Pentru stocare in calculator se construieste o matrice ale carei elemente

contin valori de nivel de gri corespunzatoare unui pixel (i,j).

O reprezentare tipica a unei imagini poate contine valori a 256 nivele de

gri (pe 8 biti).

Valorile stocate sunt intre 0-255.

Esantionare, impartire in

pixeli si cuantificare Esantionare

– Imaginea reala este esantionata intr-un numar finit

de puncte.

– Rata de esantionare: rezolutie imagine

Cati pixeli poate avea o imagine digitala ?

e.g.) 640 x 480, 320 x 240, etc.

Pixel

– Fiecare esantion al unei imagini

– In punctul de esantionare = o valoare intreaga a

intensitatii luminoase a imaginii

Cuantificare

– Fiecare esantion este reprezentat pe

un cuvant (word) de dimensiune fixa

in calculator.

– Cate nivele ale intensitatii luminoase

pot fi utilizate pentru a reprezenta

intensitatea intr-un punct de

esantionare ?

– exp.) 28 = 256, 25 = 32, etc.

Interfatare Camera Digitala la CPU

Interfatare la CPU (Central Processing Unit):

• Complet dependenta de specificatiile senzorului camerei

• Senzorii necesita diverse tipuri de protocoale de interfatare

versatilitate proiectare hardware

software foarte complicat

• Tipic: 8 biti paralel (sau 4, 16, serial)

• Necesare multe semnale de control.

Interfatare Camera Digitala la CPU

Senzorii camerelor digitale sunt chip-uri foarte complexe.– prezinta similitudinile unor chipuri de controlere

embedded.

Unii senzori au un buffer prentru datele camerei si permit citirea lenta via handshake (ideal pentru microprocesoare lente)

Multi alti senzori trimit intreaga imagine tip streamdupa semnalul de start– (CPU suficient de rapid pentru a citi, sau sa utilizeze buffer

hardware sau DMA)

Diagrama simplificata a

interfetei camera - CPU

Probleme – Camere Digitale

Problema

• Fiecare pixel de la camera cauzeaza o intrerupere

• Rutinele care deservesc intreruperile dureaza mult, deoarece trebuie sa stocheze valorile registrilor in stiva

• Totul este incetinit

Solutie

• Utilizati buffer RAM pentru imagine si cititi datele intregii imagini cu o singura intrerupere

• Idee

• Utilizare FIFO ca buffer al datelor imaginii

• FIFO este similar unui RAM, si e necesar deoarece nu exista o sincronizare intrecamera si CPU

• Cand FIFO este jumatate plin, se va genera o intrerupere

• Rutina de tratare a intreruperii va citi din FIFO pana il va goli

• (Se presupune o intarziere destul de mica pentru a evita suprascrierea FIFO)

Camere digitale Chip camera nivele de gri : 160×120 pixeli

1 Byte per pixel

Camere digitale

Chip camera color: 160×120 „pixeli‟

Bayer Pattern

1 Byte per patrat

4 patrate formeaza un pixel

Operare pe matricea de

imagine Filtrarea spatiala presupune suprapunerea unei masti cu

ponderi, sau kernel, peste imaginea originala. Valoarea

pixelului din centrul kernelului se va inlocui cu suma

produselor ponderilor din masca cu valorile pixelilor de

sub acestea.

Operatori spatiali pe imagine

Operatie realizata asupra pixelilor vecini

Fiecare pixel va primi ca valoare suma

valorilor ponderate ale pixelilor vecini

Filtru median: diminuare zgomot imagine

Efect de blurare

Masti – detectare contur

Segmentarea Include:

– Lucrul cu nivele de prag (thresholding);

– Detectare contur;

Thresholding – separarea unor portiuni din

imagine pe baza unui prag aplicat nivelelor

de gri.

Etichetare Fiecare grup este etichetat cu o valoare unica; Se

scaneaza imagine si cand se intalneste un pixel

alb, toti vecinii albi din acel grup se eticheteaza cu

aceeasi valoare.

Valoare “1”

Detectare contur

Segmentarea imaginii prin determinarea

diferentelor mari intre 2 portiuni;

Utilizare masca spatiala

Extragere caracteristici

Determinarea caracteristicilor unei imagini segmentate.

Uzual se realizeaza pe o imagine binara, rezultat al unei operatii de thresholding.

Cele mai comune caracteristici extrase:

1. Arie.

2. Perimetru.

3. Centru de masa.

4. Grad de compactizare.

Extragere caracteristici - arie

Algoritm simplu: scanare imagine si

numarare nr de pixeli asignati cu valoare

“2”

Extragere caracteristici - perimetru

Pixeli de pe perimetru

Pixelii de pe o arie (alba), invecinati cu un pixelul etichetat “0”

ROBOTI INDUSTRIALI 48

Imbunatatire calitate imagine

Stergerea unor detalii obscure si imbunatatirea unor

caracteristici de interes ale imaginii.

ROBOTI INDUSTRIALI 49

Recuperarea imaginii initiale

Imbunatatirea aparentei unei imagini

Deseori bazata pe modele matematice sau

probabilistice aplicate imaginii degradate.

Imagine degradataImagine recuperata

ROBOTI INDUSTRIALI 50

Matlab – mediu de lucru si

prelucrare imaginiImagine in nivele de gri

(256*256): 256 linii

for i=1:256

for j=1:256

A(i,j)=j-1;

end

end

image(A);

colormap(gray(256));

axis('image');

ROBOTI INDUSTRIALI 51

Matlab – mediu de lucru si

prelucrare imaginiImagine (256*256) cu un cerc

de raza 80 pixeli:

ROBOTI INDUSTRIALI 52

Matlab – mediu de lucru si

prelucrare imaginiImagine (256*256) cu

modificare graduala a unui

cerc de raza 80 pixeli:

ROBOTI INDUSTRIALI 53

Matlab – mediu de lucru si

prelucrare imaginiImaginile scrise ca matrici N×M:

Cazul „matrice‟ – elementul (i,j) are valoarea A(i,j);

Cazul „imagine‟ – pixelul (i,j) are valoarea A(i,j);

ROBOTI INDUSTRIALI 54

Procesare simpla - transpusa

A B

ROBOTI INDUSTRIALI 55

Procesare simpla – vedere in

oglinda

A B

ROBOTI INDUSTRIALI 56

Procesare simpla - decupare

AB

ROBOTI INDUSTRIALI 57

Statistica imagini - histograma

Histograma unei imagini hA(l), (l=1,…,255) se defineste:

Numarul de pixeli ai imaginii A

ROBOTI INDUSTRIALI 58

Mod de calcul histograma

sau

ROBOTI INDUSTRIALI 59

Exemplul I - histograma

ROBOTI INDUSTRIALI 60

Exemplul II - histograma

ROBOTI INDUSTRIALI 61

Exemplul III - histograma

ROBOTI INDUSTRIALI 62

Procesare digitala la nivel de

punct – obtinere negativ

ROBOTI INDUSTRIALI 63

Comparatie imagine initiala cu

negativ la nivel de histograma

ROBOTI INDUSTRIALI 64

Alte prelucrari – “extragere

felii de imagine” (slicing)

ROBOTI INDUSTRIALI 65

Alte prelucrari – valori de prag

ROBOTI INDUSTRIALI 66

Alte prelucrari – detectare

contur

Arhitectura sistemului de urmarire a unui obiect

Kit-ul CMUcam2+

Kit-ul CMUcam2+

Urmarirea obiectelor colorate1. Scanarea

imaginii

2. Izolarea unei anumite culori

3. Extragerea de informatii despre regiunea imaginii care contine culoarea urmarita

Obiectivele robotului :

Detectarea obiectului tinta pe baza atributelor sale precizate

deplasarea catre acesta

recuperarea lui