• halcon之区域:多种区域(Region)特征(5)


    一、提要

            区域的算子,初学者最好是每个都试试,这不仅是个加强映像问题,而且是了解Halcon能力的过程,以及提高工程实践效率问题。本篇介绍几个在数值图像分析中,较为有用的区域算子。请学友们共享!

    本篇专门针对区域的属性这个特征进行实验验证。与前几篇是一个系列,包括:

     halcon之区域:区域(Region)上的轮廓算子

     halcon之区域:多种区域(Region)生成(3)

     halcon之区域:多种区域(Region)生成(4)_

    halcon之区域:get_region_chain和get_region_contour_

    二、区域的特征

    2.1 area_center区域中心

    • area_center:  功能:一个区域的面积(大小)和中心。

    area_center( regin, ares,Row1, Column1)

    1. set_color(3600,'red')
    2. read_image (Image, 'f:/images/DOTS/block.jpg')
    3. rgb1_to_gray(Image,gray)
    4. get_image_size(gray,width,height)
    5. fast_threshold (gray,regin,0, 50 , 7)
    6. area_center(regin,ares,Row1, Column1)

    2.2 circularity计算圆度

    • circularity:功能:影响一个区域与圆的相似度的形状系数。

    circularity(regin, Circularity)

    圆度范围:0-1

    1. set_color(3600,'red')
    2. read_image (Image, 'f:/images/DOTS/many_block.jpg')
    3. rgb1_to_gray(Image,gray)
    4. get_image_size(gray,width,height)
    5. fast_threshold (gray,regin,0, 50 , 7)
    6. connection(regin, ConnectedRegions)
    7. circularity(ConnectedRegions, Circularity)

     圆度分别为:0.395611、0.64085、0.949253、0.529871;从视觉角度似乎一致。

    2.3. compactness紧密度

    • compactness:功能:影响一个区域致密度的形状系数。

    紧密度:3.43204、1.25161、1.10005、2.074

    紧密度和圆度类似,而且,圆的紧密度最高。

    2.4. connect  and_holes连接和孔的数量

      功能:连接部分和中断的数目。

    connect_and_holes(regin, NumConnected, NumHoles)

    1. set_color(3600,'red')
    2. read_image (Image, 'f:/images/DOTS/block.jpg')
    3. rgb1_to_gray(Image,gray)
    4. get_image_size(gray,width,height)
    5. fast_threshold (gray,regin,0, 50 , 7)
    6. connect_and_holes(regin, NumConnected, NumHoles)

    连接为2,孔洞为2的图如下。 

    2.5. contlength获取区域外轮廓长度

      功能:描述一个区域轮廓(contour)的长度。

    contlength(regin, ContLength)

    这里注意,大家去验证,gen_contour_region_xld和contlength(regin, ContLength)两种求外轮廓长度不一致:

    1. gen_contour_region_xld (regin, Contours, 'border')
    2. contlength(regin, ContLength)

    2.6.区域的凸性

    convexity  功能:影响一个区域凸性的形状系数。

     结果:0.539397、0.991524、0.994038、0.72976,可以看到,圆和方凸性差不多。

    2.7. diameter  region

      功能:一个区域两个边界点的最大距离。

    diameter_region(ConnectedRegions,row1,col1,row2,col2,dim)

    1. set_color(3600,'red')
    2. read_image (Image, 'f:/images/DOTS/many_block.jpg')
    3. rgb1_to_gray(Image,gray)
    4. get_image_size(gray,width,height)
    5. fast_threshold (gray,regin,0, 50 , 7)
    6. connection(regin, ConnectedRegions)
    7. diameter_region(ConnectedRegions,row1,col1,row2,col2,dim)

    最大直径:161.608、155.013、151.743、132.91 

    2.8. eccentricity椭圆参数

      功能:来源于椭圆参数的形状系数。

    eccentricity(Regions : : : Anisometry, Bulkiness, StructureFactor)

    显然 Anisometry是长短轴比例;以上A是实际测量的椭圆内像素面积。Bulkiness实际面积和理论面积比例。StructureFactor结构系数,

    2.9. elliptic  axis相似椭圆

      功能:相似椭圆的参数。

    2.10.euler_number欧拉数

    功能:计算Euler数目。算子 euler_number 计算欧拉数,即连接组件数与孔数之差。

    比如:下图的空洞(背景算空洞),是绿色字编号;前景的连接体是四个黑区;因此欧拉数为:

    Number(黑连接4个)- 空洞(白的5个)=-1

  • 相关阅读:
    年轻人的第一条SQL查询语句
    《红蓝攻防对抗实战》二.内网探测协议出网之TCP/UDP协议探测出网
    ES & Kibana 安装
    [附源码]JAVA毕业设计互联网保险网站(系统+LW)
    Lumiprobe 活性染料丨羧酸:Sulfo-Cyanine7.5羧酸
    Ai绘画描述词 关键词大全 真人美女 二次元卡通美女 国漫动漫效果
    Vue2-低版本编译兼容-基础语法-data-methods-双向数据绑定v-model
    《Boosting Object Detection with Zero-Shot Day-Night Domain Adaptation》2024CVPR
    vue项目生产环境隐藏暴露的代码_源码
    Flutter 高级教程之如何开发iOS Widget小组件展示SQLite本地数据库数据(教程含完整源码)
  • 原文地址:https://blog.csdn.net/gongdiwudu/article/details/125464792