《Halcon 100项目-2》Halcon查找零件个数

news2024/9/23 15:23:52

Halcon查找零件个数

read_image (Image20231225201927, 'D:/image/bilibili/photo/屏幕截图 2023-12-25 201927.png')
rgb1_to_gray (Image20231225201927, GrayImage)


threshold (GrayImage, Region, 0, 128)
draw_rectangle1 (200000, Row1, Column1, Row2, Column2)
gen_rectangle1 (Rectangle, Row1, Column1, Row2, Column2)
reduce_domain (GrayImage, Rectangle, ImageReduced)

create_shape_model (ImageReduced, 'auto',rad(0),rad(360), 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID)
get_shape_model_contours (ModelContours, ModelID, 1)
area_center (Rectangle, Area, Row, Column)
vector_angle_to_rigid (0, 0, 0, Row, Column, 0, HomMat2D)
affine_trans_contour_xld (ModelContours, ContoursAffineTrans, HomMat2D)

dev_set_draw ('margin')
dev_set_line_width (5)
dev_display (GrayImage)
find_shape_model (GrayImage, ModelID, rad(0),rad(360), 0.5, 0, 0.5, 'least_squares', 0, 0.9, Row3, Column3, Angle, Score)

for Index := 0 to |Score|-1 by 1
    *初始化一个空的仿射变换矩阵
    hom_mat2d_identity (HomMat2DIdentity)
*     gen_circle (Circle, Row3[Index], Column3[Index], 30.5)
    hom_mat2d_translate (HomMat2DIdentity,Row3[Index], Column3[Index], HomMat2DTranslate)
    hom_mat2d_rotate (HomMat2DTranslate, Angle[Index], Row3[Index], Column3[Index], HomMat2DRotate)
    affine_trans_contour_xld (ModelContours, ContoursAffineTrans1, HomMat2DRotate)
    
    
endfor

在这里插入图片描述
参考:https://blog.csdn.net/weixin_43197380/article/details/90292563
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

年龄相关的微环境变化突显了PDGF-C在ER+乳腺癌转移复发中的作用

今天给同学们分享一篇实验文章“Age-associated microenvironmental changes highlight the role of PDGF-C in ER breast cancer metastatic relapse”,这篇文章发表在Nat Cancer期刊上,影响因子为22.7。 结果解读: ER乳腺癌转移复发的同种…

三相电机转差率为负值的情形

1.电机开始发电的特征 注意,电机因为有输入频率对原始旋转磁场的影响,在正常工作时,应该处于稳态,因为旋转磁场决定了这个系统的运转方向和运转的大致频率区间。它会处于力矩平衡态。但是,如果,此时电机处…

帕累托森林CEO李朝政博士受邀「OSS-Compass」开源年会畅谈:开源框架下的奇异竞争规则

导语 “怎么在别人知道你的代码和战略时,你仍然拥有壁垒?”这是开源框架下,商业必须思考的问题。 软件驱动世界运转。但当基础层代码失去了有深度活力的“动态延伸”潜力,便会遭致市场“零定价”的宿命。动态延伸的效率&#xf…

MES系统是什么?MES系统的功能有哪些?

在现代制造业的快速发展中,所有规模的企业都面临着类似的挑战:如何提高生产效率、确保产品质量、减少浪费、降低成本,同时迅速响应市场变化。而在这个过程中,传统企业管理往往有以下几个典型痛点: 纸质文件堆叠如山&a…

【MATLAB库函数系列】线性调频Z(Chirp-Z,CZT)的MATLAB源码和C语言实现

在上一篇博客 【数字信号处理】线性调频Z(Chirp-Z,CZT)算法详解 已经详细介绍了CZT变换的应用背景和原理,先回顾一下: 回顾CZT算法 采用 FFT 算法可以很快计算出全部 N N N点 DFT 值,即Z变换 X ( z ) X(z) <

使用Visual Studio调试VisionPro脚本

使用Visual Studio调试VisionPro脚本 方法一 &#xff1a; 修改项目文件 csproj步骤&#xff1a; 方法二 &#xff1a; Visual Studio附加功能步骤&#xff1a; 方法一 &#xff1a; 修改项目文件 csproj 步骤&#xff1a; 开启VisionPro脚本调试功能 创建一个VisionPro程序…

【美团大数据面试】Java面试题附答案

目录 1.多线程代码示例 2.单例代码示例 3.LinkedBlockingQueue原理解析 4.模板设计模式讲解 5.生产者-消费者队列设计方法 6.堆内存和栈内存的区别 7.ThreadLocal底层机制 8.synchronized原理&#xff0c;存在的问题&#xff0c;解决方案 9.volatile使用场景和原理&am…

在VSCode中使用Git教程

