Halcon 3D相关算子(二)

(1) moments_object_model_3d( : : ObjectModel3D, MomentsToCalculate : Moments)

功能:计算3D对象模型的平均值或中心二阶矩。要计算3D物体模型点的平均值,在MomentsToCalculate中选择'mean_points';如果要计算二阶中心矩,则选择'central_moment_2_points',结果是x、y、z、x-y、x-z和y-z轴的方差;要计算3D物体模型的三个主轴,请在MomentsToCalculate中选择'principal_axes',结果是一个以坐标点均值为中心的姿态,与姿态对应的坐标系中,x轴沿第一主轴,y轴沿第二主轴,z轴沿第三主轴。

控制输入参数1:ObjectModel3D:3D对象模型;

控制输入参数2:MomentsToCalculate:待计算属性;

控制输出参数:Moments:计算结果。

(2) smallest_bounding_box_object_model_3d( : : ObjectModel3D, Type : Pose, Length1, Length2, Length3)

功能:计算3D对象模型点周围的最小外接边界框(六面体盒子)。生成的边界框使用其坐标系统(Pose)来描述,其方向是这样的:盒子的最长边与x轴对齐,第二长的边与y轴对齐,最小的边与z轴对齐。边的长度按降序依次返回Length1、Length2和Length3。该框可以是轴向的,也可以是定向的,这可以由Type来选择。

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:Type:用来估计最小外接框的方法;

控制输出参数1:Pose:描述生成的框的位置和方向的姿态。姿态的原点在边界框的中心,并且定向使x轴与边界框的最长边对齐;

控制输出参数2:Length1:边界框最长边的长度;

控制输出参数3:Length2:边界框第二长边的长度;

控制输出参数4:Length3:边界框第三长边的长度。

(3) gen_box_object_model_3d( : : Pose, LengthX, LengthY, LengthZ : ObjectModel3D)

功能:创建一个六面体盒子的3D对象模型。

控制输入参数1:Pose:姿态;

控制输入参数2:LengthX:沿着X轴的长度;

控制输入参数3:LengthY:沿着Y轴的长度;

控制输入参数4:LengthZ: 沿着Z轴的长度。

(4) gen_plane_object_model_3d( : : Pose, XExtent, YExtent : ObjectModel3D)

功能:创建一个平面3D对象模型。

控制输入参数1:Pose:平面的中心的旋转角度;

控制输入参数2:XExtent:指定平面范围的X坐标;

控制输入参数3:YExtent:指定平面范围的Y坐标;

控制输出参数:ObjectModel3D:创建的3D对象模型句柄。

(5) gen_sphere_object_model_3d( : : Pose, Radius : ObjectModel3D)

功能:创建一个代表球体的3D对象模型。球体的中心在Pose中给出,半径在radius中给出。

控制输入参数1:Pose:描述球体位置的姿态;

控制输入参数2:Radius:球体半径;

控制输出参数:ObjectModel3D:创建的球体3D对象模型句柄。

(6) intersect_plane_object_model_3d( : : ObjectModel3D, Plane : ObjectModel3DIntersection)

功能:将3D对象模型与平面相交,结果是一组由线连接的3D点。每一个与平面相交的三角形都会产生两个交点和两点之间的一条直线。

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:Plane:平面的位姿;

控制输出参数:ObjectModel3DIntersection:返回一组由线连接的3D点。

(7) project_object_model_3d( : ModelContours : ObjectModel3D, CamParam, Pose, GenParamName, GenParamValue : )

功能:将3D对象模型投影到图像坐标系中,并在ModelContours中返回投影轮廓。

图形输出参数:ModelContours:投影的模型轮廓;

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:CamParam:相机内参;

控制输入参数3:Pose:世界坐标系在相机坐标下中的3D姿态。

控制输入参数4:GenParamName:通用参数名;

控制输入参数5:GenParamValue:通用参数值。

