我已编写此代码用于扭曲图像,它运行良好但有问题可以恢复运行此相同代码的扭曲图像
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);
答案 0 :(得分:1)
该方法使用前一个值的编码对每个值进行异或。因此,逆与编码函数不完全相同。您必须将v的分配切换为编码值,因此
img2(row,col,k)=bitxor(pic(row,col,k),v);
v=pic(row,col,k);
用于解码方法。