文章目录 提交代码操作分支提交远程库拉取代码参考 介绍一下如何在VSCode中使用Git 首先在VSCode中打开一个项目 打开项目后, 点击下图按钮, 可以引入Git 提交代码 点击 &#xff1b;相当于git add. 下面两张图, 第一张表示改文件后的号, 只会add本文件. 第二张图表示这段时…

关于合同能源管理

合同能源管理模式&#xff1a;我投资、你节能、收益共享 合同能源管理&#xff08;EPC——Energy Performance Contracting&#xff09;&#xff1a;节能服务公司与用能单位以契约形式约定节能项目的节能目标&#xff0c;节能服务公司为实现节能目标向用能单位提供必要的服务&…

6.2 泛型及高阶应用

6.2 泛型及高阶应用 1. 初识泛型的应用2. 自定义泛型及其应用1. 自定义泛型2. 泛型方法的应用 3. 泛型通配符 1. 初识泛型的应用 package com.imooc.pt;import java.util.ArrayList;public class ListSample {/*** 不使用泛型*/public void sample1(){//ArrayList不使用泛型,不…

MySQL——表的内外连接

目录 一.内连接 二.外连接 1.左外连接 2.右外连接 一.内连接 表的连接分为内连和外连 内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选&#xff0c;我们前面学习的查询都是内连接&#xff0c;也是在开发过程中使用的最多的连接查询。 语法&#xff1a; s…

[Linux]——彻底学通权限

学习权限 一、权限概念二、权限管理2.1文件访问者分类&#xff08;人&#xff09;2.2文件类型和访问权限&#xff08;事物的属性&#xff09;2.3 文件访问权限的相关设置方法 三、目录的权限3.1、进入目录的权限3.2、粘滞位 四、关于权限的总结 一、权限概念 Linux下有两种用户…

验证码服务使用指南

验证码服务使用指南 1 部署验证码服务 1.1 基础环境 Java 1.8 Maven3.3.9 1.2 安装Redis 参考“Redis安装指南” 1.3 部署验证码服务 1.3.1 下载源码 使用git从远程下载验证码服务代码(开源)。 1.3.2 使用idea打开项目 使用idea打开上一步下载的sailing目录&#xf…

Java并发(二十一)----wait notify介绍

1、小故事 - 为什么需要 wait 由于条件不满足&#xff08;没烟干不了活啊&#xff0c;等小M把烟送过来&#xff09;&#xff0c;小南不能继续进行计算 但小南如果一直占用着锁&#xff0c;其它人就得一直阻塞&#xff0c;效率太低 于是老王单开了一间休息室&#xff08;调…

1161转进制(C语言)

一&#xff1a;题目 二&#xff1a;思路分析 1.首先该题目让我们使用递归求十进制转其他进制 2.其次&#xff0c;我们要知道十进制转换为其他进制怎么转换&#xff0c;以例题所给的数据为例 由此图可以看出&#xff0c;十进制转换为其他进制&#xff0c;是辗转相除法&#xf…

Linux构建NFS远程共享存储和ftp配置

NFS架构 NFS介绍 文件系统级别共享&#xff08;是NAS存储&#xff09; --------- 已经做好了格式化&#xff0c;可以直接用。 速度慢比如&#xff1a;nfs&#xff0c;samba NFS&#xff1a;Network File System 网络文件系统&#xff0c;NFS 和其他文件系统一样,是在 Linux …

node封装一个图片拼接插件

说在前面 平时我们拼接图片的时候一般都要通过ps或者其他图片处理工具来进行处理合成&#xff0c;这次有个需求就需要进行图片拼接&#xff0c;而且我希望是可以直接使用代码进行拼接&#xff0c;于是就有了这么一个工具包。 插件效果 通过该插件&#xff0c;我们可以将图片进…

力扣(leetcode)1121和1251题(MySQL)

1121.查询结果的质量和占比 题目链接&#xff1a;1121.查询结果的质量和占比 解答 # Write your MySQL query statement below select query_name, round(avg(rating/position),2) as quality, round(100*avg(rating<3),2) as poor_query_percentage from Queries gro…

Python 直方图的绘制-`hist()`方法(Matplotlib篇-第7讲)

Python 直方图的绘制-hist()方法(Matplotlib篇-第7讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

插入排序,选择排序,冒泡排序,顺序搜索,二分搜索,迭代,求最大公因数,最小公倍数等简单模板

目录 1.排序 1.插入排序模板 2.冒泡排序模板 3.选择排序模板 2.搜索 1.顺序搜索 2.二分搜索 3.迭代 1.基础迭代 ​编辑 4.求最大公因数&#xff0c;最小公倍数 1.最直接的方法 取巧一点 2.辗转相除法&#xff08;欧几里得法&#xff09; 1.排序 1.插入排序模板 插…