View Single Post
Old 11th October 2013, 17:24   #1  |  Link
pancserzso
Registered User
 
Join Date: Oct 2004
Posts: 131
How to denoise rendered image sequence

I am trying to filter image sequences rendered by a visualization program. The problem is that the program was not created with animation in mind, and it created an image sequence full of artifacts / temporal noise.

You can see an example of such source here.

Some time ago I was trying to solve the same problem, and I got some help from Didée in this thread however this time some of the samples are worse in quality and the original script didn't really work on them.

Here is the code which I tried to use for filtering:
Code:
LoadPlugin( "e:\apps\utils\Video tools\AVSplugins\RemoveGrainSSE3.dll" )
LoadPlugin( "e:\apps\utils\Video tools\AVSplugins\mt_masktools-26.dll" )
LoadPlugin( "e:\apps\utils\Video tools\AVSplugins\EEDI2.dll" )

o=last 
ox=o.width 
oy=o.height

# round/soften hard corner pixels
o.pointresize(ox*3,oy*3).removegrain(4)
mt_lutxy(last,last.removegrain(11,-1),"x x y - 2.51 * +",U=2,V=2).bilinearresize(ox,oy)
o3=last

bubb0 = o3.eedi2(maxd=8).bicubicresize(ox,oy,0,0,0,0.5).turnleft().eedi2(maxd=8).turnright().bicubicresize(ox,oy,0,0,-0.5,0)
return(bubb0)
And here is the filtered result I got: filteredYV12.mp4

I think my problem is that the code which I'm trying to use is not really strong enough for my source.

Is there any way to create a filter which removes this strong temporal flickering / noise? It's not a big problem if the end result is a bit blurry.

Last edited by pancserzso; 11th October 2013 at 19:31.
pancserzso is offline   Reply With Quote