3D多视图模型生成与基于正交化的颜色模型在目标检测中的应用
立即解锁
发布时间: 2025-08-21 00:07:09 阅读量: 2 订阅数: 5 

### 3D多视图模型生成与基于正交化的颜色模型在目标检测中的应用
#### 1. 3D多视图模型生成
在物体视觉识别领域,生成凸多面体的3D多视图模型是一项重要的研究内容。以往的方法存在一定的局限性,本文将介绍一种更具计算效率的方法。
##### 1.1 现有方法回顾
- **文献[10]方法**:该方法基于以下思路,先围绕用于识别的物体特征生成视图,计算与这些视图对应的单视图区域,检查整个视球是否被单视图区域覆盖。若覆盖完整,则完成视图表示的生成;若未覆盖完整,则生成与未覆盖区域对应的额外视图,再次检查覆盖情况,直至视球被完全覆盖。
- **文献[16]和[18]方法**:这两种方法更为优秀,无需循环操作。通过严格用单视图区域覆盖视球,并控制“边缘”寄存器(未覆盖区域),当寄存器置为“空”时,多视图表示的生成完成。但这些方法需要计算视球上的单视图区域,并按给定顺序操作,且仅适用于凸多面体。
##### 1.2 研究假设
本研究旨在开发一种生成多视图、多面体表示的方法和算法,使用具有透视投影的视球进行表示生成。需满足以下条件:
- 模型准确:每个模型等同于边界表示(B - rep)模型。
- 模型为视图模型:可从任何视图识别物体。
使用具有投影的视球作为投影空间,便于视图标准化。该方法适用于识别尺寸不超过几米、距离系统不超过10 - 20米的物体。识别过程假设包括以下步骤:
1. 确定可识别的物体类型。
2. 定义识别任务(选择用于物体识别的物体外壳特征)。
3. 为系统应识别的每个物体生成视图模型。
4. 创建包含所有模型所有视图的数据库。
5. 获取场景空间数据和视觉数据。
6. 隔离场景元素并将其转换为存储在数据库中的模型结构。
7. 通过与数据库模型比较来识别物体。
##### 1.3 视图生成空间 - 具有透视投影的视球
假设物体为无孔或无凹坑的凸、不透明多面体,将其面视为特征区域,这些区域将作为精确多视图模型确定的基础。该模型是通过从视球进行透视投影获得的精确视图集,此模型最适合3D场景数据采集,并为识别系统提供可靠性。
生成3D多视图表示的概念如下:
- 在多面体上外接一个小球(半径为r),球心位于多面体中心。
- 在这个小球上放置一个张角为2a的空间锥体,即视锥。视锥的顶点是模型视点VP,多面体中心与模型视点的距离为R,视轴始终穿过球心。
- 视锥顶点不受约束地移动(视锥与小球相切)会形成一个半径为R的大球,即视球。
- 值a、r和R与多面体顶点坐标(Xvi, Yvi, Zvi)之间的关系为:$r - max_{i = 1}^{k}\sqrt{x_{vi}^{2}+y_{vi}^{2}+z_{vi}^{2}}$,$sin\alpha$。
- 仅考虑为识别选择的物体特征(即面)生成视图。视锥中可见的面构成一个视图,该视图的外部边缘构成视图的轮廓。
- 计算单视图区域,这些区域对应特定的视图。
- 通过用单视图区域覆盖视球,获得给定多面体的完整视图集。视图的生成方式应使相应的单视图区域完全覆盖视球。
视图之间的切换是一个视觉事件,由视点VP的移动引起,表现为视图中出现新特征、消失特征或两者兼而有之。
##### 1.4 基本定义
- **互补视锥**:由当前视轴定义(与视轴共线),张角与视锥相反,与视锥相交角度为$\frac{\pi}{2}$,其张角为$\frac{\pi}{2}-\alpha$。
- **多面体的向量表示(VREP)**:是一组平移到点(0, 0, 0)的多面体面法线。
##### 1.5 旋转互补锥获取视图的算法
对于多面体向量表示(VREP)V中的每个向量v,围绕该向量旋转互补锥,并记录每个视觉事件。该事件表现为互补锥内出现新的单位向量或单位向量消失。此操作的结果是观察者从视球上可以看到的向量面集合。
如果多面体是凸的,视图轮廓内的所有面都是可见的;如果不是凸的,某些面可能不可见。最后,创建不同的可见向量面集合,通过添加所有获得的集合并去除重复集合来实现。
对于凸多面体,某些面法线平移到小视球中心并包含在互补锥中意味着它们在同一视图中。通过围绕所有法线旋转互补锥,可以获得所有在某些视图中的面法线组合,因此可以假设该算法可以收集所有视图。
##### 1.6 数学方法
首先描述计算互补锥(围绕向量v)相交方向的算法,使用坐标变换的思想简化任务。
对于用笛卡尔坐标描述的向量v,在包含三个向量x(1, 0, 0),y(0, 1, 0),z(0, 0, 1)的基B中,指定基B',可通过将B的元素乘以(变换)矩阵[B'B]创建B',选择B'使得向量v在该基中的坐标等于v'(1, 0, 0),即$v' = [B'B] * v$。
满足上述条件的矩阵集合是无限的,可采用以下方法获取其中一个:从基向量(来自B)中选择与v的角度距离最接近90度(点积最接近0)的向量,标记为t,则:
$x' = v$
$y' = v \times t$
$z' = v \times (v \times t)$
逆矩阵(x', y', z')满足条件。
将围绕向量v'旋转的互补锥表示为向量r(s),它位于锥的对称中心,是围绕v'旋转角度的函数(考虑基B')。计算r(0)为旋转向量(1, 0, 0)绕z'轴旋转$\frac{\beta}{2}$角度($\beta$为互补锥角度),则:
$r(s) = (r(0).x, r(0).y * cos(s), r(0).y * sin(s))$
互补锥与h'(即从基B转换到B'的向量h)相交,当且仅当存在s使得:
$r(s) * h' = cos(\frac{\beta}{2})$
这是因为h'与互补锥相交当且仅当与锥对称中心的角度距离等于锥角度的一半。由此得到方程:
$r(0).x * h'.x + r(0).y * cos(s) * h'.y + r(0).y * sin(s) * h'.z = cos(\frac{\beta}{2})$
标记已知值:
$A = r(0).y * h'.y$
$B = r(0).y * h'.z$
$C = r(0).x * h'.x - cos(\frac{\beta}{2})$
则方程简化为“相交方程”:
$A * cos(s) + B * sin(s) - C = 0$
对于特定数据,该方程可能有0个解(向量h'在所有s下都不与锥相交)、1个解(锥在某个s下“接触”h')或2个解(s0 < s1,h'在旋转过程中进入和离开锥)。仅第三种情况认为h与向量v“在同一视图中”。由于坐标变换,在基B'中获得的计算结果在基B中同样有效。
接下来,考虑计算包含在某些s区间内位于互补锥内的向量集合。创建集合H,包含向量表示中除v向量外的所有向量h{i}的“锥相交”解Sh{i}。从0到2π移动,检查并记录先前计算的解(Sh{j})的出现和消失,这等同于计算在同一视图中的向量集合,每个集合包含向量v。
算法F - M步骤如下:
1. 对于物体向量表示中的每个向量v,指定其变换矩阵([B'B])。
2. 对于物体向量表示中除v之外的每个向量v':
- 指定其在B'中的坐标。
- 指定并求解“相交方程”,将解存储为角度范围(Sh)。
3. 用先前获得的角度范围划分角度范围(0 - 2π),每个获得的段代表一个视图。
4. 去除重复
0
0
复制全文
相关推荐










