halcon学习之一维测量基础

news2024/9/21 14:34:40

目录

创建测量矩形,获取测量句柄

gen_measure_rectangle2()

使用句柄进行测量

measure_pos()

修改参数Threshold

修改参数Transition

修改参数select

参数RowEdge,ColumnEdge,Distance

measure_pairs()

修改参数Transition

修改参数Select

intraDistance与interDistance 

清除句柄

close_measure()


创建测量矩形,获取测量句柄

gen_measure_rectangle2()

gen_measure_arc()


使用句柄进行测量

measure_pos()


代码

read_image (Image, 'C:/Users/Public/Documents/MVTec/HALCON-19.05-Progress/examples/images/gasket/gasket_01.png')
dev_close_window ()

get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (2)

draw_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
gen_measure_rectangle2 (Row, Column, Phi, Length1, Length2, Width, Height, 'nearest_neighbor', MeasureHandle)
measure_pos (Image, MeasureHandle, 1, 30, 'all', 'all', RowEdge, ColumnEdge, Amplitude, Distance)
disp_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
disp_cross (WindowHandle, RowEdge, ColumnEdge, 20, 45)

修改参数Threshold

可以看到,当threshold大于黑色与灰色的灰度值差,那么将获取不了边沿点。


修改参数Transition

可以理解为positive为增加,就是灰度从小到大的点将被选择。


修改参数select


参数RowEdge,ColumnEdge,Distance


measure_pairs()

代码

read_image (Image, 'C:/Users/Public/Documents/MVTec/HALCON-19.05-Progress/examples/images/gasket/gasket_01.png')
dev_close_window ()

get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (2)

draw_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
gen_measure_rectangle2 (Row, Column, Phi, Length1, Length2, Width, Height, 'nearest_neighbor', MeasureHandle)

measure_pairs (Image, MeasureHandle, 1, 30, 'all', 'all', RowEdgeFirst, ColumnEdgeFirst, AmplitudeFirst, RowEdgeSecond, ColumnEdgeSecond, AmplitudeSecond, IntraDistance, InterDistance)

使用disp_cross()绘制得出的结果。

可见,此指令是以一对点为对象进行返回。


修改参数Transition

positive表示从黑到白的过度,而这过度,是指第一个点两边的灰度值变化,所以当第一个点为positive,那么点对中的第二点就必然是neagtive。


修改参数Select


intraDistance与interDistance 

intraDistance表示点对之间的距离,而interDistance表示点对中的第二个点与另一组点对的第一个点之间的距离,也就是说点对间的距离。


清除句柄

close_measure()

当测量完成后,使用该算子可以清除内存中的测量句柄。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

KAN网络

目录 背景知识 什么是神经网络? 神经网络发展史 MP神经元模型 感知机模型 KAN 引言 MLP架构vsKAN架构 从数学定理方面来看: 从算法层面上看: 从实际应用过程看: KAN的架构细节 KAN的准确性 KAN的可解释性 监督学习…

验证搜索二叉树

目录 题目 方法一 思路 优化 方法二 思维误区 递归关系推导 代码实现 题目 98. 验证二叉搜索树 难度:中等 给你一个二叉树的根节点root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含…

虚幻五关卡制作学习笔记

1.创建一个移动平台 这个移动平台的功能:从箭头1移动到箭头2来回移动,可移动时发绿光,不可移动时发红光 首先,创建两个材质,发红光和绿光 然后我们创建一个actor蓝图类,添加两个arrow组件,两个…

设计模式-结构型-适配器模式-Adapter

地址类 public class Address {public void street() {System.out.println("普通的街道");}public void zip() {System.out.println("普通的邮政编码");}public void city() {System.out.println("普通的城市");} } 荷兰地址类 public class …

计算机服务器中了locked勒索病毒怎么解决,locked勒索病毒解密恢复工具

在网络技术飞速发展的时代,通过网络开展各项工作业务成为众多企业的首选,网络也为企业的生产运营提供了极大便利,大大提升了企业办公效率,但是利用网络避免不了网络威胁的存在,数据安全问题一直是企业关心的主要话题。…

【效率开发】游戏开发Debug效率方法总结

"程序员的一半生命都浪费在了调试上。" ——Brian Kernighan(计算机科学家,曾参与开发C语言) (图片来源:forbesindia) Debug无疑是程序员最头疼,也是耗费时间最多的一个环节&#xf…

智慧停车场管理系统主要组成

