• Nenhum resultado encontrado

Processamento de Imagem

N/A
N/A
Protected

Academic year: 2021

Share "Processamento de Imagem"

Copied!
109
0
0

Texto

(1)

Processamento de Imagem

Detecção de Arestas, Segmentação

e Morfologia Matemática

Universidade de Aveiro

Departamento de Electrónica, Telecomunicações e Informática

(2)

2

I- Detecção de Arestas

• Origem e natureza das arestas • Detecção de arestas

• Processamento global e transformada de Hough – Não iremos falar…

• Arestas e segmentação – detecção explícita de arestas ou seguimento de contornos

(3)

Um processo simples de detecção de arestas aplicado a imagens de complexidade diferente

(4)

4

I.1- Origem e natureza das arestas

• Têm várias origens:

– Silhuetas de objectos

– Descontinuidades das normais às superfícies – Descontinuidades de iluminação

– Descontinuidades de reflectividade dos objectos

I(x) I(x)

• As arestas ajudam a revelar o conteúdo de uma imagem

• A sua detecção é dificultada por:

– ruído

– arestas não ideais

Aresta ideal:

(5)

Exemplo

(6)

6

• As arestas são geralmente detectadas em dois passos:

– Aplicando uma máscara (aproximação de uma derivada)

– Agregando os pixels detectados (edgels) em arestas

I- Detecção de Arestas

• A figura resume o princípio da utilização de derivadas:

• A 1ª derivada é:

> ou < 0, dependendo da direcção de variação de I(x,y) = 0 em áreas de intensidade constante

• A 2ª derivada passa por 0 nas arestas positivas e nas negativas

1ª derivada

(7)

1ª Derivada

(8)

8

1ª Derivada – Como estimar de modo simples?

(9)

Derivadas Parciais e Gradiente

(10)

10

Exemplo

(11)

• O gradiente de uma imagem f(x,y) aponta na direcção de variação mais rápida da intensidade

Direcção do gradiente Amplitude do gradiente:

(12)

12

• Como se pode diferenciar uma imagem discreta f(x,y)?

• Uma opção é calcular as diferenças finitas:

e aplicar a máscara correspondente

• Há vários operadores que aproximam o gradiente usados para detectar arestas:

– Roberts – Prewitt – Sobel

(13)

Como aplicar?

(14)

14

Operador de Prewitt e Operador de Sobel

(15)

Operador de Prewitt

1 1 1 -1 -1 -1 0 0 0 -1 0 1 -1 0 1 -1 0 1

(16)

16

Operador de Sobel

-1 0 1 -1 0 1 -2 0 2 -1 -2 -1 1 2 1 0 0 0

(17)

Imagens resultantes da aplicação do gradiente em x e em y

Operador de Sobel

(18)

18

Operador de Roberts

(19)

Operador de Kirsch

(20)

20

Detectores de arestas com propriedades “combinadas”

• Há detectores que combinam várias propriedades numa única máscara para lidar com várias questões:

– Contraste e orientação das arestas – Magnitude e orientação do gradiente – Ruído

– Escala

• Consideremos duas abordagens: – Marr-Hildreth

(21)

Detector de Marr-Hildreth (1980)

Implementação digital do filtro de Marr-Hildreth

- É baseada numa presumível função de baixo nível dos sistemas visuais biológicos

- A máscara é uma combinação de:

- uma função Gaussiana suavizadora

- um operador Laplaciano de derivada (2ª ordem)

Secção da função contínua (que tem simetria circular)

(22)

22 Depois de filtrada com:

σ=1,5 σ=5

Cruzamentos em zero das imagens filtradas Cruzamentos em zero comuns a ambas imagens

- A máscara deve ser muito maior do que as anteriores (por questões de precisão) - O desvio padrão σ da Gaussiana controla

a sua largura

-Quanto maior for σ maior a suavização - Depois da suavização são detectadas as

passagens por zero

- O valor de σ pode ser usado para extrair detalhe das arestas a escalas diferentes

MH = r2 – σ2 exp -r2

(23)

Outros exemplos

(24)

24

Marr- Hildreth em imagens a cores

(25)

Detector de Canny

(1986)

• É um processo com várias etapas que permite detectar arestas atenuando também o ruído

• Por vezes referido como optimal edge detector (óptimo para arestas bem definidas com ruído branco)

• Como o detector de Marr-Hildreth também usa um smoothing Gaussiano e um Laplaciano, mas usa informação direccional do gradiente

• Detecta as arestas através das passagens por zero da 2ª derivada da imagem suavizada com um filtro Gaussiano 1D na direcção do gradiente

http://www.pages.drexel.edu/~weg22/can_tut.html

(26)

26

