作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试为 OpenCV 设计一个简单的 hello world,但我想不出为什么它不起作用。
当我编译并运行这段代码时:
#include <cv.h>
#include <highgui.h>
int main(int argc, char* argv[])
{
IplImage* img = cvLoadImage( "myjpeg.jpg" );
cvNamedWindow( "MyJPG", CV_WINDOW_AUTOSIZE );
cvShowImage("MyJPG", img);
cvWaitKey(0);
cvReleaseImage( &img );
cvDestroyWindow( "MyJPG" );
return 0;
}
我得到一个大约 200x200 的灰色框,而不是指定的 .jpg 文件。如果我使用不同的 jpg,我会得到相同类型的窗口,如果我输入无效的文件名,我会得到一个非常小的窗口(预期)。
我在 Windows 7 Professional 下使用 Visual Studio 2008。
大多数示例程序似乎都运行良好,所以我很困惑该代码如何加载示例 jpg 文件,但在上面的代码中它不起作用(甚至尝试了示例 jpeg)。
编译生成的可执行文件运行良好,但每次我尝试运行调试器时,Visual Studio 2008 调试器都会将一个空指针加载到 img 中——无论文件位置是隐式还是显式。
最佳答案
myjpeg.jpg
的路径似乎真的有问题,因为在调试器下运行时当前目录可能不同。
默认情况下,Visual Studio 调试器使用的当前目录是包含 .vcproj
文件的目录,但您可以在项目属性(调试 -> 工作目录)中更改它。
您是否 100% 确定您正确传递了绝对路径?尝试将相同的路径传递给 fopen
并查看它是否也返回 NULL
。如果是,则路径不正确。
如果您想准确查看库试图打开的文件,您可以使用 Project Monitor在 myjpeg.jpg
上使用过滤器。
关于c++ - OpenCV cvLoadImage() 不在 visual studio 调试器中加载图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2115816/
我是一名优秀的程序员,十分优秀!