Articulo de referencia

Filtro guiado

Un filtro guiado es un filtro de suavizado de imágenes que preserva los bordes. Al igual que un filtro bilateral , puede filtrar el ruido o la textura manteniendo los bordes nít...

Un filtro guiado es un filtro de suavizado de imágenes que preserva los bordes. Al igual que un filtro bilateral , puede filtrar el ruido o la textura manteniendo los bordes nítidos. [ 1 ] [ 2 ]

Comparación

En comparación con el filtro bilateral, el filtro de imagen guiada presenta dos ventajas: los filtros bilaterales tienen una alta complejidad computacional , mientras que el filtro de imagen guiada utiliza cálculos más sencillos con una complejidad computacional lineal . Los filtros bilaterales a veces incluyen artefactos de inversión de gradiente no deseados y causan distorsión de la imagen. El filtro de imagen guiada se basa en la combinación lineal, lo que hace que la imagen de salida sea consistente con la dirección del gradiente de la imagen guía, evitando así la inversión del gradiente.

Definición

Una suposición clave del filtro guiado es que la relación entre la guíaI{\displaystyle I}y la salida de filtradoq{\displaystyle q}es lineal. Supongamos queq{\displaystyle q}es una transformación lineal deI{\displaystyle I}en una ventanaωk{\displaystyle \omega _{k}}centrado en el píxelk{\displaystyle k}.

Para determinar el coeficiente lineal(ak,bk){\displaystyle (a_{k},b_{k})}, restricciones de la entrada de filtradopag{\displaystyle p}son necesarios. La salidaq{\displaystyle q}se modela como la entradapag{\displaystyle p}con componentes no deseadosnorte{\displaystyle n}, como por ejemplo, la sustracción de ruido/texturas.

El modelo básico:

(1) qi=akIi+bk,iωk{\displaystyle q_{i}=a_{k}I_{i}+b_{k},\forall i\in \omega _{k}}

(2) qi=paginortei{\displaystyle q_{i}=p_{i}-n_{i}}

en el cual:

qi{\displaystyle q_{i}}es elith{\displaystyle i_{th}}píxel de salida;
pagi{\displaystyle p_{i}}es elith{\displaystyle i_{th}}píxel de entrada;
nortei{\displaystyle n_{i}}es elith{\displaystyle i_{th}}píxel de componentes de ruido;
Ii{\displaystyle I_{i}}es elith{\displaystyle i_{th}}imagen de guía píxel;
(ak,bk){\displaystyle (a_{k},b_{k})}son algunos coeficientes lineales que se suponen constantes enωk{\displaystyle \omega _{k}}.

La razón para utilizar una combinación lineal es que el límite de un objeto está relacionado con su gradiente . El modelo lineal local garantiza queq{\displaystyle q}tiene ventaja solo siI{\displaystyle I}tiene ventaja, ya queq=aI{\displaystyle \nabla q=a\nabla I}.

Resta (1) y (2) para obtener la fórmula (3); al mismo tiempo, define una función de costo (4):

(3) nortei=pagiakIibk{\displaystyle n_{i}=p_{i}-a_{k}I_{i}-b_{k}}

(4) mi(ak,bk)=iϵωk((akIi+bkpagi)2+ϵak2){\displaystyle E(a_{k},b_{k})=\sum _{i{\epsilon }{\omega }_{k}}^{}((a_{k}I_{i}+b_{k}-p_{i})^{2}+{\epsilon }a_{k}^{2})}

en el cual

ϵ{\displaystyle \epsilon }es un parámetro de regularización que penaliza los grandesak{\displaystyle a_{k}};
ωk{\displaystyle \omega _{k}}es una ventana centrada en el píxelk{\displaystyle k}.

Y la solución de la función de coste es:

(5) ak=1|ω|iϵωkIipagiμkpagk¯σk2+ϵ{\displaystyle a_{k}={\frac {{\frac {1}{\left|\omega \right|}}\sum _{i\epsilon \omega _{k}}I_{i}p_{i}-\mu _{k}{\bar {p_{k}}}}{\sigma _{k}^{2}+\epsilon }}}

(6) bk=pagk¯akμk{\displaystyle b_{k}={\bar {p_{k}}}-a_{k}\mu _{k}}

en el cual

μk{\displaystyle \mu _{k}}yσk2{\displaystyle \sigma _{k}^{2}}son la media y la varianza deI{\displaystyle I}enωk{\displaystyle \omega _{k}};
|ω|{\displaystyle \left|\omega \right|}es el número de píxeles enωk{\displaystyle \omega _{k}};
pag¯k=1|ω|iϵωkpagi{\displaystyle {\bar {p}}_{k}={\frac {1}{\left|\omega \right|}}\sum _{i\epsilon \omega _{k}}p_{i}}es la media depag{\displaystyle p}enωk{\displaystyle \omega _{k}}.

