首页 > 编程知识 正文

halcon二值化算子,halcon安装教程

时间:2023-05-04 23:04:45 阅读:133969 作者:3920

union_straight_contours_xld原型union _ straight _ contours _ xld (contours 3360 union contours 3360 max dist,MaxDiff,mmax

功能综合方向近似,相邻直线轮廓。

参数列表contours(input_object ) :输入配置文件

unioncontours(output_object ) :合并后输出配置文件

maxdist(input_control ) :最大距离上限

maxdiff(input_control ) :两个参考轮廓的拟合直线之间的最大角度上限。

percent(input_control ):MaxDist、MaxDiff这两个标准所占的权重因子(百分比) )。

mode(input_control ) :是否应该考虑平行轮廓? (‘every’,‘no parallel’,‘parallel too’)

iterations(input_control ) :迭代次数(任何数字或“‘maximum”)。

如果满足有详细解的条件,算子将合并相邻的XLD轮廓。 每次迭代最多合并两个满足给定条件的配置文件,参数Iteration控制整个步骤的执行频率。

如果两个端点的最小距离小于在MaxDist参数中设置的值,请合并两个轮廓。 端点是轮廓上的点在拟合线上的投影,对end Points有一定的了解。 而且,在两个轮廓所拟合直线的角度小于MaxDiff的情况下,将两个轮廓直接结合。

但是,如果仅满足一个条件,则参数Percent最终将决定是否合并这两个配置文件。 也就是说,如果MaxDist、MaxDiff这两个条件只满足某一个,如果满足以下条件,就合并配置文件。

作为一例,理解公式的意思。 两个轮廓间间隙在参考轮廓上的投影长度值shortest distance=5.0,这些拟合直线的角度为direction difference=0.5,限制参数MaxDist=4.0,MaxDiff=0.625 5.0以上

可以计算出两个值与对应的限制值相差25%。 选择Percent=60%时,shortest distance所占的权重大于direction difference,5/4*0.6(0.625*(1-60% ) )=1.07为1以上相反,按百分比=40 %计算,0.98=1,因此可以合并。

当Percent=100%时,只有shortest distance起作用,同样当Percent=0%时,只有direction difference起作用,当Percent=50%时,两者均等地起作用。

总之,当MaxDist、MaxDiff这两个条件只满足某一方时,通过设定Percent参数来平衡MaxDist、MaxDiff所占的权重。

如果不想合并平行的轮廓,请将模式设置为“noparallel”,反之设置为“paralleltoo”,然后设置“every”以无条件合并所有轮廓。

在Iterations中设定数值时,会达到迭代次数并结束。 设置“maximum”时,将重复直到轮廓消失。

在get_regression_params_xld中返回轮廓参数之前,必须调用regress_contours_xld计算轮廓的回归直线参数。

例1、当两个轮廓属性满足MaxDist、MaxDiff的条件时,看Percent是否发挥作用。

2、观察Percent的权重偏向一个参数时,MaxDist,MaxDiff参数的变换如何影响轮廓合并。

(1)最大距离参数

)2) MaxDiff参数

代码gen _ contour _ polygon _ xld (first contour,[ 500,1000 ],[ 1,1 ] ) )

gen _ contour _ polygon _ xld (second contour,[ 1001,1500 ],[ 2,501 ] ) )。

concat_obj(firstcontour,SecondContour,ConcatContour ) )。

regress _ contours _ xld (concat contour,RegressContours,‘drop’,1 ) ) ) ) ) ) ) ) ) ) ) ) )。

union _ straight _ contours _ xld (regress contours,UnionContours,sqrt(2)2),rad ) 44.99999 ),0,‘noparallel

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。