IMAGING IN BIOLOGIA E MEDICINA

Crediti: 
6
Settore scientifico disciplinare: 
FISIOLOGIA (BIO/09)
Anno accademico di offerta: 
2017/2018
Semestre dell'insegnamento: 
Secondo Semestre
Lingua di insegnamento: 

Italiano

Obiettivi formativi

Il principale obiettivo formativo è fornire agli studenti le basi per comprendere le tecniche di trattamento delle immagini digitali con attenzione a quelle ottenute da apparati di laboratorio come i microscopi

Contenuti dell'insegnamento

Introduzione alla tecnologia della rappresentazione manipolazione digitale delle immagini.

Programma esteso

L0 Introduzione
Risorse di base del corso
L1-1 Formazione della rappresentazione digitale dell'immagine
Obiettivi generali del corso
Strumenti
Matlab
Octave
ImageJ
GIMP , un ottima applicazione per la manipolazione di immagini fotografiche
Origini della tecnologia e campi di applicazione
Basi della formazione dell'immagine
Camera Oscura
Formazione dell'immagine
Digitalizzazione dell'immagine
Rappresentazione digitale di un immagine a scala di grigi e dei colori
Rappresentazione digitale di un immagine a colori
Rappresentazione RGB
Rappresentazione HSV e HSL
L1-2 Rappresentazione digitale e storaggio delle immagini
Rappresentazione digitale dell'immagine
Digitalizzazione di un immagine
Rappresentazione binaria
Matrice di Pixel
Modelli di rappresentazione di immagini
Grayscale
RGB
Indexed
Formati per lo Memorizzazione e la Trasmissione di Immagini
Problematiche legate all'immagazzinamento o alla trasmissione di immagini
Formati Comuni
TIFF
GIF
PNG
JPEG : principi di organizzazione e problematiche legate ad esso
L2 Istogramma e trasformazioni di intensità
Istogramma di un immagine e caratterizzazione generale
Rappresentazione di un'immagine a scala di grigi (grayscale )
Calcolo dell'istogramma di un'immagine
Relazione immagine-istogramma
Istogrammi tipici di immmagini sovraesposte/sottoesposte
Determinazione del Contrasto e della dinamica
Point operation
inversione della luminosità
alterazione del contrasto
alterazione della luminosità
Esempio di codice Octave per la manipolazione della luminosità di un'immagine
Trasformazione logaritmica
Trasformazione esponenziale
Modifica automatica del contrasto
Modifica automatica con algoritmo modificato (saturazione code)
Equalizzazione dell'istogramma
Trasformazione dell'istogramma secondo un istogramma dato
L3 Filtri
Filtri lineari
Smoothing filters
Calcolo della trasformazione dovuta ad un filtro lineare
Filtro di media a primi vicini (3x3)
Effetto di smoothing su una immagine corrotta da rumore
Filtri di differenza
Formulazione Convolutiva
Filtro "indentità" (δ)
Determinazione della PSF di un sistema ottico
Point Spread Function
Modelli lineari di alterazione di un'immagine puntiforme
PSF come convoluzione di un immagine ideale puntiforme (δ)
Esempi di alterazioni dovuti ad aberrazione ottica
Diffraction spikes di un telescopio
Filtri non lineari
Filtro di massimo e minimo
Filtro di mediana
Esempi di applicazione di filtri non lineari ad immagini corrotte da rumore
L4 Introduzione al linguaggio di Matlab/Octave
La shell di Octave: espressioni aritmetiche
Variabili: creazione e assegnazioni
Matrici, Array e Scalari
Operazione tra scalari, tra matrici e operazioni tra scalari e matrici
Sintassi per la composizione di matrici
Applicazioni di funzioni a Vettori e Matrici: il caso di sum , min e max
Le funzioni ones e zeros
L5 Plotting con Matlab/Octave
Grafico della funzione radice quadrata sqrt tra 0 e 100
La funzione linspace per generare sequenze uniformi di valoriintervallo dato
Plot di funzioni multiple all'interno dello stesso diagramma. Esempio: tracciare e confrontare 6 funzioni trigonometriche
Uso della funzione subplot per suddividere lo spazio grafico
Plot 3-dimensionale
La funzione meshgrid per creare matrici di coordinate nel piano
Plot della superficie della funzione exp(-(x2 +y2 ))
Plot della funzione exp(-(x2 +y2 )/d)*cos(2*pi*omega*(x2 +y2 )))
Plot di immagini
Struttura della matrice di una immagine RGB
Funzione zeros per generare matrici di immagini con dimensione assegnata
L5-1 Rappresentazione binaria di dati in Matlab/Octave
Rappresentazione di immagini RGB
Rappresentazione di immagini indexed
Rappresentazione binaria di interi e numeri in virgola mobile
Stringhe
Strutture
Cell Arrays
L6 Image Package
Alcune delle funzioni di base del package image
Rappresentazioni interne di base
Immagini binarie
Immagini grayscale
Immagini RGB
Immagini Indexed
Funzione iminfo
imread : lettura di un file grafico
imwrite : lettura
imshow : display di una immagine
Esempio: Costruzione di un immagine grayscale 8x8
Esempio : costruzione di un immagine a colori RGB 8x8
L7 Edge Detection and Sharpening
Individuazione e rafforzamento dei bordi
Definizione e caratteristiche di un bordo
Interpretazione del significato di derivata locale come indicatore di un bordo
Gradiente di luminosità e suo significato
Funzione edge di MATLAB/Octave
Forza di un bordo
Orientamento di un bordo
Filtri di derivazione e loro effetto su un'immagine di prova
Matrici di Prewitt e Sobel
Matrici di Roberts
Compass Operators
Operatori basati sulla derivata seconda
Laplacian of Gaussian
Metodo di Canny
Edge Sharpening
Strategia generale del rafforzamento dei bordi
Effetto dell'operatore di Laplace sull'immagine di prova
Tecnica di sharpening basata sull'operatore di Laplace
Tecnica di Unsharp Masking
L8 Costruzione di script con Octave/Matlab
m-files: script e funzioni
Commenti all'interno di script
Esempio: funzione avg , media aritmetica di un array di valori
Autodocumentazione delle funzioni tramite il comand help di Octave
Strutture di controllo
Struttura condizionale if....elseif...else...endif
Struttura switch x...case...case...otherwise...endswitch
Struttura di for...endfor
Loop while...endwhile
Ciclo for...endfor
Loop do...until
Esempio di funzione: matshuffle.m
L9 Trasformazioni Morfologiche
Obiettivo delle trasformazioni morfologiche
Operazioni fondamentali su immagini binarie
Definizioni fondamentali di oggetto, sfondo e contiguità tra regioni
Caratteristiche di una trasformazione
Elemento strutturante
Trasformazioni fondamentali
Erosione
Dilatazione
Applicazione dell'erosione ad un'immagine binaria di prova ottenuta
Applicazione della dilatazione
Opening
Closing
Boundary extraction
Applicazione: correzione del background

Bibliografia

W. Burger - Mark J. Burge
Digital Image Processing (Springer)

R.Gonzalez, R.Woods
Digital Image Processing (Pearson)

Chris Solomon - Toby Breckon
Fundamentals of Digital Image Processing (Wiley-Blackwell)

Metodi didattici

Il corso prevede una parte iniziale di circa 10 lezioni introduttive e quindi un periodo equivalente di esercitazioni di laboratorio

Modalità verifica apprendimento

Esame orale

Altre informazioni

Al corso è associato un sito web http://imaging.biol.unipr.it/