O objetivo deste trabalho é realizar a
segmentação de estruturas de dentes em imagens de MicroCT, usando
técnicas de segmentação por limiar e segmentação por regiões.
Para tanto, você deverá desenvolver
um programa que:
leia um conjunto de imagens disponíveis neste link;
identifique as estruturas presentes na imagem (dentina, canal, pinos e
fundo);
apresente o resultado colorindo as estruturas com cores
distintas;
gere um relatório conforme a descrição a seguir.
A cor escolhida para uma estrutura deve ser aplicada a todas
as partes desta estrutura na imagem, de acordo com a seguinte
codificação:
Dentina: verde (R:0,G:255,B:0)
Canal: vermelho (R:255,G:0,B:0)
Pinos: azul (R:0,G:0,B:255)
Fundo: preto (R:0,G:0,B:0)
Avaliação dos Resultados
Após a segmentação das estrututras, o
programa deve apresentar dados que comparem o resultado obtido com uma
segmentação feita manualmente (ground truth). Isto deve ser feito para
cada imagens e também de forma global, reunindo os resultados de todas
as imagens.
A figura a seguir apresenta uma das imagens a serem processadas e o respectivo ground truth.
Imagem Original
Ground Truth
Figura - Imagem e o respectivo Groud Truth
Com base no ground truth, após processar cada imagem, o programa deve apresentar na tela, pelo menos, aos seguintes dados:
Matriz de Confusão/Matriz de Classificação do processo de segmentação: matriz que mostra o percentual de cada estrutura que foi classificado em cada categoria;
Número de Verdadeiros Positivos: número de pontos que foram corretamente classificados como sendo da estrutura em análise
Número de Falsos Positivos:número de pontos que foram erroneamente classificados como sendo da estrutura em análise
Número de Falsos Negativos: número de pontos que deveria ter sido classificados como sendo da estrutura em análise, mas não foram.
Ao final do processamento de
todas as imagens, estas informações devem ser reunidas em um relatório
de até quatro páginas apresentando os algoritmos usados e os resultados
obtidos, bem como uma Planilha de Métricas com todos os resutados obtidos pelo processamento das imagem. Formato do Ground Truth
O arquivo que disponibiliza as imagens contém duas pastas. Na pasta DadosOriginais encontram-se as imagens a serem processadas. Na pasta DadosSegmentados encontram-se os ground truth
de cada imagem. A partir da imagem ground truth é possível saber se a
segmentação automática de cada ponto da imagem está correta ou não.
Algortimos a serem implementados
É obrigatória a implementação de pelo menos dois tipos de algoritmos:
segmentação por limiar gerado automaticamente;
segmentação por regiões.
Antes de aplicar estes
algoritmos, o programa deve aplicar filtros na imagem a fim de permitir
uma melhor segmentação. Carga das Imagens
Os algortimos de tratamento das imagens deverão ser implementados, sem o uso de bibliotecas como OpenCV, JavaCV, ImageJ, ou outras com capacidades semelhantes.
Para a carga das imagens, pode ser utilizada a biblioteca ImageClass, ou outra que tenha capacidades semelhantes.
ATENÇÃO: Antes de optar por
algum programa ou biblioteca diferente deste fornecido no link, o aluno
deve contactar o professor para avaliação.