eclipse - nameWindow() 导致 opencv 2.3.1 崩溃? (XP 上的 Eclipse+MinGW,C++)

标签 eclipse opencv mingw

我终于成功让 opencv 2.3.1 能够与 eclipse、mingw 和 32 位 XP 一起工作。当一切正常时,我会发布一份操作指南,因为我找不到该工具链的操作指南。

问题是任何在窗口中显示结果的尝试都会导致未处理的异常。图像保存得很好,而且我能够在它们上运行 Sobel 内核,所以其他一切看起来都很好。当调用namedWindow时它似乎崩溃了。

我在链接器中包含了 libopencv_core231、libopencv_highgui231、libopencv_imgproc231 和 libopencv_legacy231。

这是代码:

            #include <cv.h>
            #include <highgui.h>
            #include <iostream>

            using namespace cv;

            int main(int argc, char **argv)
            {
                std::cout<<"Hello"<<std::endl;

                //Create image
                Mat lena, lenasobel;

                //Load lena image
                lena = imread("C:\\lena.jpeg");

                if(lena.data)
                std::cout<<"File has "<<lena.cols<<" rows and "<<lena.rows<<" columns. "<<lena.channels()<<" channels."<<std::endl;

                if(!lena.data)
                std::cout<<"File Not Read."<<std::endl;

                lenasobel=lena.clone();
                Sobel(lena,lenasobel,lenasobel.depth(),1,1,3);

                std::vector<int> jpg_type;
                jpg_type.push_back(100);
                jpg_type.push_back(CV_IMWRITE_JPEG_QUALITY);

                imwrite("C:\\lenaout.jpeg",lenasobel,jpg_type);

                //Save works!

                namedWindow( "lena" , CV_WINDOW_AUTOSIZE);
                imshow( "lena" ,lena);

                return 0;
            }

有人有什么想法吗?我不知道下一步该做什么!

最佳答案

这可能是由于这个bug一直徘徊。实际上,我必须设置 BUILD_TYPE=Debug 并禁用所有 SSE 优化才能让 OpenCV 与 Eclipse + MinGW 配合使用。

关于eclipse - nameWindow() 导致 opencv 2.3.1 崩溃? (XP 上的 Eclipse+MinGW,C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7996032/

相关文章:

在 linux 上为 windows 交叉编译 C,出现编译器错误

windows - 从 MINGW 启动时运行 System32 程序而不是 SysWOW64

android - "No Launcher activity found!"是什么意思

android - Eclipse 和 Android Studio 导出的 Android apk 的区别

optimization - 在嵌入式平台中充分利用 GPU

c++ - OpenCV - 从 yml 加载描述符 - 没有匹配的函数调用

matlab - 突出霍夫变换找到的线 - OPENCV

java - Linux 上 Java 开发的常见做法是什么?

java - eclipse Windows 64位打不开

使用 gcc 的 c++ 命令行编译