用MFC寫的上位機總是需要在picture下顯示Mat圖片,方法很多啦,但是不經意間看到一種十分巧妙的方法,實在是讓人感覺優雅之極。感覺十分有必要給大家介紹一下,徵求@jie wu大神的同意,特此分享!
可以把OpenCV的窗口添加到PictureControl裏面,這樣你可以繼續使用OpenCV的setMouseCallback直接對PictureControl進行鼠標操作。
首先在你的OnInit函數中添加如下
首先在你的OnInit函數中添加如下
上面就是打開一個名爲view的OpenCV窗口,並將其放置到一個ID爲IDC_STATIC_CV的PictureControl裏面,這個控件的類型需要是rectangle。當你在需要顯示某圖片的時候,就像在OpenCV裏面顯示一樣就可以了。
調用imshow顯示前先使用以下代碼適應圖片大小.
然後顯示圖片的代碼(在程序中只要是顯示“view”窗口,就自動顯示到ID爲IDC_STATIC_CV的picture控件上了):
作者:jie wu
鏈接:https://www.zhihu.com/question/29611790/answer/45068617
來源:知乎