cvNamedWindow会破坏以前的所有窗口

时间:2012-06-01 23:13:20

标签: c opencv

我正在尝试创建两个命名窗口,一个用于显示原始视频,另一个用于显示已处理的视频,但是,第二个命名窗口的创建会破坏第一个窗口。文档中没有太多关于命名窗口的内容,我在谷歌上找不到任何相关内容。

这是我的代码:

cvNamedWindow( "Source", 1);
cvMoveWindow("Source", 0, 200);

// If I comment out the following lines, the original window continues on screen
cvNamedWindow( "Wire", 1);
cvMoveWindow("Wire", 600, 200);

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可能没有看到它,因为它没有内容。尝试向窗口添加内容。这段代码:

int main(int argc, char *argv[]) {
    cv::Mat image, image2;
    image = cv::imread("pic1.jpg");
    image2 = cv::imread("pic2.jpg");

    if (!image.data || !image2.data) {
        std::cout << "Image file not found\n";
        return 1;
    }

    cv::namedWindow("Source");
    cv::moveWindow("Source", 0, 200);
    cv::namedWindow("Wire");
    cv::moveWindow("Wire", 400, 200);

    cv::imshow("Source", image);
    cv::imshow("Wire", image2);
    // wait for key
    cv::waitKey(0);

    return 0;
}

产生这个:

two windows with content