Processamento e nálise de Imagens Médicas Morfologia Matemática em Imagens Prof. Luiz Otavio Murta Jr. FMB Departamento de Computação e Matemática (FFCLRP/USP)
Principais Tópicos Introdução Morfologia Binária em Imagens Morfologia de Tons de Cinza Segmentação Morfológica Bibliografia 2
Operadores Morfológicos Binários 3
Teoria Básica de Conjuntos 4
ˆ Reflexão e B { w wb, para b B} Translação ( ) { c ca z, para a } z 5
Operações Lógicas p q p e q (p.q) p ou q (p=q) não p 6
Operações Lógicas: Não E Ou X ou X e 7
Dilatação B z ( B) Ø origem 8
Dilatação lgoritmos: Operadores morfológicos 9
Enquadramento noção de objeto implica conectividade de pixels fundo de objeto - O objeto tem conectividade 4 - O fundo tem conectividade 2-4(=8) Definições s operações fundamentais sobre objetos são:» Translação: + x = { a + x a }» dição/subtração: B = bb (+b) ; B = bb (+b)» Complemento (fundo)» Simetria: - = { -a a }
Erosão B z ( B) origem z Resultado da Erosão: apenas os quadrados destacados
Erosão: Tamanho dos objetos são reduzidos Objetos menores do que o el. est. são eliminados Número de componentes pode aumentar B z ( B) z 2
Dilatação e Erosão dilatação D(,B) corresponde à adição B erosão E(,B) corresponde à subtração (-B ) Exemplos D(,B) E(,B) Tipicamente é uma imagem e B é um estruturante (equivale ao núcleo de convolução dos filtros lineares) Exemplos de estruturantes comuns B -B N 4 N 8 3
Dilatação e Erosão Teorema da Decomposição» Para um estruturante B finito, simétrico, sem buracos e contendo o seu centro ([,] B), verifica-se que D(,B) = ( B) [nota: é o contorno de ]» Resulta que apenas basta processar os pixels do contorno de, não sendo necessário processar os pixels do seu interior» lgoritmo rápido de dilatação: para cada pixel do objeto, todos os seus pixels vizinhos (viz C ) de fundo passam a pertencer ao objeto» lgoritmo rápido de erosão: cada pixel do objeto que possua um pixel vizinho (viz C ) de fundo passa a fundo 4
Dilatação e Erosão Exemplos rápidos Dilatação com estrututante N 4 Dilatação com estrututante N 8 Importante: D(E(,B),B) E(D(,B),B) bertura e Fechamento bertura: O(,B) = D(E(,B),B)» Tende a suavizar o contorno pelo interior Fechamento: C(,B) = E(D(,-B),-B)» Tende a suavizar o contorno pelo exterior 5
6 lgoritmos: Operadores morfológicos Erosão B z B z ) ( B B
7 lgoritmos: Operadores morfológicos Dualidade entre operadores - Começando com a definição de erosão: Ø Ø - Sabendo a definição de dilatação - Podemos chegar a: B B c c ˆ c c z c z c B z B z B ) ( ) ( ) ( ) ( c z B z ˆ) ( B z B z Ø ) ( ˆ) ( c z c B z B Ø B B c c ˆ
bertura 8
Fechamento 9
bertura: eliminação de detalhes irrelevantes Erosão seguida de dilatação usando elemento estruturante B = 3 x 3 pixels de nível de cinza 2
Propriedades e características Dualidade entre operadores l. bertura c c B Bˆ (i) º B é um subconjunto (subimagem) de (ii) Se C é um subconjunto de D, então C º B é um subconjunto de D º B (iii) ( º B) º B = º B Partes pequenas do objeto são eliminadas. Objetos menores do que o elemento estruturante são eliminados. Separa objetos conectados por ligações finas. 2. Fechamento (i) é um subconjunto (subimagem) de B (ii) Se C é um subconjunto de D, então C B é um subconjunto de D B (iii) ( B) B = B Preenche pequenos espaços entre objetos. Preenche pequenos buracos. Preenche reentrâncias estreitas. 2
Morfologia 22
HitndMiss Operador de alto nível HitMiss(,B) = E(,B ) E C ( C,B 2 ) B e B 2 são estruturantes finitos e disjuntos entre si Este operador é o equivalente morfológico do template matching (técnica usada para comparar padrões com base na sua correlação)» B funciona como template para o objeto» B 2 funciona como template para o fundo 23
HitndMiss 24
HitndMiss = imagem B,B2 são elementos estruturantes ( B) ( B ) ( c B2 ) 25
HitndMiss Utilizado para buscar objetos na imagem ( B) ( X ) ( B) ( B ) ( c B2 ) Dependente do elemento estruturante c W X 26
HitndMiss B) ( B ) ( c ) ( B2 27
Extração de Contorno B E c ( ) ( B) c c E ( ) ( B) c 28
Extração de componentes conectados Desenvolva um algoritmo para encontrar componentes conectados.. Seja B um elemento estruturante do tipo N4, Nd ou N8, dependendo da conectividade desejada. 2. Selecione um pixel p dentro do componente conectado a ser encontrado. 3. Inicialize X como uma matriz de pixels exceto X [p]=. 4. Faça a iteração: X K ( X K B) para k,2,3,... até X K X K 29
Extração de componentes conectados Procura pelo elemento conectado começando pelo pixel vermelho 3
Preenchendo Buracos Desenvolva um algoritmo para preencher buracos (regiões fechadas).. Seja B um elemento estruturante do tipo N4, Nd ou N8, dependendo da conectividade desejada. 2. Selecione um pixel p dentro do buraco a ser preenchido. 3. Inicialize X como uma matriz de pixels exceto X[p] =. 4. Faça a iteração: X K c ( X K B) para k,2,3,... até X K X K 3
Preenchendo Buracos X k c ( X k B) k,2,3,... até X k X k 32
Preenchendo Buracos 33
Feicho Convexo (convex hull) Um conjunto é dito convexo se dois elementos quaisquer podem se unir por um caminho reto que não passa fora do conjunto. O convex hull H de um conjunto S é o menor conjunto convexo tal que S H. O conjunto diferença H - S = H S c é a deficiência convexa de S. 34
Fecho convexo X i k i i X * B, i,2,3,4 e k,2,3... k (Convex Hull) X k 2 X k 4 C( ) D i i 4 X k 3 X k 4 C( ) D i i 35
finamento (Thining) finamento remove pixels de um conjunto até ficar apenas um estreito conjunto. É usado para revelar estruturas em aplicações de reconhecimento de padrões. finamento usa uma seqüência de elementos estruturantes. Operação básica. Faça X n = e Y = X = [] NxM 2. Repita enquanto X n Y B { B, B2 Y = X n X = X n,..., B n c X i X i ( X i * Bi ) para i,2,3,..., n } 36
finamento (Thining) B ( * B) ( * B) c 37
finamento (Thining) Exemplo: Emagreça as bolhas estrutura básica é capturada pelos objetos emagrecidos (vermelho). s pequenas terminações poderiam ser removidas por um processamento adicional para melhorar a definição. 38
Esperçamento (Thickening) lgoritmos Operadores morfológicos Esperçamento é o dual morfológico de finamento e é definido por O algoritmo pode ser programado diretamente da definição. Entretanto, descobriu-se que é mais efetivo fazer o thickening através do thinning de c.. Faça C = c 2. Faça D ser afinado B 3. T = D c é o objeto esperçado. ( * B) 39
Esperçamento B ( * B) 4
lgoritmos Baseados em morfologia Esqueleto Quando realizável, é uma polilinha que:» Tem largura de pixel» Passa pelo meio do objeto» Preserva a topologia do objeto Pode ser obtido por um processo iterativo baseado no B 8, não se alterando o pixel central para fundo se» ) o pixel estiver isolado» 2) a remoção do pixel alterar a conectividade» 3) a remoção do pixel encurtar a linha 4
lgoritmos Operadores morfológicos Esqueletos Pontos centrais de bolas máximas (geradas a partir do elemento estruturante B) contidas no objeto da imagem de entrada. S k K S( ) k S k ( ) ( ) ( kb) ( kb) B K max k ( a kb) S ( ) k K k kb 42
43
44
45
46