Halcon的HWindowControl控件在C#WinForm中的使用介绍(包括绘制ROI)

Halcon的HSmartWindowControl控件在C#WinForm中的使用介绍(包括绘制ROI)

文章目录

  • Halcon的HSmartWindowControl控件在C#WinForm中的使用介绍(包括绘制ROI)
    • 一、 引入hSmartWindowControl控件
    • 二、 编写打开图像功能
    • 三、 编写绘制ROI功能
    • 四、源程序下载

Halcon的新版本中增加了HSmartWindowControl控件,该控件可以很方便的实现图像的缩放、拖拽、及自适应显示,虽然使用HSmartWindowControl控件虽然有诸多便利,但是该控件不支持传统HWindowControl的Draw_*函数,要想在该控件上实现ROI图形区域的绘制需要通过其他方式,本文中有详细叙述。实现的功能如下视频:

Halcon的HWindowControl控件在C#WinF

一、 引入hSmartWindowControl控件

1、打开VS软件,在工具箱中右击,选择”选择项“,如下图所示:
在这里插入图片描述

2、打开“.Net FrameWork组件”,点击右下角“浏览”按钮,在halcon的安装目录中找到halcondotnet.dll,添加进来,打开目录如下图所示:
在这里插入图片描述
3、关闭此窗口,回到”工具箱“,可以看到"控件hSmartWindowControl"已经添加到工具箱了,可以像其他控件一样拖入到窗体中使用。如下图所示:
在这里插入图片描述

二、 编写打开图像功能

 //获取图像及显示窗口长宽HOperatorSet.GetImageSize(image, out HTuple imgWidth, out HTuple imgHeight);int wndWidth = hSmartWindowControl1.ClientRectangle.Width;int wndHeight = hSmartWindowControl1.ClientRectangle.Height;//计算比例double scale = Math.Max(1.0 * imgWidth.I / wndWidth, 1.0 * imgHeight / wndHeight);double w = wndWidth * scale;double h = wndHeight * scale;//居中时,Part的区域hSmartWindowControl1.HalconWindow.SetPart(-(h - imgHeight) / 2, -(w - imgWidth) / 2, imgHeight + (h - imgHeight.D) / 2, imgWidth + (w - imgWidth) / 2);//背景色hSmartWindowControl1.HalconWindow.SetWindowParam("background_color", "black");hSmartWindowControl1.HalconWindow.ClearWindow();hSmartWindowControl1.HalconWindow.DispObj(image);

如下图所示:
在这里插入图片描述
在这里插入图片描述

三、 编写绘制ROI功能

 //创建一个矩形的显示实例DoRoi = HDrawingObject.CreateDrawingObject(HDrawingObject.HDrawingObjectType.RECTANGLE1, 500, 500,  1000, 1000);DoRoi.SetDrawingObjectParams("color", "green");//挂靠实例到HSmartWindowControl控件hSmartWindowControl1.HalconWindow.DetachDrawingObjectFromWindow(doRoi);//获取矩形参数
string[] str = { "row1", "column1", "row2", "column2" };
HTuple val = DoRoi.GetDrawingObjectParams(str);//生成ROI
HOperatorSet.GenRectangle1(out HObject roi, val[0], val[1], val[2], val[3]);
HOperatorSet.ReduceDomain(m_SrcImage, roi, out HObject imageROI);ShowImage(imageROI);

点击画ROI按钮,如图所示:
在这里插入图片描述
点击生成REGION按钮,如图所示:
在这里插入图片描述

四、源程序下载

源程序下载地址: Halcon的HWindowControl控件在C#WinForm中的使用介绍(包括绘制ROI)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/596209.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

民治街道关工委举办清明祭先烈活动

2024年清明节来临之际,春光明媚,微风轻拂。在这样一个充满生机与希望的季节里,一场庄严肃穆的清明祭先烈活动在中国文化名人大营救纪念馆隆重举行。此次活动由深圳市龙华区民治街道关工委主办,民乐社区关工委与丹堤实验学校共同承…

