halcon创建画布,并在画布上绘制显示

news/2024/7/21 3:56:46 标签: Halcon, 图像处理, 计算机视觉

Halcon的画布主要用于图像显示和处理。以下是一个简单的使用Halcon画布的例子:

1.创建一个窗口:

dev_open_window( Row, Column, Width, Height, Background : WindowHandle)

默认为:dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
**创建一个大小为512x512的背景色(默认为黑色'black')窗口,并将窗口句柄存储在变量WindowHandle 中。

可以读取图像在上面窗口上:

read_image (Image, 'D:/APP/Imgs_project/dogdi.jpg')

不读取图像直接在后面创建画布图像之后再绘制也行,这里只是起示范作用,此时窗口上显示的是示例图片。

2.创建一个画布(halcon里面没有这个算子),所以我们创建一个纯色图像,在图像上绘制。

gen_image_const( : Image : Type, Width, Height : )

*创建一个具有恒定灰度值的图像,Type有很多格式,可自行搜索文档查看。

默认为创建一个全黑的灰度图:gen_image_const(Imagenull, 'byte', Width, Height)

这里创建了这个全黑图像后,会更具代码顺序显示,所以这里全黑图像覆盖了前面的图像,窗口只能看到一张黑图。

全文最重要是这个算子了,可以根据个人需求调用这个函数,这里只是示例。

经常使用的情况就是先对图像做处理,获取所求特征,再创建这个画布图像,在上面显示有些特征和文字信息。

3.在画布上绘制图形,可以在前面的图像做一些处理,把提取到的特征绘制到画布上,下面绘制一个只显示轮廓的矩形区域:

dev_set_color ('blue')
dev_set_draw ('margin')
gen_rectangle1 (Rectangle1, 440, 518, 670, 838)
area_center (Rectangle1, Area, Row, Column)
dev_set_color ('green')
disp_cross (WindowHandle, Row, Column, 20, 0)

*这里画十字叉用到了窗口句柄,刚好引用上文创建的窗口,虽然有时候用不到窗口句柄,

*但还是在图像处理前先创建个窗口比较好,看个人情况,不影响的话创建影响很快的

5.关闭窗口:
dev_close_window( )
**关闭窗口并释放资源。


http://www.niftyadmin.cn/n/5262378.html

相关文章

18 5G - NR物理层解决方案支持6G非地面网络中的高移动性

文章目录 非地面网络场景链路仿真参数实验仿真结果 非地面网络场景 链路仿真参数 实验仿真结果 Figure 5 && Figure 6:不同信噪比下的BER和吞吐量 变量 SISO 2x2MIMO 2x4MIMO 2x8MIMOReyleigh衰落、Rician衰落、多径TDL-A(NLOS) 、TDL-E(LOS)(a)QPSK (b)16…

静态HTTP应用在移动设备上的优化

随着移动设备的普及,越来越多的用户通过手机、平板等设备访问Web应用。对于静态HTTP应用来说,如何在移动设备上提供更好的用户体验和性能是一个值得关注的问题。本文将介绍一些静态HTTP应用在移动设备上的优化技巧。 一、响应式设计 响应式设计是一种让…

差分约束建边方法

1.求最大值&#xff0c;用最短路&#xff0c;不等式转化成 a < b c形式&#xff0c;从b向a建立权值为c的边g[b].append((a,c)) 2.求最小值&#xff0c;用最长路&#xff0c;不等式转化成a > b c形式&#xff0c;从b向a建立权值为c的边 import sys from collections im…

【POI的如何做大文件的写入】

&#x1f513;POI如何做大文件的写入 &#x1f3c6;文件和POI之间的区别是什么&#xff1f;&#x1f3c6;POI对于当今的社会发展有何重要性&#xff1f;&#x1f3c6;POI大文件的写入&#x1f396;️使用XSSF写入文件&#x1f396;️使用SXSSFWorkbook写入文件&#x1f396;️对…

信通院供应链安全软件应用安全评估

近几年&#xff0c;信通院发布了供应链安全和软件应用安全相关的一些标准以及评估模型&#xff0c;同时开展企业评估认证工作。这些也正是在安全形势日益严峻&#xff0c;且国内企业迫切需要自己国家的安全相关标准的评估和认证&#xff0c;也便于对企业进行供应链安全建设、软…

WPF中DataGrid设置默认选中行

1、DataGrid命名为planDataGrid <DataGrid ItemsSource"{Binding PlanList}" SelectedItem"{Binding SelectedItem}" x:Name"planDataGrid" AutoGenerateColumns"False" CanUserAddRows"False" GridLinesVisib…

openssl编译和集成

编译环境 系统windowsopenssl版本 1.1.1m 编译前可以看些openssl中的README,INSTALL文件&#xff0c;我这里以编译32位程序为例 编译命令 $ perl Configure { VC-WIN32 | VC-WIN64A | VC-WIN64I | VC-CE }$ nmake$ nmake test$ nmake installperl配置的时候可以指定更多参数 …

JAVA基础知识:输入输出流

一、基本概念 输入输出流是Java中处理数据的重要机制&#xff0c;它允许程序与外部世界进行数据交互。Java提供了丰富的输入输出类和接口&#xff0c;可以满足各种不同的输入输出需求。 二、流的分类 在Java中&#xff0c;流可以分为字节流和字符流两种类型。 字节流&#xf…