游程编码用matlab实现代码_二值图像游程编码算法的Matlab实现 -

本文介绍了如何使用Matlab实现二值图像的游程编码算法,包括图像转换、游程编码、压缩率计算以及解压缩过程。通过示例代码展示每个步骤,并得出压缩率为12.084。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二值图像游程编码算法的Matlab实现

实验源程序以及相关结果如下:

>> image1=imread('C:\\Program Files\\MATLAB71\\work\\1\\girl.jpg'); %读入图像 >> imshow(image1); %显示原图像

>> % 以下程序是将原图像转换为二值图像

>> image2=image1(:); %将原始图像写成一维的数据并设为 image2 >> image2length=length(image2); % 计算image2的长度

>> for i=1:1:image2length % for 循环,目的在于转换为二值图像

If image2(i)>=127

image2(i)=255;

else image2(i)=0; end end

>> image3=reshape(image2,146,122); % 重建二维数组图像,并设为image3 >> figure,imshow(image3);

>> % 以下程序为对原图像进行游程编码,压缩 >> X=image3(:); %令X为新建的二值图像的一维数据组 >> x=1:1:length(X); % 显示游程编码之前的图像数据 >> figure,plot(x,X(x));

>> j=1;

>> image4(1)=1;

>> for z=1:1:(length(X)-1) % 游程编码程序段

if X(z)==X(z+1)

image4(j)=image4(j)+1; else

data(j)=X(z); % data(j)代表相应的像素数据 j=j+1;

image4(j)=1; end end

>>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值