【issue-halcon例程学习】measure_arc.hdev

例程功能

 检查倒角后铸件的细长孔之间的距离。

代码如下

read_image (Zeiss1, 'zeiss1')
get_image_size (Zeiss1, Width, Height)
dev_close_window ()
dev_open_window (0, 0, Width / 2, Height / 2, 'black', WindowHandle)
set_display_font (WindowHandle, 14, 'mono', 'true', 'false')
dev_display (Zeiss1)
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
* draw_circle (WindowHandle, Row, Column, Radius)
Row := 275
Column := 335
Radius := 107
AngleStart := -rad(55)
AngleExtent := rad(170)
dev_set_draw ('fill')
dev_set_color ('green')
dev_set_line_width (1)
get_points_ellipse (AngleStart + AngleExtent, Row, Column, 0, Radius, Radius, RowPoint, ColPoint)
disp_arc (WindowHandle, Row, Column, AngleExtent, RowPoint, ColPoint)
dev_set_line_width (3)
gen_measure_arc (Row, Column, Radius, AngleStart, AngleExtent, 10, Width, Height, 'nearest_neighbor', MeasureHandle)
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
count_seconds (Seconds1)
n := 10
for i := 1 to n by 1
    measure_pos (Zeiss1, MeasureHandle, 1, 10, 'all', 'all', RowEdge, ColumnEdge, Amplitude, Distance)
endfor
count_seconds (Seconds2)
Time := (Seconds2 - Seconds1) / n
disp_continue_message (WindowHandle, 'black', 'true')
* stop ()
distance_pp (RowEdge[1], ColumnEdge[1], RowEdge[2], ColumnEdge[2], IntermedDist)
* dev_display (Zeiss1)
dev_set_color ('red')
* disp_circle (WindowHandle, RowEdge, ColumnEdge, RowEdge - RowEdge + 1)
disp_line (WindowHandle, RowEdge[1], ColumnEdge[1], RowEdge[2], ColumnEdge[2])
dev_set_color ('yellow')
disp_message (WindowHandle, 'Distance: ' + IntermedDist, 'image', 250, 80, 'yellow', 'false')
* dump_window (WindowHandle, 'tiff_rgb', 'C:\\Temp\\zeiss_result')
dev_set_line_width (1)
* disp_continue_message (WindowHandle, 'black', 'true')
stop ()
dev_clear_window ()

要点

  1. gen_measure_arc ——采用圆弧arc作为测量区域,这是和上个例程不同的地方;
    CenterRow :入参,圆弧中心的行坐标;
    CenterCol :入参,圆弧中心的纵坐标;
    Radius :入参,圆弧半径;
    AngleStart :入参,弧度的起始角)以弧度为单位);
    AngleExtent :入参,弧度的角范围(以弧度为单位);
    AnnulusRadius :入参,圆弧环形半径;
    Width :入参,待处理图像的宽度;
    Height :入参,待处理图像的高度;
    Interpolation :入参,插值的形式;
    MeasureHandle :出参,测量对象句柄;
  2. measure_pos——提取垂直于矩形或环形弧的直边;
    Image :入参,输入图片;
    MeasureHandle :入参,测量对象句柄;
    Sigma :入参,高斯模糊参数;
    Threshold :入参,最小边沿振幅;
    Transition :入参,亮/暗或暗/亮边缘;
    Select :入参,终点选择;
    RowEdge :出参,边缘的中心行值(纵坐标);
    ColumnEdge :出参,边缘的中心列值(横坐标);
    Amplitude :出参,边的边缘振幅(带符号);
    Distance :出参,连续边之间的距离;
  3. measure_pos返回的是一个数组,索引1为最小值,索引2为最大值,示例代码中用distance_pp取点计算了最短距离
	measure_pos (Zeiss1, MeasureHandle, 1, 10, 'all', 'all', RowEdge, ColumnEdge, Amplitude, Distance)
	distance_pp (RowEdge[1], ColumnEdge[1], RowEdge[2], ColumnEdge[2], IntermedDist)

相关推荐

  1. issue-halcon学习】ball.hdev

    2024-01-23 08:46:03       42 阅读
  2. issue-halcon学习】fin.hdev

    2024-01-23 08:46:03       71 阅读
  3. issue-halcon学习】measure_arc.hdev

    2024-01-23 08:46:03       48 阅读
  4. issue-halcon学习】fuzzy_measure_pin.hdev

    2024-01-23 08:46:03       50 阅读
  5. issue-halcon学习】edge_segments.hdev

    2024-01-23 08:46:03       62 阅读
  6. issue-halcon学习】edges_color.hdev

    2024-01-23 08:46:03       50 阅读
  7. issue-halcon学习】lines_gauss.hdev

    2024-01-23 08:46:03       41 阅读
  8. issue-halcon学习】rim_simple.hdev

    2024-01-23 08:46:03       54 阅读
  9. halcon学习

    2024-01-23 08:46:03       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-23 08:46:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-23 08:46:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-23 08:46:03       82 阅读
  4. Python语言-面向对象

    2024-01-23 08:46:03       91 阅读

热门阅读

  1. 流畅的Python(五)- 一等函数

    2024-01-23 08:46:03       46 阅读
  2. 使用flask_limiter限制接口访问速率的方法

    2024-01-23 08:46:03       54 阅读
  3. AcWing 1229.日期问题(枚举题,细节多)

    2024-01-23 08:46:03       54 阅读
  4. c# OpenTK 入门

    2024-01-23 08:46:03       52 阅读
  5. gin框架复习

    2024-01-23 08:46:03       55 阅读
  6. Elasticsearch 查询超过10000 的解决方案 - Python

    2024-01-23 08:46:03       62 阅读
  7. vue v-for 为什么要加 key

    2024-01-23 08:46:03       44 阅读
  8. mac os电脑用n切换node版本

    2024-01-23 08:46:03       46 阅读