gpt4 book ai didi

c++ - 编译 private.hpp OpenCV 3.0.0-rc1 时出错

转载 作者:行者123 更新时间:2023-11-28 06:14:40 25 4
gpt4 key购买 nike

我下载了 OpenCV 3.0.0-rc1 并使用 CMAKE-gui 3.2.2 使用 VS2012 Win64 编译器构建它。生成了二进制文件和库,我使用 Qt 64 位对其进行了设置。所有程序都工作正常,除了当我尝试使用特性 cv::LineSegmentDetector 时,它在 private.hpp 文件中显示编译错误。错误说

unexpected end-of-line

我的代码如下

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgcodecs/imgcodecs.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/private.hpp>
#include <opencv2/core/utility.hpp>

using namespace std;

int main()
{
cv::Mat image = cv::imread("C:\\Users\\IMAGE\\Desktop\\PROJ\\SAMPLE.png");
cv::imshow("TEST",image);
cv::waitKey();

cv::LineSegmentDetector lsd;

return 0;
}

在跟踪错误后,我发现 private.hpp 中以下代码部分的第 2 行突出显示了错误。

#ifdef HAVE_EIGEN
# if defined __GNUC__ && defined __APPLE__
# pragma GCC diagnostic ignored "-Wshadow"
# endif
# include <Eigen/Core>
# include "opencv2/core/eigen.hpp"
#endif

# if defined __GNUC__ && defined __APPLE__

如果我犯了一些实现错误或 private.hpp 中的一些更改可以修复此错误,请告诉我。我正在使用 Windows 8 64 位。

最佳答案

哦,永远不要尝试使用所谓的“私有(private)”东西,我猜...

#include <opencv2/opencv.hpp>       // includes all others
#include <opencv2/core/utility.hpp> // getTickCount, etc.

int main()
{
// LineSegmentDetector is an abstract class, you can't create an
// instance on the stack, but need to use Ptr and factory:
cv::Ptr<cv::LineSegmentDetector> lsd = cv::createLineSegmentDetector();
return 0;
}

关于c++ - 编译 private.hpp OpenCV 3.0.0-rc1 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30565559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com