Después de obtener los coeficientes lineales(ak,bk){\displaystyle (a_{k},b_{k})}, la salida de filtradoqi{\displaystyle q_{i}}Se proporciona mediante el siguiente algoritmo:

Algoritmo

Por definición, el algoritmo se puede escribir como:

Algoritmo 1. Filtro guiado

Entrada: imagen de entrada filtradapag{\displaystyle p}imagen de guíaI{\displaystyle I} radio de ventanar{\displaystyle r}, regularizaciónϵ{\displaystyle \epsilon }

Salida: salida de filtradoq{\displaystyle q}

1.

metromianorteI{\displaystyle mean_{I}}=Fmetromianorte(I){\displaystyle f_{mean}(I)}metromianortepag{\displaystyle mean_{p}}=Fmetromianorte(pag){\displaystyle f_{mean}(p)}doorrI{\displaystyle corr_{I}}=Fmetromianorte(I.I){\displaystyle f_{mean}(I.*I)}doorrIpag{\displaystyle corr_{Ip}}=Fmetromianorte(I.pag){\displaystyle f_{mean}(I.*p)}

2.

varI{\displaystyle var_{I}}=doorrImetromianorteI.metromianorteI{\displaystyle corr_{I}-mean_{I.}*mean_{I}}doovIpag{\displaystyle cov_{Ip}}=doorrIpagmetromianorteI.metromianortepag{\displaystyle corr_{Ip}-mean_{I.}*mean_{p}}

3.

a{\displaystyle a}=doovIpag./(varI+ϵ){\displaystyle cov_{Ip}./(var_{I}+\epsilon )}b{\displaystyle b}=metromianortepaga.metromianorteI{\displaystyle mean_{p}-a.*mean_{I}}

4.

metromianortea{\displaystyle mean_{a}}=Fmetromianorte(a){\displaystyle f_{mean}(a)}metromianorteb{\displaystyle mean_{b}}=Fmetromianorte(b){\displaystyle f_{mean}(b)}

5.

q{\displaystyle q}=metromianortea.I+metromianorteb{\displaystyle mean_{a.}*I+mean_{b}}

Fmetromianorte{\displaystyle f_{mean}}es un filtro de media con una amplia variedad de métodos de tiempo O(N).

Propiedades

Filtrado que preserva los bordes

Cuando la imagen de guíaI{\displaystyle I}es lo mismo que la entrada de filtradopag{\displaystyle p}El filtro guiado elimina el ruido de la imagen de entrada al tiempo que preserva los bordes nítidos.

Específicamente, se puede especificar un “parche plano” o un “parche de alta varianza” mediante el parámetroϵ{\displaystyle \epsilon }del filtro guiado. Parches con varianza mucho menor que el parámetroϵ{\displaystyle \epsilon }se suavizarán y aquellos con variaciones mucho mayores queϵ{\displaystyle \epsilon }se conservará. El papel de la varianza del rangoσr2{\displaystyle \sigma _{r}^{2}}en el filtro bilateral es similar aϵ{\displaystyle \epsilon }en el filtro guiado. Ambos definen las zonas de borde/alta varianza que deben conservarse y las zonas de ruido/planas que deben suavizarse.”

Filtrado que preserva el gradiente

Al aplicar un filtro bilateral a una imagen, pueden aparecer artefactos en los bordes. Esto se debe al cambio abrupto del valor del píxel en el borde. Estos artefactos son inherentes y difíciles de evitar, ya que los bordes están presentes en todo tipo de imágenes.

El filtro guiado ofrece un mejor rendimiento al evitar la inversión del gradiente. Además, en algunos casos, se puede garantizar que no se produzca dicha inversión.

Filtrado con transferencia de estructura

Debido al modelo lineal local deq=aI+b{\displaystyle q=aI+b}Es posible transferir la estructura desde la guía.I{\displaystyle I}a la salidaq{\displaystyle q}Esta propiedad permite algunas aplicaciones especiales basadas en filtrado, como el difuminado, el matizado y la eliminación de neblina.

Implementaciones

Véase también

Referencias

  1. He, Kaiming; Sun, Jian; Tang, Xiaoou (2013). "Filtrado de imágenes guiado". IEEE Transactions on Pattern Analysis and Machine Intelligence . 35 (6): 1397– 1409. doi : 10.1109/TPAMI.2012.213 . PMID 23599054 . 
  2. Filtrado de imágenes guiado
  3. "Filtrado guiado de imágenes - MATLAB imguidedfilter" .
  4. "OpenCV: Filtros" .
  5. "Documentación de filtros FFmpeg" .