• Non ci sono risultati.

3.2 Caratterizzazione Algoritmo

3.2.1 Numero di features

Pi`u l’oggetto `e definito, pi`u features si estraggono, pi`u `e facile il tracking. L’aumento di potenza e guadagno modificano l’immagine che viene elaborata dall’ecografo, cambiando quindi il numero di features che vengono estratte e quindi la precisione del tracking. I risultati delle varie prove sono graficati in Figura 3.9 e, da subito, si pu`o notare una grossa differenza tra il numero di features estratte a potenza zero rispetto alle altre potenze. Altre differenze, meno marcate, possono essere notate tra il gruppo di potenze comprese tra 37% e 62% e quello compreso fra 75% e 100%. Per comprendere meglio i dati, sono stati analizzati mediante prima t-test (p = 0,01) e poi una analisi di varianza (ANOVA, α = 0, 01), sfruttando i tool statistici presenti nel programma MATLAB (Mathworks, Inc., Natick, MA).

Figura 3.9: Feature estratte al variare di potenza e guadagno.

I risultati, in Tabella 3.3, mostrano, oltre alla ovvia differenza tra potenza zero e il resto, che il numero di features ottenute con potenze comprese tra il 37% e il 62% sono assimilabili, mentre c’`e qualche differenza tra il 62% e il 75% e che con potenze tra il 75% e il 100% il numero di features non differisce in maniera significativa.

In Tabella 3.4, oltre alla ovvia differenza tra il numero di features estratte guadagno all’80% e al 100% (visibile anche in Figura 3.9), notiamo che ci sono differenze significative nel variare il guadagno da 0% fino al 40%, mentre il numero

delle features estratte con guadagni compresi tra il 40% e l’80% non differisce in maniera significativa. P00 - P37 P37 - P50 - P62 P62 - P75 P75 - P87 - P100 G00 8,88*10-16 0,017 0,44 0,67 G20 1,84*10-12 0,02 0,05 0,06 G40 5,09*10-10 0,51 3,45*10-4 0,43 G60 4,35*10-12 0,08 0,14 0,07 G80 6,91*10-12 0,52 0,01 0,91 G 100 9,77*10-15 0,02 0,002 0,12 Tabella 3.3: Test ANOVA variazione Potenza. In grassetto i p-value minori o uguali a 0,01. G00 - G20 G20 - G40 G40 - G60 - G80 G80 - G100 P 00 0,0022 0,13 0,57 6,77*10-10 P 37 0,0028 0,038 0,016 9,46*10-4 P 50 0,0016 0,0031 0,78 6,75*10-11 P 62 0,12 0,0013 0,039 1,31*10-9 P 75 0,0067 3,06*10-4 0,15 3,88*10-15 P 87 0,0115 1,81*10-4 0,023 8,05*10-10 P100 4,23*10-4 0,02 0,12 1,23*10-5 Tabella 3.4: Test ANOVA variazione Guadagno. In grassetto i p-value minori o uguali a 0,01.

3.2.2 Errori di tracking

Come accennato prima, `e importante, per un buon tracking, avere un elevato numero di features, ma queste devono appartenere all’oggetto e non ad altre strutture. Per questo motivo si sono svolti altri test per verificare se il baricentro calcolato dall’algoritmo corrispondesse a quello dell’oggetto e non soffrisse di errori dovuti alla presenza di features esterne ad esso. Sfruttando le OpenCv si `e sviluppato un programma che disegnasse un ellisse, delle dimensioni della capsula, e ne seguisse gli spostamenti. L’ellisse mantiene, frame per frame, la stessa posizione della capsula, dandoci cos`ı un riferimento della posizione reale del dispositivo, come mostrato in Figura 3.10. Sfruttando i risultati ottenuti con i precedenti test, e sapendo che con potenze superiori al 75% non ci sono sostanziali variazioni nel numero di feature, si `e registrato, al variare del guadagno, la distanza tra il valore “teorico” del baricentro

Figura 3.10: Screenshot del programma che, mediante il disegno di un ellisse, restituisce la posizione reale del baricentro.

(quello dell’ellisse) con quello calcolato dall’algoritmo. Sono state implementate due modalit`a di calcolo del baricentro: la prima come media delle features, la seconda come baricento della forma dell’oggetto segmentata dall’algoritmo di watershed. In