LangChain入门:11.Pydantic(JSON)解析器实战

摘要 在数字化营销的浪潮中,自动化内容生成成为了提升效率和用户参与度的利器。本文将详细介绍如何利用LangChain的自然语言处理能力和Pydantic的数据验证特性,构建一个自动化的花店文案生成器。通过这个工具,您可以快速为各种花卉生成吸引人…

【加密周报】比特币“强烈看涨”信号来了!巨鲸们正疯狂囤积稳定币!SEC呼吁公众对以太币ETF提供意见!

在过去一周里,比特币价格经历了一段下跌,并在随后出现了一些反弹迹象。与此同时,链上数据显示,巨鲸们在囤积稳定币,预示着“强烈的看涨情绪”。以太坊方面,美国证券交易委员会(SEC)已…

数据如何才能供得出、流得动、用得好、还安全

众所周知,数据要素已经列入基本生产要素,同时成立国家数据局进行工作统筹。目前数据要素如何发挥其价值,全国掀起了一浪一浪的热潮。 随着国外大语言模型的袭来,国内在大语言模型领域的应用也大放异彩,与此同时&#x…

[HackMyVM]靶场Birthday

难度:Hard kali:192.168.56.104 靶机:192.168.56.149 端口扫描 ┌──(root㉿kali2)-[~/Desktop] └─# nmap 192.168.56.149 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-04-06 10:39 CST Nmap scan report for 192.168.56.149 Host is up (0.00016s latency). N…

推荐一款命令行随机数据生成工具

shigen坚持更新文章的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长,分享认知,留住感动。 个人IP:shigen 在shigen之前的文章如何用python优雅的生成模拟数据中,采用了faker这…

C/C++ ④—— 面向对象

1. 三大特性 1.1 封装 把客观事物封装成抽象的类,并且类可以把⾃⼰的数据和⽅法只让可信的类或者对象操作,对不可信的进⾏信息隐藏 1.2 继承 它可以使⽤现有类的所有功能,并在⽆需重新编写原来的类的情况下对这些功能进⾏扩展常见继承的三…

2024/4/3 IOday5

1&#xff1a;实现文件夹的拷贝功能 注意判断被拷贝的文件夹是否存在&#xff0c;如果不存在则提前创建&#xff0c;创建文件夹的函数为 mkdir 不考虑递归拷贝的问题 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <sys/…

计算机视觉入门

计算机视觉&#xff08;Computer Vision&#xff09;是一门涉及使机器能够从图像或者多维数据中提取信息&#xff0c;解释、理解并对物体或场景进行处理的学科。以下是一个基本的计算机视觉入门学习路线&#xff0c;旨在为刚刚接触这一领域的学习者提供指导。 1. 基础知识储备…

数据安全之认识数据库审计系统

随着企业业务数据量的不断增长和数据存储的集中化&#xff0c;数据库成为企业的核心资产之一。然而&#xff0c;数据库面临着各种安全威胁&#xff0c;如SQL注入、权限滥用、数据泄露等。为了保障数据库的安全性和完整性&#xff0c;企业需要采取有效的审计措施来监控和记录数据…

总包不足80w的高龄Android程序员,被面试官diss混得太差,网友狂吐槽……

有网友直言&#xff1a;90%的人一辈子一年也拿不到80万 有网友分析到&#xff1a;看面试情况&#xff0c;没什么希望就直接其实我觉得30岁年薪低于1000万的都是loser&#xff0c;你我都是 有网友说&#xff1a;这几年互联网行业极大发展&#xff0c;让互联网行业成为了明星行…

394.字符串解码

题目&#xff1a;给定一个经过编码的字符串&#xff0c;返回它解码后的字符串。 编码规则为: k[encoded_string]&#xff0c;表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的&#xff1b;输入字符串中没有额外的空…