Halcon 边缘提取

文章目录

算子

edges_image 对于图像进行边缘提取

edges_image(Image : ImaAmp, ImaDir : Filter, Alpha, NMS, Low, High : ):使用Deriche, Lanser, Shen或者Canny 滤波器进行边缘提取

参数:

Image :输入图像

ImaAmp:边缘振幅(梯度大小)图像

ImaDir :图像边缘方向

Filter:边缘算子

Alpha:过滤器参数,小的值导致强平滑,但是更少的细节(canny算子相反)

NMS:非最大抑制(设置为none,表示不需要使用该值)

Low:滞后阈值操作的下阈值(如果不需要阈值设置,则为负值)

High :滞后阈值操作的上阈值(如果不需要阈值设置,则为负值)

    close_edges 关闭边缘间隙,封闭图形

    close_edges(Edges, EdgeImage : RegionResult : MinAmplitude : )
    

    输入包含边缘的区域、

    输入振幅图像、

    输出包含闭合边缘的结果区域、

    输入最小边缘振幅( 1 ≤ MinAmplitude ≤ 255

      frei_amp 获取边缘幅度

      frei_amp(Image : ImageEdgeAmp : : )
      

      参数翻译(顺序对应以上参数顺序):

      输入图像、

      输出梯度图像

        kirsch_amp 边缘幅度

        kirsch_amp(Image : ImageEdgeAmp : : )
        

        参数

        输入图像、

        输出幅度图像、

          kirsch_dir 使用Kirsch算子检测边缘(幅值和相位)

          kirsch_dir(Image : ImageEdgeAmp, ImageEdgeDir : : )
          参数
          

          输入图像、

          输出幅度图像、

          输出图像边缘方向

            sobel_amp 边缘提取

            sobel_amp(算子)
            

            sobel_amp - 使用Sobel算子检测边缘(幅度)。

            sobel_amp(图片:边缘图像:滤波器方式,掩膜大小:)

              boundary 对区域轮廓进行提取

              boundary(Region输入区域,
              		RegionBorder输出区域边界,
              		BoundaryType边界的类型‘inner’或‘outer’)
              
               
               

                skeleton 提取骨架

                  求取区域骨架:skeleton
                

                算子:skeleton(Region : Skeleton : : )

                示例:skeleton (RegionTrans, Skeleton)

                RegionTrans(输入对象):输入一个区域对象

                Skeleton(输出对象):输出这个区域的骨架 骨架是由单个像素连接起来的

                  gen_contours_skeleton_xld 生成亚像素骨架轮廓

                  gen_contours_skeleton_xld(Skeleton : Contours : Length, Mode : )
                  

                  示例:gen_contours_skeleton_xld (Skeleton1, Contours2, 1, ‘filter’)

                  Skeleton1(输入对象):输入骨架对象

                  Contours2(输出对象):输出转为轮廓对象

                  1(输入控制参数1):输入提取的轮廓线包含的最小的点数

                  ‘filter’(输入控制参数2):输入过滤模式

                    nonmax_suppression_dir 非极大值点抑制(降噪)

                    nonmax_suppression_dir(EdgeAmplitude, EdgeDirection, ImageResult, ‘nms’)
                    参数解释:
                    EdgeAmplitude 输入的振幅(梯度幅值)图像。
                    EdgeDirection 输入的方向图像
                    ImageResult 输出的结果图
                    
                     
                     

                      Halcon edges_image 示例

                      在这里插入图片描述

                      read_image (Image, 'fabrik')
                      edges_image (Image, ImaAmp, ImaDir, 'lanser2', 0.5, 'nms', 12, 22)
                      * 将幅度图像进行二值化
                      threshold (ImaAmp, Edges, 1, 255)
                      * 提取骨架
                      skeleton (Edges, Skeleton)
                      * 形成亚像素轮廓
                      gen_contours_skeleton_xld (Skeleton, Contours, 1, 'filter')
                      dev_display (Image)
                      dev_set_colored (6)
                      dev_display (Contours)
                      
                       
                       

                        Halcon frei_amp 示例

                        在这里插入图片描述

                        read_image (Image, 'fabrik')
                        frei_amp (Image, ImageEdgeAmp)
                        threshold (ImageEdgeAmp, Region, 20, 255)
                        skeleton (Region, Skeleton)
                        dev_display (Image)
                        dev_set_color ('red')
                        dev_display (Skeleton)
                        
                         
                         

                          Halcon kirsch_amp示例

                          在这里插入图片描述

                          read_image (Image, 'fabrik')
                          kirsch_amp (Image, ImageEdgeAmp)
                          threshold (ImageEdgeAmp, Region, 70, 255)
                          skeleton (Region, Skeleton)
                          dev_display (Image)
                          dev_set_color ('red')
                          dev_display (Skeleton)
                          
                           
                           

                            Halcon sobel_amp示例

                            在这里插入图片描述

                            read_image (Image, 'fabrik')
                            sobel_amp (Image, EdgeAmplitude, 'sum_abs', 3)
                            threshold (EdgeAmplitude, Region, 10, 255)
                            skeleton (Region, Skeleton)
                            dev_display (Image)
                            dev_set_color ('red')
                            dev_display (Skeleton)
                            
                             
                             

                              Halcon sobel_amp 算子示例

                              在这里插入图片描述

                              read_image (Image, 'fabrik')
                              sobel_amp (Image, EdgeAmplitude, 'sum_abs', 3)
                              threshold (EdgeAmplitude, Region, 10, 255)
                              skeleton (Region, Skeleton)
                              dev_display (Image)
                              dev_set_color ('red')
                              dev_display (Skeleton)
                              
                               
                               

                                Halcon sobel_dir 算子示例

                                在这里插入图片描述

                                read_image (Image, 'fabrik')
                                sobel_dir (Image, EdgeAmplitude, EdgeDirection, 'sum_abs', 3)
                                nonmax_suppression_dir (EdgeAmplitude, EdgeDirection, ImageResult, 'nms')
                                threshold (ImageResult, Region, 10, 255)
                                dev_display (Image)
                                dev_set_color ('red')
                                dev_display (Region)
                                
                                 
                                 

                                  Halcon close_edges关闭图像间隙示例

                                  在这里插入图片描述

                                  Halcon close_edges_length关闭图像间隙示例

                                  在这里插入图片描述

                                  read_image (Image, 'fabrik')
                                  dev_close_window ()
                                  get_image_size (Image, Width, Height)
                                  dev_open_window (0, 0, Width, Height, 'black', WindowID)
                                  sobel_amp (Image, EdgeAmplitude, 'thin_sum_abs', 3)
                                  threshold (EdgeAmplitude, Edges, 30, 255)
                                  close_edges (Edges, EdgeAmplitude, EdgesExtended, 15)
                                  dev_set_color ('green')
                                  dev_display (EdgesExtended)
                                  dev_set_color ('red')
                                  dev_display (Edges)
                                  
                                   
                                   
                                    转载自:https://blog.csdn.net/weixin_45672157/article/details/135722669
                                    评论
                                    添加红包

                                    请填写红包祝福语或标题

                                    红包个数最小为10个

                                    红包金额最低5元

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

                                    抵扣说明:

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

                                    余额充值