OpenCV cvLoadImage 函数不适用于显式路径

标签 opencv

我是 OpenCV 的新手,在尝试使用 cvLoadImage() 函数加载图像时遇到了问题。

以下代码尝试使用 (1) 工作目录(注释掉的代码行)或 (2) 桌面上文件的显式路径加载图像“testImg.bmp”。请注意,这两个图像文件完全相同,只是它们位于两个位置(即工作路径不是桌面)。

当我使用第一行(注释掉的行)运行程序时,图像被加载并显示在窗口中。但是,当我按照编写的方式运行程序(即使用桌面上图像的显式路径)时,会弹出一个空窗口并弹出错误消息(“无法加载图像”消息)。

非常感谢任何帮助告诉我我在显式路径行上做错了什么,因为将图像文件移动到工作目录通常是不可行/不可取的。

#include "stdafx.h"

#include "opencv/cv.h"
#include "opencv/highgui.h"

using namespace std; 

int main(int argc, CHAR* argv[])
{
    //IplImage* img = cvLoadImage("testImg.bmp");
    IplImage* img = cvLoadImage("C:\Users\Jeremy\Desktop\testImg.bmp");

    if(!img)
        std::cerr<<"Unable to load image"<<endl;

    cvNamedWindow("myfirstwindow");
    cvShowImage("myfirstwindow",img);

    cvWaitKey(0);
    cvReleaseImage(&img);
    return 0;
}

最佳答案

与opencv无关

"\" 在 C 字符串中表示下一个字符是转义码,使用 "\\""/"

关于OpenCV cvLoadImage 函数不适用于显式路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11042187/

相关文章:

python - 如何使用水平投影清理二进制图像?

android - 提高 OpenCV 性能 Android - 快速对象跟踪

c++ - 从哪里获取 matlab 库(libmat 和 libmx)

opencv - 对于大于 64 x 128 像素的图像,如何为 HoG 训练图像?

opencv - 无法让 OpenCV + macam.component + PS3Eye 工作

python - 为什么右键单击会在我的 OpenCV imshow() 窗口中打开下拉菜单?

video - 视频动态渲染有多难?

python cv2 未找到但已安装

c++ - 将两个 std::vector<cv::Point> vector 和安全公共(public)点与第三个 std::vector<cv::Point> 进行比较

c++ - findHomography with RANSAC 错误异常值