无法在这两个OpenCV代码中找到差异
Unable to find the difference in these two OpenCV codes?
我正在尝试学习OpenCV,我遇到了这两个代码,两个代码的任务是相同的,只是为了显示图像,但后一个不起作用。我正在使用opencv2.4.6和visualstudio12
第二个没有加载图像,但显示错误,说没有找到图像
#include "cv.h"
#include "highgui.h"
int main() // this code works
{
IplImage* newImg;
newImg = cvLoadImage("boxing.jpg", 1);
cvNamedWindow("Window", 1);
cvShowImage("Window", newImg);
cvWaitKey(0);
cvDestroyWindow("Window");
cvReleaseImage(&newImg);
return 0;
}
#include <opencv2corecore.hpp>
#include <opencv2highguihighgui.hpp>
int main() // this code doesn't works
{
Mat image;
image = imread("boxing.jpg");
namedWindow("original");
imshow("original",image);
cvWaitKey(5000);
return 0;
}
只需添加
using namespace cv;
在CCD_ 1语句之后和CCD_。
为什么
所有OpenCV类和函数都在名称空间cv
中声明。或者,您也可以使用范围解析操作符,如cv::Mat、cv::imshow
等来访问OpenCV功能。
不要将C函数与C++混合使用。当使用OpenCv 2.0以上版本(C++)时,您应该调用:
cv::WaitKey(5000);
因为名称中以"cv"开头的函数和类已经过时。
信不信由你,你有一个链接器问题。
cvLoadImage()获取char*,imread()获取std::字符串。如果不能使用后者,那是由于一些std/c++lib链接错误。
请格外仔细地检查,如果您正在根据调试构建链接发布库(或反过来),如果您不小心更改了c-运行时间(多线程dll)。
相关文章:
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 在C++代码中包含opencv时,使用ctypes创建.so文件
- 未定义的引用 .. 使用 OpenCV 编译 C++ 代码时,从命令行
- Mingw-64 在构建和安装后不会编译 openCV 代码
- OpenCV代码不会检测人脸的数量,也不会在脸周围放一个圆圈
- 如何将 c++ get 函数代码转换为 opencv 算法中使用的 python
- 将 OpenCV 2 中的ANN_MLP代码转换为 OpenCV 3 代码
- OpenCV C++,难以理解DFT的起始代码
- OpenCV如何处理Mat作为指针来加速代码
- 如何以及在何处使用带QT的Basler Cam实现opencv人脸检测代码
- 如何高效浏览OpenCV仓库理解代码?
- Opencv:相同的捕获代码在高端笔记本电脑上提供低 FPS,在 TX1 上提供高 FPS
- 使用Bicubic C 的调整大小函数的OPENCV代码流是什么?
- C OPENCV中的错误是我的第一个代码(中值过滤器)
- cv:内存位置的异常 - 运行 openCV 代码 Visual Studio 2013 & Visual Studio 2017 - Windows 7
- C++ / CannyEdgeDetection.exe 已停止工作 代码块 /OpenCV 错误:断言失败
- 使用 Emscripten 将 OpenCV 代码编译C++ Javascript
- 我需要解释Hough代码的特定部分(OPENCV/C )
- 如何在Android中使用OpenCV C 代码
- 无法使用cv :: imwrite保存垫子图像在JNI本机代码OPENCV中