Re: Differential intra-interchannel filters for RGB images lossless compression




"Phil Carmody" <thefatphil_demunged@xxxxxxxxxxx> wrote in message
news:87fyoxe6uu.fsf@xxxxxxxxxxxxxxxxxxxxxxx
> "cr88192" <cr88192@xxxxxxxxxxxxxxxxxx> writes:
>> <giorgio.tani@xxxxxxxx> wrote in message
>> news:1134403255.069170.129500@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>> >> computer generated, as in, output from a (modern) 3d renderer. I doubt
>> >> it.
>> >> in my experience the composition of these kinds of images is much
>> >> closer
>> >> to
>> >> that of realistic images.
>> > I definitely agree, when I was saying than PNG is more efficient than
>> > lossless JPEG based compression on computer generated images I was
>> > thinking to non photorealistic graphic, such as drawings, schemes and
>> > graph, geometrical shapes, fonts and so on.
>> > However IMHO many photographic images are even slightly more difficult
>> > to compress than today's photorealistic images due to the noise
>> > introduced by the CCD (or by the noise from CCD plus the phisical
>> > support's irregularities in scans) but I don't know if it makes a
>> > thrurly relevant difference.
>> >
>> maybe that and, maybe, that things in reality tend to follow curves
>> (parabolas, ...) wheras, things that are cg tend to follow linear
>> patterns?
>
> Step functions (or 'hard edges').
>
this would seem more true of graphical images, I think I was still talking
about the output of (hardware) 3d renderers (which attempt, to varying
degrees, to look like reality).


one gets used to a certain "look" that hw rendering has, that at least in my
experience almost universally gives it away. surfaces almost never look
quite right, even something simple that should look real, is not. gradiants
don't look right, lighting doesn't look right, surfaces are almost always
too shiny or too dull, ...

movie rendering is often a little better, but still stands out pretty well
if one gets a good look at it (and object is easily visible for a few
seconds, ...).

one suspicion I have is that this is at least partly related to
interpolation. all visible surfaces have (in my experience) a perceptible
amount of entropy, and this entropy compresses or expands based on distance.
interpolation seems to destroy this, replacing it with an almost gridlike
pattern of color transitions. being further away at least looks better,
though this depends on how rendering is being done. current antialiasing and
anistropic just aren't good enough to look convincing imo.

movie rendering still isn't convincing, it is better than what one can get
from a computer, but cg still stands out in a way I could compare to a
cartoon vase sitting on a table.

it does what it does I guess, no real point in complaining.

I sometimes watch movies and feel tempted to point out approximately what
kind of rendering it looks like, but no one cares. it looks to me like
anymore movies are increasingly using desktop 3d hardware for movie
rendering. oh well...

then again, to me it looks like my life is being watched on vhs. slightly
grainy with fine noise on everything I see. then again, there is the ever
pulsing of a crt and the dim bar that almost escapes notice (most of the
time), the regular ever-flickering of flourescents, that no lights ever seem
to give "white" light (reality is ever tinted some color or another), the
purple fuzz of halogen lights, ...

endless things that cg, or even regular tv, will never really capture (that
seem as if most people never notice). they seem real enough to me...

then again, maybe everyone sees all this and no one cares?...


....

though it is unlikely that these factors have all that much effect on
compression, it seems concievable to me that they could. the lighting on a
cg'd surface would follow a linear gradiant, but this is unlikely in reality
(where I would guess that nearly everything is curves).


> Someone did mention the introduction of hard-edge detection to JPEG2000,
> but I don't know if it ever got implemented. Basically, if there was a
> single hard edge passing through an 8x8 block, it could be identified in
> about 5 bits (something like 12 bits, but they were low entropy bits)
> bits, and save possibly several dozen bits of DCT coefficients, as the
> hard edge spewed low, medium and high frequency signals all over the
> block.
>
> Anyone else encounter that? Back in about 1996, IIRC.
>
dunno...

my prediction right now is that, if the filter (in this case, not-dct) is
smart enough, it should be able to actually avoid being thrown off too badly
by edges (and still preserve good edge detail w/o special handling).

not, it is not likely that this would be drastically better than existing
stuff in-general, but maybe marginally.

consider how png behaves near edges. it hits the edge, and either the
prediction is off, or one of the corners of the paeth filter is pushed up or
down, resulting in an inaccurate prediction. a hard edge of a single pixel
in the input may become several pixels wide in the output.

a human, looking at a small (but larger than 2x2) grid of pixels with one
missing, would likely be able to fairly accurately predict the pixel. rarely
will the edges just "show up" (there is a range of angles where this is
possible measuring about 90 degrees) otherwise, the edge is likely to show
up at least partly within the square of pixels. a human will see the edge,
and be able to make a pretty good guess as to about what brightness of the
the pixel will be.

I assert that the human ability to predict the pixel is not totally
arbitrary, nor is it based on common knowlege in this case, I assert that it
is likely something that can likely be done mathematically (possibly via the
analogy of a deforming surface).

I can imagine the surface, though I am less certain about the math.


my guess is the results could be interesting, and (maybe) give a reasonable
alternative to both dct and wavelets, that can possibly be quantized harshly
without loosing as much edge detail (vs. dct and friends, that I assert are
not as good for this).


I could verify, but I don't think anyone would care anyways, and I have
things that I should be doing instead.

I can't say for certain if I am thinking of anything that even could be
interesting, or that this haven't been done before.

but, oh well...


> Phil
>
>
>
>
> --
> What is it: is man only a blunder of God, or God only a blunder of man?
> -- Friedrich Nietzsche (1844-1900), The Twilight of the Gods


.