我正在制作一个需要垂直镜像的项目。图像由函数读取,然后逐个像素地设置为一个数组,以便在我使用array[idy*w + idx]
(在我的情况下是矩阵或图像的宽度)的数组中移动,因为这将运行同时我只需要找到相反的像素,以便我可以分配它。
我的意思是这样的:
array[idy*w + idx] = array[opposite pixel];
array[opposite pixel] = array[idy*w + idx];
问题是我无法找到合适的方法。
任何答案都将受到高度赞赏。
我尝试过以下操作,但它不起作用array[idy*w + (w - (idx + 1))]
答案 0 :(得分:0)
这应该有效
pixel = array[idy*w + idx];
pixel_mirror = array[idy * (w + 1) - idx - 1];
array[idy*w + idx] = pixel_mirror;
array[idy * (w + 1) - idx - 1] = pixel
答案 1 :(得分:0)
这最终对我有用:
outputImage[idy*w + idx] = inputImage[idy*w + (w - idx - 1)];