• Halcon (3):窗体常用语法使用


    文章专栏

    Halcon开发

    视频资源

    机器视觉之C#联合Halcon

    前言

    在使用halcon的算子之前,我们要先学会如何在图片上面进行标注。因为我们不仅要导出处理的结果,还要导出图像处理的过程。像是我们写代码批注一样,我们也要对图像进行图像批注。示例如下
    在这里插入图片描述
    Halcon窗口控制我们只需要做到一下几点即可

    • 输出图像,例如圆,矩形
    • 能设置颜色
    • 能输出文本

    halcon图像使用

    Halcon常用算子汇总

    加载图片

    在这里插入图片描述

    示例

    绘制常用图像

    *打开窗口并且拿到窗口的句柄
    dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
    
    *----绘图
    *--绘制绿圆
    dev_set_color('green')
    disp_circle (WindowHandle, 64, 64, 64)
    *--绘制空心圆
    dev_set_draw ('margin')
    dev_set_color('blue')
    disp_circle (WindowHandle, 64, 64*3, 64)
    *--绘制粗边缘空心圆
    dev_set_draw ('margin')
    dev_set_line_width (10)
    dev_set_color('red')
    disp_circle (WindowHandle, 64, 64*5, 64)
    *--绘制1型矩形形边框,左上坐标+右下坐标
    dev_set_color('yellow')
    dev_set_line_width (3)
    disp_rectangle1 (WindowHandle, 64*2, 16, 64*2+48, 80)
    *--绘制2型矩形,中心点坐标+两边边长
    dev_set_color ('white')
    disp_rectangle2 (WindowHandle, 64*2+16, 64*2+16,0, 48, 32)
    
    *--绘制箭头
    disp_arrow (WindowHandle, 10, 10, 118, 118, 1)
    
    *--添加注释
    mes:= 'Hello halcon'
    disp_message (WindowHandle,mes , 'window', 12, 12, 'black', 'true')
    
    *--添加多个注释
    
    mes:= '1.Hello halcon'
    mes[1] := '2.Hello world'
    mes[2] :='3.10点47分'
    
    disp_message (WindowHandle, mes, 'window', 12*4, 12, 'black', 'true')
    
    *--1型矩形和注释搭配
    disp_x:=64*4
    disp_y := 16
    dev_set_color ('orange')
    disp_rectangle1 (WindowHandle, disp_x, disp_y, disp_x+48,disp_y+ 80)
    disp_message (WindowHandle, '这个是矩形', 'window', disp_x, disp_y, 'black', 'true')
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46

    在这里插入图片描述

    批量批注绘制

    Halcon 图形窗口显示文本

    *----打开窗口
    dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
    set_display_font (WindowHandle, 16, 'mono', 'true', 'false')
    *---显示文本
    disp_message (WindowHandle, ['Hello','Gong!'], 'window', 20, 12, 'magenta', 'true')
    disp_message (WindowHandle, ['How are you!'], 'window', 30, 120, 'yellow', ['green','false'])
    *----批量显示文本
    *--声明数组
    Angle := [0,90,180,270]
    *--数组声明数组
    *sin/cos三角函数
    *rad角度制转弧度制
    Row := 200 - sin(rad(Angle))*100
    Column := 250 + cos(rad(Angle))*100
    Color := ['green','red','blue','red']
    *批量显示文本
    disp_message (WindowHandle, Angle+' deg', 'window', Row, Column, Color, 'false')
    gen_cross_contour_xld (Cross, 200, 250, 200, 0)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    在这里插入图片描述

  • 相关阅读:
    【计算机网络笔记】DHCP协议
    计算机网络原理复习汇总
    【学习笔记】AGC009/AGC019/AGC029/AGC035
    Maven的基础知识
    74ls192无法正常使用。
    Spring Cloud Alibaba 分布式微服务高并发数据平台化(中台)思想+多租户saas设计的企业开发架构
    Unity-动画状态机使用细节记录
    轻量容器引擎Docker安装及其架构
    【图文并茂】C++介绍之串
    如何让FileBeat支持http的output插件
  • 原文地址:https://blog.csdn.net/qq_44695769/article/details/134487534