qq_41517828 2018-04-22 03:01 采纳率: 25.9%
浏览 3696
已结题

opencv代码问题,为什么会这么多错误

这段代码为什么会有这么多错误,怎么修改
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/features2d/features2d.hpp"
#include
#include
using namespace cv;
using namespace std;
// 计算图像矩
void cacMoments(cv::Mat src)
{
Mat srcGray;
vector > contours;
vector hierarchy;
// 高斯滤波
GaussianBlur(src, src, Size(3, 3), 0.1, 0, BORDER_DEFAULT);
// 灰度转换
cvtColor(src, srcGray, CV_RGB2GRAY);
// 轮廓边界检测
findContours(srcGray, contours, hierarchy,
CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE, Point(0, 0));
// 绘制边界
// drawContours(src, contours, -1, cvScalar(0,0,255));
printf("Number of contours: %d\n", (int)contours.size());
// 计算轮廓矩
vector mu(contours.size());
for (int i = 0; i < (int)contours.size(); i++)
{
mu[i] = moments(contours[i], false);
}
// 分析矩计算图像相关特征
for (int i = 0; i < (int)contours.size(); i++)
{
// 面积 重心 边界轮廓长度
int area = mu[i].m00;
int cx = mu[i].m10 / mu[i].m00;
int cy = mu[i].m01 / mu[i].m00;
int perimeter = arcLength(contours.at(i), true);
// 椭圆
if (int(contours.at(i).size()) <= 5)
{
continue;
}
else
{
RotatedRect rRect = fitEllipse(contours.at(i));
double orientation = rRect.angle;
double orientation_rads = orientation*3.1416 / 180;
double majorAxis = rRect.size.height > rRect.size.width ? rRect.size.height : rRect.size.width;
double minorAxis = rRect.size.height > rRect.size.width ? rRect.size.width : rRect.size.height;
// 圆形度 离心率 周长 直径
double roundness = pow(perimeter, 2) / (2 * 3.1416*area);
double eccentricity = sqrt(1 - pow(minorAxis / majorAxis, 2));
double ratio = (minorAxis / majorAxis) * 100;
double diameter = sqrt((4 * area) / 3.1416);
// 输出相关特征信息
printf("Area: %d\n", area);
printf("Perimeter: %d\n", perimeter);
printf("Major Axis: %.1f\n", majorAxis);
printf("Minor Axis: %.1f\n", minorAxis);
printf("Orientation: %.1f\n", orientation);
printf("Roundness: %.1f\n", roundness);
printf("Eccentricity: %.1f\n", eccentricity);
printf("Ratio: %.1f\n", ratio);
printf("Diameter: %.1f\n", diameter);
printf("\n");
// 绘制矩形及椭圆
ellipse(src, rRect, cvScalar(0, 255, 0));
rectangle(src, boundingRect(contours.at(i)), cvScalar(0, 0, 255));
// 绘制相关坐标
//line(src, Point(cx-30, cy), Point(cx+30, cy), cvScalar(0,0,255));
//line(src, Point(cx, cy-30), Point(cx, cy+30), cvScalar(0,0,255));
// 绘制起始线
line(src, Point(cx, cy), Point((int)(cx + 30 * cos(orientation_rads)),
(int)(cy + 30 * sin(orientation_rads))), cvScalar(255, 0, 0), 1);
// 输出图像起始
char pChar[100];
sprintf(pChar, "Ori: %.0f", orientation);
putText(src, pChar, Point(cx, cy), FONT_HERSHEY_SIMPLEX, 0.4, cvScalar(255));
}
}
cv::imshow("result", src);
}
int main() {
cv::Mat srcImage = imread("1.png");
if (!srcImage.data)
return -1;
cv::imshow("srcImage", srcImage);
// 计算轮廓矩
cacMoments(srcImage);
cv::waitKey(0);
return(0);
}

严重性 代码 说明 项目 文件 行 禁止显示状态
错误(活动) 无法打开 源 文件 "opencv2/imgproc/imgproc.hpp" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 2

错误(活动) 无法打开 源 文件 "opencv2/highgui/highgui.hpp" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 3

错误(活动) 无法打开 源 文件 "opencv2/features2d/features2d.hpp" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 4

错误(活动) 名称必须是命名空间名 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 7

错误(活动) 不允许使用不完整的类型 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 10

错误(活动) 后面有“::”的名称一定是类名或命名空间名 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 10

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 10

错误(活动) 应输入“;” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 11

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 18

错误(活动) 未定义标识符 "src" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 18

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 18

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 20

错误(活动) 未定义标识符 "srcGray" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 20

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 20

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 24

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 24

错误(活动) vector 不是模板 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 26

错误(活动) 未定义标识符 "Moments" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 26

错误(活动) 未定义标识符 "contours" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 26

错误(活动) 应输入声明 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 27

错误(活动) 未定义标识符 "sqrt" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 55

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 57

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 57

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 58

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 58

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 59

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 59

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 60

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 60

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 61

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 61

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 62

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 62

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 63

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 63

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 64

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 64

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 65

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 65

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 66

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 68

错误(活动) 未定义标识符 "src" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 68

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 68

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 69

错误(活动) 未定义标识符 "src" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 69

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 69

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 74

错误(活动) 未定义标识符 "src" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 74

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 74

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 78

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 78

错误(活动) 此声明没有存储类或类型说明符 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 79

错误(活动) 未定义标识符 "src" ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 79

错误(活动) 应输入“)” ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 79

错误(活动) 应输入声明 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 80

错误(活动) 应输入声明 ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\ConsoleApplication1\main.cpp 83

错误 C1083 无法打开包括文件: “opencv2/imgproc/imgproc.hpp”: No such file or directory ConsoleApplication1 d:\基于视觉的副驾驶座儿童乘坐提醒系统设计程序文档20180417\阈值化处理\consoleapplication1\main.cpp 2

  • 写回答

5条回答 默认 最新

  • Nesta_zhu 2018-04-22 03:20
    关注

    路径只能是英文呗,不能有中文

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器