halcon-boundary提取边界


在HDevelop中

4.jpg

 

 

dev_open_window(10,10,307,221,'black',WindowHandle)
read_image (Image, 'D:/bb/tu/4.jpg')
rgb1_to_gray(Image,Image1)
*将RGB图像转换为灰度图像

threshold (Image1, Region, 60, 100)

set_color(WindowHandle,'blue')

boundary (Region, RegionBorder, 'outer') *提取边界
*参数1:要计算其边界的区域
*参数2:保存边界区域
*参数3:边界类型
*       'inner'              内边界--默认:轮廓位于原始区域内
*       'inner_filled'       内部孔的边界:
*       'outer'              外边界:轮廓位于原始区域外一个像素


dev_display (RegionBorder)

参数3是'outer'

参数3是'inner_filled'

 

 

 

 

在QtCreator中

    HObject  ho_Image, ho_Image1, ho_Region, ho_RegionBorder;
    HTuple  hv_WindowHandle;
    SetWindowAttr("background_color","black");
    OpenWindow(10,10,307,221,0,"visible","",&hv_WindowHandle);

    ReadImage(&ho_Image, "D:/bb/tu/4.jpg");
      Rgb1ToGray(ho_Image, &ho_Image1);
      //将RGB图像转换为灰度图像

    Threshold(ho_Image1, &ho_Region, 60, 100);

    SetColor(hv_WindowHandle, "blue");

    Boundary(ho_Region, &ho_RegionBorder, "outer"); //提取边界
      //参数1:要计算其边界的区域
      //参数2:保存边界区域
      //参数3:边界类型
      //      'inner'              内边界--默认:轮廓位于原始区域内
      //      'inner_filled'       内部孔的边界:
      //      'outer'              外边界:轮廓位于原始区域外一个像素

    SetPart(hv_WindowHandle,0, 0, 221, 307);
    //修改图像在激活窗口的显示区域
    DispObj(ho_RegionBorder, hv_WindowHandle);

 

 

 

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM