如何用c语言实现压缩图片内存大小

如何用c语言实现压缩图片内存大小,第1张

是(row,col,value),这样把所有不为零的值组成一个向量。这种存储方式比二维数组节省了不少空间,当然还可以进一步节省,因为三元组里面row或者col重复存储了,一行或者一列存一次就行了,按这种思路走下去就是行压缩存储了。

那具体什么是行压缩存储呢?行压缩存储的思想就是,把所有不为零的值按行访问的顺序组成一个向量,然后再把每一行值不为0的列的下标存下来,这个两个向量的大小和档大稀疏矩阵中不为0的值得个数相同,当然要实现对行压缩矩阵的访问,还要把每一行的不为判咐0的列的下标在第二个向量中开始的位行冲竖置存下来,有人把这个叫做指针。有了这三个向量就可以实现对矩阵实现高效的按行访问了。行压缩存储比三元组优秀的不仅是空间的压缩,还有就是行访问时的高效。三元组如果是有序的,可以二分查找来访问一行,但是行压缩存储按行访问时的时间复杂度是常数级的。 大家可以参考下面这个行压缩矩阵示意图:

BITMAP方面的。至于算法还是很复杂的。目前最好的压缩算法可以参考JPEG算法。 至于如果图片本身已经不是BITMAP位图了 比如一张JPEG或者GIF文件。需要参考JPEG的相关算法。 真的不是简单的事。压缩 传输 解压。 难点基消宽就在压搏亮缩上,你桥察要能自己相处算法,你可以进哈佛了。谢谢!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12476057.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存