how to permute matrix here?

1 次查看(过去 30 天)
Tia
Tia 2013-3-31
Hi.. I have an image 128x128pixels. then it is divided into 8x8 block. so that we get 16 subblocks. each 8x8 block, i would like to permute position(1,1) of matrix 8x8 from one subblock to another subblock with same position (1,1). do you know how to solve this problem? i don't know about permutation here. Thank you

回答(1 个)

Image Analyst
Image Analyst 2013-3-31
I don't even know what that means. Can you explain better and give an example? Can you also explain why you want to do this?
Otherwise, the only thing I can suggest is to get the row and column of each pixel in each block that you wish to swap and do the usual swap code:
savedPixelValue = grayImage(row1, column1);
grayImage(row1, column1) = grayImage(row2, column2);
grayImage(row2, column2) = savedPixelValue;
  4 个评论
Tia
Tia 2013-3-31
b is an array 3x3 from m. then,it become 4subblocks
b1=[ 1 2 3 b2=[4 5 6
1 2 3 4 5 6
1 2 3] 4 5 6]
b3=[1 2 3 b4=[4 5 6
1 2 3 4 5 6
1 2 3] 4 5 6]
it's a 2D array
Image Analyst
Image Analyst 2013-3-31
So why can't you adapt my code as follows:
row1 = 1;
column1 = 1;
savedPixelValue = b1(row1, column1);
b1(row1, column1) = b2(row2, column2);
b2(row2, column2) = savedPixelValue;

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Data Converters 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by