# Tag Info

12

The lossy JPEG compression does not merely remove small coefficients in higher frequencies. It encodes them with a precision relative to a (relatively crude) visual perception model; most notably, horizontal and vertical frequencies are not quantized with the same precision. And as in many compression formats, it essentially assumes that the data is locally ...

9

Actually, it's kind of the other way around. If you reuse the same JPEG encoder at the same quality level (without any smoothing steps as built-in prepcosessing) and a decoder which faithfully decompresses the images, I expect the image quality not to degrade from generation to generation. This is because quantization (the lossy part) is done the same way ...

9

You can also think of delta encoding as linear predictive coding (LPC) where only the prediction residual ($x[n]-\hat{x}[n]$ in @robertbristow-johnson's notation) is stored and the predictor of the current sample is the previous sample. This is a fixed linear predictor (not with arbitrary coefficients optimized to data) that can exactly predict constant ...

9

To illustrate Justme's answer: Discrete Cosine Transform (DCT) is a lossy The DCT can't be a lossy algorithm, since there's an inverse operation that restores the original input exactly. data compression algorithm Also, it's not a compression algorithm: in- and output have the same size. So, both your central statements are wrong :( that is used in many ...

8

I don't think that repeated jpg compression reduces to a single flat color. I tried compressing-decompressing an image 3 times. (Using GIMP 2.8.2, at quality level "10%" with progressive, exif, thumbnail and xmp all turned off, 4:2:2 vertical subsampling and integer DCT.) All three images are identical (Linux cmp turns up no differences at all between the ...

6

Complex signals are a special case of multidimensonal signals (where the dimension is two). A lossy approach tackling compression of multidimensional signals is vector quantization. A very good resource is the book: "Vector Quantization and Signal Compression", co-authored by Robert M. Gray. Vector Qquantization is a classic lossy source coding technique ...

6

That's used a lot. See for example https://en.wikipedia.org/wiki/Delta_encoding, https://en.wikipedia.org/wiki/Run-length_encoding. "Looking Smooth" typically means "not a lot of high frequency content". The easiest way to take advantage of this, is to figure out what the highest frequency really need then low-pass filter and choose an lower sample rate. ...

6

Another notion you might wanna look into for lossless compression of a bandlimited signal (it's this bandlimiting that gets you this "smoother ... signal, ...closer ... to the baseline") is Linear Predictive Coding. I think this is historically correct that LPC was first used as a variant of Delta coding where the LPC algorithm predicts $\hat{x}[n]$ from ...

5

JPEG projects $8\times 8$ blocks of images onto $64$ 2D cosine patterns: The one in column $1$ and row $5$, once quantized, may look like your hamburger. Luminance and chroma components may get different subsampling patterns. I suspect that the low varying background is nearly horizontal, and due to the different processing steps, it ends up with a mid-...

5

+1 on very interesting and insightful experiment. Some thoughts: It's not true that filtered signal has less information. It depends on your input signal, filter type, and cut-off frequency. When you high-pass the noisy signal, you're removing the slowly changing components. That makes your signal composed of 'more frequently changing random numbers', ...

5

As you correctly noted compressed sensing, compressive sampling, sparse sampling all mean the same thing. Some authors also call it sparse sensing. The idea behind compressed sensing is that a sparse signal can be recovered from very few linear measurements. In symbols, if $\mathbf x$ is $N\times 1$ sparse$^\ddagger$ vector, and $\mathbf A$ is an $M\times N$ ...

5

A couple of reference works offer an exaplanation: A neurological interpretation described in Scholarpedia Stanford's Unsupervised Feature Learning and Deep Learning tutorial If we look at the definition of the term in the context of dictionary learning, for example in K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation, ...

5

No, because DCT is not a compression algorithm itself. But different lossy compression algorithms do use DCT as part of the process. DCT can be used to transform data such as audio or image data into frequency domain, and then by analysing the frequency domain data it can be determined how much detail can be described more coarsely or completely omitted, and ...

4

Yes, the cellular phones use various forms of compression to convert the captured analog audio (speech) into the digital bitstream for transmission through 2G/3G/.../. The specific method used depends on the GSM version which might dictate its own bandwidth constraint and backward or forward compatibility issues into the audio encoding stage. Most ...

3

If you compute a $8\times 8$ 2D-DCT, and keep the top left corner only, you are keeping a quantity that is proportional to the average of each $8\times 8$ block. This is the DC component, similar to the $0$ frequency in a Fourier transform. This works like a JPEG coding with a quantization table looking like: \displaystyle \left( \begin{array}{cccc} 1 &...

3

Mostly yes, but it depends on the context. Let us elaborate. DCT-II is one of the many forms of Discrete Cosine Transforms, and probably the most widely used one, as it is (somehow) present in JPEG or MP3 formats. "Lossy" often refer to the compression standard which uses it, because the main loss results from quantization (and generally not the transform ...

3

JPEG is far simpler. It divides the image into 8x8 pixel blocks, and processes each using a Discrete Cosine Transform. The results are quantised and then encoded. The quality is fixed by the encoder. JPEG2000 uses a 2D wavelet function, the output of which is four "images", each a quarter the size of the original. One of those is actually an image, ...

3

My survey paper on compression, "A Survey Of Architectural Approaches for Data Compression in Cache and Main Memory Systems", shows that most practical techniques on general benchmarks achieve compression ratio ~2X and some upto 4X, although higher potential (e.g. ~16X in some cases) exists (see Section 2.2). The reason for not achieving full potential is ...

3

A rectangular window of data can have a discontinuity between the front and back edge. An FFT of that window represents that circular edge discontinuity with energy in a bunch of high frequency bins. Take that segment of signal and mirror it around one edge. Note that a circular or periodic extension of this no longer has a discontinuity across the edge. ...

3

I would check 2 things: If the filter applied is Low Pass Filter or a different filter. If it is a filter which amplifies the noise, the result is reasonable. It seems that you use butter() in a form which generates High Pass Filter. Since the input signal is composed of noise, the High Pass Filter amplify it and causes to less compressible file. For ...

3

Good start. Let us adjust a bit, in an other narrative point of view. Here is the compiled version: Discrete Cosine Transform (DCT) is a lossy data compression algorithm that is used in many compressed image and video formats, including JPEG, MJPEG, DV and MPEG. In this algorithm, special DCT coefficients are calculated for each 8x8 image block, in the ...

2

Oftentimes some rounding occurs in storing the coefficients. This is why many image compression algorithms are lossy, i.e. they lose information when converting the floating point coefficients to integer format. The process of rounding is called quantization. See this wikipedia article for an example. http://en.wikipedia.org/wiki/JPEG#Quantization

2

While this answer may have come a bit too late for OP, here it is. Let's start by replacing the phrase 'bits used' with 'queries to an unbiased bit generator'. Then assume that the only random number generator you have at your disposal is an unbiased bit generator, that generates $0$ or $1$ with probabilities $p_0=p_1=0.5$. e.g. something like the following ...

2

What kind of result ? Are all the floating point data positive ? Anyway, I will list down some of the Quality Metrics and when to use them for which quality of data. $1$. SNR - If the difference between the original signal and the reconstructed signal can be interpreted as a zero-mean noise process. SNR measurements relating to signal power or energy are ...

2

First of all, there are many solutions. Something better under one measure may be worse under another measure. So first you need to think about what is your quality measure(s) to evaluate a restored image. Commonly, people use the "mean square error (MSE)" (or its log version, known as the peak signal noise ratio). Assume the ground-truth image is $X$, and ...

2

Unlike DFT, DCT outputs real (non-complex) coefficients. This allows to have smaller outputs (no phase should be stored). Furthermore, it corresponds to a special type of boundary conditions in the DFT that is easily handled by implementations: symmetric signals. This makes 2 arguments in favor of the DCT. Like DFT, DCT produces outputs with few significant ...

2

Here is my non-technical 2 cents... Usually when you are referring to compressing audio, you are referring to audio that humans tend to listen to, like voice or music. Voice and music are interesting and meaningful to humans because these signals have time correlations or redundancies that allow the human brain to track the signal and even predict where ...

2

there are at least two different meanings of "compressed audio", one is, as your title mentions, compression of data and the other is level compression. they're two totally different functions. about compression of audio data, there are two general classes: lossless compression and lossy compression. in a crude sense of the word, signal quantization is a ...

2

If JPEG used a 1d DCT it would only be eliminating the redundancy in a single direction. You could compress the image with a 1d DCT then turn it sideways and compress it again. Since the DCT is separable doing this double 1d compression procedure would be (roughly) the same as just using a 2d DCT transform to begin with.

2

JPEG uses, in its core, a block-based transform called Discrete Cosine Transform. The inherent result of this choice is known as the blocking artifact. To overcome this artifact and to accomodate many new advanced features required by the complex communication environment and demanding applications of the global communicaitons era it was required to be ...

Only top voted, non community-wiki answers of a minimum length are eligible