[FFmpeg-devel] [GSoC] Motion Interpolation

Davinder Singh ds.mudhar at gmail.com
Mon Jul 25 07:05:54 EEST 2016


https://github.com/dsmudhar/FFmpeg/commits/dev

The Paper 2 algorithm is complete. It seems good. If I compare Paper 2
(which uses bilateral motion estimation) v/s motion vectors exported by
mEstimate filter:

$ tiny_psnr 60_source_2.yuv 60_mest-esa+obmc.yuv
stddev:    1.43 PSNR: 45.02 MAXDIFF:  174 bytes:476928000/474163200

$ tiny_psnr 60_source_2.yuv 60_paper2_aobmc+cls.yuv
stddev:    1.25 PSNR: 46.18 MAXDIFF:  187 bytes:476928000/474163200

Frame comparison: http://www.mediafire.com/?qe7sc4o0s4hgug5

Compared to simple OBMC which over-smooth edges, Objects clustering and
Adaptive OBMC makes the edges crisp but also introduce blocking artifacts
where MVs are bad (with default search window = 7). But I think it’s ESA’s
fault. The paper doesn’t specify which motion estimation method they used;
I have been using ESA. I think quality can be further improved with EPZS,
which I'm going to implement.

I also tried to tweak VS-BMC (Variable size block motion compensation)
which reduced the blocking artifacts in VS-BMC area. Had to do experiments
a lot, more to be done.

mEstimate filter (ESA) + Simple OBMC:
http://www.mediafire.com/?3b8j1zj1lsuw979
Paper 2 (full): http://www.mediafire.com/?npbw1iv6tmxwvyu


Regards,
DSM_


More information about the ffmpeg-devel mailing list