universidade federal de juiz de fora faculdade de ... · o primeiro capítulo deste trabalho traz...
TRANSCRIPT
UNIVERSIDADE FEDERAL DE JUIZ DE FORA
FACULDADE DE ENGENHARIA
CURSO DE GRADUAÇÃO EM ENGENHARIA CIVIL
IMPLEMENTAÇÃO COMPUTACIONAL DE UM ALGORITMO ITERATIVO PARA A
AVALIAÇÃO DE DESLOCAMENTOS ESTRUTURAIS ATRAVÉS DE IMAGENS
RAFAELLE PIAZZAROLI FINOTTI AMARAL
JUIZ DE FORA
FACULDADE DE ENGENHARIA DA UFJF
2014
IMPLEMENTAÇÃO COMPUTACIONAL DE UM ALGORITMO ITERATIVO PARA A
AVALIAÇÃO DE DESLOCAMENTOS ESTRUTURAIS ATRAVÉS DE IMAGENS
Trabalho Final de Curso apresentado ao
Colegiado do Curso de Engenharia Civil da
Universidade Federal de Juiz de Fora, como
requisito parcial à obtenção do título de
Engenheira Civil.
Área de Conhecimento: Processamento de
imagens para avaliação de deslocamentos
estruturais.
Orientador: Flávio de Souza Barbosa
Juiz de Fora
Faculdade de Engenharia da UFJF
2014
IMPLEMENTAÇÃO COMPUTACIONAL DE UM ALGORITMO ITERATIVO PARA A
AVALIAÇÃO DE DESLOCAMENTOS ESTRUTURAIS ATRAVÉS DE IMAGENS
RAFAELLE PIAZZAROLI FINOTTI AMARAL
Trabalho Final de Curso submetido à banca examinadora constituída de acordo com o Artigo
9o do Capítulo IV das Normas de Trabalho Final de Curso estabelecidas pelo Colegiado do
Curso de Engenharia Civil, como parte dos requisitos necessários para a obtenção do grau de
Engenheira Civil.
Aprovado em: 21/07/2014
Por:
_____________________________________
Prof. Flávio de Souza Barbosa (orientador)
_____________________________________
Prof. Alexandre Abrahão Cury
_____________________________________
Prof. Fernando Marques de Almeida Nogueira
Agradecimentos
Agradeço primeiramente a Deus, que permitiu que tudo isso acontecesse ао longo dе minha
vida, е nãо somente nestes anos como universitária, mаs que еm todos оs momentos é o maior
mestre quе alguém pode conhecer.
À Santa Rita de Cássia, a qual sou devota e várias vezes recorri em momentos de necessidade.
Aos meus pais, Devailton e Cleide, meus maiores exemplos e a quem devo tudo que sou,
obrigada pelo amor incondicional, incentivo e apoio à minha formação desde sempre. Vocês
são únicos e meu agradecimento é eterno.
Aos meus irmãos, Renan e Rafael, pela amizade, afeto e companheirismo. Em especial ao
meu irmão Renan, que esteve presente ao longo desses cinco anos me ajudando de diversas
maneiras e que se fez presente em todos os momentos.
Aos meus familiares que sempre acreditaram muito em mim e me ajudaram no que foi
preciso.
Aos meus amigos de Extrema, que sempre estiveram ao meu lado. Às minhas queridas
Eduarda, Raquel e Lídian, que fizeram parte da minha formação e se tornaram grandes
amigas, que levarei para toda vida.
Ao meu namorado Bruno, que me incentivou, acompanhou e me ajudou nesta jornada.
Obrigada pelo amor, amizade, carinho e principalmente paciência.
Agradeço imensamente ao meu querido orientador Flávio Barbosa, por acreditar em mim, por
sua paciência e apoio, e a quem tanto devo pelo meu crescimento acadêmico.
À FAPEMIG por ter investido em mim, cedendo uma bolsa de iniciação científica para essa
pesquisa.
E finalmente, agradeço à Universidade Federal de Juiz de Fora por oferecer acesso ao ensino
superior com qualidade, e a todos os meus professores da Faculdade de Engenharia por
transmitirem conhecimento, me ajudando chegar até aqui.
Resumo
IMPLEMENTAÇÃO COMPUTACIONAL DE UM ALGORITMO ITERATIVO PARA A
AVALIAÇÃO DE DESLOCAMENTOS ESTRUTURAIS ATRAVÉS DE IMAGENS
Rafaelle Piazzaroli Finotti Amaral
Julho/2014
Orientador: Flávio de Souza Barbosa
Nos últimos anos, o desenvolvimento da tecnologia tem contribuído de forma
significativa na área de Engenharia Civil. Um exemplo desse avanço é o Processamento
Digital de Imagens (PDI) que é, de fato, de apropriada aplicação em diversas situações. Uma
delas é o emprego de imagens na análise de deslocamentos estruturais, substituindo sensores -
extensômetros e acelerômetros - que necessitam estar sempre em contato direto com a
estrutura analisada. Quando se necessita determinar deslocamentos em lugares de difícil
instalação de sensores, a câmera digital pode então ser de grande utilidade.
Desta forma, busca-se neste trabalho implementar e validar um código computacional
baseado no Método dos Mínimos Quadrados e de Newton-Raphson que, partindo-se de
imagens da estrutura monitorada, seja capaz de calcular o deslocamento em alguns pontos de
interesse.
Os resultados obtidos mostram que os deslocamentos calculados com o algoritmo
desenvolvido aproximam-se bastante aos deslocamentos reais, e a partir desses dados, pode-se
afirmar que o Processamento Digital de Imagens é uma ferramenta capaz de ajudar a
Engenharia Civil na análise do comportamento dinâmico das estruturas.
Sumário
Capítulo 1
Introdução .............................................................................................................................................. 5
1.1 Motivação ................................................................................................................................ 5
1.2 Objetivo ................................................................................................................................... 9
1.3 Escopo ................................................................................................................................... 10
Capítulo 2
O Processamento Digital de Imagens ................................................................................................ 11
2.1 Representação da Imagem Digital ......................................................................................... 11
2.2 Aquisição da Imagem Digital ................................................................................................ 14
2.3 Referencial Espaço-Imagem e Referencial Espaço-Objeto ................................................... 15
2.4 Técnicas de segmentação no Processamento da Imagem Digital ......................................... 16
2.4.1 Limiarização ou Binarização ......................................................................................... 16
2.4.2 Detecção de Bordas ....................................................................................................... 18
Capítulo 3
Métodos Núméricos ............................................................................................................................. 19
3.1 Método dos Mínimos Quadrados .......................................................................................... 19
3.2 Método de Newton-Raphson ................................................................................................. 24
3.2.1 Newton-Raphson para uma variável ............................................................................. 24
3.2.2 Newton-Raphson para múltiplas variáveis .................................................................... 28
3.3 Método dos Mínimos Quadrados e Newton-Raphson para uma circunferência ................... 30
Capítulo 4
Aplicação dos métodos numéricos ao processamento de imagens no cálculo dos deslocamentos 33
4.1 Algoritmo: Processamento de imagens ................................................................................. 33
4.2 Algoritmo: Métodos Numéricos ............................................................................................ 34
Capítulo 5
Validação da Metodologia .................................................................................................................. 36
Capítulo 6
Conclusões ............................................................................................................................................ 41
Referências Bibliográficas .................................................................................................................. 42
ANEXO A .................................................................................................................................... 44
5
Capítulo 1
Introdução
1.1 Motivação
O projeto de uma obra de engenharia deve ser elaborado visando uma vantajosa
relação custo-benefício, aliando especificações técnicas, qualidade, segurança e bom
desempenho. A estrutura deve resistir aos diversos carregamentos e ações que irão atuar ao
longo de toda sua vida útil.
Peso próprio e cargas permanentes, concentradas ou distribuídas, são ações que
originam respostas estáticas, ou seja, permanecem constantes ao longo do tempo. Já as ações
que variam no tempo como vento, tráfego de veículos, sismos, entre outros, são chamadas de
ações dinâmicas.
A análise feita para ações estáticas é bem mais simplificada do que para ações
dinâmicas e, geralmente, já é o suficiente para definir e interpretar o comportamento da
estrutura. Porém, com o avanço das tecnologias de materiais e equipamentos utilizados na
engenharia, as estruturas vêm se tornando cada vez mais esbeltas, leves e flexíveis, tendendo a
apresentar problemas de caráter dinâmico, obrigando assim a um conhecimento mais
detalhado sobre o seu desempenho estrutural. Por esses motivos, o desenvolvimento do estudo
de deslocamentos e vibrações das estruturas se faz de suma importância.
Pode-se citar o caso da construção de pontes, que são projetadas com peças mais
esbeltas e maiores, em que o estudo da dinâmica torna-se imprescindível para evitar
fenômenos de ressonância - como o que ocorreu na ponte de Tacoma Narrows, EUA (figura
1), levando-a a ruptura; na ponte do Milênio, Londres, Inglaterra; e na ponte Rio-Niterói, no
Brasil - além de reduzir o efeito de fadiga e proporcionar segurança e conforto aos usuários.
6
Figura 1: Ponte de Tacoma Narrows. Foto de University of Washington Libraries. Special
Collections Division [1].
Os edifícios também podem ser citados no estudo da dinâmica, principalmente quanto
às ações relacionadas ao vento, já que atualmente verifica-se uma tendência, nas construções,
de alturas cada vez mais elevadas (figura 2).
Figura 2: Edifícios mais altos do mundo. Extraída da internet [2].
7
Também é necessário se conhecer o comportamento dinâmico em estruturas
ferroviárias. As rodas do trem, quando entram em contato com o trilho, exercem uma pressão
sobre ele, acarretando vibrações e causando fadiga nos trilhos, comprometendo assim a
segurança da via.
Diversos trabalhos já foram feitos nessa área, com aplicação do Processamento Digital
de Imagens visando o cálculo dos deslocamentos e, que obtiveram bons resultados. Pode-se
citar o trabalho realizado por BARBOSA, S. F. et al. [3], onde se monitorou duas passarelas
de pedestres, ambas as estruturas formadas por vigas treliçadas e tabuleiro de concreto, uma
em Brasília – DF e outra em João Pessoa – PB, conforme mostra a figura 3 abaixo:
a) Joao Pessoa, PB – Brasil
c) Alvos utilizados no monitoramento via
câmera.
b) Brasília, DF - Brasil
d) Câmera de alta definição utilizada. uh
Figura 3: Monitoramento de passarelas com vigas treliçadas e tabuleiro de concreto.
Extraída de BARBOSA, F. S. et al. [3].
8
Outro exemplo é o trabalho de ROCHA, S. S. & BARBOSA, F. S. [4], mostrado na
figura 4, onde foi estudado o comportamento dinâmico das estruturas ferroviárias quando
submetidas à passagem de um trem, aplicando-se também as técnicas de processamento de
imagens para obtenção dos dados experimentais.
a) Esquema do ensaio realizado
b) Foto da filmagem realizada.
Figura 4: Monitoramento de estrutura ferroviária. Extraída de ROCHA, S. S. & BARBOSA,
F. S. [4].
Tem-se também, utilizando teoria semelhante aos exemplos anteriores, o estudo de
OLIVEIRA, M. H. Z. et al. [5], onde se calculou os deslocamentos de uma viga engastada e
livre, conforme ilustrado na figura 5.
9
Figura 5: Monitoramento de uma viga metálica. Extraída de OLIVEIRA, M. H. Z. et al. [5].
Tendo em vista os pontos explicitados anteriormente, a proposta do presente trabalho é
facilitar a análise dos deslocamentos nas estruturas em geral, instalando-se um alvo circular
na estrutura, e por meio do Processamento Digital de Imagens, identificar seus problemas
dinâmicos. Neste trabalho, utiliza-se a câmera digital como ferramenta de monitoramento,
substituindo sensores como extensômetros e acelerômetros, já que estes precisam estar
sempre em contato direto com a estrutura analisada. Portanto, quando se necessita determinar
os deslocamentos em lugares de difícil instalação dos sensores, a câmera digital pode ser de
grande utilidade.
1.2 Objetivo
O presente trabalho visa apresentar e validar um algoritmo cuja função é processar as
imagens, geradas sinteticamente, de um alvo circular instalado em um modelo estrutural
monitorado, e assim calcular os deslocamentos do modelo na região de interesse. Para tanto,
utilizou-se técnicas de segmentação do Processamento Digital de Imagens, a fim de se
evidenciar os pontos da borda do círculo e, posteriormente, utilizou-se o Método dos Mínimos
Quadrados e o Método de Newton-Raphson, para aproximar os pontos da borda a uma curva
que os represente da melhor forma e calcular a posição do círculo.
10
1.3 Escopo
O primeiro capítulo deste trabalho traz uma breve apresentação do tema, sua
importância e motivação.
No segundo capítulo, introduziu-se o conceito do Processamento Digital de Imagens,
abordando os fundamentos utilizados na concepção do algoritmo.
O terceiro capítulo trata da teoria dos métodos numéricos envolvidos nos cálculos
realizados pelo algoritmo, o Método dos Mínimos Quadrados e o Método de Newton-
Raphson.
O quarto capítulo tem o propósito de explicar o algoritmo do trabalho, mostrando
como foram utilizados o processamento de imagens e os métodos numéricos apresentados
para cálculo de deslocamentos.
Com o objetivo de validar a metodologia apresentada, o quinto capítulo expõe a
aplicação do algoritmo em um vídeo sintético e compara os resultados dos deslocamentos
calculados pelo programa com os deslocamentos reais.
No sexto e último capítulo são expostas as conclusões e considerações finais.
No anexo A, encontra-se o código em do algoritmo em Matlab.
11
Capítulo 2
O Processamento Digital de Imagens
O principal objetivo de realizar o processamento de uma imagem é modelá-la de
acordo com o necessário para aplicações em casos específicos. Essa modelagem consiste na
utilização de técnicas que visam evidenciar e aperfeiçoar pontos de interesse de acordo com a
finalidade.
Neste capítulo serão abordados os principais conceitos envolvidos na aquisição digital
de imagens, sua representação e processamento utilizados neste trabalho, de acordo com
VILELA, A. R. [6] e GONZALEZ, R. C. & WOODS, R. E. [7].
2.1 Representação da Imagem Digital
A imagem pode ser entendida como uma função bidimensional de intensidade de luz
( , )f i j em que o valor de f no ponto de coordenadas ( , )i j é proporcional à intensidade de
luz ou de brilho da imagem neste mesmo ponto. O valor de ( , )f i j está relacionado à energia
irradiada pela fonte e a capacidade de reflexão da superfície iluminada.
Para a representação da imagem é necessário definir seus eixos coordenados. A figura
6 apresenta a convenção do sistema de eixos adotado neste trabalho e que é chamado de
referencial de tela.
12
Figura 6: Convenção do sistema de eixos. Adaptada da internet [8].
Em uma imagem monocromática, o valor da intensidade de f em ( , )i j representa o
nível de cinza L da imagem no respectivo ponto e está definido no intervalo min max[ , ]L L
sendo minL e maxL os valores mínimo e máximo que f pode assumir, onde minL
corresponde ao preto, maxL ao branco e os valores intermediários a estes são níveis de cinza
variando do preto ao branco.
Para que essa imagem seja digitalizada sua função ( , )f i j deve ser discretizada
através da aproximação por elementos igualmente espaçados dispostos em uma matriz
N xM , onde *,i j N , com 1 i N e 1 j M , como mostrado na equação abaixo:
1,1 1,2 1,
2,1 2,2 2,,
,1 ,2 ,
f f f M
f f f Mf i j
f N f N f N M
(2.1.1)
13
Os elementos desta matriz são denominados, em inglês, de picture elements, mais
popularmente conhecidos como pixels. Logo, uma imagem digital monocromática pode ser
representada por uma matriz cujos índices i e j determinam a posição do pixel e o
correspondente valor do elemento na matriz identifica o valor da escala de cinza nesse pixel.
A quantidade de pixels em uma imagem determina proporcionalmente a qualidade da
sua resolução, ou seja, quanto maior a sua discretização espacial (discretização em pixels),
maior é o tamanho da imagem e, consequentemente, maior a sua qualidade. Pode-se fazer
também a discretização em amplitude, em que a função ( , )f i j é discretizada dividindo-se o
intervalo contínuo max[0, ]L em 2n partes, onde n indica o número de bits usados para
representar a intensidade. Um pixel com 2n níveis de cinza utiliza n bits de memória. O
tamanho da imagem varia com a sua finalidade e deve ser escolhida a fim de se ter uma boa
discretização. As figuras 7 e 8 a seguir exemplificam alguns diferentes níveis de discretização
tanto em pixels quanto em amplitude, respectivamente.
a) 512 x 512 b) 64 x 64 c) 16 x 16
Figura 7: Imagens discretizadas em pixels. Extraído de VILELA, A. R. [6].
14
a) 256 cores – 8 bits b) 8 cores – 3 bits c) 2 cores – 1 bits
Figura 8: Imagens discretizadas em amplitude. Extraído de VILELA, A. R. [6].
2.2 Aquisição da Imagem Digital
O processo de captação de imagens se dá por meio de um dispositivo que recebe a
luminosidade refletida pelo objeto e a converte em imagem, conforme ilustrado na figura 9.
Figura 9: Processo de aquisição da imagem digitalizada. Adaptado de GONZALEZ, R. C. &
WOODS, R. E. [7].
Nesse dispositivo de aquisição de imagens são usados sensores como mostrado abaixo,
na figura 10 (a), que transformam a energia luminosa incidente na superfície do sensor em
uma onda de voltagem proporcional à intensidade dessa energia, formando um pixel. O plano
sensor de uma câmera é formado por uma matriz desses sensores, figura 10 (b).
15
a) Detalhe de um sensor de imagem.
b) Matriz de sensores.
Figura 10: Detalhes dos sensores de imagem. Adaptado de GONZALEZ, R. C. &
WOODS, R. E. [7].
2.3 Referencial Espaço-Imagem e Referencial Espaço-Objeto
São sistemas de eixos adotados para um mapeamento de pontos. Quando tais pontos
estiverem contidos no espaço tridimensional da cena o sistema de eixos é chamado de
Referencial Espaço-Objeto e quando estiverem na reprodução da cena, ou seja, na imagem, é
denominado de Referencial Espaço-Imagem. Esses referenciais estão exemplificados na
figura 11, onde ,X Y e Z são os eixos no espaço objeto; ,x y e z são os eixos no espaço-
imagem; i e j representam os eixos coordenados no referencial de tela (item 2.1, figura 6);
, e k são os ângulos de rotação em torno dos eixos no espaço objeto; CP representa o
centro de perspectiva da câmera e f a distância focal, ou seja, distância entre o ponto de
formação da imagem e o CP .
Figura 11: Referencial Espaço-Objeto e Referencial Espaço-Imagem.
Extraído de VILELA, A. R. [6].
16
Assim sendo, a partir das coordenadas do referencial de tela (figura 6), podem-se ter as
seguintes coordenadas no referencial espaço-imagem:
2
2
x
y
x i N E
y M j E
z f
(2.3.1)
- ,x y e z são as coordenadas no referencial espaço-imagem;
- i e j são as coordenadas no referencial de tela;
- N e M são as dimensões horizontal e vertical da imagem em pixels;
- xE e yE são fatores de escala nas direções x e y ;
- f é a distância focal.
2.4 Técnicas de segmentação no Processamento da Imagem Digital
Na aquisição e reconhecimento de imagens, a representação da imagem em variados
tons de cinza ou em inúmeras cores não é suficiente, é preciso também identificar regiões de
interesse, para que possa ser melhor analisada em uma aplicação específica. Os
procedimentos utilizados para dividir a imagem em diferentes regiões e explicitar as que são
de importância são chamados de técnicas de segmentação. Segundo FACON, J. [9], a
segmentação tem os objetivos de extrair determinada região e dividir a imagem em um
conjunto de partes disjuntas, onde a união forma a imagem inteira.
São inúmeras as técnicas de segmentação e elas são utilizadas de acordo com a
finalidade de cada imagem. A seguir serão apresentadas duas técnicas importantes no escopo
deste trabalho.
2.4.1 Limiarização ou Binarização
A limiarização tem como princípio separar o primeiro plano do fundo, fazendo com
que haja somente dois valores possíveis para cada pixel. Consiste, ainda, em atribuir um
mesmo valor a todos os pixels pertencentes ao primeiro plano e outro valor para os pixels
17
referentes ao plano de fundo. Tem-se assim a chamada imagem binária, ou seja, imagem em
preto e branco.
A técnica da limiarização é baseada na utilização do histograma. O histograma é um
gráfico que representa a frequência dos níveis de tonalidade das cores que formam a imagem.
Admitindo a ocorrência de níveis de cinza da figura 12 (a), define-se um limiar T que separa
os pixels em dois grupos, onde:
Se ,f i j T é classificado como ponto do objeto, (2.3.2)
,f i j T é classificado como ponto do fundo. (2.3.3)
para qualquer ponto ,i j .
A figura 12 (b) mostra o resultado do processo de limiarização aplicado na imagem da
figura 12 (a).
a) Imagem monocromática. Extraída de
PERES, L. M. [10].
b) Imagem binária. Extraída de
PERES, L. M. [10].
Figura 12: Exemplo de aplicação da técnica de Limiarização.
18
2.4.2 Detecção de Bordas
Quando se quer definir área, perímetro e forma da imagem, as técnicas de detecção de
bordas são as mais indicadas. O processo de detecção de bordas consiste em algoritmos de
localização e realce dos pixels da borda, ou seja, algoritmos que procuram mudanças bruscas
de cor ou tons de cinza dos pixels vizinhos, e depois disso realizam o aumento do contraste
entre a borda e o fundo da imagem usando um operador de diferenciação que amplifica as
altas frequências, como os operadores de Roberts, Prewitt e Sobel apresentados na tabela 1.
Tabela 1 – Operadores utilizados nos algoritmos de detecção de bordas.
No algoritmo do presente trabalho foram utilizados os operadores de Sobel. O filtro é
aplicado por derivada utilizando esses operadores, os quais realizam uma convolução na
imagem, detectando assim a sua borda, como ilustrado nas figuras 13 (a) e 13 (b).
a) Imagem Binária
b) Borda da Imagem Binária
Figura 13: Exemplo de aplicação do filtro de Sobel.
19
Capítulo 3
Métodos Núméricos
Na elaboração do algoritmo que será exposto neste trabalho foi utilizado o Método dos
Mínimos Quadrados e posteriormente o Método de Newton-Raphson, para ajustar os pontos
da borda do alvo circular e calcular a posição de seu centro respectivamente. Este capítulo
abrange a explicação desses dois métodos numéricos e foi escrito tendo como base a
referência RUGGIERO, M. A. G. & LOPES, V. L. R. [11].
3.1 Método dos Mínimos Quadrados
O Método dos Mínimos Quadrados (MMQ) é um método de otimização matemática
que permite encontrar o melhor ajuste para um conjunto de pontos que minimize a soma dos
quadrados dos resíduos. Resíduo pode ser entendido como a diferença entre o valor estimado
e o valor observado.
Sejam os pontos 1 1 2 2, , , , , ,m mx f x x f x x f x e que possam ser
aproximados por uma função de grau polinomial n , com m n , em que a função
aproximada é dada por:
1 1 2 2 n nz x a g x a g x a g x (3.1.1)
Onde as funções 1 2, , , ng x g x g x são determinadas da seguinte maneira:
1, com i=1, 2, 3, ..., n
i
ig x (3.1.2)
O objetivo é determinar coeficientes 1 2, , , na a a tais que a função (3.1.1) se
aproxime ao máximo da função inicial do problema ( )f x , conforme mostra a figura 14
abaixo:
20
Figura 14: Reta ajustada a um conjunto de pontos.
O método dos mínimos quadrados consiste em determinar 1 2, , , na a a de tal forma
que a soma dos quadrados dos resíduos seja mínima. Assim, tem-se:
2
1 2
1
, , ,m
n k k
k
F a a a f x z x (3.1.3)
2
1 2 1 1 2 2
1
, , ,m
n k k k n n k
k
F a a a f x a g x a g x a g x (3.1.4)
Usando o cálculo diferencial, iguala-se a zero a derivada parcial da função F em
relação a cada coeficiente a , para obter um ponto de mínimo:
1 2
1 1 2 2
1, , ,
0 2 .
n
m
k k k n n k j k
kj a a a
dFf x a g x a g x a g x g x
da
(3.1.5)
onde 1,2, ,j n
Rearranjando (3.1.5) separando as variáveis das constantes, tem-se:
21
1 1 1 1 1
1 1 1
2 1 2 1 2
1 1 1
1 1
1 1 1
m m m
k k k k n k k n
k k k
m m m
k k k k n k k n
k k k
m m m
k n k n k k n k n k n
k k k
f x g x g x g x a g x g x a
f x g x g x g x a g x g x a
f x g x g x g x a g x g x a
(3.1.6)
A equação (3.1.6) é um sistema de equações lineares e pode ser escrito na forma
matricial .G A B :
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
n n
n n
n n nn n n
g a g a g a b
g a g a g a b
g a g a g a b
(3.1.7)
Onde:
1 1 1 2 1
1 1 1
2 1 2 2 2
1 1 1
1 2
1 1 1
m m m
k k k k k n k
k k k
m m m
k k k k k n k
k k k
m m m
n k k n k k n k n k
k k k
g x g x g x g x g x g x
g x g x g x g x g x g x
g x g x g x g x g x g x
G ;
1
2
n
a
a
a
A ; e
1
1
2
1
1
m
k k
k
m
k k
k
m
k n k
k
f x g x
f x g x
f x g x
B .
22
Para uma reta, a qual se deseja encontrar uma boa aproximação para uma dada
quantidade de pontos, faz-se:
Equação da reta:
y ax b (3.1.8)
As coordenadas ,x y dos pontos escritos na forma de matriz:
Coordenadas x :
1
2
1
1
1n
x
x
x
K
Coordenadas y :
1
2
n
y
y
y
Y
Como as incógnitas do problema são os valores de a e b , tem-se: a
bX . Logo:
K X Y (3.1.9)
1
X K Y (3.1.10)
Mas a equação (3.1.10) não é válida já que a matriz K não é invertível, pois não é
quadrada. Deve-se então aplicar um conjunto de operações na equação (3.1.9) a fim de tornar
K invertível. Sendo assim:
T T
K K X K Y (3.1.11)
T T
K K X K Y (3.1.12)
23
1 1
T T T TK K K K X K K K Y (3.1.13)
1
T TX K K K Y (3.1.14)
Onde em (3.1.14) a multiplicação das matrizes na seguinte ordem 1
T TK K K é
chamada de pseudo-inversa de K .
Exemplo:
ALGORITMO MMQ (para uma reta)
INÍCIO
Insere matriz 2n x
K {coordenadas x dos pontos}
Insere matriz 1n x
Y {coordenadas y dos pontos}
2 1x
pseudo inversaX K Y
1,1 2,1
x xY K
Plotar ,K Y {visualiza a reta ajustada}
FIM
Exemplo numérico:
Encontrar a reta que melhor aproxime o conjunto de pontos com as seguintes coordenadas:
1 2 3 4 5(2,10); (3,8); (5,5); (6,3); (8,1)P P P P P e 6 (10, 2)P .
Aplicando o ALGORITMO MMQ tem-se:
2 1 10
3 1 8
5 1 5
6 1 3
8 1 1
10 1 2
K Y
24
1,47
12,50X
1,47 12,50Y K
FIM
A figura 15 mostra a resposta gráfica da reta ajustada ao conjunto dos pontos do
exemplo numérico:
Figura 15: Gráfico da reta ajustada pelo ALGORITMO MMQ.
3.2 Método de Newton-Raphson
O Método de Newton-Raphson (MNR) é um processo iterativo utilizado para obter
zeros de funções através do cálculo da derivada da função em um ponto estimado
inicialmente. Cada iteração utiliza resultados das iterações anteriores e realizam verificações a
fim de confirmar se o resultado obtido está próximo do valor esperado por meio de um
critério de parada.
3.2.1 Newton-Raphson para uma variável
Seja uma função f x na qual se deseja encontrar o valor de x onde 0f x no
intervalo ,c d . A proposta do método é achar uma função g x tal que 0g x , onde
x é a raiz de f x e ,x c d .
25
Considerando a figura 16 abaixo, onde 0 0,x f x são as coordenadas da interseção
da reta tangente no ponto escolhido da função f x , cuja equação é dada por:
g x ax b (3.2.1)
Figura 16: Método de Newton-Raphson graficamente.
Como a derivada de f x por definição é a inclinação da reta no ponto, tem-se que:
'
0a f x (3.2.2)
Substituindo a inclinação dada pela equação (3.2.2) e as coordenadas 0 0,x f x
em (3.2.1):
'
0 0 0.f x f x x b (3.2.3)
Isolando b em (3.2.3):
'
0 0 0.b f x f x x (3.2.4)
26
E substituindo (3.2.2) e (3.2.4) em g x :
' '
0 0 0 0. .g x f x x f x f x x (3.2.5)
Como se quer encontrar o valor de x quando 0g x , tem-se:
'
0 1 0 0. 0f x x x f x (3.2.6)
Isolando 1x , a equação final se apresenta assim:
'
1 0 0 0x x f x f x (3.2.7)
Para „ n ‟ iterações:
'
1 1 1n n n nx x f x f x (3.2.8)
Em resumo, o método calcula a raiz de uma função a partir de uma estimativa inicial,
realizando iterações com cada um dos valores das raízes obtidas das retas tangentes até se
determinar um valor suficientemente próximo da raiz exata. Cabe ressaltar que uma das
condições de convergência do método é que ao se estipular um valor inicial, este se encontre
em um intervalo centrado na raiz. Caso contrário, o método pode não convergir para valor
algum.
Exemplo:
ALGORITMO MNR
INÍCIO
1n
Escolhe 1nx {estimativa}
Escolhe TOLERÂNCIA
Faça enquanto 2
1n nx x TOLERÂNCIA
Calcula 1nf x
27
Calcula '
1nf x
1
1 '
1
n
n n
n
f xx x
f x
1n n
Fim enquanto
Raiz = nx
FIM
Exemplo numérico:
Calcular a raiz de 2 10f x x x , usando o Newton-Raphson com estimativa inicial
0 4x e tolerância 510 .
Aplicando o ALGORITMO MNR tem-se:
INÍCIO
1n
0 4x
TOLERÂNCIA = 510
Faça enquanto 2
1n nx x TOLERÂNCIA
0 10f x
'
0 9f x
1
104
9x
2n
5n
Fim enquanto
FIM
Segue abaixo a tabela com valores de todas as iterações:
28
n 1nx 1nf x
'
nf x nx 2
1n nx x
1 4 10 9 2,888889 1,111111
2 2,888889 1,234568 6,777778 2,70674 0,182149
3 2,70674 0,033178 6,413479 2,701566 0,005173
4 2,701566 2,68E-05 6,403133 2,701562 4,18E-06
Tabela 2: Valores do exemplo numérico utilizando o ALGORITMO MNR.
3.2.2 Newton-Raphson para múltiplas variáveis
Optou-se neste trabalho por, inicialmente, descrever o MNR para múltiplas variáveis
para o caso particular onde o número de incógnitas do problema é igual ao número de
equações disponíveis, para depois apresentar a generalização do método para o caso onde o
número de incógnitas é menor que o número de equações.
Considerando um círculo onde se deseja calcular as coordenadas 0 0,x y do centro e
o valor r do raio, a partir de três pontos 1 1,x y , 2 2,x y e 3 3,x y , tem-se as seguintes
funções:
2 2 2
1 1 0 1 0 0f x x y y r (3.2.9)
2 2 2
2 2 0 2 0 0f x x y y r (3.2.10)
2 2 2
3 3 0 3 0 0f x x y y r (3.2.11)
O método para três incógnitas é decorrente da equação (3.2.8), utilizando-se matrizes,
e se apresenta da seguinte forma:
1
1 0 0 0X X J X F X (3.2.12)
Onde:
29
0
1 0
1
1
1
x
y
r
X , é a matriz das raízes das funções 1f , 2f e 3f ;
0
0 0
0
0
0
x
y
r
X , é a matriz dos valores que são estimados inicialmente;
1 1 1
0 0
2 2 20
0 0
3 3 3
0 0
0 0 0
0 0 0
0 0 0
f f f
x y r
f f f
x y r
f f f
x y r
J X , é a matriz jacobiana de 0X ;
1 0
0 2 0
3 0
f
f
f
X
F X X
X
, é a matriz das funções nos pontos da matriz 0X .
A matriz jacobiana é a matriz cujos elementos são derivadas parciais de primeira
ordem de uma função de múltiplas variáveis.
Generalizando a equação (3.2.12) para n iterações e mais de três incógnitas, quando o
número de equações m é igual ao número de incógnitas, tem-se:
1
1 1 1n n n nX X J X F X (3.2.13)
Onde:
30
1
2
n
n
n
m n
x
x
x
X ;
1 1
2 1
1
1
n
n
n
m n
x
x
x
X ;
1 1
1 1 1
1
1 1 1
n m n
n
m m
n m n
f f
x x
f f
x x
J X e
1 1
2 1
1
1
n
n
n
m n
f
f
f
X
XF X
X
.
3.3 Método dos Mínimos Quadrados e Newton-Raphson para uma
circunferência
Quando se trata de um problema não linear de ajuste de curvas tem-se:
Número de equações Número de incógnitas;
Impossibilidade de solução direta.
Nesses casos, pode-se aplicar o MMQ para otimizar a curva que melhor ajusta um
dado conjunto de pontos, acoplado ao MNR para se obter a solução do problema não-linear.
Seja, agora, uma circunferência a qual se quer ajustar a melhor curva utilizando mais
de três pontos de sua borda, onde as incógnitas continuam sendo 0x , 0y e r . Em
consequência do maior número de pontos têm-se mais equações 3m :
2 2 2
1 1 0 1 0 0f x x y y r
2 2 2
0 0 0m m mf x x y y r
31
Pode-se partir da equação (3.2.12), porém a matriz jacobiana, neste caso, não tem
inversa por não ser quadrada, e por isso é necessário manipulá-la, assim como na equação
(3.1.9) do MMQ. Pré-multiplicando a inversa pela sua matriz de origem se obtém uma matriz
identidade, logo:
0 1 0 0 0J X X J X X F X (3.3.1)
A seguir, multiplica-se a equação (3.3.1) por 0
TJ X e, posteriormente, por
1
0 0
TJ X J X :
1
0 0 0 0 1
1 1
0 0 0 0 0 0 0 0 0
T T
T T T T
J X J X J X J X X
J X J X J X J X X J X J X J X F X
(3.3.2)
Sendo assim:
1
1 0 0 0 0 0
T TX X J X J X J X F X (3.3.3)
A equação (3.3.3) é a equação final obtida utilizando-se simultaneamente o MMQ e o
MNR, em que 1
0 0 0
T TJ X J X J X é a pseudo-inversa de 0J X . Generalizando
(3.3.3) para „ n ‟ iterações, tem-se:
1
1 1 1 1 1
T T
n n n n n nX X J X J X J X F X (3.3.4)
Onde:
32
0( )
0( )
( )
n
n n
n
x
y
r
X ,
0( 1)
1 0( 1)
( 1)
n
n n
n
x
y
r
X ,
1 1 1
0 1 0 1 0 1
1
0 1 0 1 0 1
n n n
n
m m m
n n n
f f f
x y r
f f f
x y r
J X ,
1
0 1 0 1
11
0 1 0 1
1
0 1 0 1
m
n n
T mn
n n
m
n n
f f
x x
f f
y y
f f
r r
J X e
1 1
2 1
1
1
n
n
n
m n
f
f
f
X
XF X
X
.
33
Capítulo 4
Aplicação dos métodos numéricos ao processamento de imagens
no cálculo dos deslocamentos
O algoritmo desenvolvido neste trabalho tem por objetivo calcular os deslocamentos
estruturais partindo-se de uma sequência de imagens de um “alvo” circular colocado em uma
estrutura, a fim de registrar seus deslocamentos. O programa foi desenvolvido em Matlab e,
inicialmente, foi considerado um vídeo hipotético com imagens de um círculo cheio
deslocando-se verticalmente, de baixo para cima. A princípio, a curva foi aproximada
utilizando três pontos da borda do círculo; posteriormente, quatro pontos e, por último foi
aproximada por todos os pontos.
Neste capítulo será abordado como foi utilizada a teoria de processamento de imagens
e dos métodos numéricos na elaboração do algoritmo, exposto no anexo A.
4.1 Algoritmo: Processamento de imagens
Após o reconhecimento do vídeo pelo MATLAB, foi aplicada a binarização e
detectada a borda pelo filtro de Sobel, como já explicado no item 2.3 do capítulo 2. Ressalta-
se que neste trabalho não foi desenvolvido o algoritmo de binarização e do filtro de Sobel. As
seguintes funções já existentes no MATLAB foram utilizadas:
2 - Binarizaçãoim bwB A
, „ ‟ - Detecção de bordasedge sobelBsobel B
Onde: A é a matriz dos pontos da imagem original;
B é a matriz da imagem binarizada; e
Bsobel é a matriz da imagem, com os pontos da borda detectados.
34
Para os pixels da borda (elementos da matriz de valor igual a um) foi feita a
transformação de coordenadas do referencial de tela para coordenadas no referencial espaço-
imagem, utilizando a equação (2.3.1) apresentada no capítulo 2.
4.2 Algoritmo: Métodos Numéricos
Uma vez obtidas as coordenadas da imagem no referencial de imagem, partiu-se para a
aproximação dos pontos em uma curva que melhor os represente.
Inicialmente, escreveu-se a equação da circunferência utilizando as “ n ” coordenadas
,x y :
Para i de 1 até n faça
2 2 2i i xc i yc Rf x y
Fim
Onde: f = vetor das funções;
x = vetor de coordenadas x da imagem;
y = vetor de coordenadas y da imagem;
xc = coordenada x do centro da circunferência;
yc = coordenada y do centro da circunferência;
R = raio da circunferência.
Calcula-se a matriz Jacobiana de f em relação as incógnitas xc , yc e R aplicando
“jacobian”, uma função que faz parte da biblioteca do MATLAB:
C = jacobian ,f v
Onde: , ,xc yc Rv ;
C= é a matriz Jacobiana de f em função de xc , yc e R
35
Atribui-se valores iniciais para xc , yc e R , e adota-se uma tolerância, pois como se
quer aproximar um conjunto de pontos à uma circunferência que possui mais equações que
incógnitas, utiliza-se a equação (3.3.4) apresentada no capítulo 3 (MMQ + NR). Segue parte
correspondente do algoritmo:
1i
1.5xc i
1.5yc i
10R i
xc i
yc i
R i
v
Faça enquanto DIFERENÇA>TOLERÂNCIA
av v
1
T Tv v C C C f
DIFERENÇA = SOMA2
av v
1 1xc i v
1 2yc i v
1 3R i v
1i i
Fim
Finalmente, converteram-se as coordenadas do referencial espaço-imagem para o
referencial de tela, encontrando assim, a posição do centro do círculo. Os valores de saída do
algoritmo estão em pixels, e para obtê-los em centímetros ou milímetros, basta multiplicá-los
pelo valor da medida do pixel. No caso deste trabalho: 1 pixel = 0,0847 mm.
Repetindo-se as etapas apresentadas anteriormente para todos os quadros do vídeo, é
possível calcular todos os deslocamentos sofridos pelo alvo circular.
36
Capítulo 5
Validação da Metodologia
Seja um modelo reduzido de uma plataforma de petróleo mostrado na figura 17:
Figura 17: Modelo reduzido de uma plataforma de petróleo. Extraída da internet [12].
Admitindo-se um teste dinâmico realizado no modelo da plataforma da figura 17, onde
foram introduzidas forças provenientes do mar, tem-se movimentos do modelo estrutural no
plano horizontal. Esses movimentos poderiam ter sido captados por uma câmera, o que
permitiria avaliar os deslocamentos horizontais da estrutura.
Considerando que o vídeo gerado artificialmente, simula os movimentos filmados de
um alvo colocado sobre a plataforma, busca-se validar a metodologia proposta. A figura 18
ilustra o vídeo com os movimentos da plataforma:
37
Figura 18: Movimento do alvo ao longo do tempo.
A posição final do alvo é a mesma posição de início, e seu deslocamento foi
representado em 84 quadros ao longo de 16 segundos.
Para o primeiro quadro, foram obtidos os seguintes resultados:
Coordenadas calculada pelo algoritmo: 20,37 mmx ; y = 11,48 mm e r = 2,51 mm .
Coordenadas reais: 20,32 mmx ; y = 11,43 mm e r = 2,50 mm .
Os resultados obtidos pelo algoritmo para o todo o vídeo em questão estão
apresentados nas figuras 19, 20 e 21, comparados aos dados dos deslocamentos reais do alvo.
A figura 22 mostra a margem de erro dos resultados, fazendo-se a diferença entre os valores
calculados pelo algoritmo e os valores de referência. Fez-se também o cálculo da média
dessas diferenças e desvio padrão, que resultaram em:
diferença diferençaX 0,05 mmY
0,0147 mmx e 0,0143 mmy
38
Onde: diferençaX é a média da diferença entre os valores calculados pelo algoritmo e os
valores de referência em relação ao eixo x;
diferençaY é a média da diferença entre os valores calculados pelo algoritmo e os
valores de referência em relação ao eixo y;
x é o desvio padrão medido em relação ao eixo x;
y é o desvio padrão medido em relação ao eixo y.
Figura 19: Gráfico do deslocamento do centro do círculo (X x Y )c c .
39
Figura 20: Gráfico do deslocamento X do centro do círculo em função do tempo.
Figura 21: Gráfico do deslocamento Y do centro do círculo em função do tempo.
41
Capítulo 6
Conclusões
Foi apresentado neste trabalho o estudo e o desenvolvimento de um algoritmo que, de
forma iterativa, calcula deslocamentos estruturais através do processamento das imagens de
um alvo instalado na estrutura.
Com os resultados obtidos da aplicação do algoritmo no vídeo gerado sinteticamente,
apresentados no capítulo 5, pode-se observar que o código desenvolvido teve bom
desempenho e realizou, de forma bastante satisfatória, os cálculos dos deslocamentos da
suposta estrutura.
Ressalta-se que o estudo aqui realizado só levou em consideração a posição do plano
sensor da câmera paralela ao plano do alvo, ou seja, para outras posições os deslocamentos
calculados pelo algoritmo não estarão corretos. Cabe alertar também que a câmera deve ser
instalada a uma distância suficientemente longe da estrutura a ser analisada, para que não haja
influência dos movimentos na câmera, acarretando assim, erro nas medidas.
Pode-se dizer que o assunto aqui abordado é uma pequena parte introdutória ao estudo
realizado por CARDOSO, R. A. [13], visto que, os conceitos apresentados aqui são bem
menos refinados, porém fundamentais para o entendimento e continuação do referido
trabalho.
42
Referências Bibliográficas
[1] University of Washington Libraries. Special Collections Division. Foto UW21413.
http://digitalcollections.lib.washington.edu/. Acessado dia 05/07/2014.
[2] http://www.fernandonardelli.com.br/cool-hunting/arranha-ceus/. Acessado dia 05/07/2014.
[3] BARBOSA, F. S. et al. “Uma análise comparativa do comportamento dinâmico de
passarelas para pedestres”. XXXV Jornadas Sul Americanas de Engenharia Estrutural, 2012.
[4] ROCHA, S. S. & BARBOSA, F. S. “Modelagem computacional da interação veículo-
estrutura em vias férreas”. Universidade Federal de Juiz de Fora, 2008.
[5] OLIVEIRA, M. H. Z. et al. “Simulação numérica e avaliação do comportamento dinâmico
de estruturas via processamento de imagens”. Universidade Federal de Juiz de Fora, 2009.
[6] VILELA, A. R. “Uma metodologia para reconstrução de superfícies a partir de luz
estruturada”. Dissertação de Mestrado, Universidade Federal de Juiz de Fora, 2008.
[7] GONZALEZ, R. C. & WOODS, R. E. “Digital Image Processing, Second Edition”.
Prentice Hall, 2002.
[8]http://revistacasaejardim.globo.com/Revista/Common/0,,EMI244964-18535,00-
ARTE+GATOS+EM+VARIOS+CLIQUES+CONFIRA.html. Acessado dia 14/05/2014.
[9] FACON, J. “Processamento e análise de imagens”. Dissertação de Mestrado, Pontifícia
Universidades Católica do Paraná, 2002.
[10] PERES, L. M. “Aplicação de processamento de imagens a problemas de engenharia
civil”. Trabalho Final de Curso, Universidade Federal de Juiz de Fora, 2010.
[11] RUGGIERO, M. A. G. & LOPES, V. L. R. “Cálculo Numérico Aspectos Teóricos e
Computacionais, 2ª edição”. Pearson Makron Books, 2009.
43
[12] http://comciencia.br/comciencia/?section=3¬icia=604. Acessado dia 24/07/2014.
[13] CARDOSO, R. A. “Desenvolvimento de um sistema de monitoração de estruturas
através de imagens digitalizadas”. Trabalho Final de Curso, Universidade Federal de Juiz de
Fora, 2013.
[14] ALBUQUERQUE, M. P. “Processamento de Imagens: Métodos e Análises”
CBTF/MCT.
[15] http://www.mathworks.com/products/image/.
[16] PET ELÉTRICA . “Apostila de Matlab”. Universidade Federal do Ceará, 2010.
44
ANEXO A
% ************************************** % UNIVERSIDADE FEDERAL DE JUIZ DE FORA % FACULDADE DE ENGENHARIA % **************************************
% ----------------------------------------------------- % ALGORITMO DE AVALIAÇÃO DE DESLOCAMENTOS ESTRUTURAIS % -----------------------------------------------------
% Desenvolvido por: Rafaelle P. Finotti Amaral % Orientador: Flávio de Souza Barbosa
clear all obj=VideoReader('TCC1.avi'); M4D=read(obj); q=1; for k=(6:6:504) frame= M4D(:,:,1,k);%k indica qual frame que está sendo analisado
Bsobel=edge(frame,'sobel');
%Agora pega-se todos os pontos da borda detectada anteriormente z=0; [n,m]=size(Bsobel); for j=1:m for i=1:n if Bsobel(i,j)==1 z=z+1; x=(j-n/2)*1; y=((m/2)-i)*1; K(z)=x; Y(z)=y; end end end
%Aqui começa a parte de Newton-Raphson syms xc yc R; %Equação do círculo para os pontos: c=length(K); for i=1:c f(i)=((K(i)-xc)^2)+((Y(i)-yc)^2)-R^2; end f=f'; f=conj(f); v=[xc,yc,R]; C=jacobian(f,v);
i=1; Xc(i)=1.5;%estimativa Yc(i)=1.5;%estimativa RR(i)=50;%estimativa X=[Xc(i);Yc(i);RR(i)];
45
tol=10e-10; diferenca=100;
while diferenca>tol C1=subs(C,'xc',Xc(i)); C2=subs(C1,'yc',Yc(i)); C3=subs(C2,'R',RR(i));
for j=1:c fl(j)=subs(f(j),'xc',Xc(i)); fll(j)=subs(fl(j),'yc',Yc(i)); flll(j,1)=subs(fll(j),'R',RR(i)); end
F=flll; Xa=X; X=X-(inv((C3')*C3))*(C3')*F; diferenca=sum(sqrt((X-Xa).^2)); Xc(i+1)=X(1); Yc(i+1)=X(2); RR(i+1)=X(3); i=i+1; end
ii(q)=X(1)+(n/2);%medida dada em pixels jj(q)=(m/2)-X(2);%medida dada em pixels Raio(q)=X(3);%medida dada em pixels
cx(q)=double(ii(q)); cy(q)=double(jj(q)); Raioc(q)=double(Raio(q));
q=q+1;
end
%Aqui transforma-se as medidas de pixels para milímetros: cxmm=cx*0.0847; cymm=cy*0.0847; Raiomm=Raioc*0.0847;