2012-05-22 41 views
0

我想運行一個簡單的OpenCV python腳本,它使用samples/python2/facedetect.py示例,但不是在循環中運行,而只是希望它檢測到一張臉,然後編寫圖像。使用Python的OpenCV需要X Windows嗎?

本質上,我將cv2.imshow更改爲cv2.imwrite,並且它在Windows上正常工作。

當我試圖在Linux(Debian的),同樣的事情,我得到這樣的Xwindows錯誤:

import: unable to grab mouse `': Resource temporarily unavailable @ error/xwindow.c/XSelectWindow/9007. 
from: can't read /var/mail/video 
from: can't read /var/mail/common 
./facedetect.py: line 7: syntax error near unexpected token `(' 
./facedetect.py: line 7: `def detect(img, cascade):' 

我不希望在得出任何窗口,所有我想要的是代碼打開JPG,檢測臉部,並寫一個新的JPG。 OpenCV需要X窗口嗎?我瀏覽了代碼,但無法確定需要X窗口的特定代碼行。

回答

2

你剛剛給你的程序作爲shell的輸入。您需要添加一個hashbang行,如#!/usr/bin/python作爲程序文件的第一行。或者將它作爲python ./facedetect.py

+0

謝謝,這是根本原因。你介意解釋錯誤信息給你帶來了什麼,這就是問題所在?我對這一切仍然陌生,所以我不確定你是怎麼想出來的。謝謝! – steve8918

+1

1.我確認哪些程序已經運行; 'import'是來自imagemagick的抓屏程序; 'from'是一個「打印已發送郵件的人的姓名」的程序。如果該文件已經作爲shell的輸入提供,那麼只會運行這些文件。我自己也是這樣做的。 –

+0

真棒,謝謝! :) – steve8918