Algoritmos para bajar la muestra de una imagen?

10

El muestreo bicúbico es bastante bueno para el muestreo ascendente de una imagen y hacerla más grande, pero ¿es también una buena opción para el muestreo descendente? ¿Hay mejores opciones?

Alan Wolfe
fuente
1
Estos dos artículos viejos de El Producto Interior habla de filtros para la generación de mapas MIP, que podría ser relevante para usted: Link1 , Link2 .
glampert

Respuestas:

12

Cuando Sean y yo escribimos stb_image_resize elegimos Mitchell para reducir el tamaño. Mitchell es similar a Cubic, puede leer sobre la clase cúbica de filtros de muestreo en Mitchell Netravali 1988 . Todos son bastante similares y obtendrán resultados muy similares.

No puedo encontrar ningún registro escrito entre Sean y yo de por qué decidimos ir con Mitchell, pero si la memoria funciona, simplemente remuestrearemos un montón de imágenes y usamos el algoritmo que pensamos que se veía mejor. No diría que hay un filtro autorizado o mejor, debe usar el que mejor se vea en sus datos.

Editar: como dice joojaa, un filtro de ventana sinc también es bueno, si no tan barato. Puedes encontrar algunas implementaciones aquí .

Jorge Rodriguez
fuente
3
Hay un mejor filtro autorizado, es un filtro sinc infinitamente ancho. Simplemente no es posible usarlo. hasta ese momento lanczos windowed sinc es una buena alternativa a michell
joojaa
Como referencia, también están las herramientas de imagen de Nvidia .
glampert
Si está utilizando un filtro cúbico o de lanczos, ¿funcionan estos tipos igual de bien para ampliar como para reducir?
Alan Wolfe
No he probado los lanczos, así que no puedo hablar de eso. Elegimos catmull-rom para el escalado, que es cúbico, y funcionó bien.
Jorge Rodriguez