2017-06-14 169 views
0

使用Python和OpenCV,我嘗試讀取大小爲(3264 * 2448)的圖像,但生成的大小始終爲(2448 * 3264)。這意味着圖像的方向改變了90度。代碼如下:Image Orientation(python + openCV)

img1 = cv2.imread("C:\\Users\\test.jpg", 0) 
cv2.namedWindow("test", 0) 
cv2.imshow("test", img1) 

的原始圖片是這樣的:

enter image description here

,但我得到這個圖片:

enter image description here

+3

查看圖像文件的exif信息。你看到[「方向」](http://sylvana.net/jpegcrop/exif_orientation.html)信息嗎? – Shai

回答

1

我在一個程序中面臨着類似的問題。在我的情況下,問題是由於相機方向數據存儲在圖像中。

在OpenCV Java中,我使用CV_LOAD_IMAGE_COLOR代替CV_LOAD_IMAGE_UNCHANGED後,問題得到解決。

+0

謝謝,我有相反的問題。我必須防止opencv旋轉。你的回答幫助我找到了正確的做法。我結束了使用:'cv2.imread(name,cv2.IMREAD_IGNORE_ORIENTATION | cv2.IMREAD_COLOR)' – oak