智慧泊车场办理体系,完成了泊车办理过程中的车辆类型分类、出场时的车牌辨认、行进路线的引导、空余车位诱导,以及准备离场前的反向寻车和方便缴费等全部环节。这六个流程中,泊车场对车辆的办理,进步了泊车场的运行效率&#xff0…

如何远程访问?

远程访问是指在不同的地理位置之间通过网络连接来实现对目标设备或系统的访问。无论是在个人生活还是商业领域,远程访问都起到了重要的作用,帮助人们实现高效的工作和便捷的生活。本文将介绍一款名为【天联】的组网产品,它是一款强大的异地组…

祝天下母亲节快乐!虚无!——早读(逆天打工人爬取热门微信文章解读)

练功加精力哦 引言Python 代码第一篇 人民日报【夜读】人与人之间最好的关系:遇事靠谱,懂得感恩第二篇 冯站长之家 三分钟新闻早餐结尾 感恩与善行 是人生旅途中的灯塔 怀感恩之心 行小善之事 它们将指引我们走向光明 引言 今天是母亲节 祝天下的所有母…

iOS Failed to create provisioning profile.

错误描述 错误情况参考这张图 解决方案 修改Bundle Identifier就可以解决这个错误,找不到位置可以看图 (具体解决的原理与证书有关,个人不是非常熟悉,还望大神告知)

65-CPLD电路设计(安路为例)

视频链接 CPLD电路设计(安路为例)01_哔哩哔哩_bilibili CPLD电路设计(以安路为例) 浅谈板级电源设计的三种方法_哔哩哔哩_bilibili 参考【浅谈板级电源设计的三种方法】 FPGA板级硬件实战S1~7课 实战Power2-电…

云南区块链商户平台:抓包技术自制开票工具(三)

前言 上节我们将登录的流程梳理完毕了,来到了本章重点,既然开发票就肯定要有以下参数: 原工具不支持识别历史记录,对于我们的小商店来说,开票的公司基本就是固定的几个,如果提供下拉支持选择将会大大降低…

机器学习笔记导航(吴恩达版)

01.机器学习笔记01:机器学习前置概念导入、线性回归、梯度下降算法 02.机器学习笔记02:多元线性回归、多元梯度下降算法、特征缩放、均值归一化、正规方程 03.机器学习笔记03:octave安装、创建矩阵 04.机器学习笔记04:octave中移动…

WordPress插件Plus WebP,可将jpg、png、bmp、gif图片转为WebP

现在很多浏览器和CDN都支持WebP格式的图片了,不过我们以前的WordPress网站使用的图片都是jpg、png、bmp、gif,那么应该如何将它们转换为WebP格式的图片呢?推荐安装这款Plus WebP插件,可以将上传到媒体库的图片转为WebP格式图片&am…

机器学习(1)

目录 1-1.西瓜书 1-2.课程定位 1-3.机器学习 1-4.典型的机器学习过程 1-5.机器学习理论 1-6.基本术语 1-7.归纳偏好 1-8.NFL定理 1-1.西瓜书 建议使用方式 1.初学机器学习的第一本书:通读、速读;细节不懂处略过,了解机器学习的疆域和基本思想,…

异构图神经网络代码详解与实战

相关代码地址见文末 1.数据读取 数据采用的是电影推荐的数据集,movies.csv文件存储为电影及其题材。 ratings.csv下存储为用户对电影的评分。 数据集的读取流程为: 首先,读取movies.csv并将题材根据词的出现,转换为one-hot编码的形式读取ratings.csv,将movie_id和…

带你探索CA和SSL证书

目录 一、什么是CA? 二、什么是SSL证书? 三、SSL证书分类和文件种类? 3.1 证书的分类: 3.2证书格式: 四、SSL和TSL 五、PSK介绍 六、nginx配置介绍 一、什么是CA? CA是证书的签发机构,它是…

基于鹈鹕优化算法POA的复杂城市地形下无人机避障三维航迹规划,可以修改障碍物及起始点(Matlab代码)

复杂城市地形下无人机避障三维航迹规划是指在城市等高密度区域内,通过无人机的传感器和导航系统来实现飞行路径的规划和调整,从而避免无人机与建筑物、其他无人机、地面障碍物等发生碰撞和冲突。具体来说,无人机需要实时感知周围环境&#xf…

事件高级部分

一,注册事件 即给元素添加事件 1.传统注册方式 2.方法监听注册方式 事件类型:字符串形式,不用带on 可以给一个元素添加多个程序 二.删除事件 1.方式 参数见上文 三.DOM事件流 事件的传播过程叫做事件流 js代码只能获取一个阶段&#xf…