QQ登录

只需一步,快速开始

halcon gen_circle函数介绍

[ 复制链接 ]
gen_circle( : Circle : Row, Column, Radius : )
gen_circle生成一个或多个由圆心Row, Column和半径描述的圆。
如果要生成多个圆,则坐标必须以元组的形式传递。
gen_circle只创建对称的圆。
为了实现这一点,半径在内部四舍五入到0.5的倍数。
如果为半径指定整数(即, 1, 2, 3,…)得到了一个均匀的直径,
因此圆只能对一个坐标为0.5的小数部分的中心对称。
因此,中心的坐标在内部适用于小数部分为0.5的最近坐标。


这里,整数坐标四舍五入为下一个较小的值,小数部分为0.5。
对于奇数直径(即,半径= 1.5,2.5,3.5,…),
圆只能是关于一个中心对称与整数坐标。
因此,在内部,中心的坐标四舍五入到最近的整数坐标。
需要注意的是,
上述算法可能导致即使Row和Column中指定的坐标相同,
偶数直径的圆并不包含在下一个更大的奇数直径的圆中。
如果圆超出了图像边缘,
那么如果系统标志'clip_region'的值被设置为'true' (set_system),
那么圆圈将被剪切到当前的图像格式.


由于速度的原因,生成的区域可能在边界上包含额外的像素,
并且边界上的一些单独像素可能丢失。
这可能导致操作符smallest_circle和gen_circle之间的不一致。


Circle为输出的区域,
Row, Column, Radius为输入的圆中心坐标和半径。


例程
read_image(Image,'fabrik')
gen_circle(Circle,300.0,200.0,150.5)
reduce_domain(Image,Circle,Mask)
dev_clear_window ()
dev_display (Mask)

  

halcon从自学到接项目视频教程,另外再赠送全网最全资源  

  

欢迎围观我录制的一套halcon自学视频教程(进入)



回复

使用道具 举报

快速回复 返回列表 客服中心 搜索