Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag....

16
Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto de 2008 Mônica Matsumoto

Transcript of Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag....

Page 1: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

SplinesA Perfect Fit for Signal and Image Processing

Michael Unser, IEEE Signal Processing Mag. 1999

Grupo de Discussões InCor - São Paulo, 29 de agosto de 2008

Mônica Matsumoto

Page 2: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Domínio discreto: l2(Zp)

f(x), x Zp

Objetivos Splines

• Amostragem e aquisição de sinais– interpolação

• Algorítimos contínuos e discretos– Detecção de contornos, registration..

• Abordagens Multi-escalas– Espaço de escalas (fator m de dilatação)– Pirâmides, wavelets– Multi-resolução

Domínio contínuo: L2(Rp)

f(x), x Rp

Page 3: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Splines: Definição• Def: uma função s(x) é um polinômio spline de ordem n com nós xk, se

satisfizer as seguintes propriedades:– s(x) é um polinômio contínuo por partes de grau n dentro de cada intervalo

[xk, xk+1[.– Derivadas até ordem n-1 contínuas nos pontos xk.

• Graus de liberdade por segmento: 1

n+1 – n = 1(coeficientes) (restrições de cont até ordem n-1) (grau de liberdade)

• Ex. Polinômio de terceira ordem. f(x) = ax3+bx2+cx+d– Ordem: 3 n, – Coeficientes (a,b,c,d): 4 n+1, – Restrição de suavidade (derivada no ponto):3 n {s(xk), s’(xk), s’’(xk)}

Page 4: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

B-Splines

0(x)=

..,021,

21

21,1

cc

x

x

B-Spline de ordem n Convolução (n+1) vezes da B-Spline de ordem Zero

Page 5: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Representação B-Spline

• Schoenberg, 1946 • Representação única por expansão na base de B-splines (combinação linear de coeficientes c(k) única, ver definições de produto interno e base deste espaço de funções)

Zk

n kxkcxs )()()(

Page 6: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Representação B-Spline: Ordem 0

• Exemplo 0. Decomposição em combinação linear em B-Splines de ordem Zero.

...)3().3()2().2()1().1()().0(...)( 0000 xcxcxcxcxs

Zk

n kxkcxs )()()(

Analógico Digital

Page 7: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Representação B-Spline: Ordem 1

• Exemplo 1. Decomposição em combinação linear em B-Splines de ordem Um.

...)3().3()2().2()1().1()().0(...)( 1111 xcxcxcxcxs

Zk

n kxkcxs )()()(

Analógico Digital

Page 8: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Representação B-Spline: Ordem n

• Para ordem 0 e 1: c(k) = s(xk)• E demais ordens??? Situação mais

complexa. – Técnicas numéricas com matrizes. – Técnicas de processamento de sinais

Filtragem digital.

Page 9: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Interpolação B-Spline via Filtro Digital

• Kernel bnm das B-Splines discretas, amostragem da B-

Spline de ordem n, expandida por um fator m

contínuo discreto

Page 10: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Interpolação B-Spline via Filtro Digital

• Interpolação: Solução inversa do filtro

• Implementação recursiva eficiente (Z)

)1)(1()1(

46][)( 1

2

11

1

zzzz

kb zn

Causal Não-Causal

Page 11: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Interpolação Splines Cardinais

• ninfinito, converge para filtro ideal

Page 12: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.
Page 13: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.
Page 14: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.
Page 15: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Aplicações• Transformação geométrica da imagem

– Zoom, rotação, redimensionamento, warping...• Interpolação e amostragem

– Processo rápido e de alta performance– Filtro multi-escala rápido (Algoritmo Árvore)

• Extração de atributos (features)– Contornos, geometria diferencial, pirâmides, forma,

contornos ativos, formas• Análise de movimento

– Optical flow

Page 16: Splines A Perfect Fit for Signal and Image Processing Michael Unser, IEEE Signal Processing Mag. 1999 Grupo de Discussões InCor - São Paulo, 29 de agosto.

Conclusões

• Características splines– Fácil de manipular– Suave e bem-comportada– Excelentes propriedades de aproximação– Propriedades de multiresolução

• Splines e processamento de imagens– Histórico de estranhamento, mais recentemente,

aproximação– Melhores resultados custo-performance– Muitas aplicações!