Image Compression and Coding

来源:互联网 发布:东芝2051c网络设置 编辑:程序博客网 时间:2024/06/06 20:12

图像压缩编码  

   图像压缩编码概述:在满足一定保真度的要求下,对图像数据的进行变换、编码和压缩,去除多余数据减少表示数字图像时需要的数据量,以便于图像的存储和传输。即以较少的数据量有损或无损地表示原来的像素矩阵的技术,也称图像编码.图像压缩编码可分为两类:一类压缩是可逆的 ,即从压缩后的数据可以完全恢复原来的图像 ,信息没有损失 ,称为无损压缩编码;另一类压缩是不可逆的 ,即从压缩后的数据无法完全恢复原来的图像 ,信息有一定损失 ,称为有损压缩编码。

   图像压缩编码的必要性:面对“信息爆炸”的信息时代,图像的数据量非常大,无论传输或存储数据都要对数据进行压缩,而且随着现代通讯技术的发展,要求传输的图像信息种类和数据越来越大,若不对其进行数据压缩,便难以推广运用。

   图像压缩的可行性:从图像压缩的客体——数字图像来看,存在很大的冗余。图像冗余就造成比特数浪费,消除这些冗余可以节约码字,也就达到了图像压缩的目的。大多数图像内相邻像素之间存在较大的相关性,这称为时间冗余。而压缩的目的就是消除这些冗余。图像的规则性可以用图像的相关性系数来衡量,图像越有规则,其相关系数越大,图像的空间冗余越大。
   图像压缩编码的分类:图像压缩编码技术是在满足一定的图像的保真条件下,压缩表示原始图像数据的编码方法。根据压缩过程有无数据损失,可分为有损编码与无损编码
   图像压缩编码的评价指标
压缩比和失真比是衡量压缩标准的重要指标。
压缩比:图像压缩前后的信息量之比。
失真性:该性能指标主要是针对有损编码而言的,是指图像经有损压缩,然后将其解码后与原图像之间的误差。有损压缩回使原始图像数据不能完全恢复,信息受到一定的损失,但压缩比较高,复原后图像存在一定的失真。
 clear
I = imread('pears.png');
imshow(I)
IGRAN = rgb2gray(I);
[m,n] = size(IGRAN);
c = I(1,1);RLEcode(1,1:3) = [1 1 c];
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
         
 clear
I = imread('pears.png');
imshow(I)
IBW = im2bw(I);
[m,n] = size(IBW);
c = I(1,1);RLEcode(1,1:3) = [1 1 c];
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
                
     
       
            
0 0