簡體   English   中英

在opencv 2.4.7,python 2.7.6,OS X Mavericks中出現繪圖問題

[英]Trouble with plots in opencv 2.4.7, python 2.7.6, OS X Mavericks

我已經使用brew安裝了python,opencv和大量依賴項。 在大多數情況下,一切正常。 我遇到問題的地方是嘗試顯示圖像並與之交互。

如果我做:

import cv2
im=cv2.imread('myimage.jpg')
cv2.imshow('main',im)

然后顯示圖像,根本沒有辦法與之交互,因為操作系統將窗口標記為無響應(即,如果我將鼠標懸停在窗口上,則會得到可怕的沙灘球)。 我仍然可以使用cv2.destroyWindow('main')關閉窗口。

我的大問題是試圖顯示太大的圖像而無法在屏幕上顯示。 在這里做一些閱讀,我發現我需要安裝qt,然后使用qt后端構建opencv。 因此,我brew卸載了opencv,我brew安裝了qt,然后使用--with-qt build選項安裝brew install opencv。

現在,當我嘗試進行該測試(或嘗試使用cv2.namedWindow ,其結果相同)時,我得到一個窗口,該窗口的頂部具有一些按鈕(一些方向箭頭,磁盤圖標等)和一個黑色的空白內容窗口。 從未顯示過圖像。 而且我還有沙灘球。 這使我相信響應能力存在問題...繪圖按鈕在沒有交互性的情況下是無用的,因此圖像窗口的非交互性不是設計使然。

測試第一個示例,我得到一個立即消失的窗口。 因此,當應該刪除窗口時,您的程序可能已崩潰。 當程序執行結束時,所有內容將被清除並刪除。

這為我修復了它,因為我沒有安裝帶有qt的opencv,所以無法測試qt版本。

cv2.waithkey(5)等待5毫秒,然后返回所按下的任何鍵的鍵控代碼。 因此,直到按下轉義鍵,它才會通過while循環。

import cv2

im=cv2.imread('test.jpg')
cv2.imshow('main',im)

#find ascii key codes here  http://www.asciitable.com/
#Escape == 27
while (cv2.waitKey(5) != 27): pass

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM