欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2017105039514
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2023-12-11
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种图像关键直线检测方法,包括如下步骤:

步骤1:将原始图像缩放为宽、高分别width和height的图像D;

步骤2:对图像D进行高斯滤波和Canny边缘检测操作,得到边缘图D1,图像D1的边缘点集合为B={bi|i=0,1,…,NB-1},bi表示图像D1上的边缘点,且点bi的横坐标和纵坐标分别记作bi.x,bi.y,NB表示集合B中元素的个数;

步骤3:得到图像D1中的曲线集C;

步骤4:拆分曲线集C中所有满足σ≥0.4的曲线Ci,σ为曲线Ci的直线拟合误差,根据公式(2)计算,根据拆分得到的所有子曲线构建新的曲线集L,剔除曲线集L中曲线长度小于α的曲线;

曲线的拆分规则为:根据曲线两个端点构建直线h,找到曲线上距离直线h最远的点,将其作为拆分点将曲线拆分为两条子曲线,并不断递归拆分所有满足σ≥0.4的子曲线;

其中,rj表示曲线Ci上第j个像素点,NR为曲线Ci上点的数量,h为连接点r0和点 的直线,d2(rj,h)表示点rj到直线h的垂直距离的平方;

步骤5:利用最小二乘法对L中的每条曲线进行直线拟合,得到直线集G,直线集G中每条直线Gi的角度记作Gi.θ,Gi.θ为Gi与水平直线的夹角,且0°≤Gi.θ≤90°;

步骤6:确定直线集G中直线的类别数m;

步骤7:用K-means算法将G中所有直线聚类成m个直线子集Ti,i=0,1,…,m-1;

步骤8:计算每个直线集Ti对应的直线长度总和,i=0,1,…,m-1,找到直线长度总和最大的直线集,记为Tk,则Tk中长度最长的直线即为图像的关键直线。

2.如权利要求1所述的图像关键直线检测方法,其特征在于:所述步骤3:得到图像D1中的曲线集C,具体步骤为:步骤3.1:若集合B中存在满足PN(bk)∈{20,21,…,27,20+21,21+22,…,27+20}的点bk,则将bk确定为一条新曲线Cz的起始点,初始化曲线Cz={bk},将点bk从集合B中剔除,转步骤

3.2;否则,转步骤4;其中PN(bk)表示点bk的八邻域值,根据公式(1)计算得到;

其中,E(x,y)表示集合B中是否存在坐标为(x,y)的点,若存在则E(x,y)=1,否则E(x,y)=0;

步骤3.2:若PN(bk)∈{20,21,…,27,20+21,21+22,…,27+20},则转步骤3.3;否则,若NCz>α,将Cz加到曲线集C中,转步骤3.1;若NCz≤α,则不保留曲线Cz,直接转步骤3.1,其中,NCz表示曲线Cz的长度,α为预先设定的最小曲线长度;

步骤3.3:若PN(bk)∈{20,21,…,27},则找到集合B中坐标满足bt.x-bk.x|+|Bt.y-bk.y|≤2的点bt,令bk=bt,确定bk为曲线Cz上的点,令Cz=Cz∪{bk},并将点bk从集合B中剔除,转步骤3.2;否则若PN(bk)∈{20+21,21+22,…,27+20},找到集合B中坐标满足bt.x-bk.x|+|bt.y-bk.y|=1的点bt,令bk=bt,确定bk为曲线Cz上的点,令Cz=Cz∪{bk},将点bk从集合B中剔除,转步骤3.2。

3.如权利要求1所述的图像关键直线检测方法,其特征在于:所述步骤6:确定直线集G中直线的类别数m,具体步骤为:步骤6.1:创建直线集O,将直线集G中Gi.θ最小的直线Gi加到集合O中;

步骤6.2:根据公式(3)计算直线集G中每条直线Gi与O中所有直线的最小角度差MinAngleD(Gi),若G中存在直线的最小角度差大于β,则选取直线集G中最小角度差最大的直线加到直线集O中,转步骤6.2,其中β为预先设定的相似直线的最大角度差;否则,若G中直线的最小角度差都小于β,则令m=NO,转步骤7;

MinAngleD(Gi)=min{|Gi.θ-Oj.θ|,j=0,1,…,NO-1}  (3)其中,min{}表示取集合中的最小值,Oj.θ表示集合O中第j条直线的角度,NO表示集合O中直线的数量。