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 > VapourSynth

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd November 2014, 11:33   #1  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
vcmod a plugin for vapoursynth

vcmod is a plugin for vapoursynth. It has several functions which essentially operate on pixel values and modify it as per some criteria. Useful for denoising.
The functions are
Code:
1.Amplitude
2.Histogram
3.Median
4.Variance
5.Gaussian Blur GBlur
6.Motion Blur MBlur.
A full description is available at vcmod.
Request comments. This plugin is compiled for windows.
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 8th October 2015, 16:41   #2  |  Link
mawen1250
Registered User
 
Join Date: Aug 2011
Posts: 104

(4x)

I've got these artifacts with vcmod.Median(clip, 7, [1,1,1]).
Is it expected by the algorithm?
mawen1250 is offline   Reply With Quote
Old 9th October 2015, 12:47   #3  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
It is not expected. Will it be possible to attach your input one frame and send me by email? I can checkup easily then.
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 9th October 2015, 16:43   #4  |  Link
mawen1250
Registered User
 
Join Date: Aug 2011
Posts: 104
That's OK. Already sent.
mawen1250 is offline   Reply With Quote
Old 11th October 2015, 13:27   #5  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
An updated version is at my page. Please check it .
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 9th October 2017, 16:03   #6  |  Link
cwk
Registered User
 
Join Date: Jan 2004
Location: earth, barely
Posts: 95
@vcmohan, Is the neural net function included with your vcmod plugin? The web page does not reflect its presence.
cwk is offline   Reply With Quote
Old 10th October 2017, 12:10   #7  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
Sorry. (I have not yet ported it to vcmod. It is currently available in modplus a avisynth+ plugin. If you are particular I will port it to vapoursynth in a week.
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 11th October 2017, 03:54   #8  |  Link
cwk
Registered User
 
Join Date: Jan 2004
Location: earth, barely
Posts: 95
Your comment on the avisynth thread about sharpening and denoising sparked my interest, though I only use Vapoursynth these days. I would like to try using a different source of the same video as a training clip for some old VHS captures.
cwk is offline   Reply With Quote
Old 12th October 2017, 13:30   #9  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
I am almost done. But I am getting a error message "invalid plane requested" from vseditor. I am unable to see why this message. Still trying to check.
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 12th October 2017, 14:04   #10  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 1,896
Quote:
Originally Posted by vcmohan View Post
I am almost done. But I am getting a error message "invalid plane requested" from vseditor. I am unable to see why this message. Still trying to check.
Most likely you're calling getStride() or getReadPtr() with a plane argument that's out of range. For example plane=1 for grayscale.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 17th October 2017, 13:20   #11  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
I have now uploaded the new vcmod having saltpepper, fan veed and neural functions additionally. Please check for any bugs or misinfo typos etc;
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 17th October 2017, 13:38   #12  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 765
broken file upload? vcmod64.7z is 0 bytes

//Edit: works now, thx.
__________________
Search and denoise

Last edited by ChaosKing; 18th October 2017 at 09:50.
ChaosKing is offline   Reply With Quote
Old 18th October 2017, 08:26   #13  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
Sorry for that. I uploaded again. Kindly check.
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 20th October 2017, 00:49   #14  |  Link
cwk
Registered User
 
Join Date: Jan 2004
Location: earth, barely
Posts: 95
Thanks for updating vcmohan. Do you have any guidance for building on linux?
cwk is offline   Reply With Quote
Old 20th October 2017, 01:39   #15  |  Link
Are_
Registered User
 
Join Date: Jun 2012
Location: Ibiza, Spain
Posts: 271
Code:
sed -i -e s/vapoursynth.h/VapourSynth.h/g -e s/vshelper.h/VSHelper.h/g *.cpp

gcc -O3 -msse2 -fPIC -shared -std=c++11 -Wl,-O1 -Wl,--as-needed -o libvcmod.so vcmod.cpp
Are_ is offline   Reply With Quote
Old 20th October 2017, 13:54   #16  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
Quote:
Originally Posted by cwk View Post
Do you have any guidance for building on linux?
Frankly I have no experience. I remember some one tried to transfer to GCC. He got lots of errors and warnings. While I do not care for most of the warnings VC++ (community version 13) generates, as these conversions are intended (for example int to float etc; ) probably GCC may not allow. You may pose this question to experts.
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 20th October 2017, 15:10   #17  |  Link
cwk
Registered User
 
Join Date: Jan 2004
Location: earth, barely
Posts: 95
Quote:
Originally Posted by Are_ View Post
Code:
sed -i -e s/vapoursynth.h/VapourSynth.h/g -e s/vshelper.h/VSHelper.h/g *.cpp

gcc -O3 -msse2 -fPIC -shared -std=c++11 -Wl,-O1 -Wl,--as-needed -o libvcmod.so vcmod.cpp
Thanks Are_

Builds without issue. I'll give it a try this weekend.
cwk is offline   Reply With Quote
Old 23rd October 2017, 04:27   #18  |  Link
cwk
Registered User
 
Join Date: Jan 2004
Location: earth, barely
Posts: 95
I'm looking at the file generated during training

Code:
iter:9980
4.29846e+11 4.2984e+11 4.29845e+11 4.2984e+11 4.29845e+11 
4.29839e+11 4.29845e+11 4.29839e+11 4.29845e+11 4.29838e+11 
4.29844e+11 4.29838e+11 4.29844e+11 4.29838e+11 4.29844e+11 
4.29838e+11 4.29845e+11 4.29838e+11 4.29844e+11 4.29837e+11
It looks like Neural generates of convoltion matrix of: xpts * ypts, but the error is calculated against 5 * 5. Is that correct?
cwk is offline   Reply With Quote
Old 23rd October 2017, 08:04   #19  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 730
Quote:
Originally Posted by cwk View Post

It looks like Neural generates of convoltion matrix of: xpts * ypts, but the error is calculated against 5 * 5. Is that correct?
No. You are looking at error of covolution at iter 9980 to 9999. A convolution matrix of xpts*ypts + 1 is generated. The one that gives least error is selected and used.
It looks you are using a very large number of iterations iter. Instead it may give a better result if you try bestof of 5 to 10 and iter of 100 to 300.
The reason is that sometimes it will not be able to get off a local minimum. Also several times it may not converge to a good solution.
__________________
mohan
my plugins are now hosted here

Last edited by vcmohan; 23rd October 2017 at 08:07.
vcmohan is offline   Reply With Quote
Old 23rd October 2017, 17:12   #20  |  Link
cwk
Registered User
 
Join Date: Jan 2004
Location: earth, barely
Posts: 95
ok, thank you for the explanation. I'll try larger values of bestof.

One observation is that the training process is single-threaded. Users could potentially use larger values for both iter and bestof if all cores could be used.
cwk 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 14:14.


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