News for hackers. Stuff that matters.
Re:Knusperli: A deblocking JPEG decoder by nneonneo on Sunday March 18, 2018 @10:26PM (#16615817)
Ah, this is a great idea, and I can see how this could be extended beyond simple deblocking.

In essence, it computes the uncertainty from the JPEG quantization step (the source of most of JPEG’s compression) and uses that information to select a decoding that minimizes a particular error metric (here, discontinuities at block boundaries).

But it’s not limited to just that, in principle. It could optimize towards any decoded block within the quantization range given a suitable prior - and I imagine that this could be paired with e.g. a DNN to faithfully reconstruct an image from a JPEG with much better accuracy.

Re:Knusperli: A deblocking JPEG decoder by psandersen on Monday March 19, 2018 @01:12AM (#16616296)
Additionally, I'd love to see a decoder add noise proportional to the uncertainty and surrounding structure as over smoothed images look unnatural as well. See activity masking demo https://people.xiph.org/~jm/daala/pvq_demo/
Re:Knusperli: A deblocking JPEG decoder by Ruud-v-A on Monday March 19, 2018 @08:31AM (#16617848)
Pik can synthesize noise. https://github.com/google/pik
Re:Knusperli: A deblocking JPEG decoder by blt on Sunday March 18, 2018 @10:56PM (#16615946)
yeah, the deblocked image looks a little softer. Makes sense, the optimization objective encourages it. Sometimes the block boundary aligns with an image boundary. Agree that incorporating a DNN could be a cool solution.
Re:Knusperli: A deblocking JPEG decoder by lokopodium on Sunday March 18, 2018 @10:46PM (#16615911)
The same should be applicable to MP3s. Also, the continuity measure could include derivatives as well.
Re:Knusperli: A deblocking JPEG decoder by disposablename on Monday March 19, 2018 @11:28AM (#16619120)
DNNs are not magic, and not everything needs them, especially a fucking JPEG decoder, come on.
Re:Knusperli: A deblocking JPEG decoder by sitkack on Monday March 19, 2018 @12:34AM (#16616208)
Could a DNN be thought of a continuous decompression dictionary?