Aplicar filtro a sequencia de imágenes para un video menos ruidoso [Solucionado]

He estado realizando un pequeño video a partir de un fractal del tipo IFS (en realidad son flames, más información en este paper). La gracia es que las transformaciones varien levemente entre fotograma y fotograma (ese trabajo lo hace un programilla, no es que yo haya cambiado las opciones de cada frame a mano). Ya he logrado renderizar los 1800 frames que comprenderán el video, pero al momento de crearlo con:

ffmpeg -f image2 -r 20 -i %05d.png -sameq video.avi

me doy cuenta que en los bordes se ven con bastante ruido, y no es cosa de la compresión de video ni similar, sino de las propias imagenes, pues debido a lo aleatorio del renderziado, dos imagenes que debieran ser iguales presentaran leves difrencias en zonas donde la probabilidad de que el pixel pertenezca al fractal es baja (si no entienden nada de lo que digo, lean el capitulo 3 del enlace de más arriba). debo dejar en claro que el ruido no se aprecia en el "espacio XY", en otras palabras, vez un frame y dices "oH!!! la imagen no tiene ruido!!", pero si aparece al unir los frames en el video, por lo que se podria decir que es un ruido "en el espacio del tiempo".

Se podria solucionar aumentando la calidad de cada imagen para definir mejor ls bordes, pero a un costo computacional enorme que, la verdad, no quiero pagar. Para que se hagan una idea, cada frame se demoró cerca de 1 minuto (con mi modesto celeron M), así que el PC estuvo varias noches renderizando.

He comprobado que si activo la opcion "quitar ruido normal" de smplayer(en video->filtros) el ruido se atenúa. Con Vlc también probé un filtro (no me acuerdo como se llama, "movimiento borroso" tal vez) con similares resultados. Pero eso no es lo que yo busco, pues el video sigue con ruido y solo se mejora la reproducción de este.

Ahora bien, la duda, ¿alguien tiene la remota idea de como aplicar un filtro para eliminar ese ruido?. Tal vez una opción de ffmpeg, o tal vez imagemagick. He buscado un poco, pero trabajar con imagemagick si que es una tortura mental con sus tantas opciones.

