当我使用opencv imread函数读取一个图像时,我发现它的高度和宽度被调换成了应该的样子。就像我的原始图像的尺寸一样(610x406),但是在使用opencv::imread函数读取时,它的尺寸是406x610。另外,如果在将原始图像传递给函数之前旋转原始图像,那么也没有任何更改。读取的图像仍具有原始尺寸。在
请参见示例代码和图片以了解说明: 因此,下面我提供了输入图像:一个是原始图像,另一个是旋转图像(我使用windows旋转命令,右键单击并选择“rotate right”)来旋转它。我得到的两个图像的输出是相同的。在我看来,旋转的图像实际上并没有改变它的形状。我这么想是因为,当我试着把旋转的图像放在这里时,它只显示了它的未旋转版本(在预览中),所以,我必须对它进行截屏,然后粘贴到这里。在
代码如下:
import cv2
import numpy as np
import sys
import os
image = cv2.imread("C:/img_8075.jpg")
print "image shape: ",image.shape
cv2.imshow("image",image)
cv2.waitKey(0)
image2 = cv2.imread("C:/img_8075_Rotated.jpg")
print "image shape: ",image2.shape
cv2.imshow("image",image2)
cv2.waitKey(0)
我得到的结果是:图像形状:(406610,3) 图像形状:(406610,3) 对于这两张照片。在
我无法在这里粘贴输入/输出图片,因为它说你应该有“10个声誉”,我刚加入。 任何建议都会有帮助。谢谢!在
通常材料行表示图像的高度材料颜色表示图像的宽度。在
我相信你只是把会议搞混了。可以访问OpenCV Mat结构(行、列)。在
因此,1920x1080图像将是1080行乘以1920列(10801920)
相关问题 更多 >
编程相关推荐