存在N * M大小的行M,列N的图像X.还有其他2个与X大小相同的图像A,B。目标是将行的X随行从A中提取并且用从B中提取的列对X的列进行混洗,导致完全修改的img。矩形图像的语法错误
我被困在同时发生这种情况的地步。我知道代码运行的冒号操作符,但对于方形图像。请帮助如何去解决它。
X=imread('picture.jpg');
[r c]=size(X);
[dummy,rowscrambleIdx]=sort(A,1);
X_shuffled=X;
[dummy,colscrambleIdx]=sort(B,2);
编辑:下面的代码适用于正方形图像和我想为矩形大小的图像做类似的操作。但是,此代码不适用于矩形大小的图像。我试图让第一代码遵循类似的逻辑,但它不具有非方形RGB图像工作,说256 * 240 * 3大小
X=imread('picture.jpg');
[dummy,scrambleIdx]=sort(A(:));
X_shuffled=X;
X_shuffled(:)=A(scrambleIdx);
%now unscrambling
[dummy,unscrambleIdx] = sort(scrambleIdx);
X_recovered=X;
X_recovered(:)=X_shuffled(unscrambleIdx);
(其中的问题已基本上修改接收到应答之后一段时间的另一种情况 - 回滚)。 – halfer 2016-06-20 10:08:22