惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recorded Future
Recorded Future
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Forbes - Security
Forbes - Security
N
News and Events Feed by Topic
SecWiki News
SecWiki News
T
The Exploit Database - CXSecurity.com
S
Security @ Cisco Blogs
H
Heimdal Security Blog
Security Latest
Security Latest
T
Threatpost
V2EX - 技术
V2EX - 技术
C
Cybersecurity and Infrastructure Security Agency CISA
GbyAI
GbyAI
The Last Watchdog
The Last Watchdog
Recent Announcements
Recent Announcements
P
Privacy International News Feed
K
Kaspersky official blog
P
Proofpoint News Feed
L
LangChain Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Security Archives - TechRepublic
Security Archives - TechRepublic
T
Threat Research - Cisco Blogs
博客园_首页
T
Tor Project blog
M
MIT News - Artificial intelligence
The Hacker News
The Hacker News
The GitHub Blog
The GitHub Blog
月光博客
月光博客
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
F
Full Disclosure
MyScale Blog
MyScale Blog
The Register - Security
The Register - Security
Engineering at Meta
Engineering at Meta
Y
Y Combinator Blog
Cyberwarzone
Cyberwarzone
L
LINUX DO - 最新话题
量子位
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
O
OpenAI News
T
The Blog of Author Tim Ferriss
S
Schneier on Security
小众软件
小众软件
The Cloudflare Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Know Your Adversary
Know Your Adversary
Microsoft Security Blog
Microsoft Security Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
Lohrmann on Cybersecurity
Vercel News
Vercel News

博客园 - 广阔之海

Halcon的三角函数 Halcon轮廓插值方法 C# 控件选项变化事件处理 深度学习执行速度不稳定的解决方法 Halcon - 深度学习 - 目标分类 Halcon 画一个时钟 Halcon 解方程(solve_matrix) C# 使用Serilog日志框架 Halcon 生成标定板 Halcon 中的形态学 Halcon的提取中心线算法 C# 消灭switch的面向映射编程 C#中Task的用法 Halcon图像投影映射 C# 获取MySql的数据库结构信息 C# HttpClient的使用方法总结 MySql字符集导致特殊字符保存出错问题处理 Asp.Net Core 动态生成WebApi Asp.Net Core WebApi中集成Jwt认证
Halcon 通过坐标轴过滤点云数据
广阔之海 · 2022-08-15 · via 博客园 - 广阔之海

第一步,先用MeshLab软件打开ply点云文件,然后点击工具栏的信息按钮,再按空格键切换为点提取模式,用鼠标在要测量的面上拾取点并查看三维坐标,多拾取几个点得到要测量面的大概Z轴范围。

第二步,使用Halcon读取ply点云文件,通过Z轴范围对点云进行过滤,代码如下:

dev_close_window ()
dev_open_window (0, 0, 400, 500, 'black', WindowHandle)
*读取点云ply文件
read_object_model_3d('PointCloud_20220815155258886.ply', 'mm', 'convert_to_triangles', 'true', ObjectModel3D, Status)
*过滤Z轴指定范围内的点
select_points_object_model_3d (ObjectModel3D, 'point_coord_z', -0.490, -0.480, ObjectModel3DThresholded)
*拟合平面
fit_primitives_object_model_3d (ObjectModel3DThresholded, ['primitive_type','fitting_algorithm'], ['plane','least_squares_tukey'], ObjectModel3DOut)
*获取平面位姿
get_object_model_3d_params (ObjectModel3DOut, 'primitive_pose', Pose)
*将点云坐标系转为拟合平面的坐标系
pose_to_hom_mat3d(Pose, HomMat3D)
hom_mat3d_invert(HomMat3D, HomMat3DInvert)
affine_trans_object_model_3d(ObjectModel3DThresholded, HomMat3DInvert, ObjectModel3DAffineTrans)
*显示点云和坐标轴
visualize_object_model_3d (WindowHandle, ObjectModel3DAffineTrans, [], [], \
                           ['lut','color_attrib','disp_pose'], \
                           ['color1','coord_z','true'], '', [], [], PoseOut)

最终,显示点云如下: