Riassunto analitico
Con il termine chirurgia robotica si fa riferimento a sistemi altamente tecnologici in grado di riprodurre fedelmente i movimenti della mano all'interno del corpo umano. Il chirurgo si posiziona a bordo di una console dove, grazie a degli strumenti atti alla teleoperazione, controlla le braccia robotiche inserite all'interno del paziente. È inoltre presente un display stereoscopico che consente al chirurgo di disporre di una visualizzazione 3D avanzata nelle regioni interne al corpo umano. La tesi esposta in questo elaborato si pone come obiettivo di utilizzare la realtà virtuale per incrementare le informazioni offerte al chirurgo e consentirgli una maggiore libertà di movimento. In particolare, si vuole ricostruire un ambiente immersivo partendo dalle immagini riprese dall'endoscopio e dalla sua posizione. Così facendo si procederebbe anche ad una riduzione del numero di persone necessarie in sala operatoria, con una conseguente riduzione dei costi. In una fase preliminare si è cercato di integrare l'utilizzo dei comuni visori 3D con il framework ROS (Robot Operating System), ampiamente utilizzato nel mondo della robotica. L'obiettivo era quello di poter svolgere delle simulazioni con i modelli dei robot chirurgici già sviluppati e gli algoritmi implementati durante il lavoro di tesi. Successivamente, grazie ad algoritmi che risolvono il problema di SLAM (Simultaneous Localization And Mapping), si è effettuata una ricostruzione tramite Point Cloud sia della scena osservata che della totalità dell'ambiente circostante. I risultati ottenuti, tuttavia, non sono stati soddisfacenti. Oltre alle elevate tempistiche necessarie per effettuare il rendering di tutta la nuvola di punti, l'ambiente risulta molto impreciso, anche a causa dei difetti di occlusione a cui il Point Cloud è molto sensibile. Come conseguenza di quanto appena descritto, si è deciso di costruire dei mosaici di immagini che si aggiornassero con tempi inferiori ai frame per secondo (fps) dell'endoscopio. Viene quindi analizzato il funzionamento dello stitching e di come questo si ricolleghi ad una trasformazione geometrica del piano, denominata omografia. Infine, dopo aver costruito un set-up ad hoc composto da un robot collaborativo (UR5) e da una comune webcam usb, si è sviluppato un algoritmo in grado di ricevere le posizioni della telecamera e, da esse, calcolarne la trasformazione proiettiva da applicare al rispettivo frame. Grazie alla velocità del codice, l'effetto visivo ottenuto è quello di un'immagine che continua a cambiare nel punto in cui la telecamera sta inquadrando, mentre nelle zone limitrofe è presente l'ultimo frame catturato. Non avendo a disposizione una stereocamera, non è stato possibile compiere una verifica sulla velocità dei due algoritmi in parallelo e se le due panoramiche ottenute fornissero effettivamente una percezione di tridimensionalità.
|