游程编码用matlab实现代码_matlab游程编码
二值图像的游程编码及解码
一、实验目的
掌握游程编码,并用编程实现游程编码及解码。
二、实验引言
二值图像在图像分析中应用非常广泛
,
二值图像就是指只有黑白两个灰度级的图像
,
二
值图像具有存储空间小
,
处理速度快
,
可以方便地对图像进行布尔逻辑运算等特点
.
更重要的
是
,
在二值图像的基础上
,
还可以进一步对图像处理(编码等)
,
获得该图像的一些几何特征
或者其他更多特征。
游程编码作为编码技术中常用的一种,
对二值图像非常有效。
本文介绍
了二值图像和游程编码,并利用
Matlab
语言实现了二值图像的游程编码及解码。
三、实验原理
读入图象—
>
二值转换—
>
游程编码(压缩)—
>
恢复原图象
3.1
二值转换
所谓二值图像
,
就是指图像上的所有像素点的灰度值只用两种可能,
不为
“
0
”
就为
“
1
”
,
也就是整个图像呈现出明显的黑白效果。
3.2
游程编码及其原理
又称“运行长度编码”或“行程编码”,是一种统计编码,该编码属于无损压缩编码
对于二值图有效。
行程编码的基本原理是:用一个符号值或串长代替具有相同值的连续符号(连续
符号构成了一段连续的“行程”。行程编码因此而得名)
,使符号长度少于原始数据的
长度。
据进行编码时,沿一定方向排列的具有相同灰度值的像素可看成是连续符号,用
字串代替这些连续符号,可大幅度减少数据量。
行程编码分为定长行程编码和不定长行程编码两种类型。行程编码是连续精确的
编码,
在传输过程中,如果其中一位符号发生错误,即可影响整个编码序列,使行程编
码无法还原回原始数据。
3.3
游程编码算法
一般游程编码有两种算法
第一种:使用
1
的起始位置和
1
的游程长度
第二种:只使用游程长度,如果第一个编码值为
0
,则表示游程长度编码是从
0
像素的
长度开始。
两种方法各有优缺点:第一种存储比第二种困难,因此编程也比较复杂。而第二种需要
知道第一个像素值,故压缩编码算法中需给出所读出的图的第一个像素值。
此次试验中采用第一种算法。算法举例图示
压缩后输出为:
(2,2)(6,3)(13,6)(20,1)(4,6)(11,10)(1,5)(11,1)(17,4)
游程编码用matlab实现代码_matlab游程编码相关推荐
- 游程编码用matlab实现代码_二值图像游程编码matlab代码
>> image1=imread('D:\Program Files\MATLAB\R2012a\bin\D.jpg'); % 读入图像 imshow(image1); % 显示原图像 & ...
- hilbert曲线序编码matlab,Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码
Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码 王笋,徐小双(华中科技大学控制科学与工程系,武汉 430074) 摘 要 Hilbert曲线是一种重要的图像处理工具,在图像处理,特别是图 ...
- 一种基于局部线性嵌入的半监督方法——半监督局部线性嵌入(SSLLE),MATLAB程序代码
具体内容大家可以看一下参考文献的原文,这里附上我的自己编的MATLAB程序代码: % SSLLE算法 % [Y] = sslle(X,K,d,l,r) % X :data as D x N matri ...
- 尺度不变特征变换(SIFT算法)Matlab程序代码测试例子的说明(Lowe的代码)
目前网络上可以找到的关于SIFT算法Matlab测试代码的资源就是: 1 加拿大University of British Columbia 大学计算机科学系教授 David G. Lowe发表于20 ...
- 3.正态分布概率模型下的最小错误率贝叶斯决策MATLAB程序代码
一.题目: [题目]:已知三个类别分别为W1:[0,0]T,[2,1]T,[1,0]T; W2:[-1,1]T,[2,0]T,[-2,-1]T; W3:[0,-2]T,[0,-1]T,[1,-2]T. ...
- 通信天线建模与MATLAB仿真分析,通信天线建模与MATLAB仿真分析代码
应用介绍 此项目是通信天线建模与MATLAB仿真分析代码. 下面展示一部分代码: function [Z]= impmet( EdgesTotal,TrianglesTotal,... E ...
- 齿轮-转子-轴承系统动力学matlab程序代码
齿轮-转子-轴承系统动力学matlab程序代码 详询TB机械动力学超市 感谢关注 期待你的到来
- Matlab基础代码教程
Matlab基础代码教程 第1部分:变量定义和基本运算: % 生成矩阵% 直接法a = [1,2,3;4,5,6;7,8,9];% 冒号一维矩阵 a = 开始:步长:结束,步长为1可省略b = 1:1 ...
- 齿轮系统动力学模型matlab程序代码
齿轮系统动力学模型matlab程序代码, 详询TB机械动力学超市! 谢谢关注
- 如何写出三体的MATLAB程序-代码篇
如何写出三体的MATLAB程序-代码篇 写在前面 在上文当中我们已经对三个物体之间的受力进行了分析,也说明了在时间 t t t下的加速度.速度和位移的计算方式. 本篇中将根据上一篇的公式来写出对应的代 ...
最新文章
- wps 2016 个人版 重新开始编号
- python绘制动态模拟图-Python 模拟生成动态产生验证码图片的方法
- 从Activity中返回数据
- mac安装win7之后鼠标失灵_排雷之后终于找到了解决mac安装Homebrew的报错
- JVM学习-StringTable字符串常量池
- 极简代码(八)—— binary activation function
- 死于决斗的数学天才伽罗瓦-人生的有限域
- char*赋值给std::string是深拷贝
- EFR32FG1开发教程1--点亮LED
- 计算机while语句知识点总结,while循环使用方法
- 【年终总结】你好2021,再见2020。
- java实验三正式报告
- php 数值转时间格式,php数值转换时间及时间转换数值用法示例
- Unity 知识点 - 3D游戏 - 视角跟随和键盘移动
- 征文评优中|小鱼再进化!OceanBase 4.1免费体验
- DTP加载/ODS激活时持续黄灯的解决办法
- 2019年云化国际发展趋势_2019年3种令人惊讶的云趋势-您首先在这里听到了
- 【QGIS入门实战精品教程】8.1:QGIS制作地图案例教程
- linux使用make命令编译错误,有关linux的make文件编译问题
- 【明解C语言】之指针初阶详解
热门文章
- linux ubuntu软件中心,Ubuntu 20.04 将Ubuntu软件中心切换到Snap商店
- 转:Delphi开发经验谈
- 5.2php小说网站源码,【PHP源码】杰奇小说源码V2.20仿《不朽文学网》原创小说网站系统程序(采集+支付+VIP)...
- oracle 应收 系统选项,Oracle财务系统应收账款模块操作手册
- UOS国产操作系统_三方源
- 太阳高度角计算题_【难点突破】太阳高度角与正午太阳高度角区别(附例题解析)...
- NetworkManager 替代工具 wicd
- java秒抢商品_Java秒杀系统实战系列~待秒杀商品列表与详情功能开发
- java连接Hbase操作数据库的全过程---搭建hbase数据库
- python银行系统-python实现简单银行管理系统