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. |
28th March 2008, 12:52 | #1 | Link |
Registered User
Join Date: Mar 2008
Posts: 13
|
Bilateral filter on GPU for avisynth
I just wrote the bilateral filter on GPU for avisynth.
For more information please visit http://gpubilateral.sourceforge.net/ . Best regards, Sompon Virojanadara PS: If i post in the wrong thread fell free to move this post to the right thread. |
30th March 2008, 01:44 | #2 | Link |
AviSynth plugger
Join Date: Nov 2003
Location: Russia
Posts: 2,183
|
1. can it be adopted for pixel shader 2.0 video cards?
2. how its algo is similar to non-gpu bilater plugins (TBilateral by tritical)?
__________________
My Avisynth plugins are now at http://avisynth.org.ru and mirror at http://avisynth.nl/users/fizick I usually do not provide a technical support in private messages. |
30th March 2008, 18:50 | #3 | Link |
Registered User
Join Date: Mar 2002
Posts: 1,075
|
Tritical's filter by default works only on the luminance plane, and supports a couple more options, this filters RGB planes independently (something I personally wouldn't do, you are going to create false colors that way).
|
1st April 2008, 08:36 | #4 | Link | ||
Registered User
Join Date: Mar 2008
Posts: 13
|
Quote:
However, If you have pixel shader 2.0a You may try HLSL + avishader at http://forum.doom9.org/showthread.php?s=&threadid=87295 However the approximation algorithm doesn't quite accurate. Well, it's approximation anyway. Moreover, the full kernel bilateral is restricted to 5x5. Quote:
Indepth explanation about false color can be found at Experiments with Color Images in http://www.soe.ucsc.edu/~manduchi/Papers/ICCV98.pdf For the option that Tritical's filter has, well i want to keep my filter to be as simplest to use as possible. However if you want any option to be implement don't hestitate to post your request here or email me at s.virojanadara@gmail.com. |
||
13th April 2008, 07:25 | #5 | Link |
Registered User
Join Date: Mar 2008
Posts: 13
|
Version 1.0a Release!
This is not a quite as my plan to do. The GPU CPU synchronization development takes longer than I expected. Thus, i decide to release this "half-developed" release. For more information visit http://gpubilateral.sourceforge.net/.
PS. "False color" elimination still not yet implement in this release please be patient. It should be implement in next release. Best regards, Sompon Virojanadara Last edited by s.virojanadara; 13th April 2008 at 07:26. Reason: Fixed typo |
16th April 2008, 12:59 | #6 | Link |
Registered User
Join Date: Mar 2008
Posts: 13
|
Version 1.1 Released!
For more information visit http://gpubilateral.sourceforge.net/...&id=7&Itemid=7 .
Next release should have support for planar type video (YUV, YV12). However, i have to study that first . Best regards, Sompon Virojanadara |
12th December 2008, 11:18 | #7 | Link |
Registered User
Join Date: Mar 2008
Posts: 13
|
Version 1.2 Released!
For more information visit http://gpubilateral.sourceforge.net/
Add native support for planar type video (YUV, YV12) as promised . Major stability fixed. (This is why it's so late released ) |
12th December 2008, 18:34 | #8 | Link | |
契約者
Join Date: Jun 2008
Posts: 1,576
|
Quote:
|
|
25th January 2009, 13:52 | #10 | Link |
Registered User
Join Date: Feb 2003
Location: Russia, Moscow
Posts: 854
|
Card not support glDeleteFencesNV
Hi folk!
I have Radeon HD 2600 Pro AGP card. I get error Code:
Card not support glDeleteFencesNV May be plugin support only Nvidia cards? Please advice. yup. |
25th January 2009, 18:04 | #12 | Link |
Registered User
Join Date: Feb 2003
Location: Russia, Moscow
Posts: 854
|
Fortunately MSU denoising work
http://compression.ru/video/denoising/index_en.html If use manual preset, exist low, medium and high bilateral. colorspace RGB24. Work realtime even on my card. Competing war between ATI and NVidia not very good for user. yup. |
3rd February 2009, 12:23 | #13 | Link | ||||
Registered User
Join Date: Mar 2008
Posts: 13
|
Quote:
Quote:
Quote:
Quote:
Ps. Right now I working on other project. If I have free time again I will try to solve this matter. Pps. Hope, reader know by now that my filter not support ATI card yet * Ppps. I never found my Geforce 8200 mGPU specification that 21.6 figure i take it from Geforce 8300 pci-e card. Sincery yours, s.virojanadara Last edited by s.virojanadara; 3rd February 2009 at 12:24. Reason: Add quote tag |
||||
3rd February 2009, 18:42 | #14 | Link | |
ffdshow/AviSynth wrangler
Join Date: Feb 2003
Location: Austria
Posts: 2,441
|
Quote:
np: The Matthew Herbert Big Band - The Yesness (There's Me And There's You)
__________________
now playing: [artist] - [track] ([album]) |
|
4th February 2009, 09:23 | #15 | Link | |
Registered User
Join Date: Mar 2008
Posts: 13
|
Quote:
After i carefully read the OpenGL 2.0 specification . It's seems there is no "Fence" equivalent instruction. Only synchronization OpenGL 2.0 Core specification provided is Finish command (Correct me if I am wrong. Thanks in advanced). Even worse there is no fence extension (or equivalent) from ATI in OpenGLŪ Extension Registry. (hmm, I wonder how do they synchronize CPU with ATI's card) Thus, my solution for next version is. Detected weather the card support NV_fence or not if not ignore "wait for GPU routine". That's mean implicit GL_finish when read pixel back to memory will block the CPU time . (And also replace all NV_ extension from my program if possible ) Sincery yours, S.virojanadara Last edited by s.virojanadara; 4th February 2009 at 09:51. Reason: Correct typo |
|
4th February 2009, 21:13 | #16 | Link | |
Registered User
Join Date: Mar 2002
Posts: 1,075
|
Quote:
Last edited by MfA; 4th February 2009 at 21:15. |
|
5th February 2009, 05:00 | #17 | Link | |
Registered User
Join Date: Mar 2008
Posts: 13
|
Quote:
However, as reader may already know ATI card do not have mean to query the GPU "busy or not" status in OpenGL (Please, correct me here. I really want to be wrong here ). Thus, my next version (will be release soon, right now at the final test stage) will hopefully support ATI card (If someone who have ATI card like to test it for me. I would really appreciate). Nevertheless, the CPU utilization on PC with ATI card will be relatively higher than NVIDIA card due to the reason I mentioned above. Sincery yours, S.virojanadara Last edited by s.virojanadara; 5th February 2009 at 05:09. Reason: Correct some typo again :p |
|
5th February 2009, 13:21 | #18 | Link |
Registered User
Join Date: Mar 2002
Posts: 1,075
|
That's implementation dependent, I doubt many drivers use a polling loop to implement glfinish though ... what almost certainly happens is that glfinish internally uses a blocking call (the win32 WaitForSingleObject call for instance) which suspends the process until the driver signals based on a hardware interrupt.
|
7th February 2009, 05:27 | #19 | Link |
Registered User
Join Date: Mar 2008
Posts: 13
|
Alright, I just release gpubilateral filter version 1.2a. Now support windows Vista. Hopefully, it will support ATI GPUs. Try it at http://gpubilateral.sourceforge.net/.
Any feedback would be appreciated. Last edited by s.virojanadara; 7th February 2009 at 05:30. Reason: Forgetful me |
7th February 2009, 11:54 | #20 | Link |
Registered User
Join Date: Nov 2008
Posts: 64
|
hi, it works fine for me with Avisynth (AvsP) in RGB32 colorspace but i get this error with YV12 colorspace:
Code:
Traceback (most recent call last): File "AvsP.pyo", line 5819, in OnMenuVideoToggle File "AvsP.pyo", line 8925, in ShowVideoFrame File "AvsP.pyo", line 9467, in PaintAVIFrame File "pyavs.pyo", line 322, in DrawFrame File "pyavs.pyo", line 301, in _GetFrame File "avisynth.pyo", line 277, in GetFrame WindowsError: exception: access violation reading 0xFFFFFFFF Traceback (most recent call last): File "AvsP.pyo", line 7123, in OnPaintVideoWindow File "AvsP.pyo", line 9467, in PaintAVIFrame File "pyavs.pyo", line 322, in DrawFrame File "pyavs.pyo", line 301, in _GetFrame File "avisynth.pyo", line 277, in GetFrame WindowsError: exception: access violation reading 0xFFFFFFFF Last edited by vucloutr; 7th February 2009 at 11:59. |
Thread Tools | Search this Thread |
Display Modes | |
|
|