[英]wxWidgets + OpenCV rectangle crash OnButtonClick()
我試圖單擊wxbutton時在OpenCV Mat中繪制一個簡單的矩形,但是調用矩形函數時程序崩潰。
void wxFrameFrame::OnButton1Click(wxCommandEvent& event)
{
Mat A(480,640,CV_32F);
Point p1(10, 10);
Point p2(20,200);
rectangle(A, p1, p2, Scalar(255,0,255,0), 0);
// Show what you got
namedWindow( "src", CV_WINDOW_AUTOSIZE );
imshow( "src", A );
}
我已經在控制台應用程序中嘗試了此代碼,並且工作正常。 我也嘗試將這段代碼放在wxFrame構造函數中,並且也可以正常工作。 如果我評論矩形函數,一切正常(顯示黑色圖像)。
我有兩天了這個問題,我原來的問題是我無法warpAffine圖像,因為它也崩潰了。
我可以用
A.at<uchar>(0,0)=255
而且我知道我可以做一個for循環來繪制矩形。
我的環境是Windows 7 64位,OpenCv 2.3.1,wxWidgets 2.8.12和CodeBlocks 10.05
感謝您的任何幫助和想法,謝謝。
- -編輯 - -
我已經嘗試了矩形函數,warpAffine和putText函數,並且在OnButtonClick內部調用這三個函數時崩潰了。 功能線和圓工作正常。
看來問題出在矩形例程中。 這是OpenCV中的東西嗎? 或wxFrameFrame的方法?
我要嘗試的第一件事是查看矩形是否在通過自動調用時遇到問題,該自動調用會立即超出范圍。
嘗試這個
void wxFrameFrame::OnButton1Click(wxCommandEvent& event)
{
static Mat A(480,640,CV_32F);
static Point p1(10, 10);
static Point p2(20,200);
static Scaler s(255,0,255,0);
static int n = 0;
rectangle(A, p1, p2, s, n);
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.