没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
甘寸及时贵似油,
今朝欢乐便无愁。
三维匹配&3D
Object Model
Operators
3D-Matching
1
1
目录
4 已知物体三维位姿识别 ........................................................................... 3
4.1 点的位姿估计 ............................................................................. 3
4.2 基于形状的 3D 匹配的误差估计 .............................................................. 7
4.2.1 形状匹配的一般过程 ................................................................. 7
4.2.2 强化基于形状的 3D 匹配 ............................................................. 11
4.2.3 问题处理的提示和技巧 .............................................................. 13
4.3 基于表面的 3D 匹配的位姿计算 ............................................................. 15
4.3.1 基于表面 3D 匹配的一般过程 ......................................................... 15
4.4 使用可变形的表面 3D 匹配进行位姿估计 ..................................................... 18
4.4.1 可变形的表面 3D 匹配的一般过程 ..................................................... 19
4.5 使用 3D 基元拟合进行位姿估计 ............................................................. 22
4.6 使用标定的投影变形匹配进行位姿估计 ...................................................... 25
4.7 使用标定的基于描述符的匹配进行位姿估计 .................................................. 26
4.8 圆的位姿估计 ............................................................................ 27
4.9 矩形位姿估计 ............................................................................ 27
部分 3D 算子 ..................................................................................... 28
3.3 Surface-Based ........................................................................... 28
clear_surface_matching_result ........................................................... 28
clear_surface_model ..................................................................... 28
create_surface_model .................................................................... 28
find_surface_model ...................................................................... 30
find_surface_model_image ................................................................ 36
get_surface_matching_result ............................................................. 38
get_surface_model_param ................................................................. 39
read_surface_model ...................................................................... 39
refine_surface_model_pose ............................................................... 40
refine_surface_model_pose_image ......................................................... 41
set_surface_model_param ................................................................. 42
write_surface_model ..................................................................... 43
4.1 Creation ................................................................................ 43
copy_object_model_3d .................................................................... 43
gen_box_object_model_3d ................................................................. 44
gen_cylinder_object_model_3d ............................................................ 45
gen_empty_object_model_3d ............................................................... 45
gen_object_model_3d_from_points ......................................................... 45
gen_plane_object_model_3d ............................................................... 46
gen_sphere_object_model_3d .............................................................. 46
gen_sphere_object_model_3d_center ....................................................... 46
read_object_model_3d .................................................................... 47
set_object_model_3d_attrib .............................................................. 50
set_object_model_3d_attrib_mod .......................................................... 52
union_object_model_3d ................................................................... 52
3D-Matching
2
2
write_object_model_3d ................................................................... 53
4.2 Features ................................................................................ 54
area_object_model_3d .................................................................... 54
distance_object_model_3d ................................................................ 54
get_object_model_3d_params .............................................................. 59
max_diameter_object_model_3d ............................................................ 64
moments_object_model_3d ................................................................. 64
select_object_model_3d .................................................................. 64
smallest_bounding_box_object_model_3d ................................................... 66
smallest_sphere_object_model_3d ......................................................... 67
volume_object_model_3d_relative_to_plane ................................................ 67
4.3 Segmentation ............................................................................ 68
fit_primitives_object_model_3d .......................................................... 68
segment_object_model_3d ................................................................. 70
select_points_object_model_3d ........................................................... 71
4.4 Transformations ......................................................................... 73
affine_trans_object_model_3d ............................................................ 73
connection_object_model_3d .............................................................. 73
convex_hull_object_model_3d ............................................................. 74
edges_object_model_3d ................................................................... 74
intersect_plane_object_model_3d ......................................................... 75
object_model_3d_to_xyz .................................................................. 75
prepare_object_model_3d ................................................................. 76
project_object_model_3d ................................................................. 78
projective_trans_object_model_3d ........................................................ 78
register_object_model_3d_global ......................................................... 78
register_object_model_3d_pair ........................................................... 78
render_object_model_3d .................................................................. 78
rigid_trans_object_model_3d ............................................................. 79
simplify_object_model_3d ................................................................ 80
smooth_object_model_3d .................................................................. 82
surface_normals_object_model_3d ......................................................... 83
triangulate_object_model_3d ............................................................. 84
3D-Matching
3
3
4 已知物体三维位姿识别
在许多应用领域中计算一个物体的三维位姿是一个很重要的任务,例如,在完整性检测期间或在机器人视觉应
用中的三维对齐(8.71 节)。HALCON 提供多种方法来确定已知 3D 物体的位置或位姿。
最通用的确定已知三维物体位姿的方法是使用至少三个相关点,即对于已知 3D 物体坐标的点的相关图像坐标
被提取,该方法也叫做“mono 3D” (section 4.1).
如果一个已知三维物体模型的模版可用,3D 匹配可用来定位物体。可用的 3D 匹配方法执行了整个的一个三维
物体识别,即他们不仅仅估算了一个位姿,而是首先在各搜寻数据中定位物体。下述方法是可用的:
(1) Shape-based 3D matching (section 4.2)基于形状的匹配:可用来在一个单一的 2D 图像中定位一个
复杂的三维物体。3D 物体的模型必须是一个可用的 CAD 模型,例如 DXF, OFF, or PLY 格式(支持格式
的详细信息看 read_object_model_3d)且物体需要“hard geometric edges”来识别。
(2) Surface-based 3D matching (section 4.3)基于表面的匹配:可用来在一个 3D 场景中快速的定位一
个复杂的 3D 物体,即在一个有一系列点集组成的所谓的三维物体模型(see also section 2.3)中。3D
物体模型的模版可以也是从 CAD 模型中获取的三维物体模型或可以是来自通过一个三维重建方法获取
的一个指定三维场景,例如,立体视觉或片光。这里,物体也可以包含一个“smooth surface”(平滑
的表面)。注意该方法也被称作“volume matching”立体匹配。
如果简单 3D 形状的位姿,比如长方体、圆柱、球或平面(这些被称作“3D primitives”)作为一个 3D 物体模
型,其位姿在一个 3D 场景中被查找,则 3D 基元拟合可以被使用。那样,三维场景被分割为 sub-parts,这样在每
一个 sub-part 选择类型的基元被拟合。对于每一个 sub-part,拟合返回最优基元拟合的参数,例如拟合的平面的
位姿。
有时,一个完整的三维物体识别或 3D 匹配是不必要的,因为你可以以更简单的方式估算物体的位姿。例如,如
果物体包含了一个典型的平面部分,可以使用 perspective matching 从一个单一图像中估算 3D 位姿。类似于 3D 匹
配方法,他们在估算其位姿前对物体进行定位。两种方法是可用的:
(1) calibrated perspective deformable matching 确定一个平面物体的三维位姿,该平面物体通过一个
模版物体定位,而该模版物体通过使用自动提取的物体的轮廓确定(4.6 节)。
(2) calibrated descriptor-based matching 确定一个平面物体的三维位姿,该平面物体通过一个模版物
体定位,而该模版物体通过使用自动提取的物体的特征点(被称作感兴趣点)确定。
如果一个需要知道三维位姿的平面中有一个圆或是矩形,位姿估算也可以简单的利用 circle pose (section
4.8) or rectangle pose (section 4.9) estimation 计算。其中,圆或是矩形必须从图像中提取,且相机内参及
圆或矩形的尺寸需要已知。
一个关于在机器人视觉系统中进行位姿计算的例程应用在 8.7.3 节描述。注意不同 3D 匹配方法的描述也可以
在 Solution Guide I, chapter 10 on page 143 中找见。perspective matching 方法在 Solution Guide II-B 中
详细描述。
4.1 点的位姿估计
如果相机内参已知,物体位姿可以通过调用一个算子 vector_to_pose 确定。
单独的步骤在例程 solution_guide\3d_vision\pose_of_known_3d_object.hdev 中说明,其中确定了金属零件
在给定世界坐标系中的相对位姿。
首先,相机必须被标定,即相机的内参以及如果物体相对于给定世界坐标系的位姿需要被确定,相机的外参需
要确定。详细标定过程看 3.2 节。世界坐标系可以等同于任一标定板图像中标定板坐标系也可以被改变是适应一些
3D-Matching
4
4
给定的指定坐标系(图 4.1)。这可以被确定,例如通过使用算子 set_origin_pose
set_origin_pose (PoseOfWCS, -0.0568, 0.0372, 0, PoseOfWCS)
或如果需要除平移外其他转换,通过齐次变换矩阵(2.1 节)。
pose_to_hom_mat3d (PoseOfWCS, camHwcs)
hom_mat3d_rotate_local (camHwcs, rad(180), 'x', camHwcs)
hom_mat3d_to_pose (camHwcs, PoseOfWCS)
通过对应于世界坐标系的齐次变换矩阵
c
w
H
,世界坐标系可以被转换到相机坐标系。
之后,物体的位姿可以通过至少三个点(控制点)确定,其中点的 3D 物体坐标以及二维图像坐标是已知的。
控制点的三维坐标需要被一次确定。他们必须在依附于物体的坐标系中给出。应该选择可以简单且准确从图像
中提取的点。控制点的三维坐标之后被存储在三个数组中,一个用于存储 x 坐标,一个用于存储 y 坐标,最后一个
用于存储 z 坐标。
在每一幅物体位姿要被提取的图像中,控制点必须被提取。该任务很大程度上取决于物体以及物体可能的位姿。
如果已知物体相对相机不能倾斜,检测,例如,可以通过基于形状的匹配实现(形状匹配详细信息看 Solution Guide
II-B, section 3.2)。
控制点的图像坐标系一旦确定,他们必须被存储在两个数组中来分别存储 row 和 column 坐标值。注意二维图
剩余92页未读,继续阅读
资源评论
Abe*
- 粉丝: 4
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功