[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

OpenDivX digest, Vol 1 #61 - 1 msg



Send OpenDivX mailing list submissions to
	[email protected]

To subscribe or unsubscribe via the World Wide Web, visit
	http://lists.projectmayo.com/mailman/listinfo/opendivx
or, via email, send a message with subject or body 'help' to
	[email protected]

You can reach the person managing the list at
	[email protected]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of OpenDivX digest..."


Today's Topics:

   1. How does it Work ;-) (Tobias Gogolin)

--__--__--

Message: 1
From: "Tobias Gogolin" <[email protected]>
To: <[email protected]>
Date: Mon, 23 Apr 2001 21:22:58 -0700
Subject: [OpenDivX] How does it Work ;-)

Hi all - I just subbed to this list cause I love the topic
However I am not sure I'll be able to help with the code...

What is it that best defines the Open-DivX aproach ?
I suspect its highly mathematical

I myself am reserching in Parallel Object Oriented Computing
And I admire the feat to write an algorythm for coding 2(+time = 3) dimensional
object projections and their most efficient compression (in realtime)
on only one CPU ! (if it helps I hope in 10 years we have (virtual) 3Dimensional Processing Arrays (with tightly integrated
localized cache) and will map algorythms on these flexibly configurable Data Flow Spaces)

I did see there is not much noise on this list - So it is wishful thinking to get an answer
so keep it pure just send me your best bookmarks (additional to the ones I quoted below)

cheers

Tobias

p.s.:
OH best if you focus on the Links that speak in in regular words and not just acronyms
for I am just a regular dreamer =)


Quoting: [Opendivx] wavelets
Carlo Daffara [email protected]
Thu, 1 Feb 2001 17:14:49 +0100 (MET)

Previous message: [Opendivx] wavelets
Next message: [Opendivx] linux mmx decore...
Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

--------------------------------------------------------------------------------

No joking. The problem is that the work is not easy :-)
For example, there are many postprocessing filters, but only a few can be
implemented in realtime (all the POCS-projection onto convex sets, for
example; regularization- based filters, or the wonderful coding-recoding
dct filter are not realtime)
There is a lot of work on better dct coding;
for example:
- an algorithm that builds directly a postprocessed idct:
http://citeseer.nj.nec.com/details/wu98additive.html (very good artiocle
by the wonderful Gersho)
- enhanced dct coding, spreading error:
http://sipi.usc.edu/~ortega/Thesis.html
http://www-ise.Stanford.EDU/class/ee392c/demos/kesavan/
http://www-ise.Stanford.EDU/class/ee392c/demos/anna_alvin_gomata/
- pocs postprocess:
http://www.en.polyu.edu.hk/~enyhchan/c_98csvt.ps
http://www-ise.Stanford.EDU/class/ee392c/demos/galo/
http://www.en.polyu.edu.hk/~enyhchan/c_97spl.ps

Motion estimation:
http://www.eurasip.org/eusipco96/abstract/all.htm#me_9
it is easy to see why motion estimation is important; if you get
"near perfect" matches you end up with a differential image with very high
frequency content and difficult to dct encode. Since P and B (predicted)
images are the majority, it is important to code efficiently those. In my
experiments, I discovered that it's better to start with a very high
quality I frame, and adapt the motion estimation algorithm of the encoder
depending on the image content (also see:
http://www.research.ibm.com/journal/rd/434/gonzales.html)

Preprocessing:
anisotropic diffusion is the most common method:
http://vision.ece.ucdavis.edu/ftp/cipic/reports/92/02/demo/node3.html
also:
http://vision.ece.ucdavis.edu/scripts/reportPage?95-04
There is not much research on using motion to do preprocessing (apart some
expert that says that's not good, but that applys only to best match
motion estimation). You need to use a robust optical flow estimator, and
use the motion vectors from the optical field to do directional smooting
using anisotropic diffusion.

Iterative encoding: let's say that you have all the time you want to do
the encoding. You do:
1- estimate scene changes
2- extract subscenes between changes
3- encode them with different encoding parameters, choosing the result
with the lowest total error.
(this is done by some high end compression bureaus, I know that one of
them are using a Maspar MPP parallel machine)
As you see, it's a lot of work. But if you use all of them you can get
around 50% (I think something more, thanks to the sinergy between
preprocessing and motion estimation).
ciao
      Carlo Daffara

On Thu, 1 Feb 2001, John Funnell wrote:

> Carlo, thanks for your enlightening post:
> one thing... your percentages, when multiplied come to around 54% (I assume
> you're meaning bitrates).  So, equivalent quality in half the size?  This
> would incredible if we could do this :-)
>






--__--__--

_______________________________________________
OpenDivX mailing list
[email protected]
http://lists.projectmayo.com/mailman/listinfo/opendivx


End of OpenDivX Digest


Reply To Poster

Local References / HOW-TO / FAQs