(8) prepare_object_model_3d( : : ObjectModel3D, Purpose, OverwriteData, GenParamName, GenParamValue : )

功能:为某一操作准备三维对象模型。它计算操作所需的值并将其存储在ObjectModel3D中,从而加快了后续操作。

控制输入参数1:3D对象模型句柄;

控制输入参数2:3D对象模型目的,Default value: 'shape_based_matching_3d';

控制输入参数3:指定是否应该覆盖已经存在的数据,Default value: 'true';

控制输入参数4:通用参数名;

控制输入参数5:通用参数值。

(9) object_model_3d_to_xyz( : X, Y, Z : ObjectModel3D, Type, CamParam, Pose : )

功能:将3D对象模型中的3D点转换为三个图像X、Y和Z。

图形输出参数1:X:3D点中的x坐标形成的X图像;

图形输出参数2:Y:3D点中的y坐标形成的Y图像;

图形输出参数3:Z:3D点中的z坐标形成的Z图像;

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:Type:转换类型;

控制输入参数3:CamParam:相机参数;

控制输入参数4:Pose:3D对象模型的位姿。

(10) create_surface_model( : : ObjectModel3D, RelSamplingDistance, GenParamName, GenParamValue : SurfaceModelID)

功能:创建用于表面匹配所需要的数据结构。

控制输入参数1:ObjectModel3D:3D对象模型句柄;

控制输入参数2:RelSamplingDistance:相对于对象直径的采样距离;

控制输入参数3:GenParamName:通用参数名;

控制输入参数4:GenParamValue:通用参数值;

控制输出参数:SurfaceModelID:表面模型句柄;

(11) set_surface_model_param( : : SurfaceModelID, GenParamName, GenParamValue : )

功能:设置表面模型SurfaceModelID的参数和属性。

控制输入参数1:SurfaceModelID:表面模型句柄;

控制输入参数2:GenParamName:通用参数名;

控制输入参数3:GenParamValue:通用参数值。

(12) find_surface_model( : : SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue : Pose, Score, SurfaceMatchingResultID)

功能:在3D场景中找到表面模型的最佳匹配,并在pose中返回它们的姿态。

控制输入参数1:SurfaceModelID:表面模型句柄;

控制输入参数2:ObjectModel3D:包含三维对象模型场景的句柄;

控制输入参数3:RelSamplingDistance:场景采样距离相对于表面模型的直径;

控制输入参数4:KeyPointFraction:作为关键采样场景点的比例;

控制输入参数5:MinScore:返回位姿的最小得分;

控制输入参数6:ReturnResultHandle:启用在SurfaceMatchingResultID中返回结果句柄;

控制输入参数7:GenParamName:通用参数名;

控制输入参数8:GenParamValue:通用参数值;

控制输出参数1:Pose:场景中表面模型的三维姿态;

控制输出参数2:Score:找到的表面模型实例的分数;

控制输出参数3:SurfaceMatchingResultID:如果在ReturnResultHandle中启用,则返回匹配结果的句柄。

(13) find_surface_model_image(Image : : SurfaceModelID, ObjectModel3D, RelSamplingDistance, KeyPointFraction, MinScore, ReturnResultHandle, GenParamName, GenParamValue : Pose, Score, SurfaceMatchingResultID)

功能:在3D场景和图像中找到表面模型的最佳匹配。,并在pose中返回它们的姿态。

控制输入参数0:Image:输入的场景图像;

控制输入参数1:SurfaceModelID:表面模型句柄;

控制输入参数2:ObjectModel3D:包含三维对象模型场景的句柄;

控制输入参数3:RelSamplingDistance:场景采样距离相对于表面模型的直径;

控制输入参数4:KeyPointFraction:作为关键采样场景点的比例;

控制输入参数5:MinScore:返回位姿的最小得分;

控制输入参数6:ReturnResultHandle:启用在SurfaceMatchingResultID中返回结果句柄;

