预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN110020657A(43)申请公布日2019.07.16(21)申请号201910035429.7(22)申请日2019.01.15(71)申请人浙江工业大学地址310014浙江省杭州市下城区朝晖六区潮王路18号(72)发明人董辉毛小海林文杰俞立张文安滕游(74)专利代理机构杭州斯可睿专利事务所有限公司33241代理人王利强(51)Int.Cl.G06K9/46(2006.01)G06K9/38(2006.01)权利要求书2页说明书5页附图4页(54)发明名称一种裁床的位图轮廓坐标提取方法(57)摘要一种裁床的位图轮廓坐标提取方法,包括如下步骤:1)将设计位图灰度化;2)灰度图像二值化;3)将二值图像去噪,保证轮廓信息的正确性,避免噪音的干扰;4)使用Canny算子将去噪后的图像提取轮廓,得到切割轮廓的所有节点;5)初步剔除掉得到的轮廓中不需要进行切割的轮廓,并将确定为闭合轮廓的非闭合轮廓拼接起来;6)剔除掉轮廓中处在同一条直线上的冗余节点,在不影响切割效果的情况下提高了切割速度,重复步骤6),直至剔除掉所有的冗余节点;7)去除掉内轮廓中包含的轮廓,去除掉得到的所有轮廓中不需要切割的轮廓。本发明在极大程度上还原了原图的轮廓信息,保证了切割精度,并提高了切割的工作效率。CN110020657ACN110020657A权利要求书1/2页1.一种裁床的位图轮廓坐标提取方法,其特征在于,所述方法包括如下步骤:1)将导入的位图进行灰度处理;2)将灰度图像进行二值化处理;3)将2)中处理得到的二值化图像进行中值滤波、开运算,去除图像的噪音干扰;4)将去噪后的图像使用Canny算子进行轮廓提取,得到图案的粗糙轮廓,所有的轮廓保存在vector<vector<Point>>Contours中;5)将得到的轮廓线进行筛选、拼接处理;6)筛选轮廓中关键节点;7)筛选内轮廓,遍历每条轮廓PointList,然后判断当前轮廓上的所有点与其他轮廓的位置关系,如果,满足有一条轮廓与当前轮廓上所有点的位置关系都是包含关系,则判断当前轮廓为内轮廓,并且将外轮廓计数变量OuterContour加1;当OuterContour计数超过3时,则判断当前为内轮廓中的内轮廓,删除当前轮廓,并进行7)重复操作。2.如权利要求1所述的一种裁床的位图轮廓坐标提取方法,其特征在于,所述步骤5)中,将得到的轮廓线进行筛选、拼接处理的步骤如下:5.1)遍历所有的轮廓Contours,筛选出闭合轮廓并且面积小于阈值AreaThreshold的轮廓,和非闭合轮廓中周长大于LengthThreshold的轮廓;如果是前者,就将此轮廓从容器中删除;如果是后者,判定此轮廓可能是闭合轮廓的残缺轮廓,将这种残缺轮廓保存在vector<vector<Point>>IncomContours中,并删除Contours中这条轮廓的存储列表,进入下一步;5.2)遍历IncomContours,找到一条非闭合轮廓Contour1的端点TPointStart1和TPointEnd1,然后寻找一条满足有一个端点和这条轮廓端点距离小于阈值DisThresthold的轮廓Contour2;Contour2的端点为TPointStart2和TPointEnd2,进行步骤5.3);如果找不到Contour2,则判断Contour1是干扰轮廓,并删除Contour1,重复操作5.2);5.3)判断这两条轮廓的两端端点距离,如果同时满足小于阈值DisThresthold,则判断Contour1和Contour2是属于同一条闭合轮廓,将Contour2添加到Contour1列表,添加Contour2时,两条轮廓的相邻端点一一对应,删除Contour1列表,然后进行步骤5.2);否则,将Contour2和Contour1中端点距离大于阈值DisThresthold1的两个端点作为新的TPointStart1和TPointEnd1,重复步骤5.2);5.4)IncomContours中剩下的都是补全的闭合轮廓,将IncomContours添加到Contours中。3.如权利要求1或2所述的一种裁床的位图轮廓坐标提取方法,其特征在于,所述步骤6)中,筛选轮廓中关键节点的步骤如下:6.1)遍历闭合轮廓Contours,找到轮廓相邻三个节点,第一个节点为Point1(x1,y1),第二个节点是Point2(x2,y2),第三个节点是Point3(x3,y3);6.2)计算相邻节点构成的直线的表达式的斜率k和偏移量b,Point1(x1,y1)和Point2(x2,y2)构成的直线是y=k1x+b1,Point2(x2,y2)和Point3(x3,y3)