2011-04-10 90 views
0

我写了这个代码扭曲的图像,它工作得很好,但有问题,以恢复这个扭曲的图像与之前的编码再次还原失真的图像

pic=imread('pepers.png'); 
[imr,imc,clr]=size(pic); 
img2=pic; 

v=66; 
for row=1:imr 

    for col=1:imc 
     for k=1:clr 

      img2(row,col,k)=bitxor(pic(row,col,k),v); 
      v=img2(row,col,k); 
     end 
    end 
end 


imwrite(img2,'pic2.png'); 
imshow(img2); 

回答

1

运行相同的代码的方法XOR的每个值值。因此,逆与编码函数不完全相同。您必须将v的赋值切换到编码值,因此

img2(row,col,k)=bitxor(pic(row,col,k),v); 
v=pic(row,col,k); 

用于解码方法。

+0

非常感谢亲爱的, – Farooq 2011-04-10 16:27:04