控制输入参数7:GenParamName:通用参数名;

控制输入参数8:GenParamValue:通用参数值;

控制输出参数1:Pose:场景中表面模型的三维姿态;

控制输出参数2:Score:找到的表面模型实例的分数;

控制输出参数3:SurfaceMatchingResultID:如果在ReturnResultHandle中启用,则返回匹配结果的句柄。

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

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

相关文章

windows安装conda环境,开发openai应用准备,运行第一个ai程序

文章目录 前言一、windows创建openai开发环境二、国内代理方式访问openai的方法(简单方法)三、测试运行第一个openai程序总结 前言 作者开发第一个openai应用的环境准备、第一个openai程序调用成功,做个记录,希望帮助新来的你。 …

如何处理Uniapp中的异步请求?

在Uniapp中处理异步请求有以下几种方法: 使用 uni.request 方法发送异步请求,该方法返回一个 Promise 对象,可以使用 then 方法处理请求成功的回调,使用 catch 方法处理请求失败的回调。 uni.request({url: http://api.example.…

鸿蒙系统ArkTs语法入门

鸿蒙系统ArkTs的ts语法入门 前言1. 变量声明2. 数据类型2.1 基本数据类型2.2 复杂数据类型2.3 联合类型2.4 空类型和未定义类型 3. 函数3.1 匿名函数和箭头函数 4. 类和接口类的访问权限接口类的继承内部类 7. 结构体参考材料 前言 每个语言都有控制流语句就不写测试代码了。a…

31 树的存储结构一

无法直接用数组表示树的逻辑结构,但是可以设计结构体数组对节点间的关系进行描述:【如表】 这样做的问题: 可以利用 组织链表 parent指针: 注意:树结点在 组织链表 中的位置不代表树的任何逻辑关系 树的架构图&#xf…

从0开始学Git指令(3)

从0开始学Git指令 因为网上的git文章优劣难评,大部分没有实操展示,所以打算自己从头整理一份完整的git实战教程,希望对大家能够起到帮助! 远程仓库 Git是分布式版本控制系统,同一个Git仓库,可以分布到不…

ubuntu主机开启ssh服务,ubuntu通过ssh访问主机

1.ubuntu通过ssh访问主机 要在Ubuntu上通过SSH(Secure Shell)访问另一台主机,您需要确保几件事情: 目标主机上的SSH服务器:确保您要访问的主机上安装并运行了SSH服务器(例如OpenSSH服务器)。 …

java客户端连接redis并设置序列化处理

1、导入依赖 <!--继承父依赖--> <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.12.RELEASE</version><relativePath/> <!-- lookup paren…

服务器出现500、502、503错误的原因以及解决方法

服务器我们经常会遇到访问不了的情况有的时候是因为我们服务器被入侵了所以访问不了&#xff0c;有的时候是因为出现了服务器配置问题&#xff0c;或者软硬件出现问题导致的无法访问的问题&#xff0c;这时候会出现500、502、503等错误代码。基于以上问题我们第一步可以先重启服…

Chapter 7 类和对象的特性(上篇)

目的&#xff1a;认识类&#xff0c;对面向对象产生认识 &#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1f4ca;&#x1…

【Py/Java/C++三种语言详解】LeetCode每日一题240114【链表】LeetCode83、删除排序链表中的重复节点

文章目录 题目链接题目描述解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目链接 LeetCode83、删除排序链表中的重复节点 题目描述 给定一个已排序的链表的头 head &#xff0c; 删除所有重复的元素&#xff0c;使每个元素只出现一次 。返…

Android json功能解析

1. 简介 JAVAScript Object Notation是一种轻量级的数据交换格式具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案&#xff08;有点类似于正则表达式 &#xff0c;获得了当今大部分语言的支持&#xff09;。  JSON采用兼容性很高的文本格式&#xf…

第 380 场周赛 解题报告 | 珂学家 | 数位DP 二分 + 字符串Hash

前言 整体评价 感觉T3更难些&#xff0c;T4太直接了&#xff0c;一般的KMP/StringHash基本就够用了。 上周T4出数位DP&#xff0c;估计是为T3打了一个铺垫。 A. 最大频率元素计数 思路: 模拟即可 class Solution {public int maxFrequencyElements(int[] nums) {Map<Int…

qt5.14.2配置opencv4.5.5

使用环境&#xff1a;windows&#xff0c;opencv4.5.5&#xff0c;qt5.14.2&#xff0c;msvc编译器 这里的opencv文件是已经编译好了&#xff0c;在qt工程中配置就可使用&#xff0c;编译器得是msvc才行&#xff0c;MinGW不管用。 资源地址&#xff1a;https://download.csdn.…

【深度学习每日小知识】Computer Vision 计算机视觉

计算机视觉是人工智能的一个领域&#xff0c;涉及算法和系统的开发&#xff0c;使计算机能够解释、理解和分析来自周围世界的视觉数据。这包括从静态图像到视频流甚至 3D 环境的一切。 使用对象检测和特征提取等方法&#xff0c;计算机视觉本质上需要从视觉输入中提取有用信息…

javascript,setTimeout定时器的精度可能不高,javascript引擎不是你想的那样

javascript引擎&#xff0c;它运行在宿主环境中&#xff0c;对前端来说&#xff0c;一般是web浏览器&#xff0c; 代码运行到浏览器。 专业术语: 事件循环&#xff1a;浏览器提供了一种机制来处理程序中多个块的执行&#xff0c;且执行每块时调用javascript引擎,这种机制被称为…

2023 IoTDB Summit:天谋科技高级开发工程师苏宇荣《汇其流:如何用 IoTDB 流处理框架玩转端边云融合》...

12 月 3 日&#xff0c;2023 IoTDB 用户大会在北京成功举行&#xff0c;收获强烈反响。本次峰会汇集了超 20 位大咖嘉宾带来工业互联网行业、技术、应用方向的精彩议题&#xff0c;多位学术泰斗、企业代表、开发者&#xff0c;深度分享了工业物联网时序数据库 IoTDB 的技术创新…

华为手机备份全过程(保姆级问题解决方案)

手机备份 前言主体信息备份一、关闭windows安全中心的内存完整性二、开启 USB 调试&#xff0c;尝试使用 ADB 连接三、开始备份 微信备份QQ备份写在最后遗留问题 前言 我的手机是荣耀 20&#xff0c;虽然不是华为&#xff0c;但系统还是鸿蒙的系统&#xff08;毕竟那阵荣耀还是…

.pings勒索病毒的威胁:如何应对.pings勒索病毒的突袭?

引言&#xff1a; 在网络安全领域&#xff0c;.pings勒索病毒一直是不断演变的威胁之一。其变种的不断出现使得对抗这一数字威胁变得更加复杂。本节将深入剖析.pings勒索病毒变种的出现&#xff0c;以更好地理解其威胁性质和对策。如果受感染的数据确实有恢复的价值与必要性&a…

reactNative0.71版本的使用

开发环境配置 参考reactNative 官网 版本选中0.71 打包配置 1. IOS 打开项目 -> 进入ios目录->执行命令 pod install ->项目名称.xcworkspace -> 使用xcode打开->配置证书 证书配置截图如下 &#x1f4a1;tips&#xff1a;TARGETS目录下会有多个文件&#x…

【ArcGIS Pro微课1000例】0057:未安装所需的Microsoft驱动程序

文章目录 一、错误提示二、解决办法1. Excel转表2. Excel转csv一、错误提示 ArcGIS Pro添加Excel数据时,提示未安装所需的Microsoft驱动程序,如下图所示: 二、解决办法 1. Excel转表 在选择输入表时,可能会提示未安装所需的 Microsoft 驱动程序。 这是因为要在 ArcGIS P…