Live data from Hacker News

Silly Image Compression Idea

snufk.in

51–59 of 59 posts

Re: Silly Image Compression Idea

#51
post #49
post #34

I do wonder if all the new AI-based "upscaling" algorithms, which can fill in detail to make an image larger, can be used to produce a compression-decompression algorithm: Perform a heavily lossy compression, then "upscale" the result and see if it returns to a good-enough match. If so, compress even further, until your upscaling no longer gives you a good-enough match. Like regular JPG encoding, this can be set to a…

This has been tried in research and works, with typical artefacts such as horses getting zebra-stripes if they stand in tall grass (or something like that ...)

That sounds very similar to Dürer's Rhinoceros. Or in general, learned people trying to draw from even detailed descriptions.

https://en.wikipedia.org/wiki/D%C3%BCrer%27s_Rhinoceros

> Dürer's Rhinoceros is the name commonly given to a woodcut executed by German painter and printmaker Albrecht Dürer in 1515.[1] The image is based on a written description and brief sketch by an unknown artist of an Indian rhinoceros that had arrived in Lisbon in 1515.[2] Dürer never saw the actual rhinoceros, which was the first living example seen in Europe since Roman times.

Re: Silly Image Compression Idea

#52
post #7

Earlier quoted context omitted.

I've seen worse; someone presented code for decompression of a fictional data format with no plan in sight for compression. When I asked how the compression part would be implemented, the author called me stupid for asking this question and told me the project was inspired by https://en.wikipedia.org/wiki/Sloot_Digital_Coding_System

Reminds me when I as a 14 year old, barely two years after I started learning programming and having just learned about cyclic redundancy check (CRC), wondered why they couldn't be used for compression. Take a block of say 16 bytes, calculate the CRC code and store that. To decompress you then just had to find the string of bytes that generated a matching CRC code. It seemed so brilliant, but something told me it was…

You are joking, but something a bit like this can actually work with some extra assumptions.

Have a look at compressed sensing!

Re: Silly Image Compression Idea

#54
post #34

I do wonder if all the new AI-based "upscaling" algorithms, which can fill in detail to make an image larger, can be used to produce a compression-decompression algorithm: Perform a heavily lossy compression, then "upscale" the result and see if it returns to a good-enough match. If so, compress even further, until your upscaling no longer gives you a good-enough match. Like regular JPG encoding, this can be set to a…

This works, and there's also a fun variant where you then losslessly compress the residual between ground truth and the up-sampled image. Since most of the information was encoded in the NN and already exists at both ends, the data requirements in between are modest.

Re: Silly Image Compression Idea

#55
post #15

This reminded me of a weird idea that I had several years ago (which is kind of opposite of this): What if there was a format that doesn't encode pixels but generates a "description" of the images using AI, of simple shapes to higher-level objects, and saves that in its own format, with a "decoder" that takes this input description format and constructs an image similar to the original, at least to some extent. Of co…

It's called SVG :)

Not really. But vectorized shapes might definitely help rasterizing the descriptions.

Re: Silly Image Compression Idea

#56
post #10

This reminded me of a weird idea that I had several years ago (which is kind of opposite of this): What if there was a format that doesn't encode pixels but generates a "description" of the images using AI, of simple shapes to higher-level objects, and saves that in its own format, with a "decoder" that takes this input description format and constructs an image similar to the original, at least to some extent. Of co…

sounds like vector graphics?

Nope. But vector graphics can be of great utility when rasterizing the description into a bitmap.

Re: Silly Image Compression Idea

#57
post #50
post #47

> What would image compression look like if designed around other things perceptions? For computers, the question is meaningless because they only interact with our outside reality in the form of a "Chinese room" translation task. There's nothing inherently salient about image data to a computer, because the "ground floor" reality of computers is instructions for moving electrical charges around on some chips. But, g…

> But, given computers with built in cameras and having some use for discerning its reality of objects in 3d space, subject to Newtonian physics, and projected down to a 2d CCD array, the ideal compression would be subject to the same pressures as influenced the evolution of the human eyes and brain. Thus it should be similar. You have a good point! Though I wouldn't say the 'same' pressures. We can actually identify…

I'll take it one step further. The arrangement of rods and cones in the eye are optimized precisely around the task of capturing the salient details of a projected image. The distribution has an exponential form radiating from the center precisely because the brain is working in log polar coordinates (or similar). CCD arrays are stuck with the naive 2d grid arrangement.

https://www.math.utah.edu/~bresslof/publications/01-3.pdf

Re: Silly Image Compression Idea

#59
post #57
post #50

Earlier quoted context omitted.

> But, given computers with built in cameras and having some use for discerning its reality of objects in 3d space, subject to Newtonian physics, and projected down to a 2d CCD array, the ideal compression would be subject to the same pressures as influenced the evolution of the human eyes and brain. Thus it should be similar. You have a good point! Though I wouldn't say the 'same' pressures. We can actually identify…

I'll take it one step further. The arrangement of rods and cones in the eye are optimized precisely around the task of capturing the salient details of a projected image. The distribution has an exponential form radiating from the center precisely because the brain is working in log polar coordinates (or similar). CCD arrays are stuck with the naive 2d grid arrangement. https://www.math.utah.edu/~bresslof/publication…

Interesting!

Though: I can believe that our arrangement is a local optimum, sure. (Local in some genetic sense.)

That still doesn't make me believe that are anywhere close to a global optimum. Behold the octopus:

> Do these design problems [of optical blind spots] exist because it is impossible to construct an eye that is wired properly, so that the light-sensitive cells face the incoming image? Not at all. Many organisms have eyes in which the neural wiring is neatly tucked away behind the photoreceptor layer. The squid and the octopus, for example, have a lens-and-retina eye quite similar to our own, but their eyes are wired right-side out, with no light-scattering nerve cells or blood vessels in front of the photoreceptors, and no blind spot.

From https://www.pbs.org/wgbh/evolution/change/grand/page05.html

Post reply on HN