我想从尺寸为512x512的图像中随机采样8x8补丁。在Matlab中有一个好的(快速简单的)方法吗?我想要的只是从图像中取出的8x8矩阵。而且我在图像中的每个8x8块都具有相同的可能性。
答案 0 :(得分:2)
假设您已使用imread
将图像加载到名为im
的变量中,您可以执行此操作:
r_X = randi(512-8);
r_Y = randi(512-8);
im_rand = im(r_X:r_X+8, r_Y:r_Y+8);
im_rand
将包含从随机生成的角落开始的图像的8x8部分。