Figura 3.11: Errore tra il baricentro reale e quello calcolato dall’algoritmo. Figura 3.11 sono mostrati gli errori medi ottenuti con i due metodi di calcolo del

baricentro; mediamente questi non si superano mai 5 px che corrispondono a 0,95 mm. I dati poi sono stati analizzati mediante t-test e ANOVA.

Feat Shape H p H p G00-G20 0 0,62 0 0,74 G20-G40 0 0,69 0 0,99 G40-G60 0 0,85 0 0,59 G60-G80 0 0,76 0 0,99 G80-G100 1 0,0026 1 0,0017

Tabella 3.5: T-test errori calcolo baricentro, in grassetto i p-value minori o uguali a 0,01 . Si noti che l’unica differenza significativa si ha con il guadagno massimo.

Feat Shape G00-G20-G40-

G60-G80

0,98 0,88 G80-G100 0,0026 0,0017

Tabella 3.6: Test ANOVA errori calcolo baricentro, in grassetto i p-value minori o uguali a 0,01 . Si noti che l’unica differenza significativa si ha con il guadagno massimo.

Le analisi statistiche mostrano che gli errori sono paragonabili per guadagni compresi tra 0% fino al 80%, mentre, con guadagno massimo, l’errore cresce e differisce in maniera significativa. Inoltre, la differenza tra errore calcolato con le features e quello calcolato con il watershed non `e significativa, quindi, essendo l’algoritmo per il calcolo del baricentro dalla forma dell’oggetto pi`u gravoso computazionalmente, si `e scelto di usare il baricentro calcolato con le features per ridurre il tempo di esecuzione totale di tutto l’algoritmo di tracking.

3.2.3 Condizioni ottimali di lavoro

Analizzando tutti i dati si `e arrivati alla conclusione che l’algoritmo trova le condizioni ottimali di lavoro con potenze superiori al 75% e guadagni compresi tra il 40% e l’80%. Questi valori, di per se, non sono particolarmente utili, visto che cambiando ecografo o la sonda, i parametri di potenza e guadagno modificheranno in maniera diversa l’immagine. Per questo motivo si `e scelto di ricavare un parametro relativo all’immagine in se e non legato ai parametri dell’ecografo. Per far ci`o si `e calcolato il

valore di contrasto tra l’oggetto e lo sfondo dell’immagine come media pesata degli istogrammi relativi all’oggetto e allo sfondo (visibili in Figura 3.10), nelle condizioni di esecuzione ottimali , sfruttando le OpenCV. Il valore di contrasto calcolato `e pari a 6, cio`e l’istogramma dell’oggetto deve avere valori di grigio mediamente 6 volte pi`u alti rispetto all’istogramma dello sfondo. Questo valore potr`a essere sfruttato, durante l’esecuzione del programma, in modo da modificare iterativamente i parametri dell’ecografo al fine di mantere il contrasto, tra oggetto e sfondo, sempre in un range ottimale.

Risultati sperimentali e

conclusioni

Una volta implementate le varie parti che compongono la strategia di controllo si `e deciso di effetturare delle prove al fine di verificare il buon funzionamento della strategia di locomozione e, come il ciclo di controllo basato su immagini ecografiche, si comportasse in uno scenario comprendente varie problematiche da affrontare.

`

E stato effettuato quindi un test in-vitro, tale da mettere in evidenza possibili pro- blemi nell’implementazione della strategia di controllo e dei limiti dell’archittettura robotica.

In questo capitolo verrano esposti i test eseguiti per verificare l’intera strategia di locomozione e, concludendo, verranno discussi i risultati ottenuti e suggeriti possibili sviluppi futuri.

Documenti correlati