For instance, consider the DFT or DCT. Precisely, what would be the differences between an image transformed by sub-blocks, and an image transformed whole? Is the resulting file size smaller? Is the algorithm more efficient? Does the transformed image look different? Thanks.
Asked
Active
Viewed 1,140 times
2 Answers
1
They are designed so they can be implemented using parallel hardware. Each block is independent, and can be calculated on a different computing node, or shared out to as many nodes as you have.
Also as noted in an answer to Why JPEG compression processes image by 8x8 blocks? the computational complexity is high. I think (block_y_size × block_y_size)2

ctrl-alt-delor
- 7,506
- 5
- 40
- 52
-
I guess parallel computing on that level was very unusual when they came up with the jpeg standard. The huffman coding of jpeg images make it very hard to accomplish. Also, the fact that you code the DC coefficient as the difference from the former blocks DC coefficient makes me doubt that they thought about parallel processing. My guess is computational complexity and fault tolerance. – onemasse Jun 22 '12 at 11:00
-
Jpeg standard was 1991. Mpeg 1992. I thought there was parallel implementations in hardware for mpeg. In 1995 I did research into automatic parallelising of sequential programs, I worked with a Jpeg file interchange format implementation, because jpeg is an easy algorithm to parallelise (huffman was done sequentially by one node, then a bunch of nodes did a share of the harder/slower DCTs). It is probably true that for jpeg being able to parallelise it was not necessary even then with the slower processors of the time. But for mpeg it was I think the only may to do it in real-time. – ctrl-alt-delor Jun 24 '12 at 20:43
-1
It's to make the image smaller. There a many ways to subdivide an image into blocks. The most simple is by complete rows. More advance tiling is with fractals, i.e hilbert curve. Jpeg 2000 uses a hilbert curve. It uses additional spatial information and it's also used in mapping applications.

Micromega
- 12,486
- 7
- 35
- 72
-
To make the image smaller? Won't the transformed image still be smaller if we apply the transform to the entire image without subdividing? I'm not interested in ways of a subdividing, I just want to understand the fundamental purpose of subdividing. thanks. – rmp251 Jun 21 '12 at 23:58
-
I can be wrong. Check this answer: http://stackoverflow.com/questions/10780425/why-jpeg-compression-processes-image-by-8x8-blocks. – Micromega Jun 22 '12 at 08:42