g-bios support JPEG decode

发布于 2022-09-05 16:04:05 字数 120 浏览 13 评论 9

Description:
    实现g-bios对JPEG格式图片的处理

Team member:
    Change Shi、Tbag Tang

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

夏了南城 2022-09-19 19:27:05

本帖最后由 tbag-tang 于 2011-01-14 12:41 编辑

Come together。

围归者 2022-09-19 19:19:52

经过前一次的大幅度裁减之后,裁减工作也陷入僵局,昨天裁减了部分冗余代码,但是未能起到很好的作用,接下去想从解码过程入手,对整个算法了解后,再精简。
查看了一些资料,大致了解了jpeg编码的原理,而解码就是一个反过程,在这做一下简单的总结。
编码过程:
  1. Color Model Conversion (色彩模型)
  2. DCT (Discrete Cosine Transform 离散余弦变换)
  3. 重排列 DCT 结果
  4. 量化
  5. RLE 编码
  6. 范式 Huffman 编码
  7. DC 的编码
首先,由于人的视觉对于色彩的敏感度小于对亮度的敏感度,所以将色彩模型通过DCT转换得到一个DCT 变换系数,通过这个系数进行量化,去除一些空间上(指色彩)的部分冗余数据,从而达到压缩的效果。DCT转换的过程是无损的,而量化的过程是有损的。
其次数据本身可以通过编码实现数据的精简,比如说一个字节数据为0x00,在通常情况下存储的时候就是一个字节(8bit),而通过Huffman编码得到0(1bit),这样通过数学方法实现了压缩。通过Huffman编码来压缩过程是无损的。
这个是我的一些理解,有偏差的地方希望大家能更正。谢谢!

又怨 2022-09-19 18:54:40

经过昨天的裁减,略有进展,去除了部分冗余代码,已裁减17K。
采取的方案:
    跟踪函数的调用,逐步去除未调用的函数。
    此方法虽然有所繁杂,但的确起到了一定的成效,而且在裁减的过程中,对源码进行了分析,也对解码算法有了一定的理解,还应继续努力,以达到理想的效果。

人生戏 2022-09-19 18:53:20

写错标号了,右手的错

晚风撩人 2022-09-19 18:18:33

针对移植后Jpeglib的大小问题,我打算从下面几点入手
1)通过查找资料,了解JPEG文件格式。
2)了解离散余弦变换和哈夫曼编码。
2)读懂Jpeglig库的解码算法。
3)精确移植Jpeglib,去掉无用的代码

め可乐爱微笑 2022-09-19 16:08:11

目前对于jpeg的裁减进展不是很大,对于程序还没完全理解,所以裁减还需继续努力。
主要的难点:
1、函数调用较复杂。
2、解码算法较复杂。

4楼的方案不错,可以借鉴下。谢谢!

面如桃花 2022-09-19 15:23:48

一个裁剪的思路,g-bios目前只需要libjpeg的decode部分,可以尝试把encode部分的函数以及数据结构从libjpeg剔除出去,应该可以缩减不少的体积。

娇纵 2022-09-15 09:34:15

小组三天进展

软件方面:
1)成功移植libjpeg到g-bios。
2)实现g-bios对JPEG格式图片的处理。

硬件方面:
.基本实现对JPEG的解码,并在LED显示图片,但图片颜色有偏差,仍需调试。

BUG:
1)jpeglib太大,移植jpeglib后,g-bios下半部由原来的82k增加到150k.
2)硬件解码目前没有解决。

解决办法:
1)jpeglib
a.通过对jpeglib的裁剪,减少g-bios下半部的大小。
b.编程实现精简版jpeglib。
2)硬件解码
.继续调试

吾性傲以野 2022-09-08 19:05:34

2010.9.20进展汇报:

软件解码部分:
    基本完成libjpeg库的移植,实现将烧在nand上的jpeg文件数据解码成RGB数据流,并在LCD上显示。

硬件解码部分:
    S3C6410硬件解码jpeg基本成功,但是解码输出的数据是YUV4:2:2标准,为了适用广泛,LCD已设置成RGB565标准,所以颜色转换方面还有些问题,仍需调试。

遇到的难点:
    libjpeg库适用于对文件的编解码,而g-bios上没有fopen、fread等库函数,必须要将libjpeg库进行修改,将其适用于对内存块数据的编解码。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文