Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 30th June 2020, 22:36   #1  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
Temporal Denoisers scene change artifacts

I just learned that with FFT3D and DFTTest you get bad frames sometimes at scene changes.

https://github.com/pinterf/fft3dfilter/issues/2

This is very annoying once you learn and see it. With bt=5 you get 4 bad frames and with bt=3 you get 2 bad frames at some scene changes. The images are not denoised.

I'm surprised not much people talk about this. This kind of ruins the denoising. I want to use FFT3D because of its speed. Anyways to do a temporal denoising without these artifacts?
Atlantis is offline   Reply With Quote
Old 1st July 2020, 00:34   #2  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
mcompensate
feisty2 is offline   Reply With Quote
Old 1st July 2020, 00:41   #3  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
you can do mc, Two birds with one stone

bt=5
sMCwarper(mc=bt,"neo_FFT3D(bt=para1)",prefilter=1,para1=bt)

edit: seems feisty2 was faster than me
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 1st July 2020, 01:14   #4  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
Thanks real.finder. I added your code and it says no sMCwarper function.

My original code is this
neo_fft3d(y=3, u=2, v=2, sigma=6)
neo_fft3d(y=2, u=3, v=3, sigma=3)

How should I modify it and what plugin should I load? I'm going to stay with bt=3 the default for the moment.
Atlantis is offline   Reply With Quote
Old 1st July 2020, 01:55   #5  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by Atlantis View Post
Thanks real.finder. I added your code and it says no sMCwarper function.

My original code is this
neo_fft3d(y=3, u=2, v=2, sigma=6)
neo_fft3d(y=2, u=3, v=3, sigma=3)

How should I modify it and what plugin should I load? I'm going to stay with bt=3 the default for the moment.
sMCwarper in https://github.com/realfinder/AVS-St...MC_things.avsi
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 1st July 2020, 02:25   #6  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
From here:- https://forum.doom9.org/showthread.p...42#post1786042

Demo to show scene changes [could hack to use in any script, uses MvTools]
Code:
FN=".\LowBitrateAnime.avi"
Avisource(FN)

Function EndOfSceneClip(clip c,Int "thSCD1",Int "thSCD2") { # All Luma Samples set 255 at EOS
    thSCD1=Default(thSCD1,400)  thSCD2=Default(thSCD2,130)
    sup=c.MSuper(pel=1,sharp=0,rfilter=2,hpad=16, vpad=16)
    bv=sup.MAnalyse(isb=true, delta=1,blksize=16,overlap=8)
    Return c.MSCDetection(bv,thSCD1=thSCD1,thSCD2=thSCD2)
}

Function StartOfSceneClip(clip c,Int "thSCD1",Int "thSCD2") { # All Luma Samples set 255 at SOS
    thSCD1=Default(thSCD1,400)  thSCD2=Default(thSCD2,130)
    sup=c.MSuper(pel=1,sharp=0,rfilter=2,hpad=16, vpad=16)
    fv=sup.MAnalyse(isb=false,delta=1,blksize=16,overlap=8)
    Return c.MSCDetection(fv,thSCD1=thSCD1,thSCD2=thSCD2)
}

EOS = EndOfSceneClip
SOS = StartOfSceneClip
#return EOS
SSS="""
    e = EOS.AverageLuma
    s = SOS.AverageLuma
    Subtitle(String(current_frame)+String(e,"] EOS=%.1f")+String(s," : SOS=%.1f"))
    (e!=0.0)
        \ ? Subtitle("End Of Scene",Size=48,Text_Color=$FF0000,Y=Height/2-24,Align=5)
        \ : (s!=0.0) ? Subtitle("Start Of Scene",Size=48,Text_Color=$0000FF,Y=Height/2+24,Align=5)
        \ : NOP
    return last
"""

