TY__TY 2022-08-16 19:02 采纳率: 0%
浏览 44
已结题

角点检测的输出数组无法被赋值,应该是数组初始化的问题,怎么解决这个问题呢?

c++ opencv 在做图像处理时,需要进行角点检测,但是定义完数组,并且运行角点检测的函数后,无法赋值,经过检测应该不是参数的问题导致没有输出值,主要问题应该在于数组定义这里,不知道怎么解决

vector <Point2f> points_corners ;//取角点
int max_corners = 5;//取两个角点即可
double quality_level = 0.1;//角点质量
double min_distance = 50;//小于10的两个角点要合并
int block_size = 12;//常规取值,若分辨率大可增加值
bool use_harris = false;//使用ShiTomasi算法
double k = 0.04;
goodFeaturesToTrack(img_canny, points_corners, max_corners, quality_level, min_distance, Mat(), block_size, use_harris, k);    //角点检测

//将检测到的角点绘制到原图上
Point p_left;
Point p_right;
p_left.x = points_corners[0].x + 5;
p_left.y = points_corners[0].y;
p_right.x = points_corners[1].x - 5;
p_right.y = points_corners[1].y;

报错是在p_left.x = points_corners[0].x + 5这里,报错是0x00007FF63F151E63 处有未经处理的异常(在 contact angle.exe 中): 0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突。

我试过在初始化vector这里就进行赋值,但是也是同样的报错,所以应该是初始化就有问题了

我需要从角点检测这个函数中得到两个点的坐标,并进行使用,有什么可以解决的方法吗

  • 写回答

3条回答 默认 最新

  • rsz364110 2022-08-16 20:58
    关注

    能发一下完整代码吗?

    评论

报告相同问题?

问题事件

  • 系统已结题 8月24日
  • 创建了问题 8月16日

悬赏问题

  • ¥66 换电脑后应用程序报错
  • ¥50 array数据同步问题
  • ¥15 pic16F877a单片机的外部触发中断程序仿真失效
  • ¥15 Matlab插值拟合差分微分规划图论
  • ¥15 keil5 target not created
  • ¥15 C/C++数据与算法请教
  • ¥15 怎么找志同道合的伙伴
  • ¥20 如何让程序ab.eXe自已删除干净硬盘里的本文件自己的ab.eXe文件
  • ¥50 爬虫预算充足,跪巨佬
  • ¥15 滑块验证码拖动问题悬赏