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 Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 14th December 2016, 14:02   #1021  |  Link
Khanattila
Registered User
 
Khanattila's Avatar
 
Join Date: Nov 2014
Posts: 440
Quote:
Originally Posted by feisty2 View Post
do some padding before the actual process, trivial to fix
It would be a step back, and that's what I want to avoid
__________________
github.com
Khanattila is offline   Reply With Quote
Old 14th December 2016, 20:13   #1022  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by tormento View Post
How is possible to denoise a normal DGDecNV output on both Y and UV? If I left auto, it uses Y only, if I try YUV it tells me

error: KNLMeansCL: 'channels = YUV' require a YV24 pixel format!
you can use SMDegrain_prefilters(4) and play with it settings
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 15th December 2016, 14:49   #1023  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,542
Quote:
Originally Posted by real.finder View Post
you can use SMDegrain_prefilters(4) and play with it settings
I was playing with plain beta before feeding it to SMDegrain.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 16th December 2016, 00:32   #1024  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by tormento View Post
I was playing with plain beta before feeding it to SMDegrain.
even so

SMDegrain_prefilters =\\= SMDegrain

with SMDegrain_prefilters(4) you will get only KNLMeansCL output clip, and there is knlm_params to use other KNLMeansCL params

and you can feed that clip in SMDegrain if you want

like this

Code:
knlclip=SMDegrain_prefilters(4, knlm_params=", wmode=0")
SMDegrain(prefilter=knlclip)
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 16th December 2016, 03:04   #1025  |  Link
WolframRhodium
Registered User
 
Join Date: Jan 2016
Posts: 162
Feature request:
Extra "mask" clip option
For each pixel in the output clip, if the value of corresponding pixel in "mask" is 0 (black), just copy the value from input clip; else, use NLM normally.

Hope this will reduce computation complexity a lot in some cases, althought the can also be achieved by mt_merge(source, KNLMeansCL(source), mask) but that's too slow when there's only few pixels need to be processed

Last edited by WolframRhodium; 16th December 2016 at 05:20.
WolframRhodium is offline   Reply With Quote
Old 16th December 2016, 13:43   #1026  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,542
Quote:
Originally Posted by real.finder View Post
Code:
knlclip=SMDegrain_prefilters(4, knlm_params=", wmode=0")
SMDegrain(prefilter=knlclip)
WOW! Never noticed SMDegrain_prefilters
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 19th December 2016, 12:18   #1027  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
floating point support is corrupted in v1.0 beta2
feisty2 is offline   Reply With Quote
Old 19th December 2016, 13:11   #1028  |  Link
Khanattila
Registered User
 
Khanattila's Avatar
 
Join Date: Nov 2014
Posts: 440
Quote:
Originally Posted by WolframRhodium View Post
Feature request:
Extra "mask" clip option
For each pixel in the output clip, if the value of corresponding pixel in "mask" is 0 (black), just copy the value from input clip; else, use NLM normally.

Hope this will reduce computation complexity a lot in some cases, althought the can also be achieved by mt_merge(source, KNLMeansCL(source), mask) but that's too slow when there's only few pixels need to be processed
It could be interesting.

Quote:
Originally Posted by feisty2 View Post
floating point support is corrupted in v1.0 beta2
What kind of problem? Loss of precision or anything else?
__________________
github.com
Khanattila is offline   Reply With Quote
Old 19th December 2016, 13:42   #1029  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
Quote:
Originally Posted by Khanattila View Post
It could be interesting.



What kind of problem? Loss of precision or anything else?
an error message bitching about "input format not supported"
feisty2 is offline   Reply With Quote
Old 4th January 2017, 08:36   #1030  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
can you fix the floating point support soon?
wanna give that new wmode a shot.
feisty2 is offline   Reply With Quote
Old 5th January 2017, 17:28   #1031  |  Link
Khanattila
Registered User
 
Khanattila's Avatar
 
Join Date: Nov 2014
Posts: 440
Quote:
Originally Posted by feisty2 View Post
can you fix the floating point support soon?
wanna give that new wmode a shot.
Ok, I release the beta.3 in the next days.
__________________
github.com
Khanattila is offline   Reply With Quote
Old 5th January 2017, 21:12   #1032  |  Link
dipje
Registered User
 
Join Date: Oct 2014
Posts: 268
@khanattila: What about the results of that 'benchmark only' build you did?

Are you going to put 'optimal' settings inside the plugin based on detected gpu / generation. are or you going to open up parameters like those so we can find our own optimal distribution with the final release?
dipje is offline   Reply With Quote
Old 6th January 2017, 15:26   #1033  |  Link
Khanattila
Registered User
 
Khanattila's Avatar
 
Join Date: Nov 2014
Posts: 440
Quote:
Originally Posted by dipje View Post
@khanattila: What about the results of that 'benchmark only' build you did?

Are you going to put 'optimal' settings inside the plugin based on detected gpu / generation. are or you going to open up parameters like those so we can find our own optimal distribution with the final release?
Good point, the parameters will be already pre-calibrated, but you can overwrite them.
__________________
github.com
Khanattila is offline   Reply With Quote
Old 6th January 2017, 18:50   #1034  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,542
Quote:
Originally Posted by Khanattila View Post
Good point, the parameters will be already pre-calibrated, but you can overwrite them.
I think a --preset value, such as in x264, with 4/5 max setting value groups would be nice and noob proof, better with too many parameters based on video card.

Speed is determined by total script, not only a plugin. I could trade some speed for better prefiltering or anything else.
__________________
@turment on Telegram

