[XviD-devel] 3 warp point GME

Christoph Lampert chl at math.uni-bonn.de
Mon Jun 30 14:11:24 CEST 2003


On Mon, 30 Jun 2003, Michael Militzer wrote:

> Hi,
> 
> I don't want to critize your work (but rather the whole MPEG-4 GMC
> approach ;-)) but isn't a PSNR increase of about 0.15 dB rather weak?
> Especially considering that your test clip was tempete which is a constant
> 'zoom-out' scene. For more generic clips, the gain from GMC will
> supposedly be much smaller (while the speed drop is pretty major).

Yes, I never said that GMC is a "great" feature. I just wanted to 
add it for completeness. ;-) 
But I do think there is some potential left. Current I just added the
feature without optmization. Neither for speed, nor for quality, because I
wanted to have a working base before fiddling with ME. 
A final version would at least be twice the speed of current, not be
called for every frame, but only when "needed", and GME and ME would work
together, so vector length optimization and SKIP decision
etc. "know" about global motion. This is all to be done, once GME is
"bugfree". 

> I have not really a deeper understanding of GME/GMC, so correct me if I'm
> wrong but the benefits from GMC are basically limited to reducing motion
> vector bits (ok, a good GME could also help to improve the normal block
> ME but that's just a nice side-effect). So GMC should be more successful
> for very low bitrates while its benefits are small/minor for high-bitrate
> conditions, right?

I'd rather say benefits of 3 warppoint GMC are not to reduce vector bits,
because typical motion described by GMC is characterized by small changes
between MBs, and median prediction already works well for that. 
You may safe a very few bits, but on the other hand in some cases you also
have to spend extra vector bits because the vector of "SKIP" blocks 
varies over the scene, and also you need one extra bit for every MB to
decide whether global or local motion should be used. 

The main advantage as I see it would be to better describe parts which
cannot be restored by block motion compensation, although they
_could_ perfectly be described by higher order models of motion: zooms and
shears. Since shears are rare in natural video, it's mostly zooms. 
Translational GMC (1 warp point like DivX5) has no possitive effect at
all, block motion is enough for that. 

I'd assume that at low bitrates, the background becomes too blocky to 
really catch a zoom. It might be better to SKIP the block and code the
residue instead of zooming all blocks a little and then have to cope with
all the slightly displaced block edges. 
I rather think that at higher bitrates the gain should be higher, because 
the background is closer to the original then and also, there are more
bits which can be saved by better description of the motion. Also, the 1
bit per MB penalty is a fixed cost, which doesn't matter for high bitrates
anymore, but for lower it really does. 

Christoph



> Quoting Christoph Lampert <chl at math.uni-bonn.de>:
> 
> > 
> > Hi,
> > 
> > I'll commit 3 warp point GME now. It tried to change as little as
> > possible, so if there's a bug it's easy to go back. 
> > 
> > GME is functional (I hope) and I had good results for zooming scenes. 
> > It's not optimized for speed, yet. Just a simple gradient decent, but in 
> > 6 dimensional parameter space instead of 2 dimensioanl image space, so
> > it's a little slow...
> > 
> > Please test with and without GME, since I had to change some other parts
> > as well. I hope I didn't break anything...
> > 
> > gruel
> > 
> > P.S. Oh, there are two new files: motion/gmc.c and motion/gmc.h
> > I guess someone has to add them to windows project files. 
> > 
> > -------------------------------------------------
> > 
> > Tempete CIF 512kbps twopass with different quality levels:
> > 
> > GMC with 3 point GME:
> > fps = 38.92, length = 2497, psnr y = 28.99, u = 33.41, v = 35.63
> > fps = 37.12, length = 2502, psnr y = 29.00, u = 33.53, v = 35.79
> > fps = 33.12, length = 2480, psnr y = 29.22, u = 33.57, v = 35.85
> > fps = 29.90, length = 2478, psnr y = 29.25, u = 33.60, v = 35.87
> > 
> > no GMC:
> > fps = 99.16, length = 2487, psnr y = 28.83, u = 33.11, v = 35.31
> > fps = 88.78, length = 2493, psnr y = 28.83, u = 33.22, v = 35.47
> > fps = 71.03, length = 2478, psnr y = 29.04, u = 33.31, v = 35.60
> > fps = 57.98, length = 2476, psnr y = 29.11, u = 33.35, v = 35.60
> > 
> > 
> > _______________________________________________
> > XviD-devel mailing list
> > XviD-devel at xvid.org
> > http://list.xvid.org/mailman/listinfo/xvid-devel
> > 
> 
> 
> 
> _______________________________________________
> XviD-devel mailing list
> XviD-devel at xvid.org
> http://list.xvid.org/mailman/listinfo/xvid-devel
> 
> 



More information about the XviD-devel mailing list