• 小学
  • 初中
  • 高中
  • 小升初
  • 中考
  • 高考
  • 英语
  • 考研
  • 四六级
  • 单元
  • 节日
  • 母爱
  • 诚信
  • 父爱
  • 环保
  • 家庭
  • 感动
  • 成长
  • 感恩
  • 梦想
  • 爱国
  • 写景
  • 写人
  • 叙事
  • 状物
  • 议论
  • 说明
  • 抒情
  • 观后感
  • 诗歌
  • 读后感
  • 想象
  • 素材
  • 名言
  • 段落
  • 哲理
  • 诗词
  • 成语
  • 赏析
  • 基础
  • 演练
  • 教学
  • 当前位置: 天一资源网 > 游程 正文

    游程编码实验报告|游程编码数据的属性查询

    时间:2020-07-16 02:52:42 来源:天一资源网 本文已影响 天一资源网手机站

      . . . .

     . . ..

     交通大学信息科学与工程学院

     综合性设计性实验报告

     专 业: 通信工程专业11级

     学 号: 2

     姓 名: 徐 国 健

     实验所属课程: 移动通信原理与应用

     实验室(中心): 信息技术软件实验室

     指 导 教 师 : 益才

     

     2014年5月

     教师评阅意见:

     签名: 年 月 日

     实验成绩:

     一、题目

     二值图像的游程编码及解码

     二、仿真要求

     对一幅图像进行编码压缩,然后解码恢复图像。

     三、仿真方案详细设计

     实验过程分为四步:分别是读入一副图象,将它转换成为二进制灰度图像,然后对其进行游程编码和压缩,最后恢复图象(只能恢复为二值图像)。

     1、二值转换

     所谓二值图像,就是指图像上的所有像素点的灰度值只用两种可能,不为“0”就为“1”,也就是整个图像呈现出明显的黑白效果。

     2、游程编码原理

     游程编码是一种无损压缩编码,对于二值图有效。游程编码的基本原理是:用一个符号值或串长代替具有相同值的连续符号,使符号长度少于原始数据的长度。据进行编码时,沿一定方向排列的具有相同灰度值的像素可看成是连续符号,用字串代替这些连续符号,可大幅度减少数据量。游程编码分为定长行程编码和不定长行程编码两种类型。游程编码是连续精确的编码,在传输过程中,如果其中一位符号发生错误,即可影响整个编码序列,使行程编码无法还原回原始数据。

     3、游程编码算法

     一般游程编码有两种算法,一种是使用1的起始位置和1的游程长度,另一种是只使用游程长度,如果第一个编码值为0,则表示游程长度编码是从0像素的长度开始。这次实验采用的是前一种算法。两种方法各有优缺点:前一种存储比第二种困难,因此编程也比较复杂。而后一种需要知道第一个像素值,故压缩编码算法中需给出所读出的图的第一个像素值。

     压缩流程图: 解压流程图:

     开始开始

     开始

     开始

     读出压缩

     读出压缩数据image

     将原图像矩阵重构为一行二进制数据

     建立一行len列

     建立一行len列的0向量image,len为图片长宽之积

     建立结构树image1,包含了image.pos和image.wgh,分别代表起始位置和宽度

     i=len

     i=len循环

     判断第一个值是否为1

     判断第一个值是否为1

     让image从

     让image从1游程到宽度范围内变为1

     image

     image.pos和image.wgh位置置1

     利用函数重构原来的图像矩阵

     利用函数重构原来的图像矩阵

     j=1

     j=1

     结束i=2:len

     结束

     i=2:len

     一个游程

     一个游程完后,j=j+1

     遍历temp1,

     遍历temp1,将游程1的起始位置和宽度存在image.pos(j)和image.wgh(j)中。

     将i

     将image1转化为image,去掉多于存储空间

     结束

     结束

     四、仿真结果及结论

     上图为压缩编码后的图像

     五、总结与体会

     通过这次试验,我来了解一些关于游程编码的基本原理,所谓游程编码,其实它就是一种统计类型的编码,更是一种无损压缩编码。原理是用一个符号值或串长代替具有相同值的连续符号,使符号长度少于原始数据的长度。只在各行或者各列数据的代码发生变化时,一次记录该代码及相同代码重复的个数,从而实现数据的压缩,,而起始位置和宽度是关键。二值图像是指只有黑(用255表示)白(用0表示)两种亮度值的图像。把灰度值接近于255或者0的其他灰度都相应转化成255和0,即灰度图像就变成了黑白二值图像,通过对游程编码的原理可以看到一个灰度值由两个数值里来编码,这样效率很差,即便是游程足够长,用等长编码效率都不是太好。通过这次试验我对编码有了更深的一些认识,但还不足以独立实现,需要大量查阅资料,总的来说,我对原理很明确,对具体编码这一块儿还不是太熟,以后会在这方面多多实践。

     六、主要仿真代码

     实验代码:

     image1=imread('D:\我的图片\实验图.jpg'); %读入图像

     imshow(image1); %显示原图像

     title('原始彩色图像');

     imgGray = rgb2gray(image1); % 转为黑白图像

     figure; % 建立一个新窗口

     imshow(imgGray); % 显示转化后的黑白图像

     title('转化后的黑白图像');

     imwrite(imgGray,'gray.jpg');

     image2=imgGray(:); %将原始图像写成一维的数据并设为image2

     [c,r]=size(imgGray(:,:,1));

     image2=imgGray(:); %同上

     image2length=length(image2); %统计长度

     for i = 1:1:image2length %f转换为二值图像

      if image2(i) >=127

      image2(i) = 255;%纯黑色为255

      end

      if image2(i) <127

      image2(i) = 0; %纯白色为0

      end

     end

     image3=reshape(image2,c,r); %重建二维数组图像,并设为image3

     figure,imshow(image3)

     title('压缩后的二值图像');

     % 以下程序为对原图像进行游程编码,压缩

     X=image3(:); %令X为新建的二值图像的一维数据组

     x=1:1:length(X); % 显示游程编码之前的图像数据

     figure,plot(x,X(x));

     title('编码前的图像数据');

     j=1;

     image4=[];

     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);

     j=j+1;

     image4(j)=1;

     end

     end

      data(j)=X(length(X)); % 最后一个像素数据赋给data

     image4length=length(image4); % 统计游程编码后的所占字节长度

      y=1:1:image4length ; % 显示编码后数据信息

     figure,plot(y,image4(y));

     title('编码后的数据信息');

      CR=image2length/image4length;% 比较压缩前于压缩后的大小

      % 下面程序是游程编码解压

      l=1;

      for m=1:image4length

      for n=1:1:image4(m);

      rec_image(l)=data(m);

      l=l+1;

     end

      end

     u=1:1:length(rec_image); % 查看解压后的图像数据

     figure,plot(u,rec_image(u));

     title('解压后的图像数据');

      rec2_image=reshape(rec_image,c,r); % 重建二维图像数组

     figure,imshow(rec2_image); % 显示解压恢复后的图像

     title('解压恢复后的图像');

    相关关键词: 游程
    相关热词搜索: 游程 编码 实验 报告

    • 范文大全
    • 教案下载
    • 优秀作文
    • 励志
    • 课件
    • 散文
    • 名人名言