Detector de Canny

[Burger & Burge]

Objectivos:

• Minimizar arestas “falsas” • Melhor localização

(27)

Imagem original componentes x e y da convolução 1D com uma Gaussiana σ=6

componentes x e y da derivada

(28)

28

Exemplo: detecção de arestas com o detector de Canny,

(29)

Outro exemplo

(30)

30

Comparação

[Burger & Burge]

Critérios:

• Quantidade de “falsas” arestas / segmentos

(31)

• Os operadores apresentados são conhecidos como detectores de arestas

• Os operadores de derivada são sensíveis ao ruído, provocando falsos positivos

• Transformam uma imagem num domínio binário com:

– um conjunto de pixels pertencentes a uma aresta – edgels

– e falsos positivos e falsos negativos

• Este problema surge devido à natureza paralela da utilização de máscaras

(32)

32

Edge sharpening

(33)

Edge sharpening – Laplace operator

(34)

34

Edge linking ou agregação

• Para resolver o problema dos operadores apresentados pode usar-se uma abordagem sequencial

• O contorno é seguido, tomando-se decisões em cada pixel para prosseguir • Uma alternativa é seguir a “detecção paralela de arestas” por um processo

de agregação que tenta:

– diminuir o efeito de pixels espúrios

(35)

Seguimento local de contornos

• Torna-se necessário expandir a vizinhança usada para detectar a aresta

• A vizinhança deve ser:

– suficientemente grande para fechar falsos gaps

– suficientemente pequena para não ligar segmentos independentes

• Exemplo: numa abordagem simples sobre uma imagem de gradiente, dois pixels (x,y) e (x’,y’) estão sobre uma aresta se:

| I(x,y) – I(x’,y’) | < t1 | (I(x,y)) – (I(x’,y’)) | < t2

e -orientação do gradientet

(36)

36

Segmentação de Imagem

• Segmentar significa dividir a imagem em regiões que têm algum significado no contexto da aplicação

• Em geral é vista como um passo prévio à análise de imagem

• É mais característica da análise de imagem do que do processamento de imagem

Processamento de imagem: image in; image out

Análise de imagem: redução de informação; extracção de conhecimento

• A abordagem usada em muitos métodos consiste em agrupar pixels com propriedades semelhantes

(37)

Exemplo

(38)

38

• Os humanos efectuam a segmentação com muita facilidade usando processamento paralelo e

conhecimento sobre a cena

• Até segmentam objectos que não existem!

• As aproximações computacionais mais simples consideram um pixel de cada vez, não utilizam informação sobre a vizinhança

• Correspondem a uma abordagem comum na computação:

dividir um problema complexo em problemas mais simples para os quais conhecemos métodos de resolução

• Na segmentação de uma imagem é razoável começar por usar operações

low-level pixel a pixel

(39)

Tipos de segmentação mais comuns:

– conhecimento global das intensidades dos pixels – regiões

– arestas Baseada em:

Note bem:

• Não há um método de segmentação que possa ser usado em todos os casos

(40)

40

Grey scale thresholding

• É o método mais antigo de segmentação

• É apropriado em aplicações em que os objectos de interesse têm intensidades homogéneas e diferentes do fundo

(41)

Grey scale thresholding

• Se não houver ideia de qual o threshold a usar, pode-se analisar o histograma para escolher um valor adequado

• Se o histograma for bi-modal o threshold estará no vale entre picos

Nota: um histograma

bi-modal pode não corresponder a uma imagem com objectos sobre um fundo homogéneo

(42)

42

• Este tipo de abordagem pode produzir erros de “classificação”, dependendo do histograma da imagem e dos níveis de cinzento dos objectos

• Pode usar-se thresholding em sub-regiões da imagem

(43)

Exemplo: processamento de imagens de TAC do torax e segmentação pulmonar Detecção dos contornos pulmonares

e de bolhas de ar pulmonares em imagens torácicas de Tomografia Axial Computorizada:

- Diferentes níveis de cinzento correspondem a zonas de

diferentes tecidos e ar em cada secção

- Determinação do histograma de cada imagem e valores

correspondentes à transição entre os pulmões e outros tecidos

- Deteção dos pontos pertencentes aos contornos dos pulmões em cada secção

(44)

44

• A forma mais simples de fazer crescer uma região é por agregação de pixels

• São necessários pixels que funcionem como “sementes”

• Depois usam-se regras: – de conectividade – de pertença

• Todos os pixels que sejam vizinhos da semente e obedeçam à regra de pertença são etiquetados como pertencendo à mesma região

• Obter as sementes é um problema importante

• Pode resolver-se, por exemplo, com recurso ao histograma da imagem ou interactivamente

(45)