PD: maldito winXP ... no me reconoce mi mp4, asi que no puedo subir el video para que lo puedan ver
PD2: he estado probando soluciones más radicales, creando un pequeño programa en C (que es donde me manejo) para aplicar un filtro lineal (basicamente consite en hacer un promedio "ponderado" entre algunas imagenes cercanas para cear nuevos fotogramas) pero me topo en conocer los valores de cada canal en cada pixel, solo me sé como esta organizado las imagenes bmp (como no estan comprimidas, simplemente cada tres bites es un pixel, y cada uno de esto representa un canal del modelo RGB (red-green-blue), pero mis imagenes estan en PNG. Tendré que leer un poco de la librería libpng-dev, a ver si me sirve. Tampoco sé como definir el filtro, especialmente sus "pesos", asi es que si el proyecto prosigue tendré que probar por ensayo y error
PD3: solo remitanse a la pregunta, la PD2 era para comentar una solucion que estoy barajando. Ademas, si es que preguntara sobre eso, estaría violando las normas
PD4: Aqui hay un video de lo que mas o menos pretendo hacer:

uff sd, no se si este foro será el más adecuado para preguntar algo así... todo eso me suena a chino, eso me parece muy profesional. ¿demasiado para el nivel de kubuntu-es? confuso
No se si alguien del foro tiene experiencia con ese tipo de cosas, quizá en esDebian tengas más posibilidades. Allí he leido bastantes comentarios sobre fractales, ffmpeg y renderizado de imágenes.

Saludos!

Coincido con shaola, pero mientras lo leia, se me cruzo por la mente el VirtualDub. Pero esta aplicacion es para windows, pero existe el simular en linux que se llama avidemux. (http://www.avidemux.org/admWiki/index.php?title=Main_Page), tal vez te sirva, tiene la posibilidad de aplicar muchos filtros a los videos.

Hay otra herramienta (povray) que tambien es para linux, pero esta te permite la construccion de imagenes vectorizadas. esta aplicacion te permitiria cronstruir los distintos frames, pero esto ya lo tenes.
aqui (http://es.wikipedia.org/wiki/POV-Ray#Artistas_POV-Ray_notables) podras ver algo interesante.

Saludos y suerte

Muy hermosos fractales, lástima que no te pueda ayudar. No tengo idea de nada de tratamiento de video ni de fractales, jeje.
Apoyo lo comentado por Shaola.

Espero que puedas arreglarlo pronto...

Saludos!

Igual se agradece, de hecho pensé un tiempo antes de preguntar. Estoy seguro que imagemagick me puede hacer el trabajo, pero no sé como. Por el momento sigo picando codigo, como convert (uno de ls programas de Imagemagick) parece no convertir bien a .BMP usare otro formato sin compresión....

Hola.
Quizás puedas transformar el video con avidemux o handbrake para que podamos ver de que se trata ese ruido. Solo por curiosidad, no es que te vaya a poder ayudar mucho cheesygrin

Fijate de hacer la pregunta en los foros de diviantART que seguro algo saben:

http://forum.deviantart.com/

Saludos.

mi poco hablar inglés... jajaja... supongo que seguiré picando código el fin de semana (cuando ya terminé el semestre), ojalá resulte.

acá dejo mi video sin filtrar...

EDITO: se me olvidó ponerle música (ya tengo elegida la banda sonora)

Muy bonito fractal. Hay algunos moluscos con forma, estructuras, movimientos y colores muy parecidos al fractal que nos muestras... Muy interesante, por cierto.

¿Y si le subes la resolución al video? O menos compresión? Sí noto el ruido que comentas, y en efecto, "cuadro a cuadro" no se percibe...

Realmente esta muy bueno. Lamentablemente no logro percibir (poca cualidad para apreciar el arte) ese ruido que comentan. Estuve jugando un poco con los filtros del avidemux para tratar de entender el tema del ruido, pero sin saber cual es el efecto a lograr es medio dificil.
Tengo que entender que el ruido al que hacen referencia es el causante del efecto de falta de nitidez?

al final con avidemux si pude hacerlo... al pincipio no podia, pues dejaba que el codec de video lo copiara dumb , filtro que usaba, filtro que no era aplicado. Luego subiré el video final.

Por ciero, el programa en C ha avanzado bastante, y con resultados decentes; aunque aún tengo problemas porque de repente algunas zonas cambin brusamente de color, supongo ue será la conversión desde double a char...

graias

SD0625 escribió:

al final con avidemux si pude hacerlo... al pincipio no podia, pues dejaba que el codec de video lo copiara dumb , filtro que usaba, filtro que no era aplicado. Luego subiré el video final.

buenisimo que te sirviera el avidemux.

Citar

Por ciero, el programa en C ha avanzado bastante, y con resultados decentes; aunque aún tengo problemas porque de repente algunas zonas cambin brusamente de color, supongo ue será la conversión desde double a char...

graias

OFFTOPIC:
Si se me permite, en una oportunidad me cruce con esto de los fractales. Era un codigpo en VisualBasic que dibujaba un helecho monocromatico. Muy interesante. Debido a que yo trabajo en delphi (pascal por aquel entonces), lo migre a pascal y cuando lo ejecute el resultado fueron unos cuantos puntos caoticamente desparramados por la pantalla. El problema era que estaba convirtiendo un double en un integer, se perdian unos decimales que yo pensaba que no tenian gran importancia. De manera que modifique todo como para que solamente se convirtiera al entero al momento de dibujar el punto en la pantalla.

Si estas convirtiendo un double a char, estas perdiendo presicion. Tene en cuenta que el double ocupa mas memoria que el char.