• 正文概述
  • 编号:B736
    大小:2.3M
    环境:Matlab2020B
    简介:该项目是数字图像处理课后实验,题目为“灰度图像赫夫曼编码”。
    该项目使用软件及版本为Matlab 2019a。
    该项目实现了一张图像通过赫夫曼变长编码进行压缩生成比特文件,同样也实现从比特文件解码成为一张图片的功能。
    代码结构
    Huffman_code.m
    输入:
    Image [m*n (double)]: 目标图像且为黑白图像
    Filepath (String): 编码文件保存路径
    输出:
    Code: 哈夫曼编码的输出结果,为 uint8 的数组
    Info: 计算得到的编码各指标分析数值结构体
    函数功能:
    将输入的图像进行哈夫曼变长编码压缩,将编码结果写入路径文件,并返回编码性能分析结果。
    Huffman_decode.m
    输入:
    Filepath (String): 编码文件保存路径
    输出:
    Image_final [m*n (double)]: 为还原图像且为黑白图像
    函数功能:
    将路径对应文件进行哈夫曼变长解码,还原出图像
    main.m
    功能:
    脚本执行文件
    自定义头文件
    定义如下:
    首先用16 bit来表示整个文件头的长度,这个信息可以在解码时准确分隔文件头部分和主体部分;
    用两个16 bit来表示图像的分辨率,用于解码时的图像重构;
    其他部分为编码表,编码表的每个码字长度不一, 最极端的情况下,最长码字为255 bit,最短为0 bit,如果为每一个码字分配256 bit即16 byte的空间会有很大程度的浪费,
    所以先使用一个8 bit来表示该变长码字的长度再将等长的码字内容接在其后,然后紧接着是下一个码字的长度和内容,这样可以缩短头文件的长度。
    如图所示:

    运行展示

    配套文件

    我们提供完整项目文件清单如下:
    文件目录
    ├ 1.项目源码
    ├ 2.运行截图
    └ 3.演示视频

    1. 本站所有资源来源于原创和复现,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,请不要用于商业用途!
    3. 如果你也有好源码或者文档,可以与我们交换,分享有积分奖励和额外收入!
    4. 本站提供的源码、文档等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,默认解压密码为"www.2zcode.com",如遇到无法解压的请联系管理员!
    8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
    声明网站内的所有源码都经过我们亲自测试,均可以正常使用.

    索炜达.猿创 » 数字图像处理之基于Matlab灰度图像赫夫曼编码

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们.。
    你们有qq群吗怎么加入?
    因为每个人购买的系统代码不一样,我们提供都是一对一的优质在线QQ技术支持,目前暂时提供QQ交流群http://www.2zcode.com/zzxt。

    发表评论

    • 210026会员数(个)
    • 3036资源数(个)
    • 0本周更新(个)
    • 0 今日更新(个)
    • 1262稳定运行(天)

    提供最优质的资源集合

    加入VIP
    开通VIP 享更多特权,建议使用 QQ 登录