Resumo— O câncer de mama é o segundo tipo mais f requente de câncer do mundo, a sua identif icação precoce apresenta um elevado percentual de cura. Com o intuito de f acilitar a identif icação dos nódulos nas mamograf ias este trabalho tem como proposta o desenvolvimento de uma f erramenta CAD (Computer-Aided Diagnosis) capaz de auxiliar o prof issional na detecção dos nódulos. A priori f oi necessário o conhecimento sobre câncer de mama, mamas densas e nódulos. Para identif icação dos nódulos nas imagens f oram utilizadas técnicas de pré-processamento (f iltragem, equalização e binarização) e segmentação utilizando contorno ativo. Um conjunto de 180 imagens f oi utilizado na f ase de testes, f oram realizadas três abordagens dif erentes para avaliação do modelo de contorno ativo, tendo a f iltragem associada à segmentação apresentado melhor resultado com a identif icação de 93% dos VP (verdadeiros-positivos).
Palavras-chave—Segmentação, nódulos mamários, contorno ativo, f erramenta CAD.
I. INTRODUÇÃO
câncer de mama é o segundo tipo mais frequente de câncer do mundo e o mais comum entre a população feminina, afetando aproximadamente uma entre onze mulheres em algum estágio de sua vida (INCA). No Brasil, as taxas de mortalidade por câncer de mama continuam elevadas, muito provavelmente porque a doença ainda é diagnosticada em estágios avançados. Na população mundial, a sobrevida média após cinco anos é de 61% (INCA). O câncer de mama ocorre tanto em homens como em mulheres, porém a incidência é muito maior em mulheres como pode ser comprovado pelos dados obtidos pelo INCA (Instituto Nacional de Câncer) no ano de 2010, em que foram constatados 12.852 número de mortes, sendo 147 homens e 12.705 mulheres.
A mamografia é reconhecida como a técnica mais eficaz para a detecção durante a fase inicial do câncer. Uma vez detectada a massa na mamografia, o radiologista recomenda outras investigações, dependendo da probabilidade de malignidade da lesão. No entanto, a caracterização das massas obtidas das imagens mamográficas é uma tarefa complexa e um alto número de biopsias é realizado desnecessariamente. Além da complexidade na interpretação das lesões, a imagem mamográfica possui baixo contraste, ruído, entre outros fatores que influenciam na sua qualidade, tais como calibração do equipamento mamográfico, condições de revelação, conservação e manipulação do filme.
Uma maior taxa de acerto no diagnóstico pode ser obtida com a combinação da interpretação do radiologista e uma
análise computacional. Métodos computacionais têm mostrado um grande potencial no auxílio aos radiologistas nas decisões de malignidade ou benignidade, fornecendo uma segunda opinião sobre o diagnóstico visual da lesão [1].
Com base nos problemas apresentados para diagnosticar um nódulo, o objetivo desse trabalho foi o desenvolvimento de uma ferramenta CAD para a identificação de nódulos em imagens mamográficas. Esta ferramenta possui dois estágios: o pré-processamento da imagem, utilizando técnicas como filtragem, binarização e equalização, e a execução do algoritmo de segmentação utilizando o modelo deformável de contorno ativo (Snakes).
Este trabalho está organizado da seguinte forma, primeiramente, uma fundamentação teórica foi realizada acerca dos assuntos de câncer de mama, mamas densas, nódulos, CAD, segmentação utilizando o modelo de contorno ativo e as técnicas de pré-processamento de imagens. Foi feita também uma análise de trabalhos relacionados com o tema de segmentação de imagens mamográficas e utilização do modelo deformável de contorno ativo. Na seção da metodologia foram detalhadas as atividades e decisões tomadas durantes o desenvolvimento do projeto. Posteriormente foram apresentados os resultados obtidos com a aplicação do algoritmo nas imagens em três abordagens distintas. Por fim, foram feitas as considerações a respeito do trabalho.
II. FUNDAMENTAÇÃO TEÓRICA
Nesta seção serão descritas as técnicas utilizadas no desenvolvimento do projeto, assim como será feita uma análise de trabalhos que utilizaram o modelo de contorno ativo para a segmentação de imagens com o intuito de identificar o contorno de objetos de interesse. Para a contextualização do trabalho, conceitos relacionados ao câncer de mama, mamas densas, nódulos e ferramentas CAD serão introduzidos no decorrer da seção.
A. Câncer de Mama.
As Mamas são glândulas cuja principal função é a produção do leite, que se forma nos lóbulos e é conduzido até os mamilos por pequenos canais chamados ductos. Quando as células da mama passam a dividir-se de forma desordenada, um tumor maligno pode instalar-se principalmente nos ductos e mais raramente nos lóbulos.
O câncer de mama é uma doença que acomete mais as mulheres. São considerados como fatores de risco a idade avançada, a exposição prolongada aos hormônios femininos, o
Detecção de nódulos em mamas utilizando
contorno ativo
Luiz Bernardo Souza e Souza. Autor, Michele Fúlvia Angelo, Orientadora.
excesso de peso e o histórico familiar ou de mutação genética. Ser portadora dos genes BRCA1 e BRCA2 é um fator de risco importante [2].
Estão também mais propensas a desenvolver a doença por causa da longa exposição aos hormônios femininos, as mulheres que não tiveram filhos ou tiveram o primeiro filho após os 35 anos, não amamentaram, fizeram uso de reposição hormonal (principalmente com estrogênio e progesterona associados), menstruaram muito cedo (antes dos 12 anos) e entraram mais tarde na menopausa (acima dos 50 anos). No entanto, há casos de mulheres que desenvolvem a doença sem apresentar fatores de risco identificáveis [2].
B. Mamas densas e nódulos.
Quando uma mama possui muito tecido glandular é denominada de mama densa, dificultando a avaliação da mamografia e refletem em uma predisposição ao câncer local. Em uma pesquisa canadense [3], os autores estudaram 1.112 mulheres, dentre as quais as que possuíam mamas densas o risco de desenvolver um câncer de mama é alto comparado ao de uma com baixa densidade. Sendo facilmente mascarado pelo tecido, tal risco é aumentado nas mulheres acima de 56 anos. A gordura aparece escura na mamografia e os tumores mais claros da mesma foram que o tecido denso.
O nódulo é uma lesão sólida que pode aparecer em qualquer parte do corpo, na sua maioria são benignos não necessitando de tratamento. O nódulo mamário pode ou não ser acompanhando de dor mamária. Vale salientar que nem todos os nódulos na mama significam que a pessoa está com câncer de mama.
C. CAD
Com o avanço do processamento de imagem digital, o reconhecimento de padrões e o uso de inteligência artificial, os radiologistas têm oportunidade de melhorar seu diagnóstico com o auxílio de sistemas de computador. O diagnóstico auxiliado por computador (Computer-Aided Diagnosis – CAD) tem sido implementado em alguns serviços de mamografia, com o intuito de prover dupla leitura [4].
Os sistemas CAD podem ser utilizados para a detecção ou para a classificação. Primeiro, em uma tarefa de detecção, o computador encontra uma lesão não perceptível ao radiologista. Por outro lado, em uma tarefa de classificação, o radiologista e o computador irão analisar uma mesma lesão, para avaliar a sua probabilidade de malignidade. Se as duas análises forem discordantes, a análise do computador será um desafio ao radiologista. Em uma tarefa de detecção, o auxílio do computador é representado como um resultado binário, por exemplo, um marcador como uma seta pode ser usado para indicar a detecção de uma anormalidade, ou sem seta para indicar uma mamografia normal [4].
Sistemas CAD, em geral, seguem os respectivos passos de execução: pré-processar a imagem utilizando alguma técnica que melhore a sua informação visual; segmentar, etapa na qual a estrutura que se deseja identificar é destacada da imagem; e por último a etapa de classificação, onde, com base nos dados obtidos da segmentação, é fornecido um diagnóstico.
Morton et al. 2006, em estudo prospectivo de 21.349 mamografias, encontraram um aumento relativo na taxa de detecção do câncer de mama de 7,62% [5]. Brem et al. 2003 e Romero et al. 2011 indicaram aumento da detecção do câncer de mama em torno de 20% em estudos retrospectivos [6,7], ambos trabalhos usando ferramentas CAD.
D. Técnicas de pré-processamento 1) Filtragem no domínio espacial
Existem vários tipos de filtragem para imagens digitais, filtros de suavização, filtros de aguçamento, entre outros. A escolha do filtro é realizada a depender do tipo aplicação. O processo de funcionamento desses filtros consiste na movimentação de uma sub imagem chamada comumente de máscara, kernel, filtro, ponto a ponto da imagem, na Figura 1 pode ser visualizado uma imagem e uma máscara 3x3 posicionado sobre ela [8].
Figura 1 – Máscara 3x3 posicionada sobre um a im agem . Fonte: Gonzalez e Woods (2002, p. 117) [8].
Cada filtro possui uma máscara específica correspondente ao tipo de filtragem que se deseja obter na imagem, os valores presentes nas máscaras são chamados de coeficientes, ao invés de pixels, na Figura 2 é possível ver essa relação pixels x coeficientes, para isso será feito uma ampliação da parte destacada na Figura 1.
Em cada ponto (x , y), a resposta do filtro naquele ponto é calculada usando uma relação pré definida. Para filtros espacias lineares a resposta é dada pela soma dos produtos dos coeficientes do filtro e os pixels correspondentes da imagem na área diretamente abaixo da máscara do filtro. Para máscaras 3 x 3 o resultado da filtragem no ponto (x, y) na imagem é descrita pela equação (1):
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) (1)
É possível observar que o coeficiente w(0, 0) coincide com o pixel f(x, y), indicando que a mascara é centralizada no ponto (x,y) onde o resultado do somatório é colocado.
Figura 2 – Representação de um a m áscara sendo posicionada sobre um a im agem . Fonte: Gonzalez e Woods (2002, p. 117) [8].
Filtros de suavização são utilizados para “ borramento” e redução de ruído. O “ borramento” é utilizado no pré-processamento para remoção de pequenos detalhes de uma imagem e correção de pequenas falhas em linhas ou curvas. A redução de ruído pode ser obtida utilizando filtros lineares e não lineares.
A resposta de saída dos filtros de suavização lineares é a média dos pixels presentes na vizinha da máscara do filtro. Esses filtros são chamados de filtros da média ou passa-baixa. A ideia por trás dos filtros de suavização é a substituição do valor de cada pixel na imagem pela média dos pixels (em escala de cinza) na vizinhança determinada pela máscara, este processo resulta em uma imagem com menos transições abruptas nos níveis de cinza [8].
Um exemplo de filtro linear de suavização é o gaussiano. Este filtro possui dois parâmetros: a dimensão da máscara e um valor para o desvio padrão máximo sigma (σ). Este último parâmetro determina o quanto será suavizada a imagem. Quanto maior o sigma, maior o número de pixels cujo valor é
diferente de zero, o que leva os pixels vizinhos a terem maior influência em cada ponto, realizando, assim, uma suavização maior na imagem [8].
A distribuição gaussiana em uma dimensão tem a forma descrita pela equação (2):
√ (2)
no qual assumindo a distribuição com média zero e σ = 1 resulta na Figura 3.
Figura 3 - Distribuição gaussiana 1-D com m edia igual a 0 e σ = 1. Fonte: Moraes (2006, p.4)
Em duas dimensões, a distribuição Gaussiana isotrópica (circularmente simétrica) com média zero e desvio padrão σ = 1 é ilustrada na Figura 4 e é descrita convenientemente em termos de direções perpendiculares X e Y pela equação (3).
√
(3)
Figura 4 - Distribuição Gaussiana 2-D com m edia igual a (0,0) e σ = 1. Fonte: Moraes (2006, p.4)
Com base na equação (3) é possível determinar a máscara que irá convoluir sobre a imagem e consequentemente retirar os ruídos indesejados, os valores de x e y representam a posição na máscara e o Gσ o valor a ser colocado nessa
posição. Utilizando um σ =1.4 e uma matriz de tamanho 5x5 aproximadamente se obtém a matriz apresentada na Figura 5.
Figura 5 - Máscara gaussiana (σ =1.4).Fonte: Moraes (2006, p.5)
2) Equalização
A equalização de uma imagem consiste em obter a máxima variância do histograma de uma imagem. Um histograma (Figura 6) mostra a relação número de ocorrências dos pixels x intensidade do nível do tom de cinza da imagem. Ao equalizar um histograma (Figura 7) é feito um espalhamento dos pixels nos níveis de tom de cinza da imagem, obtendo assim um melhor contraste [8].
Existem três técnicas distintas para equalizar um histograma: equalização global, equalização regional por blocos e equalização regional pontual. Na equalização global o processo é aplicado levando-se em consideração todos os tons de cinza presentes na imagem. Nas equalizações regional por blocos e pontual utiliza-se uma janela de tamanho definido pelo usuário para varrer a imagem e, para cada posição da janela na imagem, analisa-se apenas os tons de cinza dentro da janela. A diferença entre as duas técnicas de equalização regional é que na equalizacão por blocos, todos os pontos do bloco são equalizados enquanto na equalização pontual apenas o ponto central da janela é equalizado [8].
Figura 6 – Histogram a de um a im agem em tons de cinza
Figura 7 – Histogram a equalizado da im agem
3) Binarização
A binarização consiste em um processo onde, tomando como base um dado valor de limiar (threshold), é feita uma verificação dos valores dos pixels da imagem, caso a intensidade seja maior que o valor do limiar escolhido é atribuído o valor 1, caso seja menor é atribuído o valor 0 para o valor do pixel, restando assim somente dois tons de intensidade na imagem. Esta técnica é útil para a extração de partes de interesse da imagem isolando o objeto de interesse do fundo [8].
O valor de limiar utilizado pode ser escolhido manualmente através da análise do histograma, ou pode ser calculado através de métodos automáticos, como o de Otsu [8] dentre outros.
E. Gradiente de uma imagem digital
O operador gradiente é muito utilizado em processamento digital de imagem por sua capacidade de determinar mudanças nos níveis de cinza de uma imagem. O cômputo do gradiente de uma imagem baseia-se na obtenção das derivadas parciais
e
na posição de cada pixel [8], como pode ser visto na
equação (4) ( ) ( ) (4)
Considerando que a área 3x3 na Figura 8.a representa as variações de tons de cinza na vizinhança de uma imagem, uma das formas mais simples de se calcular a derivada parcial de primeira ordem no ponto z5 é usar os operadores de sobel,
apresentados nas Figura 8.b e Figura 8.c, os quais possuem a característica de derivação e suavização ao mesmo tempo.
0 20 40 60 80 100 120 140 160 0 0.2 0.4 0.6 0.8 1 0 50 100 150 200 0 0.2 0.4 0.6 0.8 1
Figura 8 - a) Região de um a im agem de tam anho 3x3; b) Máscara de sobel para o côm puto de Gx; c) Máscara de sobel usada no côm puto de Gy . Fonte:
Gonzalez e Woods (2002, p. 578) [8].
Tem-se que, com base na Figura 8, as derivadas baseadas nas máscaras de Sobel são (5) e (6).
( ) ( ) (5) ( ) ( ) (6) Em que os z são os níveis de cinza dos pixels da imagem sobrepostos pelas máscaras. O cômputo do gradiente na posição central da máscara é feito somando os módulos dos valores obtidos de Gx e Gy [8]. Na Figura 9 é possível observar uma imagem tendo o seu gradiente Gx e Gy calculado
e, por último, o resultado final da soma dos gradientes. Para a obtenção dos próximos valores, a máscara é deslocada para a posição do outro pixel e o processo é repetido [8].
Figura 9 - a) Im agem original; b) Côm puto de Gx; c) Côm puto de Gy ; d) |Gx|+|Gy |. Fonte: Gonzalez; Woods (2002, p. 580) [8].
F. Interpolação
A interpolação é um método no qual se permite aproximar uma função f(x) por outra função g(x). Esse método é utilizado em situações, por exemplo:
quando são conhecidos somente os valores numéricos da função para um conjunto de pontos e é necessário calcular o valor da função em um ponto não tabelado. quando a função em estudo tem uma expressão tal que
operações como a diferenciação e a integração são difíceis (ou mesmo impossíveis) de serem realizadas Existem vários tipos de interpolação como: linear, polinomial, spline, entre outras.
Dados os pontos (x0, f(x0)), (x1, f(x1)),..., (xn, f(xn)), portanto
(n+1) pontos, queremos aproximar f(x) por um polinômio pn(x) de grau menor ou igual a n, tal que:
i. f(xk) = pn(xk) k = 0,1,2,..., n Representando pn(x) por: i. pn(x) = a0 + a1x + a2x 2 + ... + anx n
Portanto obter pn(x) significa obter os coeficientes a0, a1,
a2,..., an.
Da condição pn(xk) = f(xk), k = 0, 1, 2,..., n, montamos o
seguinte sistema linear (Figura 10).
Figura 10 – Sistem a linear para obter o polinôm io interpolador . Fonte: Ruggiero; Lopes (1996, p.214) [9]
com n+1 equações e n+1 variáveis: a0, a1,..., an.
A matriz A dos coeficientes pode ser visualizada na Figura 11.
Figura 11 – Matriz dos coeficientes. Fonte: Ruggiero; Lopes (1996, p.214) [9]
que é uma matriz de Vandermonde e, portanto, desde que x0,
x1,..., xn sejam pontos distintos, temos que det(A) ≠ 0 e, então,
o sistema linear admite solução única [9].
Existem diferentes formas de achar de se obter o polinômio interpolador, uma delas é resolver o sistema linear descrito na Figura 10, existem ainda a forma de Lagrange e Newton.
A interpolação spline é uma técnica de aproximação que consiste em se dividir o intervalo de interesse em vários subintervalos e interpolar, da forma mais suave possível, nestes subintervalos com polinômios de grau pequeno [9].
Considerando uma função f(x) tabelada nos pontos x0
x1 ... xn . Uma função Sp(x) é denominada spline de grau
p com nós nos pontos xi = 0, 1,..., n, se satisfaz as seguintes
condições:
i. em cada subintervalo [xi, xi+1], i = 0, 1, (n – 1), Sp(x)
é um polinômio de grau p: sp(x).
ii. Sp(x) é contínua e ter derivada contínua até a ordem
(p -1) em [a,b]
iii. Sp(xi) = f(xi), i = 0, 1, 2,..., n, então será denominada spline interpolante.
A spline linear apresenta a desvantagem de ter derivado primeira descontínua nos nós. A spline quadrática, teremos
que S2(x) tem derivadas contínuas até ordem 1 apenas e,
portanto, a curvatura de S2(x) pode trocar nos nós. Uma spline
cúbica, S3(x), é uma função polinomial por partes, contínua,
onde cada parte sk(x) é um polinômio de grau três no intervalo
[xk-1, xk], k =1,2,...,n [9]. S3(x) tem primeira e segunda
derivadas contínuas, fazendo com que a curva não tenha picos nem troca abrupta de curvatura nos nós.
Supondo que f(x) esteja tabelada nos pontos xi, i = 0,1,2, ..., n a função S3(x) é chamada spline cúbica interpolante de f(x)
nos nós xi, i = 0,...,n se existem n polinômios de grau três,
sk(x), k = 1,...,n tais que: i. S3(x) = sk(x) para x [xk-1, xk], k = 1,..., n ii. S3(xi) = f(xi), i = 0, 1,..., n iii. sk(xk) = sk+1(xk), k = 1,2,..., (n-1) iv. s’k(xk) = s’k+1(xk), k = 1,2,..., (n-1) v. s’’k(xk) = s ” k+1(xk), k =1, 2,…, (n-1) G. Contorno ativo e a representação de uma Snake
Os modelos de contorno ativo foram introduzidos por Kass, Witkin e Terzopoulos (1987). A ideia geral do modelo é a utilização de uma curva (snake) de minimização de energia para extrair características importantes de uma imagem. Essa energia associada à curva é definida de forma que ela seja mínima quando a curva se encontre sobre uma região com as características desejadas. As aplicações do contorno ativo que mais se destacam são: processamento de imagens, segmentação e rastreamento [10].
A snake é uma curva controlada continuamente sob a influência de forças internas e forças externas. As forças internas atraem a snake em direção de características salientes como linhas e contornos. As forças externas são responsáveis por colocar a snake próxima ao local de mínima energia [10].
Representando uma snake como uma curva parametrizada v(s) = (x(s), y(s)), pode-se descrever sua energia funcional Esnake como a equação (7) onde Eint
representa a energia interna a snake e Eext a energia externa.
∫ ( ( ))
∫ ( ( )) ( ( ))
(7)
A energia interna (Eint) pode ser escrita como a equação (8).
( ( ) | ( )| ( ) ( ) )
(8)
A energia da curva é composta por uma derivada de primeira ordem controlada por α(s) e uma derivada de segunda ordem controlada por β(s) como pode ser observado na equação (8). O termo de primeira ordem faz com que a snake funcione como uma membrana e o termo de segunda ordem
faz com que atue como uma fina placa. Ajustando os pesos de α(s) e β(s) é possível controlar a relativa importância dos termos de primeira e segunda ordem. Utilizando β(s) com valor zero em um ponto permite a snake ser descontinua no termo de segunda ordem e desenvolva um canto.
A energia externa Eext, como pode ser observada na equação (9) é composta pela combinação de três energias ponderadas por wline, wedge e wterm respectivamente. A depender da
ponderação dada as energias diferentes comportamentos da snake podem ser criados [10].
(9) A energia Eline ou energia de linha é a energia mais simples e é composta pela própria intensidade dos pixels da imagem, como descrito na equação (10).
( ) (10)
Dependendo do sinal dado a wline, a snake irá ser atraída à linhas mais claras ou mais escuras do contorno mais próximo, ponderações positivas fazem a snake ser atraída a linhas escuras e ponderações negativas a linhas claras.
A energia Eedge ou energia de borda se utiliza do gradiente da imagem como pode ser visto na equação (11).
( ) (11) Com essa força a snake é guiada para locais onde o gradiente é mais alto, ou seja, nos contornos da imagem. Por último a energia Eterm a qual permite a curva achar o término de linhas e cantos, essa força é descrita pela equação (12).
( ) (12)
Com o cálculo de todas as energias a próxima etapa do algoritmo é o processo iterativo onde, com base nas forças envolvidas, a snake vai se deslocando em direção ao contorno do objeto. Tomando como base a equação (8) quando σ e β forem constantes, minimizar a energia funcional da equação (8) resulta em duas equações (13) e (14) de Euler independentes. (13) (14)
Aproximando as derivadas por diferenças finitas e convertendo para a notação vetorial vi= (xi, yi) = (x(ih), y(ih)),
expandindo Eint resulta na equação (15).
Onde é definido v(0) = (n). Considerando fx(i) =
e
fy(i) =
a equação de Euler correspondente se torna a
equação (16). ( ) ( ) ( ( ) ( )) (16)
Essas equações de Euler podem ser escritas na forma de matrizes ((17), (18)).
( ) (17)
( ) (18)
onde A é uma matriz pentadiagonal. Para resolver as equações (17) e (18) é colocado no lado direito das equações o produto de um step size pela derivada do lado esquerdo em um tempo negativo resultando nas equações (19) e (20).
( ) ( ) (19)
( ) ( ) (20)
As equações (19) e (20) podem ser resolvidas pela inversão de matriz
( ) (
( )) (21)
( ) (
( )) (22) As equações (21) e (22) calculam as novas posições dos pontos da snake a cada iteração.
H. Trabalhos que utilizaram Contorno Ativo
O modelo original proposto por Kass, Witkin e Terzopoulos (1988) de contorno ativo utiliza-se da combinação de duas energias para o controle da curva inicial que se deforma em direção às bordas da região de interesse. A energia interna da imagem leva em consideração aspectos físicos como; elasticidade, responsável por deformar a curva em direção as características mais salientes da imagem como linhas e bordas; e rigidez, responsável por garantir a suavização da curva. A energia externa é responsável por guiar a snake ao local desejado de menor energia, por isso a snake é conhecida como curva de minimização de energia [10].
Kass, Witkin e Terzopoulos (1988) utilizaram o algoritmo para detecção de contornos salientes da imagem (Figura 12), assim como o rastreamento desses contornos durante movimento (Figura 13) [10].
Figura 12 - Processo de detecção do contorno de um a pera e um a batata utilizando snakes. Fonte: Kass, Witkin e Terzopoulos (1988) [10].
Figura 13- 8 fram es selecionados de um a sequência de um vídeo de 2 segundos m ostrando a utilização das snakes para rastream ento. Fonte: Kass,
Witkin e Terzopoulos (1988) [10].
Olivete e Luís (2006) utilizaram desse modelo para a segmentação e a extração de características de imagens carpais. As informações extraídas foram utilizadas para a criação de um novo método de estimativa de idade óssea [11]. Nas Figuras 14, 15 e 16 podem ser vistos o processo de extração das falanges médias e proximais.
Figura 15 - Processo de contração da Snake para as falanges m édias. Fonte: Olivete e Luís (2006) [11].
Figura 16- Processo de contração da Snake para as falanges proxim ais. Fonte: Olivete e Luís (2006) [11]
Sahiner et al (2003) desenvolveu uma técnica de computação visual para a caracterização de nódulos mamários como malignos ou benignos. Em seu estudo foram investigadas as características dos nódulos em três dimensões em imagens de ultrassom. Para a segmentação automática dos nódulos foi utilizado o modelo de contorno ativo para imagens 2-D e 3-D. Para o contorno identificado foram extraídas as informações como textura e características morfológicas necessárias para classificação do nódulo [12].
Yuan et al (2007) utilizaram o modelo de contorno ativo para a identificação do contorno de lesões em mamografias digitais, o método desenvolvido utiliza o modelo geométrico para contorno ativo, uma das variações do modelo original. Foram utilizadas 739 imagens para a avaliação da técnica de segmentação, foram comparados os resultados com a aplicação de outras duas técnicas de segmentação: método de crescimento de região e o Radial Gradient Index (RGI). Utilizando o modelo de contorno ativo, 85% das imagens foram segmentadas corretamente em comparação aos 69% e 73% obtidos com as técnicas de crescimento de região e RGI [13].
Desde o modelo proposto por Kass, Witkin e Terzopoulos (1988), muitas variações surgiram com o intuito de melhorar o desempenho do algoritmo. Por exemplo, a Gradient Vector Flow Snake [14], adição de uma força de inflação [15],
utilização de algoritmos genéticos [16], programação paralela [17], e muitos outros. As aplicações do modelo são variadas, muito de sua utilização é voltada para a área médica, seja para a segmentação de imagens carpais [11], lesões orais [18], imagens de ultrassom [16], etc.
Com o intuito de melhorar o desempenho e a precisão da Snake tradicional, Cohen (1991), propôs a inserção de uma força de inflação nas forças externas. Essa força de inflação chamada de força balão faz com que a curva inicial atue como um balão; inflando, caso a curva inicial seja inicializada dentro da região de interesse; murchando, caso a curva inicial seja inicializada fora da região de interesse [15]. Esse modelo propõe solucionar o problema de convergência que a snake original apresenta caso não esteja próxima à região de interesse. Na Figura 17 pode ser observada a evolução da curva inicial sob a influência da força balão na detecção do ventrículo esquerdo.
Figura 17- Evolução da curva balão na detecção do ventrículo esquerdo. Contorno inicial no canto superior esquerdo.
Fonte: Cohen (1991) [15].
Talebi, Ayatollahi e Moosavi (2010) utilizaram o modelo proposto por Cohen (1991) em um sistema para segmentação da íris. A íris é uma das características usadas em sistemas biométricos para a identificação de seres humanos. O trabalho proposto é dividido em quatro etapas: 1- Segmentação, 2- Normalização e melhora da imagem, 3- Extração da característica, e 4- Comparação. Na etapa de segmentação é de extrema importância, para uma maior precisão do sistema, que a íris seja retirada perfeitamente do olho, caso contrário a informação incorreta irá ser fornecida ao sistema prejudicando assim as etapas posteriores [19].
A íris forma um anel entre a esclera (parte branca) e a pupila (parte escura do olho). Para a segmentação da íris dois limites devem ser definidos; um entre a íris e a pupila e outro entre a íris e a esclera. Esses limites podem ser modelados por
dois círculos concêntricos, depois de inicializados os limites, o algoritmo de contorno ativo pode ser aplicado para que a íris seja segmentada, os resultados podem ser vistos nas Figuras 18 e 19.
Figura 18 - Inicialização do contorno e resultado final da segm entação. Fonte: Talebi, Ay atollahi e Moosavi (2010) [19].
Figura 19 - Outro exem plo de segm entação da íris. Fonte: Talebi, Ay atollahi e Moosavi (2010) [19].
Uma das variações do modelo original proposto por Xu e Prince (1998) é chamada de Gradient Vector Flow (GVF) Snake, este modelo de contorno ativo utiliza do GVF como força externa [14]. Esta variação surgiu para solucionar alguns problemas que ocorrem no modelo original como: a necessidade de uma proximidade do contorno inicial e a região de interesse a ser segmentada e dificuldades em progredir adentro de concavidades. Várias soluções foram criadas para solucionar essas dificuldades como a utilização de forças de inflação, porém essas soluções não apresentavam resultados satisfatórios, pois solucionavam apenas um dos problemas e acabavam criando outros. A utilização de uma força de inflação só soluciona o problema da proximidade da curva inicial e a região de interesse, porém não tem tanto poder de adentrar concavidades.
A GVF Snake se propõe ser mais eficiente através da utilização da força GVF que é um campo de vetores (Figura 20) derivado da imagem pela minimização de uma determinada energia funcional. Esta minimização é obtida pela resolução de um par de equações diferenciais que “ espalha” o vetor da gradiente computado da imagem.
Figura 20 - Cam po de vetores GVF. Fonte: Xu e Prince (1998) [14].
Algumas das vantagens da GVF Snake é insensibilidade a curva inicial, ou seja, a curva inicial pode ser inicializada dentro ou fora do objeto a ser contornado e apresenta um grande potencial de contornar concavidades. Um exemplo da detecção do contorno de um objeto de interesse pode ser visualizado na Figura 21.
Figura 21 - Im agem a ser contornada e o resultado final do contorno utilizando GVF Snake. Fonte: Xu e Prince (1998) [14].
Outra variação do modelo encontrada é a utilização de algoritmos genéticos como forma de minimização de energia do contorno ativo. Talebi, Ayatollahi e Kermani (2011) utilizaram desse modelo para segmentar tecidos circulares em imagens de ultra-som [16]. O uso de algoritmos genéticos permitiu a solução de alguns problemas como: sensibilidade a posição inicial do contorno e mínimos locais. Esse problemas se intensificam pelo fato de imagens ultra-sônicas possuírem pouca variação de contraste e ruídos pontuais.
O processo de aplicação do algoritmo segue alguns passos. Primeiro assume-se que o tecido sob exame está confinado dentro de dois círculos (Figura 22). Nessa situação, a região sob estudo pode ser considerada como círculos concêntricos (Figura 23), onde cada um desses círculos atua como um contorno. Como a Figura 23 mostra, cada um desses círculos podem conter pontos do contorno do tecido que se deseja extrair. Assim, é possível separar esses pontos de cada círculo e conectá-los formando o contorno do tecido.
Figura 22 – Espaço onde o tecido está confinado dentro dos círculos.Fonte: Talebi, Ay atollahi e Kerm ani (2011) [16].
Figura 23 - Posicionam ento dos contornos iniciais e os pontos específicos para cada contorno.Fonte: Talebi, Ay atollahi e Kerm ani (2011) [16].
O próximo passo é considerar uma população de cromossomos como a população inicial para gerar os círculos. Cada cromossomo possui dois genes, o primeiro especifica o raio do círculo e o segundo especifica a angulação que ele está situado. Esses cromossomos são distribuídos nos círculos gerados em pontos eqüidistantes (Figura 23). Uma vez que os contornos iniciais forem gerados e os pontos iniciais determinados, cada um desses pontos deve ser avaliado e os melhores selecionados. Para isso uma função Fitness deve ser calculada, essa função é inversamente proporcional à energia interna e externa da imagem obtida nesse ponto. Os pontos que estão localizados no contorno do tecido situam-se nos locais de mínima, sendo assim possuem baixa quantidade de energia e altos valores Fitness [16].
Os indivíduos de melhor Fitness são selecionados e sofrem cruzamento aos pares e mutação. Esse processo é repetido até que um conjunto de melhores contornos sejam obtidos. Ao final da execução os melhores indivíduos são separados e os melhores pontos de cada contorno são selecionados, o contorno final é obtido pela conexão desses pontos. A Figura 24 mostra o resultado obtido com esse método proposto.
Figura 24 - Im agem original e a respectiva im agem segm entada. Fonte: Talebi, Ay atollahi e Kerm ani (2011) [16].
III. MÉTODOS E EXPERIMENTOS
Na metodologia adotada, primeiramente, foi necessária a obtenção de conhecimento sobre a técnica de segmentação utilizando contorno ativo. Para isso foi realizado o levantamento teórico a respeito do assunto, assim como de outras técnicas necessárias ao desenvolvimento como: técnicas de filtragem, interpolação, entre outras de processamento de imagem.
O projeto foi dividido em quatro etapas: Levantamento teórico, Preparação do ambiente de desenvolvimento, Desenvolvimento do software, Análise dos resultados e testes. Cada etapa possui sub-tópicos que detalham melhor a divisão das atividades, como pode ser visualizado na Tabela 1.
Tabela 1 – Detalham ento das etapas do desenvolvim ento do proj eto
Etapa Atividades
Levantam ento Teórico
Pesquisa Bibliográfica Estudo da técnica de
segm entação utilizando contorno ativo.
Estudo das técnicas necessárias para o funcionam ento do algoritm o.
Estudo de técnicas de pré-processam ento de im agem
Preparação do am biente de desenvolvim ento
Escolha da linguagem a ser utilizada no desenvolvim ento. Estudo e com preensão da
ferram enta de desenvolvim ento escolhida.
Obtenção de um banco de im agens para aplicação do algoritm o
Desenvolvim ento do software
Desenvolvim ento da interface gráfica para interação com o usuário.
Im plem entação das funções necessárias para o funcionam ento do algoritm o, com base nos requisitos levantados na fundam entação.
Análise dos resultados e testes
Escolha dos parâm etros necessários para execução do algoritm o
Aplicação das três form as de avaliação do algoritm o no conj unto de im agens escolhido. Verificação do com portam ento
do algoritm o com as diferentes características das im agens.
Na segunda etapa, foi escolhido o ambiente de trabalho a ser utilizado para a implementação do software, para isso foram levados em consideração aspectos como: robustez, performance e agilidade no desenvolvimento. Uma das tecnologias que possui essas características é o MATLAB®, o qual possui muitas bibliotecas que auxiliam em cálculos matemáticos e no processamento de imagens. Ainda nesta etapa foram coletas as imagens para a realização dos testes do algoritmo implementado, foram 180 regiões de interesse (RI) extraídas de imagens mamográficas, sendo que em 78 delas contém nódulos e 102 não contém nódulo, todas as imagens possuem 8 bits e pertencem ao banco de imagens mamográficas disponíveis online [20].
A terceira etapa consistiu no desenvolvimento do software. Os requisitos destacados no levantamento teórico foram transformados em rotinas para a implementação do algoritmo. Muitas rotinas o MATLAB® já disponibilizava como alguns tipos de pré-processamento, interpolação e manipulação de matrizes.
A última etapa consistiu na análise dos resultados e testes obtidos com as imagens ao aplicar a segmentação por contorno ativo, para isso foi utilizada a metodologia das curvas ROC (Response Operating Caracteristic), das porcentagens de acertos e uma análise estatística em termos de sensibilidade e especificidade, que quantifica os erros em falso-negativo (FN) e falso-positivo (FP) e os acertos em verdadeiro-positivo (VP) e verdadeiro-neg ativo (VN) [21].
A seguir será detalhada a etapa de desenvolvimento do software, onde são descritos os passos para a implementação e utilização das técnicas aplicadas a este trabalho.
A. Desenvolvimento do software
Nesta etapa o modelo de contorno ativo original proposto por Kass, Witkin e Terzopoulos (1988) foi implementado e algumas técnicas de pré-processamento, já disponíveis no MATLAB®, foram utilizadas.
A seguir são apresentadas como as técnicas de pré-processamento de imagens foram utilizadas e o algoritmo de contorno ativo sendo executado.
1) Pré-processamento da imagem
As imagens de mama, no geral, possuem características semelhantes como ruído e baixo contraste, fazendo com que a detecção do contorno do nódulo seja mais difícil. Para que fosse possível alcançar melhores resultados com o algoritmo de contorno ativo, três técnicas de pré-processamento (filtragem, binarização e equalização) foram implementadas para serem aplicadas às imagens para a realização de testes.
O filtro de suavização ou passa-baixa foi o escolhido pela sua característica de reduzir o ruído presente nas imagens, impedindo a detecção de falsos contornos. A filtragem é uma técnica essencial para um comportamento adequado do algoritmo. O filtro passa-baixa é um filtro de suavização que remove altas frequências que correspondem às transições abruptas. Na ferramenta desenvolvida, o usuário escolhe o valor do sigma(σ) que será utilizado para construção da máscara gaussiana que irá convoluir na imagem. A função
fspecial do MATLAB® foi utilizada para a criação da máscara gaussiana de tamanho 3x3, essa função recebe três parâmetros: o tipo de filtro, no caso gaussiano, o tamanho da máscara e o valor do sigma (σ). O próximo passo é realizar a convolução da máscara na imagem realizando a filtragem propriamente dita, para isso foi utilizada a função filter2 que realiza esse processo e possui como parâmetros a imagem e a máscara. Na Figura 25 é possível visualizar o efeito da filtragem em uma das imagens trabalhadas utilizando o valor do σ = 1.
Figura 25 – Im agem filtrada (σ =1) e im agem original.
Um fator importante é a escolha do valor do σ, quanto maior, mais a imagem é suavizada, podendo causar perda de detalhes, como as bordas do nódulo, a Figura 26 e a Figura 27 exemplificam a perda de detalhes com o aumento do σ.
Figura 26 – Im agem filtrada (σ =2) e im agem original.
Figura 27 - Im agem filtrada (σ =4) e im agem original.
A binarização é a técnica para destacar o nódulo do fundo da imagem, como pode ser observado na Figura 28. A função que realiza o processo de binarização é a im2bw do MATLAB®, nesta função são passados a imagem e o valor do limiar a ser utilizado como parâmetro. No presente trabalho o valor do limiar de 0.7 foi escolhido manualmente com base em testes realizados, pois ao se utilizar o limiar automático,
fornecido pela função graytresh do MATLAB® que utiliza o método de Otsu, parte do nódulo era perdido ou ofuscado com o fundo da imagem, como pode ser visualizado na Figura 29.
Figura 28 – Im agem binarizada (lim iar m anual) e im agem original.
Figura 29 - Im agem binarizada (lim iar autom ático) e im agem original.
A equalização é responsável pelo destaque dos nódulos nas imagens com baixo contraste, devido a equalização do histograma. Nódulos que ficavam mascarados com o tecido puderam ter um maior destaque e visualização. A função histeq do MATLAB® foi utilizada para realizar a equalização do histograma, seus parâmetros são a imagem e o número de tons de cinza que se pretende ter na imagem de saída. A Figura 30 exemplifica o uso da técnica.
Figura 30 – Im agem equalizada e im agem original.
2) Execução do algoritmo
Primeiramente é necessária a marcação dos pontos que delimitam a área onde o contorno ativo irá atuar, o número de pontos varia devido ao fato de alguns nódulos necessitarem de uma quantidade maior de pontos para contornar a região de interesse (Figura 31), uma das limitações do algoritmo original
de contorno ativo é o fato dos pontos não poderem ser marcados a uma distância muito grande do objeto a ser contornado, isso ocorre devido ao fato de quanto maior a distância do contorno ao objeto, menor vai ser a influência do vetor gradiente sobre a snake.
Figura 31 - Marcação dos pontos na im agem .
Após a marcação dos pontos é realizada a interpolação dos pontos utilizando a função spline, ver Figura 32. O próximo passo é atribuir valores às ponderações que controlam a força externa (wline, wedge, wterm) e a força interna (α e β) essa etapa é
muito importante, pois a escolha dos valores tem que levar em consideração as características do objeto que se deseja contornar, como foi explicado na fundamentação teórica.
Escolhido os parâmetros o algoritmo do contorno ativo é executado (Figura 32), o usuário determina quantas iterações deseja que o algoritmo permaneça ativo.
Figura 32 – Curva interpolada e contorno obtido após 300 iterações.
IV. RESULTADOS E DISCUSSÕES A. Resultados
Para a realização dos testes foi desenvolvida uma GUI (Graphical User Interface) (Figura 33), na qual o usuário realiza todas as ações necessárias à execução do algoritmo.
Figura 33 – Interface gráfica desenvolvida para interação com o usuário
O usuário pode escolher a imagem que quer avaliar e ponderar as forças (externas e internas) envolvidas no processo e aplicar alguma(s) técnica(s) de pré-processamento disponível(eis). Em todos os testes as ponderações utilizadas pelo algoritmo foram as seguintes: σ = 1, wline = 0, wedge = 1.5,
wterm = 0, α = 0.2 e β = 0.9. Essas forças foram escolhidas
empiricamente com base em testes feitos nas imagens, observando as influências das forças no comportamento da snake e levando em consideração as características comuns entre as imagens.
Os resultados obtidos com a detecção dos nódulos utilizando o contorno ativo foram representados a seguir através da metodologia das curvas ROC. Com as curvas ROC é possível saber a probabilidade de o sistema acertar em casos positivos e em casos negativos, tendo assim uma medida de eficiência através da área sob a curva. Um sistema com alta taxa de falso-negativo significa que muitos sinais não estão sendo detectados (pacientes com a doença são identificados como se não tivessem), assim como uma alta taxa de falso-positivo, significa que está sendo detectado sem que exista (pacientes que não têm a doença, são identificados como se tivessem).
Para a avaliação do algoritmo de contorno ativo foram utilizadas três abordagens, na primeira não é aplicado nenhum tipo de pré-processamento nas imagens, na segunda é aplicada a filtragem e na terceira são aplicadas três técnicas de pré-processamento (filtragem, equalização e binarização) sequencialmente. Para realização dos testes foram utilizadas 180 RI’s, das quais 102 sem nódulo e 78 com a presença de nódulos.
Os resultados obtidos, sem a utilização de técnicas de pré-processamento foram, das 78 RI’s com nódulo 60 RI’s tiveram o nódulo detectado, correspondendo a 77% de verdadeiros-positivos, isso significa dizer que em 23% das imagens que possuíam nódulo a ferramenta não foi capaz de identificá-lo,
essa é uma taxa elevada dada a gravidade que essa informação incorreta pode acarretar. Nas imagens normais o percentual de falsos-positivos foi 22% conforme apresentado na Tabela 2. A área sob a Curva ROC foi de 0,78 (Figura 34).
Tabela 2 – Resultados obtidos sem realizar pré-processam ento nas RI’s
Técnica
aplicada VP (%) FN (%) VN (%) FP (%)
Sem
pré-processam ento 60 77 18 23 80 78 22 22
Figura 34 – Curva ROC dos testes realizados com as RI’s sem aplicação de técnicas de pré-processam ento
Utilizando a filtragem os resultados obtidos foram 94% de verdadeiros-positivos e 5% de falsos-positivos conforme apresentado na Tabela 3, os valores encontrados foram significantemente melhores comparados aos encontrados na primeira abordagem devido à eliminação dos ruídos. A área
sob a Curva ROC foi de 0,945 (Figura 35).
Tabela 3 – Resultados obtidos ao realizar a filtragem nas RI’s
Técnica
aplicada VP (%) FN (%) VN (%) FP (%)
Filtragem 74 94 4 6 97 95 5 5
Figura 35 - Curva ROC dos testes realizados com as RI’s realizando a filtragem
Na terceira abordagem de avaliação os resultados obtidos foram 92% de verdadeiros-positivos e 7% de falsos-positivos conforme apresentado na Tabela 4. A área sob a Curva ROC foi de 0,925 (Figura 36).
Tabela 4 – Resultados obtidos ao aplicar a filtragem , equalização e binarização nas RI’s
Técnica aplicada VP (%) FN (%) VN (%) FP (%) Filtragem , equalização e binarização 72 92 6 8 95 93 7 7
Figura 36 - Curva ROC dos testes realizados com as RI’s realizando a filtragem , equalização e binarização
As Figuras 37, 38 e 39 são de RI’s com nódulo que foram detectados pela snake nas três abordagens de avaliação do algoritmo.
Figura 37 – Im agem original e contorno final na im agem sem pré-processam ento
Figura 39 – Im agem original e contorno final obtido na im agem aplicada as três técnicas de pré-processam ento
A Figura 40 é um exemplo de uma imagem que não possuía nódulo e a ferramenta, corretamente, não identificou. Neste exemplo só foi utilizada a filtragem na imagem, na Figura 40a é mostrada a marcação inicial dos pontos, a Figura 40b mostra o resultado final obtido na imagem filtrada, por fim a Figura 40c mostra o resultado final obtido na imagem original. A curva inicial foi reduzida a uma fina linha, em outros casos a curva some por completo.
Figura 40 – a) Marcação inicial dos pontos b) Contorno final obtido na im agem filtrada c) Contorno final obtido na im agem original
A Figura 41 mostra uma das RI’s que não possuía nódulo, e após aplicado as três técnicas de pré-processamento, corretamente, nenhum nódulo foi identificado. Na Figura 42 pode ser observado um nódulo identificado em uma RI normal.
Figura 41- Im agem sem nódulo original e Im agem sem nódulo após aplicar as três técnicas
Figura 42 – Im agem original sem nódulo e im agem processado com nódulo encontrado
B. Discussões
Com base nos resultados obtidos, foi possível comprovar a importância dos métodos de pré-processamento ao se utilizar o contorno ativo como técnica de segmentação. Consequentemente o primeiro teste aplicado apresentou um resultado bem abaixo dos outros dois realizados.
As imagens utilizadas são ruidosas e possuem baixo contraste causando uma diminuição na eficiência do algoritmo de contorno ativo caso não seja feito um tratamento na imagem. Pelo fato do algoritmo ser sensível a variações abruptas nos valores de intensidade dos pixels, justamente pelo fato dele ter o objetivo de conseguir contornar as bordas onde ocorre a maior variação nos valores dos pixels, ruídos presentes na imagem fazem com que a snake pare de convergir em direção ás bordas do objeto a ser identificado. Esse problema foi a causa principal dos resultados obtidos nas RI’s com nódulo e sem nódulo não terem sido satisfatórios.
O segundo teste realizado consistiu na aplicação da filtragem nas imagens e apresentou os melhores resultados dentre os três testes realizados. O filtro de suavização eliminou os ruídos que causaram o mau desempenho do algoritmo no primeiro teste propiciando uma fluidez no processo de convergência da snake. A escolha do σ como comentado na metodologia foi de grande importância, pois a utilização de valores altos além de acarretar na perda de detalhes do nódulo, a borda do nódulo, devido a alta suavização, perde a sua característica de variação abrupta nos valores dos seus pixels fazendo com que a snake não a identifique como contorno e continue a convergir. Na Figura 43 é utilizado o valor do σ = 1, na Figura 44 é utilizado o valor do σ = 2 e na Figura 45 é utilizado o valor do σ = 4, é possível observar à medida que aumenta o sigma o contorno final obtido tende a capturar menos detalhes da imagem e ficar mais arredondado.
Figura 43 – Im agem original e im agem filtrada (σ = 1)
Figura 44 - Im agem original e im agem filtrada (σ = 2)
Figura 45 - Im agem original e im agem filtrada (σ = 4)
O último teste realizado apresentou bons resultados tanto nas RI’s com nódulo quanto nas RI’s sem nódulo. O fator determinante nesse teste foi a escolha do limiar a ser utilizado na etapa de binarização, como comentado na seção da metodologia o limiar automático fornecido pela função graythresh do MATLAB® apresentou resultado satisfatório em um conjunto específico de imagens. Apesar do valor de VP ter sido menor nesse teste comparado ao teste aplicando a filtragem, o contorno na imagem binarizada converge de forma mais intensa, isso devido ao fato de só existirem dois valores de pixels o que torna a identificação da borda mais fácil.
V. CONSIDERAÇÕES FINAIS
O desenvolvimento de sistemas CAD vem crescendo cada dia mais, esses softwares têm se mostrado de grande potencial no auxilio ao radiologista, com o intuito de prover uma dupla leitura do diagnóstico visual.
O presente trabalho baseia-se na utilização do modelo de contorno ativo, originalmente proposto por Kass, Witkin e Terzopoulos (1988), para realizar a segmentação (detecção) de
nódulos em RIs extraídas de imagens mamográficas. Como pôde ser observado nos resultados, a utilização do modelo de snakes, associado à técnicas de pré-processamento constitui em uma ferramenta poderosa para detecção de regiões de interesse.
Apesar dos testes realizados terem apresentado bons resultados para as imagens que tiveram um pré-processamento, o modelo de contorno ativo implementado possui muitas restrições como a limitação da distância na marcação dos pontos e dificuldade em contornar concavidades mais profundas. Devido a esses fatores várias alterações no modelo já surgiram com o intuito de solucionar esses problemas como a adição da força balão [14], utilização da força GVF [13], entre tantas outras.
Em termos de trabalhos futuros, pode-se pensar na melhoria do modelo, para uma maior precisão na detecção dos contornos, e utilização do mesmo como uma ferramenta para classificação dos nódulos em benigno ou maligno, para isso é necessário avaliar as características do contorno obtido.
REFERÊNCIAS
[1] D. Pasquale, M. E. Fantacci, P. Kasae, A. Retico. “Characterization of m am m ographic m asses using a gradient-based segm entation algorithm and a neural classifier” In Computers in Biology and Medicine. Vol. 37, pp. 1479 – 1491. 2007.
[2] D. Varella. Câncer de Mam a. Disponível em : http://drauziovarella.com . br/m ulher-2/cancer-de-m am a/cancer-de-m am a/
[3] N.F. Boy d, H.Guo, L.J. Martin, et al. “Mam m ographic Density and the Risk and Detection of Breast Cancer” In The new england journal of
medicine.pp227-236. 2007.
[4] M.J.G. Calas, et al. “CAD e m am ografia: por que usar esta ferram enta?” In Colégio Brasileiro de Radiologia e Diagnóstico por Imagem. Vol 45(1), pp.46-52.
[5] M.J. Morton , D.H. Whaley , K.R. Brandt, et al.“Screening m am m ogram s: interpretation with com puter-aided detection – prospective evaluation”.Radiology. 2006.
[6] R.F. Brem , J. Baum , M. Lechner, et al. “Im provem ent in sensitivity of screening m am m ography with com puter-aided detection: a multiinstitutional trial” In AJR Am J Roentgenol. 2003.
[7] C. Rom ero, A. Alm enar, J.M. Pinto, et al. “Im pact on breast cancer diagnosis in a m ultidisciplinary unit after the incorporation of m am m ography digitalization and com puter-aided detection sy stem s”.
AJR Am J Roentgenol. 2011.
[8] R.C. Gonzalez, R.E. Woods. “Digital Im age Processing”. 2. ed. New Jersey : Prentice Hall, 2002.
[9] M. A. G. Ruggiero, V. L. D. R. Lopes. “Cálculo num érico: aspectos teóricos e computacionais”. 2. ed. São Paulo: Makron Books, 1996. [10] M. Kass, A. Witkin, D. Terzopoulos, “Snakes: Active Contour Models”
In International Journal of Computer Vision, Vol. 1(4), pp.321-331, 1988.
[11] C. J. Olivete, E. L. R. Luís. “Segm entação em im agens carpais utilizando de modelos de contornos deformáveis”. In: X congresso Brasileiro de inform ática em saúde In Anais do X congresso Brasileiro
de informática em saúde. Florianópolis. 2006. pp. 251-254. Disponível
em : http://www.sbis.org.br/cbis/ arquivos/884.pdf .
[12] B. Sahiner, H.P. Chan, M.A. Roubidoux, et al. “Com puterized characterization of breast m asses on three -dim ensional ultrasound volum es”. 2004.
[13] Y. Yuan, M.L.Giger, H. Li, K. Suzuki, C. Sennett. “A dual-stage m ethod for lesion segmentation on digital mammograms” In Medical Physics. 2007.
[14] C. Xu, J. L. Prince. “Snakes, Shapes, and Gradient Vector Flow” In IEEE Transactions on Im age Processing. Vol 7, n. 3, 1998.
[15] L. D. Cohen, “On active contour m odels and balloons”, CVGIP: Image
understanding, Vol. 53(2), pp. 211-218, 1991.
[16] S. M. Talebi, A. Ay atollahi, A Kerm ani. “Medical Ultrasound im age segmentation using genetic active contour” In J. Biomedical Science and
[17] A. Wakatani. “A Scalable Parallel Algorithm for the Extraction of Active Contours”. 2000
[18] G. Ham arneh, A. Chodorowski, T. Gustavsson. “Active Contour Models: Application to Oral Lesion Detection in Color Images” In IEEE
Conference on Systems, Man, and Cybernetics. 2000
[19] S. M. Talebi, A. Ay atollahi, S. M. S. Moosavi. “A Novel Iris Segm entation Method based on Balloon Active Contour ” In Iranian
Conference on Machine Vision and Image Processing - MVIP. 2010
[20] M.B.R. Nepom uceno, H. Schiabel. “Online Mam m o-graphic Im ages Database for Developm ent a nd Com parison of CAD Schem es” In
Journal of Digital Imaging, p. 1618-727X. 2010. Disponível em :
http://lapim o.sel.eesc.usp.br/bancoweb/
[21] C.E. Metz. “Basic Principles of ROC Analy sis” In Sem inars in Nuclear Medicine. Vol 8, n. 4, pp- 283-298, 1978