![](/img/trans.png)
[英]how to install opencv3.4 with gpu support and visual studio 2017?
[英]cvSaveImage was not declared in this scope OpenCV3.4
我的老师为我提供了一个可能基于OpenCV 2 或 3的项目的源代码。
我尝试运行它,但出现错误:在此 scope 中未声明“cvSaveImage”。 像这样:
root@qrh-pc:/home/qrh/文档/TrafficSignQtProgram/build# make
Scanning dependencies of target TREFFIC_SIGN_QT_PROJECT
[ 3%] Building CXX object bin/CMakeFiles/TREFFIC_SIGN_QT_PROJECT.dir/Camera.cpp.o
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp: In member function ‘void CCamera::renderImage()’:
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp:380:5: error: ‘cvSaveImage’ was not declared in this scope
cvSaveImage(imageSaveFileName.c_str(), img);
^~~~~~~~~~~
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp:380:5: note: suggested alternative: ‘cvShowImage’
cvSaveImage(imageSaveFileName.c_str(), img);
^~~~~~~~~~~
cvShowImage
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp: In member function ‘void CCamera::renderImage(CameraParams, pcl::PointCloud<pcl::PointXYZRGBL>::Ptr, pcl::PointIndices&)’:
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp:511:5: error: ‘cvSaveImage’ was not declared in this scope
cvSaveImage(imageSaveFileName.c_str(), img);
^~~~~~~~~~~
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp:511:5: note: suggested alternative: ‘cvShowImage’
cvSaveImage(imageSaveFileName.c_str(), img);
^~~~~~~~~~~
cvShowImage
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp: In member function ‘void CCamera::renderImageCalOccludeCloud(CameraParams, pcl::PointCloud<pcl::PointXYZRGBL>::Ptr, pcl::PointCloud<pcl::PointXYZRGBL>::Ptr)’:
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp:659:5: error: ‘cvSaveImage’ was not declared in this scope
cvSaveImage(imageSaveFileName.c_str(), img);
^~~~~~~~~~~
/home/qrh/文档/TrafficSignQtProgram/TrafficSignBlockCalProject/src/Camera.cpp:659:5: note: suggested alternative: ‘cvShowImage’
cvSaveImage(imageSaveFileName.c_str(), img);
^~~~~~~~~~~
cvShowImage
bin/CMakeFiles/TREFFIC_SIGN_QT_PROJECT.dir/build.make:81: recipe for target 'bin/CMakeFiles/TREFFIC_SIGN_QT_PROJECT.dir/Camera.cpp.o' failed
make[2]: *** [bin/CMakeFiles/TREFFIC_SIGN_QT_PROJECT.dir/Camera.cpp.o] Error 1
CMakeFiles/Makefile2:133: recipe for target 'bin/CMakeFiles/TREFFIC_SIGN_QT_PROJECT.dir/all' failed
make[1]: *** [bin/CMakeFiles/TREFFIC_SIGN_QT_PROJECT.dir/all] Error 2
Makefile:102: recipe for target 'all' failed
make: *** [all] Error 2
root@qrh-pc:/home/qrh/文档/TrafficSignQtProgram/build#
OpenVC 3.4 是我的版本,我尝试包含许多头文件,但它不起作用。
#include "opencv2/opencv.hpp"
#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/highgui/highgui_c.h"
#include "opencv2/videoio.hpp"
#include "opencv2/imgproc/imgproc_c.h"
#include "opencv2/imgproc/imgproc.hpp"
#include <opencv2/imgcodecs.hpp>
cvSaveImage
由openCV2支持。 openCV3和openCV4中支持的替代方法是imwrite
方法。 有关更多信息,请查看此链接
C++:
bool cv::imwrite ( const String & filename,
InputArray img,
const std::vector< int > & params = std::vector< int >()
)
Python:
retval = cv.imwrite( filename, img[, params] )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.