|
|
| sets |
| Posted: Oct 1 2014, 04:27 PM |
 |
|
Newbie

Group: Members
Posts: 2
Member No.: 38300
Joined: 1-October 14

|
Hi everyone, I'd like to present my VirtualDub video stabilization filter - Stabbo. I've started its development in some commercial project but because of some weird reasons it was left unclaimed. After resignation I've decided to redevelop it as my own enthusiastic project.
Here are processing examples: http://youtu.be/O6FlP0XIi_M http://youtu.be/bDXoyTXhMvk NB. Source videos can be found in examples descriptions.
Download link: http://sourceforge.net/projects/stabbo/
Pros: - Real-time. Single pass processing. - Fast. On my home Intel i5 it processes HD video in real-time. - Wide search. Good results on extreme video (GoPro like).
Cons: - Delay. Adds some delay (usually 6 frames) to the video stream. - 32bit only. I've build it on Visual Studio Express.
I hope it will be useful.
P.S. I'm going to improve this project so I'm looking forward for your ideas. |
 |
| dloneranger |
| Posted: Oct 1 2014, 07:50 PM |
 |
|
Moderator
  
Group: Moderators
Posts: 2366
Member No.: 22158
Joined: 26-September 07

|
Very interesting - there's not a lot of choice at the moment it's Deshaker or nothing
Re the 6 frame lag That suggests the project was started before virtualdub could do prefetching of any/many frames. You should be able to modify it to process the current frame + however many frames ahead you need to get rid of the lag? Virtualdub's IVTC filter has uses prefetching, so the source for an example is easy to find if you were interested
Suggestion You might want to support the YUV modes as well as just RGB I'd guess there's also a good chance you would only need to process the Y plane and that should be quicker as well
Also Are those girls in clip2 CRAZY????? I'd want full body armour doing that
-------------------- MultiAdjust JoinWav WavNormalize FFMPeg Input Plugin v1827 UnSharpMask Windows7/8 Codec Chooser All FccHandlers Stuff inc. Installers for acm codecs AAC, AC3, LameMp3 |
 |
| ALbino |
| Posted: Oct 1 2014, 09:09 PM |
 |
|
Advanced Member
  
Group: Members
Posts: 101
Member No.: 26983
Joined: 9-February 10

|
Looks really good. Just out of curiosity, why is the audio sped up in the processed versions? |
 |
| raffriff42 |
| Posted: Oct 2 2014, 02:41 AM |
 |
|

Advanced Member
  
Group: Members
Posts: 384
Member No.: 35081
Joined: 25-June 12

|
Agreed, REALLY good. The sped-up audio is probably a muxing error. What software did you use to prepare this video for upload? (say it wasn't VirtualDub!)
EDIT Looking at the original source now... it seems to be shot with a nice camera (one without a rolling shutter problem) Are you, or are you planning to, fix rolling shutter artifacts?
This post has been edited by raffriff42 on Oct 2 2014, 02:45 AM |
 |
| sets |
| Posted: Oct 2 2014, 09:13 AM |
 |
|
Newbie

Group: Members
Posts: 2
Member No.: 38300
Joined: 1-October 14

|
Hi, it is necessary to make some explanations: Aim of this project is to develop useful processing module that makes video stabilization. Therefore it takes uncompressed input video frame and returns output video frame. When I was working at commercial project library were integrated in some proprietary video player. After resignation I was looking for some alternative player which will feed my library with uncompressed frames of video stream. OpenCV was chosen as decoder/encoder/presenter. After redevelopment and some successful results I've decided to integrate this library into some some video processing software. VirtualDub was chosen as popular free software. I'm not so good in VirtualDub interfaces and I'm going to integrate this library in other video processing programs such as AviSynth or Adobe Premiere. This is the reason of RGB input source and my unfamiliarity with VirtualDub pipeline. If necessary library makes all transforms and accumulation by itself. If there will be some time maybe I'll make some VirtualDub player-dependent version of library.
| QUOTE | Suggestion You might want to support the YUV modes as well as just RGB I'd guess there's also a good chance you would only need to process the Y plane and that should be quicker as well |
Of course processing module works with luma plane but all transforms are applied by the filter itself.
| QUOTE | | The sped-up audio is probably a muxing error. What software did you use to prepare this video for upload? (say it wasn't VirtualDub!) |
My bad. During library development I've never listened to the sound of the video. And I didn't done it for the video examples. It seems that my low experience in work with VirtualDub had the impact. I've compressed this video with Xvid encoder. Maybe I was wrong in some setting.
| QUOTE | | it seems to be shot with a nice camera (one without a rolling shutter problem) Are you, or are you planning to, fix rolling shutter artifacts? |
Yes. Library can correct rolling shutter distortion. But you have to choose distortion parameter by yourself. I have some ideas about estimation of this parameter. Maybe it will be automatic in further versions. Aspen video example was shot with rolling shutter distortion. Test it with and without correction and you will see the difference. By the way. Send me links to the videos which show some issues in processing. It will improve my test library. |
 |
| shekh |
| Posted: Nov 21 2014, 11:05 AM |
 |
|
Advanced Member
  
Group: Members
Posts: 89
Member No.: 37903
Joined: 21-April 14

|
Hi,
What do you mean by "Wide search. Good results on extreme video (GoPro like)"? Can you name few stabilizers you compete with, what is different other than processing speed? It is interesting you mention action video. Do you apply any kind of perspective transform? Since deshaker for example does plain 2d transform which is not visually correct for any wide angle shot.
Do you plan to publish source code? |
 |