c - OpenCV 使用 Xcode 时出现空指针错误

标签 c xcode opencv

我是一名学生,正在使用 Xcode 学习 OpenCV。

在谷歌搜索的帮助下,我在搜索路径中包含了 OpenCV 文件目录并添加了 OpenCV 框架。我在项目文件夹中包含了带有 jpeg 或 png 扩展名的测试图像,并将其加载到 Xcode 中。

我写下了基本的OpenCV代码,当我编译它时,“空指针错误”不断出现。

#include <opencv/cv.h>
#include <opencv/highgui.h>

int main()
{
    IplImage *img = cvLoadImage("./ex2-4/background.jpeg", CV_LOAD_IMAGE_COLOR);

    if ( img == NULL ) {
        printf("Error : null pointer is entered\n");
    }

    cvNamedWindow("Example1", CV_WINDOW_AUTOSIZE);
    cvShowImage("Example1", img);
    cvWaitKey(0);

    cvReleaseImage(&img);
    cvDestroyWindow("Example1");

    return 0;
}

错误信息如下:

错误:输入了空指针 OpenCV 错误:cvGetMat 中的空指针(传递 NULL 数组指针),文件/opt/local/var/macports/build/_opt_mports_dports_graphics_opencv/opencv/work/opencv-2.4.10/modules/core/src/array.cpp,行2382 libc++abi.dylib:以 cv::Exception 类型的未捕获异常终止:/opt/local/var/macports/build/_opt_mports_dports_graphics_opencv/opencv/work/opencv-2.4.10/modules/core/src/array.cpp :2382:错误:(-27)函数 cvGetMat 中传递了 NULL 数组指针

程序结束,退出代码:9

PS:不过,它在 Visual Studio 中运行得很好,但我想在 Xcode 上运行。

最佳答案

即使你的问题得到了解答,但以下代码片段是危险的根源:

if ( img == NULL ) {
        printf("Error : null pointer is entered\n");
    }

你知道imgNULL并继续执行。在这种情况下应该终止执行,

if ( img == NULL ) {
        printf("Error : null pointer is entered\n");
        return -1;
    }

关于c - OpenCV 使用 Xcode 时出现空指针错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28467808/

相关文章:

创建递归二叉树?

c++ - 写入 int 与 uint16_t 时的内存填充

c - 使用指针数组而不是二维数组时出错

xcode - Mac OSX : how to know if app automatically launched at session startup/login?

c# - EmguCV 旋转算法不起作用

c# - DLL 'cvCreateContourTree'中的 'opencv_imgproc231'-已弃用?

c - 如何编译 Cogl hello 示例

objective-c - 在桥接 header 中找不到 header 文件

ios - Xcode 10 警告 : Stale file '/path/to/file' is located outside of the allowed root paths

python - OpenCV:解决PnP tvec单位和轴方向