Вы находитесь на странице: 1из 3

IMAGE COMPRESSION

Image Reading Code


clear all;close all;
tic;
img=imread('123.jpg');
%img=rgb2gray(img);
gray_img=int16(img);
[m,n]=size(gray_img);
k=1:m;l=2:n;
new_img = ones(m,n);
new_img(:,1)=gray_img(:,1);
new_img(k,l)=gray_img(k,l-1)-gray_img(k,l);
code_cp=[8,9,10,11,12,13,14];
code_cn1=[7,6,5,4,3,2,1];
code_cn2=[14,13,12,11,10,9,8,7,6,5,4,3,2,1];
fip=fopen('lena_zhr.dat','w+');
fwrite(fip,m,'integer*4');
fwrite(fip,n,'integer*4');
disp('Starting Compression.');
c1=0;
c16=15;

Image Compression Code


for k=1:m
for l=1:n
if new_img(k,l)>=0
if new_img(k,l)<7
%0<=new_img(k,l)<7
fwrite(fip,code_cp(new_img(k,l)
+1),'ubit4');
else
%new_img(k,l)>6
c16_num=ceil((new_img(k,l)6)/14);

6,14);

for i=1:c16_num
fwrite(fip,c16,'ubit4');
end
base_code=mod(new_img(k,l)if base_code==0
base_code=14;
end
fwrite(fip,base_code,'ubit4');
end

else

if new_img(k,l)<-7
c1_num=ceil((abs(new_img(k,l)
+7))/14);

+7),14);

for i=1:c1_num
fwrite(fip,c1,'ubit4');
end
base_code=mod(abs(new_img(k,l)
if base_code==0
base_code=14;
end

fwrite(fip,code_cn2(base_code),'ubit4');
else

fwrite(fip,code_cn1(abs(new_img(k,l))),'ubit
4');
end
end
end
end

Вам также может понравиться