Progetto e Realizzazione di un Sensore Ibrido Omnidirezionale/pin ...
Progetto e Realizzazione di un Sensore Ibrido Omnidirezionale/pin ...
Progetto e Realizzazione di un Sensore Ibrido Omnidirezionale/pin ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2.4.1. Analisi dei requisiti<br />
Dato <strong>un</strong> sensore visivo da calibrare, l’ obiettivo del software progettato è quello <strong>di</strong><br />
costruire (tramite <strong>un</strong>o degli algoritmi visti precedentemente) <strong>un</strong>a “look-up-table” che<br />
descriva la mappatura <strong>di</strong> inversione prospettica, ossia la relazione tra la posizione dei<br />
p<strong>un</strong>ti sul piano <strong>di</strong> riferimento della calibrazione e la posizione dei pixel che li<br />
rappresentano nell’immagine acquisita dalla telecamera. In definitiva la look-up-table<br />
che dobbiamo generare dovrà ricevere in ingresso la posizione (X,Y) <strong>di</strong> <strong>un</strong> p<strong>un</strong>to sul<br />
piano, operare <strong>un</strong>a <strong>di</strong>scretizzazione sulla posizione <strong>di</strong> questo p<strong>un</strong>to (se questa non lo è<br />
già) e dare in uscita la posizione (x,y) del pixel relativo:<br />
x = Mx[ro<strong>un</strong>d(X / Sens)][ro<strong>un</strong>d(Y / Sens)],<br />
y = My[ro<strong>un</strong>d(X / Sens)][ro<strong>un</strong>d(Y / Sens)],<br />
dove: ro<strong>un</strong>d è <strong>un</strong>’operatore <strong>di</strong> arrotondamento all’intero più vicino, Sens è l’<strong>un</strong>ità <strong>di</strong><br />
misura in cui vogliamo muoverci nello spazio (o meglio il rapporto tra questa <strong>un</strong>ità <strong>di</strong><br />
misura e quella in cui sono espressi X e Y), Mx ed My sono due matrici contenenti i<br />
valori ricavati dalla calibrazione.<br />
In realtà, poiché sul piano <strong>di</strong> riferimento possiamo già operare <strong>un</strong>a <strong>di</strong>scretizzazione<br />
sud<strong>di</strong>videndolo in <strong>un</strong> reticolo <strong>di</strong> quadrati <strong>di</strong> lato Sens (sufficientemente piccolo per<br />
permetterci <strong>un</strong> accesso alle posizioni del piano con adeguata risoluzione, e ad esempio<br />
misurato in cm), non ci riferiremo ai p<strong>un</strong>ti dello spazio, ma alla posizione delle sue<br />
celle: la cella (X,Y) sarà quella il cui baricentro è posizionato, rispetto al sistema <strong>di</strong><br />
riferimento del piano, in (X*Sens,Y*Sens) cm. Quin<strong>di</strong> in generale l’accesso alla lookup-table<br />
sarà <strong>un</strong> semplice accesso ad <strong>un</strong>a matrice <strong>di</strong> coppie <strong>di</strong> valori.<br />
Oltre alla look-up-table vista, nel sistema si genera e gestisce anche la tabella inversa,<br />
che potremmo chiamare “tabella <strong>di</strong> localizzazione”: dato <strong>un</strong> pixel in<strong>di</strong>ca quale parte<br />
della superficie del piano <strong>di</strong> riferimento esso rappresenti, quin<strong>di</strong> permette <strong>di</strong> attribuire<br />
57