2013-06-30 58 views
0

我決定不使用OpenCV。我將使用QCamera類。一切都在這個時刻完美運作。我可以在任何需要的位置捕捉​​並保存圖像,但問題是如何將相機設置爲標籤或圖形視圖?如何在標籤上設置QCamera

我的意思是,看看目前發生了什麼。當我做無限循環時,一切都崩潰了。寫下你知道的任何信息,因爲沒有例子要怎麼做,或者我看不到。如果你可以請寫一些源代碼。

+0

「寫出你知道的任何信息」......呃那會花費一些時間給予成千上萬的SO用戶以及人類的平均知識數量...請顯示您擁有的「崩潰」代碼的相關部分,並準確解釋「崩潰」意味着什麼(您看到了什麼行爲),以便人們可以提供幫助你修復它。 – Mat

+0

void Dialog :: on_pushButton_clicked()//開始捕獲 camera-> start(); (1){ camera-> searchAndLock(); imageCapture-> capture(imagePath); ui-> label-> setPixmap(QPixmap(imagePath)); camera-> unlock(); } } – user2521257

+0

永遠不要在Qt中使用無限循環。改用事件。 [QTimer](http://qt-project.org/doc/qt-5.0/qtcore/qtimer.html)很可能是你需要的。 – 2013-06-30 12:04:16

回答

2

使用QCameraVievFinderQVideoWidget部件(文檔 - here),用於這一目的,我這裏是給你:

#include <QCameraViewfinder> 

// ....... 
QCamera *camera=new QCamera(this); 
QCameraViewfinder *viewfinder = new QCameraViewfinder(this); 
viewfinder->setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum); 
camera->setViewfinder(viewfinder); 

setCentralWidget(viewfinder); 
//viewfinder->show(); 

camera->start(); // to start the viewfinder 

注意:您需要添加到您的*,親文件此配置使用它們:QT += multimedia multimediawidgets

如果你想多一點低水平小部件(以你喜歡的方式(人臉檢測等),亞類QAbstractVideoSurface,文檔處理每幀 - here 或試圖連接到QVideoProbe類(文檔 - here),雖然我自己做不到,但是這個班級有點實驗性,我猜,沒有工作

+0

Shf,謝謝你的回答。我之前聽說過關於QCameraViewFinder,但我沒有看過任何東西。現在我會看看我能用它做什麼。感謝 – user2521257

+0

@ user2521257如果它解決了你的問題,很高興能成爲有用的,upvote&accept問題 – Shf

+0

經過這一天,我的相機問題完全解決了。沒有更多的問題。現在我將繼續我的GUI項目,感謝你們所有人。1-2個月後,我將開始尋找如何編寫打印機驅動程序;),但是,又感謝所有。 ;) – user2521257