halcon 化妆品标签褶皱检测_

************************************************第一步: 程序初始化**************************************************
*关闭当前有打开的窗口
dev_close_window ()

*关闭程序计数器,图形变量,窗口图形更新
dev_update_off ()

*打开一个新窗口
dev_open_window (0, 0, 640, 512, 'black', WindowHandle)

*设置字体信息:字体大小为16,字体为mono,粗体,斜体
set_display_font (WindowHandle, 14, 'mono', 'true', 'false')

stop ()

************************************************第二步: 批量读取图像**************************************************

*批量读取4张图像到Images图形变量里
read_image (Images, 'photometric_stereo/shampoo_label_0' + [1:4])
for I := 1 to 4 by 1
    *从对象数组里选择对象元素
    select_obj (Images, ObjectSelected, I)
    *显示选择的图像
    dev_display (ObjectSelected)
    *延时0.5秒
    wait_seconds (0.5)
endfor

************************************************第三步: 获取反照率和表面梯度**************************************************
* 物像里的光照方向
Tilts := [6.1,95.0,-176.1,-86.8]
* 光源和物体之间的角度
Slants := [41.4,42.6,41.7,40.9]
ResultType := ['gradient','albedo']
photometric_stereo (Images, HeightField, Gradient, Albedo, Slants, Tilts, ResultType, 'poisson', [], [])

* 显示反射图
dev_display (Albedo)

stop ()


* 使用梯度字段计算表面的高斯曲率,缺陷在曲率图像中通常易于检测
derivate_vector_field (Gradient, MeanCurvature, 1.0, 'mean_curvature')

************************************************第四步: 获取检测到的缺陷**************************************************

* 对曲率图像进行阈值
threshold (MeanCurvature, Region, -10, -0.07)

* 对区域进行开运算
opening_circle (Region, RegionOpening, 1)

* 对区域进行连通处理
connection (RegionOpening, ConnectedRegions)

* 将缺陷过滤出来
select_shape (ConnectedRegions, Defects, 'area', 'and', 50, 99999)

* 将区域转换为圆
shape_trans (Defects, Circle, 'outer_circle')

* 设置区域填充方式
dev_set_draw ('margin')

* 设置输出对象的显示颜色
dev_set_color ('red')

* 显示反射图
dev_display (Albedo)

* 显示缺陷
dev_display (Defects)

* 显示缺陷外圆
dev_display (Circle)

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值