opencv检测相交点_OpenCV:曲线的检测与提取-0

该博客介绍了如何使用OpenCV在二值图像中寻找曲线,并检测相交点。通过定义八邻域,从找到的第一个点开始,分别向两个方向遍历相邻像素,构建线段。当线段长度超过10个点时,将其存储为检测到的曲线。该方法适用于图像处理中的曲线提取和相交点检测任务。
摘要由CSDN通过智能技术生成

//寻找曲线 :

void findLines(Mat &binaryImg, vector> &outLines)

{

//八邻域

vector neighborPtVec;

neighborPtVec.push_back(Point(-1,-1));

neighborPtVec.push_back(Point(0,-1));

neighborPtVec.push_back(Point(1,-1));

neighborPtVec.push_back(Point(1,0));

neighborPtVec.push_back(Point(1,1));

neighborPtVec.push_back(Point(0,1));

neighborPtVec.push_back(Point(-1,1));

neighborPtVec.push_back(Point(-1,0));

Point firstPt;

while (findFirstPoint(binaryImg, firstPt))

{

deque line;//点的队列

line.push_back(firstPt);//存储第一个点

//由于第一个点不一定是线段的起始位置,

//因此两个方向都要查找

Point currPt = firstPt;//当前点

int currFlag = 0;//标志

Point nextPt;//下一个点

int nextFlag;//下一点的标志

while (findNextPoint(neighborPtVec, binaryImg, currPt, currFlag, nextPt

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值