簡體   English   中英

wxWidgets + OpenCV矩形崩潰OnButtonClick()

[英]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.

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