设为首页收藏本站
搜索
12
返回列表 发新帖
开启左侧

[已解决] 计算一个圆环的最大厚度,但圆环内圈并不光滑

[复制链接]
 楼主 Kiki 发表于 2016-8-8 19:36:02 | 显示全部楼层

黄金VIP|主题 |帖子 |积分 1552

RE: 计算一个圆环的最大厚度,但圆环内圈并不光滑

KinHim 发表于 2016-8-8 09:54
给张原图,练练手

图在楼下
51Halcon.com 专注于机器视觉应用技术
KinHim 发表于 2016-8-18 09:29:50 | 显示全部楼层

部门助理|主题 |帖子 |积分 418

RE: 计算一个圆环的最大厚度,但圆环内圈并不光滑


用了region xld 相交点求距离,做得好粗糙25 27 22
51Halcon.com 专注于机器视觉应用技术
 楼主 Kiki 发表于 2016-8-26 15:21:37 | 显示全部楼层

黄金VIP|主题 |帖子 |积分 1552

RE: 计算一个圆环的最大厚度,但圆环内圈并不光滑

KinHim 发表于 2016-8-18 09:29
用了region xld 相交点求距离,做得好粗糙25 27 22

这个就是思路的尝试哈
51Halcon.com 专注于机器视觉应用技术
lin-chaosheng 发表于 2016-10-15 17:35:42 | 显示全部楼层

正式员工|主题 |帖子 |积分 50

猴赛雷呀
51Halcon.com 专注于机器视觉应用技术
回复

使用道具 举报

FONG93 发表于 2016-10-28 08:47:42 | 显示全部楼层

正式员工|主题 |帖子 |积分 78

学习大神操作,谢谢无私的分享!!!!
51Halcon.com 专注于机器视觉应用技术
opencv 发表于 2016-12-5 15:51:24 | 显示全部楼层

正式员工|主题 |帖子 |积分 69

您好,有一处我不太懂,计算厚度时,
MinDis:=Radius2-DistanceOut-Radius
MaxDis:=Radius2+DistanceIn-Radius
这块我还是有点没太弄明白  为什么计算厚度时,考虑两个圆同心度问题。
51Halcon.com 专注于机器视觉应用技术
chenheren339 发表于 2016-12-9 11:11:33 | 显示全部楼层

正式员工|主题 |帖子 |积分 127

RE: 计算一个圆环的最大厚度,但圆环内圈并不光滑

read_image (Image, '1.bmp')
dev_close_window()
dev_open_window_fit_image(Image, 0, 0, -1, -1, WindowHandle)
dev_display(Image)
threshold(Image, Region, 0, 80)
closing_circle(Region, RegionClosing, 5)
fill_up(RegionClosing, RegionFillUp)
*求外圆
opening_circle(RegionFillUp, RegionOpening1, 2)
connection(RegionOpening1, ConnectedRegions1)
select_shape_std(ConnectedRegions1, SelectedRegions1, 'max_area', 50)
gen_contour_region_xld(SelectedRegions1, Contours, 'border')
fit_circle_contour_xld(Contours, 'algebraic', -1, 0, 0, 3, 2, Row, Column, Radius, StartPhi, EndPhi, PointOrder)
gen_circle_contour_xld(ContCircle, Row, Column, Radius, 0, 6.28318, 'positive', 1)
*求内圆
difference(RegionFillUp, RegionClosing, RegionDifference)
opening_circle(RegionDifference, RegionOpening, 2)
connection(RegionOpening, ConnectedRegions)
select_shape_std(ConnectedRegions, SelectedRegions, 'max_area', 70)
gen_contour_region_xld(SelectedRegions, Contours1, 'border')
smallest_circle_xld(Contours1, Row1, Column1, Radius1)
gen_circle_contour_xld(ContCircle1, Row1, Column1, Radius1, 0, 6.28318, 'positive', 1)
*显示
dev_clear_window()
dev_display(Image)
dev_display(ContCircle1)
dev_display(ContCircle)
disp_message(WindowHandle, '厚度为:'+(Radius-Radius1), 'window', Row1, Column1, 'black', 'true')
1.PNG
51Halcon.com 专注于机器视觉应用技术
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

关闭

本站推荐上一条 /5 下一条

zazaniao
在线咨询
咨询热线
15019223858
关注我们

51Halcon机器视觉 | 粤ICP备15095995号-2|粤公网安备44030602000670号|  |

GMT+8, 2017-7-22 10:53 , Processed in 0.032445 second(s), 10 queries , Gzip On, Redis On.

快速回复 返回顶部 返回列表