假设我有一个大小为600 x 400的图像,并且我知道图像中某个点的(x,y(坐标。我有另一个输出,它是从具有600*400=240000值的同一图像获得的单个1D阵列,该阵列包含按行主要顺序展开的像素。我需要把(x,y(坐标映射到它对应的位置。
I tried the equation pixel = (y-1)*width + x
这是将坐标映射到相应索引的正确方法吗?
您的思路是正确的。您正在为图像中的每个位置生成一个行主线性索引。OpenCV(以及最终的NumPy数组,因为这是Python中使用OpenCV库处理图像的方法(以行主格式排列图像数据。然而,您的表达式不太正确,但您非常接近。(y-1)*width + x
假设坐标从1开始。因为坐标在OpenCV中从0开始,而不是从1开始,所以它应该只是y*width + x
。我将把它留给你练习,让你发现这是正确的。