jpeg Image Compression Implementation
2 次查看(过去 30 天)
显示 更早的评论
Hey All,
How is image compression done in real digital devices, laptops, cameras and mobile phones? Is it hardware or software implemented?
Regards, Yasmine
0 个评论
采纳的回答
Walter Roberson
2016-8-28
Yes, it is hardware or software implemented. It depends on the device, and it depends on what you define as "hardware implemented".
For example, it appears to me that the iPhone 6s uses the PowerVR GX6450 GPU architecture, and I see hints that video encoding and decoding is done on the GPU, and that would reasonably include a DCT implementation . The GX6450 features 2 Texture Mapping Units (TMU) and 32 FP32-ALUs (32 bit Arithmetic Logic Units). The TMU would not participate in DCT, so the question becomes whether the FP32-ALU has a hardware instruction for DCT or uses an algorithm based on its hardware instructions. I do not know for sure, but I think it highly likely that it is handled by an algorithm not by a single hardware instruction -- but it could be that some of the hardware instructions offer assistance.
If I understand the various bits of documentation properly (and I could easily be overlooking something), the iPhone 6s and other releases of the time were the first Apple systems that had an Image Processing System... but they were not the first ones to use a GPU. You would have to dig in to find the instruction set lists of the particular devices you were interested in to know the exact processing stage.
Have there been systems with built-in DCT instructions? Yes, I do find evidence for such things. I also find papers describing FPGA implementation for JPEG compression. But is FPGA "hardware" or "software" considering you can reprogram it? Was an EEPROM hardware or software considering you could reprogram them? If you use a CPU that turns out to be designed with microcode that can in theory be reprogrammed, then is that CPU hardware or software?
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!