45

(46)

46

Flood-Filling

(47)

Flood-Filling

(48)

48

Flood-Filling

(49)

Flood-Filling

(50)

50

Flood-Filling

(51)

51

Exemplo: estabelecimento do critério de pertença baseado em threshold e gradiente Threshold demasiado elevado

Threshold demasiado baixo

Objectos que

não são detectados

Objectos que se confundem

Gradiente da imagem

Gradiente da imagem suavizada

A imagem tem ruído e textura

(52)

52

O critério de pertença tem que ser melhorado

Critério usado:

Um pixel á adicionado a uma região se obedecer a um dos seguintes critérios: 1 - gradiente baixo

e

nível de cinzento > threshold 2- gradiente elevado

e

(53)

Sequential Region Labeling

(54)

54

Sequential Region Labeling

(55)

Sequential Region Labeling

(56)

56

Sequential Region Labeling

(57)

Sequential Region Labeling

(58)

58

Sequential Region Labeling

(59)

59

Orientação + Excentricidade

(60)

60

• Utiliza a estratégia “dividir e conquistar”

• Divide-se a imagem em partes cada vez mais pequenas, até que sejam homogéneas

• Não são necessárias “sementes”

Mas, as regiões são em geral “blocky”

(61)

If current region homogeneity test is FALSE then split into four quadrants

attempt to merge this quadrants recursively call the procedure for each subdivision

find any remainding merges

• O critério de homogeneidade pode ser baseado em medidas estatísticas

(62)

62

Contornos de uma região

(63)

63

Representação – Máscara binária

(64)

64

Representação – Run-Length Encoding

(65)

65

Representação – Chain Codes

(66)

66

Combining: Region Labeling + Contour Following

(67)

III. Imagens e Morfologia Matemática

• A morfologia matemática opera sobre as imagens como conjuntos de pontos • Permite modificar de modo controlado a estrutura / morfologia de uma imagem • É mais fácil de aplicar em imagens binárias

• Mas pode ser aplicada e imagens com níveis de cinzento ou a cores • Engloba um conjunto de técnicas usada em análise de imagem em:

– Filtragem – Segmentação

(68)

68

Ideia fundamental das operações morfológicas

(69)

69

Ideia fundamental das operações morfológicas

(70)

70 [Burger & Burge]

• Elemento Estruturante

(71)

• A morfologia matemática opera sobre as imagens como conjuntos de pontos

• É mais facilmente aplicável a imagens binárias

• Uma imagem binária pode ser descrita como um conjunto de pontos 2D listando todas as coordenadas dos pixels a preto (foreground), linha a linha:

X 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 I= { (0,1), (1,1), (2,1), (3,1), (3,2), (3,3) } origem

• Um objecto binário é representado por um conjunto num espaço bidimensional

(72)

72

Operações sobre conjuntos de pontos

[Burger & Burge]

• Imagens binárias

• Foreground

• Background

(73)

• Muitas operações podem ser consideradas como “shape filtering”

É necessário conhecimento a priori da forma

• Faz-se um scanning da imagem com um elemento estruturante EE

• Há pontos em que o EE:

- está completamente dentro do objecto - parcialmente dento do objecto

Elemento estruturante

(74)

74

Principais operações morfológicas

– Dilation – Erosion – Opening – Closing Operações básicas Operações compostas

(75)

75

Dilation

- Corresponde a “estampar” o elemento estruturante em cada ponto do objecto (pixels a 1) - Obtém-se em geral uma versão

expandida do objecto

- Pequenos buracos e pequenas intrusões são preenchidas

Elemento estruturante Objecto original Objecto final Imagem original Elemento estruturante Sobrepõe-se a origem do EE a todos os pixels a 1 na imagem I e transportam-se os 1 para os pixels da imagem resultante

(76)

76

Exemplo:

(77)

77

Outro exemplo

(78)

78

Erosion

- É a operação dual da dilatação

(a erosão de um objecto é equivalente à dilatação do fundo)

- Obtém-se em geral uma versão contraída do objecto

- Os buracos são aumentados e

pequenas extrusões são eliminadas

Objecto original Objecto final Imagem original Imagem final Elemento estruturante Sobrepõe-se a origem do EE a todos os pixels a 1 na imagem, coloca-se 1 na imagem resultante quando o EE cabe completamente no objecto

(79)

79

Exemplo

(80)

80

Calcule o resultado da erosão de I com os diferentes elementos estruturantes:

(81)

81

Propriedades

• Dualidade

•Comutatividade

(82)

82

Exemplo – Dualidade

(83)

83

Exemplo – Operações sucessivas

(84)

84

Elementos estruturantes habituais

(85)

85

Exemplo – Imagem original

