行程编码方法matlab,MATLAB中行程编码技术

行程编码的M语言实现

在MATLAB中输入下面代码

I=imread(‘pears.png’);%读入图像并进行灰度转换

imshow(I);

IGRAY=rgb2gray(I);

[m n]=size(IGRAY);

c=I(1,1);RLEcode(1,1:3)=[1 1 c];%建立数组RLEcode,其中元素排列形式为[行程起始行坐标、行程列坐标、灰度值]

t=2;

for k=1:m %进行行程编码

for j=1:n

if(not(and(k==1,j==1)))

if(not(I(k,j)==c))

RLEcode(t,1:3)=[k j I(k,j)];

c=I(k,j);

t=t+1;

end

end

end

end

结果为

将上述编码稍作修改,使得待压缩编码的图像为二值图像,编码如下

I=imread(‘pears.png’);%读入图像并转换成二值图像

imshow(I);

IBW=im2bw(I);

[m n]=size(IBW);

c=I(1,1);RLEcode(1,1:3)=[1 1 c];%建立数组RLEcode,其中元素排列形式为[行程起始行坐标、行程列坐标、灰度值]

t=2;

for k=1:m %进行行程编码

for j=1:n

if(not(and(k==1,j==1)))

if(not(IBW(k,j)==c))

RLEcode(t,1:3)=[k j IBW(k,j)];

c=IBW(k,j);

t=t+1;

end

end

end

end

结果如下



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值