zoukankan      html  css  js  c++  java
  • Halcon自学笔记

    编写一个简单的HDevelop程序(获得所有回形针的方向,并在中心位置显示)

    1.首先读取一张图片:read_image (Image, 'G:/halcon/imgs/Clip.PNG')  Image为输出的变量名,后一个参数为图片路径

    2.根据灰度值把回形针分离出来,使用灰度直方图获取阈值:threshold (Image, Region, 0, 56)   Image为输入的图像,Region为输出的图像,0,56为阈值

    3.connection算子用来计算一个区域中联通的部分,用不同颜色表示出来:connection(Region,ConnectedRegions)  

    Region为输入的图像,ConnectedRegions为输出的图像

    4.根据特征选择区域:select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 475, 595)

    5.获得回形针的方向和重心:

    orientation_region(SelectedRegions,Phi)
    area_center(SelectedRegions,Area,Row,Column)

    算子orientation_region会返回一个元组Phi,数组的每个元素值表示:对象元组SelecetdRegions中对应的每个区域的方向。

    算子area_center把每个区域的Area,Row,Column的值以元组的方式返回

    6.在循环体中访问检测结果:

    for Index := 0 to |Phi|-1 by 1
      set_tposition(3600,Row[Index],Column[Index])
      write_string(3600,deg(Phi[Index])+'degrees')
    endfor

    算子set_tposition把图形窗口中的文本光标位置移动至索引Index所对应的区域的中心位置。3600是目标图形窗口的窗口句柄(每个图形窗口对应一个窗口句柄)Row[Index]是HDevelop语言的另一个算子,通过它来访问Tuple元组中的元素。

    算子write_string的作用是在图形窗口的光标位置输出一个指定字符串。

    算子deg也是HDevelop语言的一部分,它的作用是把弧度转化成角度。

    算子+的作用是将两个字符串合并成一个字符串,在本例中,在两个操作数+之前,HDevelop会自动进行类型转换,把deg(Phi[Index])从double转换成string类型

    原图:

    效果图:

  • 相关阅读:
    swift 设置图片动画组 iOS11之前 默认图片 设置不成功
    iOS 管理库 Carthage 安装以及使用
    OC 和 swift 冒泡排序
    swift中UITextView的使用
    图片拉伸
    swift
    label文字从左上角开始
    2017最新总结CocoaPods安装细节及遇到的问题
    苹果 重置APPID密保问题及更新开发者协议
    xcode
  • 原文地址:https://www.cnblogs.com/pushudepu/p/6217937.html
Copyright © 2011-2022 走看看