Scriptclip(SSS)
EDIT: Blend of SOS and EOS would be above 127 if either EOS or SOS (actually anything above 0.0 would would detect).
Could use with eg ConditionalSelect or some other runtime filter [as eg above scriptclip].

__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 1st July 2020 at 06:26.
StainlessS is offline   Reply With Quote
Old 1st July 2020, 03:19   #7  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
Quote:
Originally Posted by real.finder View Post
Oh, it uses dfttest and it is so slow. With dfttest I get 1 fps. A 4K HDR movie would take 3-4 days to encode. I guess I have to live with the artifacts. I'm going to stick with neo_fft3d. bt=3 makes it less visible. But it is there and visible to a trained eye.

By the way, who writes these scripts and dfttest. Do they even use them themselves in real life? These look like those high end cloths you see on a fashion show where there is no real function for them in real life at all!
Atlantis is offline   Reply With Quote
Old 1st July 2020, 04:52   #8  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by Atlantis View Post
Oh, it uses dfttest and it is so slow. With dfttest I get 1 fps. A 4K HDR movie would take 3-4 days to encode. I guess I have to live with the artifacts. I'm going to stick with neo_fft3d. bt=3 makes it less visible. But it is there and visible to a trained eye.

By the way, who writes these scripts and dfttest. Do they even use them themselves in real life? These look like those high end cloths you see on a fashion show where there is no real function for them in real life at all!
sMCwarper don't use dfttest itself

and indeed 4k need more cpu power, I use it with SD and HD

StainlessS maybe made something faster that only do scene changes things not mc
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 1st July 2020, 06:09   #9  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Nope, the scene change stuff from MvTools aint that fast, but aint really so slow either, also could maybe downsize source to eg 640x480
for the scene change clips (SmallC=BilinearResize(640,480) EOS=SmallC.EndOfSceneClip SOS=SmallC.StartOfSceneClip)
and so only do the scene change detect on smaller clip.
Quote:
indeed 4k need more cpu power
Indeed, indeed, I would never have patience enough for 4K, and seems like overkill, (leastwise for my lousy eyes).

EDIT: The demo previously posted could be used to apply scene change control to any denoise type function,
do something special if EOS, and something else special if SOS, otherwise normal denoise. The something special
might well depend upon what the denoise does and what problem occurs at EOS, or SOS.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 1st July 2020 at 06:31.
StainlessS is offline   Reply With Quote
Old 1st July 2020, 06:13   #10  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
Quote:
Originally Posted by Atlantis View Post

By the way, who writes these scripts and dfttest. Do they even use them themselves in real life? These look like those high end cloths you see on a fashion show where there is no real function for them in real life at all!
you lack the basic understanding of the computation cost of video processing.
I got some scripts that restore crappy DVD videos to master tape quality and it took 2 weeks to restore a 3 min music video on a server with a Xeon CPU, 256G RAM and 8 2080Ti GPUs, the video being restored was only 720x480, not even HD.
feisty2 is offline   Reply With Quote
Old 1st July 2020, 09:24   #11  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,795
Quote:
Originally Posted by feisty2 View Post
you lack the basic understanding of the computation cost of video processing.
I got some scripts that restore crappy DVD videos to master tape quality and it took 2 weeks to restore a 3 min music video on a server with a Xeon CPU, 256G RAM and 8 2080Ti GPUs, the video being restored was only 720x480, not even HD.
If possible, could you show some before after pics?
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database
ChaosKing is offline   Reply With Quote
Old 1st July 2020, 12:55   #12  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
If possible, could you show some before after pics?
Bet its Kylie
[Feisty, Kylie got them there gold hotpants for 50 pence in a charity shop in London, best damn 50 pence she ever spent,
she went from being persona-non-grata to shit-hot-new-star over night. (she found it real hard to get rid of the
Aussie good girl image from "Home & Away" soap opera, had spent a decade or more 'out of favour' except for 8YO girl fans [EDIT: and me])].

EDIT: I'm wondering if we will ever get to see Feisty2 in gold hotpants, will match his blue eyes & flatcap great.

EDIT:
Quote:
"Home & Away"
Actually "Neighbours" I think, Homa & Away was the other one.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 1st July 2020 at 21:43.
StainlessS is offline   Reply With Quote
Old 1st July 2020, 14:19   #13  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
Quote:
Originally Posted by real.finder View Post
sMCwarper don't use dfttest itself
Oh, ok, then I'm going to try it.

Tried, it says

There is no function named dither_luma_rebuild
Where should I find that?
Atlantis is offline   Reply With Quote
Old 1st July 2020, 14:41   #14  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
Where should I find that?
Real.Finder Zs_RF_Shared.avsi:- https://github.com/realfinder/AVS-St...Functions.avsi

Used by almost all Real.Finder scripts.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???
StainlessS is offline   Reply With Quote
Old 1st July 2020, 16:25   #15  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
Quote:
Originally Posted by ChaosKing View Post
If possible, could you show some before after pics?
sure, I'll start a new thread on the General Discussion subforum.
feisty2 is offline   Reply With Quote
Old 1st July 2020, 23:42   #16  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
I added Zs_RF_Shared.avsi and now it says no function mt_lut.

real.finder, could you please tell me all the necessary files I should use to test
bt=5
sMCwarper(mc=bt,"neo_FFT3D(bt=para1)",prefilter=1,para1=bt)

Remember, this is a thread made by someone who doesn't know how this work, so one word stuff like mcompensate or a single line of a code doesn't help anyone's time.
This is not a game, this is not a riddle, this is not a puzzle thread. Overall the replies are not very helpful. It's like people chatting among themselves and repeating words
only they know what it means for their own amusement.
Atlantis is offline   Reply With Quote
Old 2nd July 2020, 01:25   #17  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
if you google it then you know from what it come and what you missed

https://www.google.iq/search?source=...4dUDCAY&uact=5
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 2nd July 2020, 04:39   #18  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
Quote:
Originally Posted by Atlantis View Post
Remember, this is a thread made by someone who doesn't know how this work, so one word stuff like mcompensate or a single line of a code doesn't help anyone's time.
This is not a game, this is not a riddle, this is not a puzzle thread. Overall the replies are not very helpful. It's like people chatting among themselves and repeating words
only they know what it means for their own amusement.
you don't sound very kind for someone who's asking for help from others, no one's obliged to help you and you should be grateful that the one word stuff is concise and informative enough to tell you exactly what you need to solve the problem. if you don't know how to use mcompensate, learn it, it's not rocket science. what gives you the illusion that someone will always spoon-feed you?
feisty2 is offline   Reply With Quote
Old 2nd July 2020, 09:06   #19  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,795
Quote:
Originally Posted by real.finder View Post
if you google it then you know from what it come and what you missed

https://www.google.iq/search?source=...4dUDCAY&uact=5
Wrong link, use this https://lmgtfy.com/?q=mt_lut
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database
ChaosKing is offline   Reply With Quote
Old 2nd July 2020, 12:13   #20  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
Quote:
Originally Posted by feisty2 View Post
you don't sound very kind for someone who's asking for help from others, no one's obliged to help you and you should be grateful that the one word stuff is concise and informative enough to tell you exactly what you need to solve the problem. if you don't know how to use mcompensate, learn it, it's not rocket science. what gives you the illusion that someone will always spoon-feed you?
On the contrary, it is you who don't sound kind. Read again what you wrote or other people wrote. I should be grateful? No. You must be joking. You are obviously of bad faith and do not want to help anyone.

This is very easy if I had a tool and was proud of it and wanted people to use it, I would say use this, import these dlls. Very easy. There are still errors and even more functions are missing. This again shows you are not of good faith. It's not worth it. You are not worth it. Play with your tool alone. I'm out.
Atlantis is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 23:48.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.