(86)

86

Exemplo

[Burger & Burge]

(87)

87

Exemplo

(88)

88

Exemplo

(89)

Determinação de contornos – Outlining

• Como a erosão pode resultar numa contracção isotrópica pode-se efectuar a extracção de

contornos com a operação composta:

• Contrai-se o objecto e subtrai-se do original • Para obter uma erosão isotrópica pode usar-se

EEs de 3x3 ou 5x5, …

• O tamanho do elemento estruturante determina a a espessura do contorno obtido

Contornos obtidos com um EE de 3x3

(90)

90

Exemplo

(91)

91

Exemplo

(92)

92

Opening

• É uma erosão seguida de dilatação • É idempotente!

• É a união de todos os EEs que cabem dentro do objecto

• Com um EE circular tende a:

- suavizar os contornos do objecto - partir ligações estreitas

- eliminar pequenas protuberâncias O EE é aplicado a todo o objecto, mas nenhuma parte deste pode aparecer fora do objecto

Imagem original

(93)

Elemento estruturante

É uma erosão seguida de dilatação

Na erosão:

Alinha-se a origem do EE com todos os elementos a 1, quando este cabe completamente no objecto coloca-se a 1 o pixel correspondente na imagem final

Estes pixels são zero na imagem final, pois o EE não cabe no objecto, quando alinhado com eles

Exemplo

Na dilatação:

Alinha-se a origem do EE com todos os elementos a 1, e colocam -se a 1 os pixels correspondentes ao EE na imagem final

(94)

94

Exemplo

Imagem original Depois da erosão Depois da dilatação

Opening com um elemento estruturante circular

(95)

Closing

• É uma dilatação seguida de erosão • É dual do opening

• É idempotente

Imagem original

Elemento estruturante

(96)

97

Exemplo

Imagem original Imagem final

(97)

98

Propriedades

• Idempotência

(98)

99

Exemplo

[Burger & Burge]

(99)

100

Exemplo de Aplicação - Skeletonizing

Erosões

(100)

101

Operações sobre imagens com níveis de cinzento

• As mesmas operações

• Mas, o elemento estruturante representa uma função real 2D

– Valores positivos, negativos ou nulos – “Don’t care”

(101)

102

Dilatação

(102)

103

Erosão

(103)

104

Exemplo

(104)

105

Exemplo

(105)

106

Exemplo

(106)

107

Exemplo

[Burger & Burge]

(107)

108

Exemplo

(108)

109

Exemplo

(109)

Bibliografia

• W. Burger, M. J. Burge, Principles of Digital Image Processing, Vol.1 and Vol. 2, Springer, 2009

• A. Watt, F. Policarpo, The Computer Image, Addison Wesley, 1998 • R. Gonzalez, R Woods, Digital Image Processing, 2nd Ed., Addison

Wesley, 2002

Agradecimentos

Aos Profs. Augusto Silva e Paulo Dias, e a alunos de Doutoramento

Imagem do 1º slide: http://spie.org/x8899.xml?ArticleID=x8899

Junqing Chen and Thrasyvoulos Pappas, “Adaptive perceptual color-texture image segmentation” SPIE - Electronic Imaging & Signal Processing, 2006 DOI: 10.1117/2.1200602.0016

Referências

Documentos relacionados

A pesquisa pode ser caracterizada como exploratória e experimental em uma primeira etapa (estudo piloto), na qual foram geradas hipóteses e um conjunto de observáveis, variáveis

Considerando que a maioria dos métodos publicados até os dias de hoje realizam a separação de um, ou no máximo dois metais de transição, e que a aplicabilidade

Logo, essa experiência foi vivenciada numa instituição de longa permanência do interior do estado e serviu para apresentar aqui a promoção de um cuidado de

Com base nesses fatos e visando buscar informa- ções sobre possíveis diferenças no comportamento dos girinos, quando alimentados com rações balance- adas, utilizando-se valores de

¾ Segundo nível • Terceiro nível – Quarto nível A FAMÍLIA PROFIBUS A FAMÍLIA PROFIBUS PROFIBUS-FMS PROFIBUS-FMS é a solução de propósito geral para comunicação de

André Oliveira aoliveira@celeres.com.br Andressa Nascimento anascimento@celeres.com.br Cecília Fialho cfialho@celeres.com.br Fabiano Bisinotto

■ Caráter regressivo da tributação sobre receitas: Para as PMEMs, elevados encargos sobre o faturamento dificultam o aproveitamento racional e sustentável do depósito mineral

 Insegurança jurídica: (1) os valores poderão ser adequados por portaria interministerial MF/MJ; (2) O CADE poderá requerer, no prazo de um ano a contar da consumação da