75.第三题

  • Image Acquisition 01: Code generated by Image Acquisition 01
    list_files ('E:/机器视觉AI+C#+Halcon/75第二题', ['files','follow_links','recursive'], ImageFiles)
    tuple_regexp_select (ImageFiles, ['\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)
    for Index := 0 to |ImageFiles| - 1 by 1
    read_image (Image, ImageFiles[Index])
    *图像分割
    binary_threshold (Image, Region, 'max_separability', 'dark', UsedThreshold)
    *填充
    fill_up (Region, RegionFillUp)
    *开运算
    opening_circle (RegionFillUp, RegionOpening, 5.5)
    *选择最大的
    connection (RegionOpening, ConnectedRegions)
    select_shape_std (ConnectedRegions, SelectedRegions, 'max_area', 70)
    *抠图
    reduce_domain (Image, SelectedRegions, ImageReduced)
    *再分割 选择白色的
    binary_threshold (ImageReduced, Region1, 'max_separability', 'light', UsedThreshold1)
    opening_circle (Region1, RegionOpening, 1)
    *缝补闭合区域
    closing_circle (RegionOpening, RegionClosing, 3.5)
    connection (RegionClosing, ConnectedRegions1)
    *选择最大的
    select_shape_std (ConnectedRegions1, SelectedRegions1, 'max_area', 70)
    shape_trans (SelectedRegions1, RegionTrans, 'rectangle2')
    *获取边缘像素
    reduce_domain (ImageReduced, RegionTrans, ImageReduced1)
    binary_threshold (ImageReduced1, Region2, 'max_separability', 'light', UsedThreshold2)
    opening_circle (Region2, RegionOpening1, 3.5)
    connection (RegionOpening1, ConnectedRegions2)
    *数一下数量
    count_obj (ConnectedRegions2, Number)

    dev_get_window (WindowHandle)
    if(Number<3)
    disp_message (WindowHandle, 'NG', 'Image', 12, 12, 'black', 'true')
    endif

endfor

posted @ 2026-10-31 19:08  浮云1  阅读(5)  评论(0)    收藏  举报