Last edited by tormento; 6th January 2017 at 18:52.
tormento is offline   Reply With Quote
Old 6th January 2017, 20:05   #1035  |  Link
dipje
Registered User
 
Join Date: Oct 2014
Posts: 268
But the parameters have nothing to do with quality or speed settings for the plugin. More a way to optimize the workload so it performs better for certain video cards.

Certain AMD generations need other parameters than other AMD cards or something. My otherwise speedy GTX 1060 needed really different (low) settings to gain maximum speed than the latest RX480 cards for instance.

This has nothing to do with quality or what the plugin does. More the way the plugin gives commands to the GPU as far as I get it .
dipje is offline   Reply With Quote
Old 17th January 2017, 15:35   #1036  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
Hello. A newbie type question, however worth asking since I find I am in need of guidance.

I wonder if you could clarify whether and when KNLMeansCL is appropriate to use as a plain denoiser by itself ? I noticed it's been used in SMDegrain however I am unclear if KNLMeansCL is appropriate for use as a denoiser in its own right, for example on a range of OTA TV captures for moderate denoising a la mdegrain1/2/3. Any advice or links to comparisons somewhere ?

Another objective is to attempt to identify GPU (eg OpenCL) based filters for the times when a fast workflow is OK, ie where some improved quality output is hoped for but not paramount and speed is valued. (Tools = ffmpeg and x264, portable vapoursynth_x64, win10_x64.)

So far I have only seen these GPU based filters
  1. DGDecodeNV for GPU decoding / deinterlacing (nvidia PureVideo) / resizing - in vapoursynth
  2. unsharp - an ffmpeg internal filter which uses OpenCL to sharpen
  3. KNLMeansCL for denoising - OpenCL in vapoursynth

Do you know of any other GPU filters usable in vapoursynth, or ffmpeg, especially sharpeners ? Is there already a list somewhere ?

Thanks.
hydra3333 is offline   Reply With Quote
Old 17th January 2017, 18:22   #1037  |  Link
Khanattila
Registered User
 
Khanattila's Avatar
 
Join Date: Nov 2014
Posts: 440
Quote:
Originally Posted by hydra3333 View Post
Hello. A newbie type question, however worth asking since I find I am in need of guidance.

I wonder if you could clarify whether and when KNLMeansCL is appropriate to use as a plain denoiser by itself ? I noticed it's been used in SMDegrain however I am unclear if KNLMeansCL is appropriate for use as a denoiser in its own right, for example on a range of OTA TV captures for moderate denoising a la mdegrain1/2/3. Any advice or links to comparisons somewhere ?

Another objective is to attempt to identify GPU (eg OpenCL) based filters for the times when a fast workflow is OK, ie where some improved quality output is hoped for but not paramount and speed is valued. (Tools = ffmpeg and x264, portable vapoursynth_x64, win10_x64.)

So far I have only seen these GPU based filters
  1. DGDecodeNV for GPU decoding / deinterlacing (nvidia PureVideo) / resizing - in vapoursynth
  2. unsharp - an ffmpeg internal filter which uses OpenCL to sharpen
  3. KNLMeansCL for denoising - OpenCL in vapoursynth

Do you know of any other GPU filters usable in vapoursynth, or ffmpeg, especially sharpeners ? Is there already a list somewhere ?

Thanks.
I believe that my filter is the exception, not the rule.
Do not focus yourself on gpu based filters.
__________________
github.com
Khanattila is offline   Reply With Quote
Old 17th January 2017, 19:02   #1038  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
Quote:
Originally Posted by hydra3333 View Post
Hello. A newbie type question, however worth asking since I find I am in need of guidance.

I wonder if you could clarify whether and when KNLMeansCL is appropriate to use as a plain denoiser by itself ? I noticed it's been used in SMDegrain however I am unclear if KNLMeansCL is appropriate for use as a denoiser in its own right, for example on a range of OTA TV captures for moderate denoising a la mdegrain1/2/3. Any advice or links to comparisons somewhere ?

Another objective is to attempt to identify GPU (eg OpenCL) based filters for the times when a fast workflow is OK, ie where some improved quality output is hoped for but not paramount and speed is valued. (Tools = ffmpeg and x264, portable vapoursynth_x64, win10_x64.)
KNLMeansCL itself is an "appropriate" and very high quality (theoretically better quality than motion compensation based filters like MDeGrain since motion compensation matches macroblocks in temporal dimension only and NLMeans does that in both spatial and temporal dimensions) denoiser, it has been misused to do other things thanks to folks like me, but that doesn't mean it has lost its original purpose, to work as a plain denoiser!
feisty2 is offline   Reply With Quote
Old 17th January 2017, 19:09   #1039  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
Also it's a big mystery that how the hell NLMeans ended up acting as a "pre filter" for MDeGrain? You do realize that's like doing a motion compensation pre filtering for RemoveGrain, right?

EDIT: simple rule, the fancier filter gets to be the main filter, so MDeGrain should be the pre filter (rclip) and NLMeans should be the main filter.

Last edited by feisty2; 17th January 2017 at 19:23.
feisty2 is offline   Reply With Quote
Old 17th January 2017, 20:25   #1040  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by feisty2 View Post
Also it's a big mystery that how the hell NLMeans ended up acting as a "pre filter" for MDeGrain? You do realize that's like doing a motion compensation pre filtering for RemoveGrain, right?

EDIT: simple rule, the fancier filter gets to be the main filter, so MDeGrain should be the pre filter (rclip) and NLMeans should be the main filter.
ask dogway, anyway maybe he want a pure temporal, and the knlmeans have blend artfact in temporal dimension
__________________
See My Avisynth Stuff
real.finder 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 20:49.


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