几何哈希法

470 阅读4分钟

目录

  1. 简介
  2. 它是如何工作的
  3. 伪代码
  4. 复杂性
  5. 应用

简介

几何散列是一种计算机视觉技术,用于检测图像中的几何特征,并将其与具有这种特征的数据库相匹配。 使得几何散列技术脱颖而出的是,它可以检测到重叠的物体、已经发生转变的物体,或者只有部分信息的情况。
GHash-1

它是如何工作的

几何散列法的工作原理是在二维或三维物体上获取离散的点,并使用这些点来匹配存储在散列表中的模型。

GHash-2-1

在一幅有部分物体被遮挡的图像中,它的兴趣点被提取出来,基于这些点,我们把两个结构重叠起来,找到它的重合点。

有两个阶段(1)预处理和(2)识别。我们可以看到该算法的总体方案如下

预处理阶段,将在每个结构中提取目标点或其几何特征,并将其存储在哈希表中。该过程如下。

  1. 提取模型的点特征。每个点代表一个特征的位置或一个或多个属性的列表。

  2. 确定最小数量的特征作为其基础或找到一对有序的点作为参考.
    这允许表达其他特征和参考,当模型经历旋转、平移或缩放时保持不变。

  3. 将会有一个模型的不同基础点的元组。这是因为不能保证在有部分遮挡的情况下我们的基点仍然存在。因此,我们在哈希表中为每个模型做不同的条目。

  4. 将参考点/基点作为哈希表的地址,并将物体信息存储在该空间。

然后,在识别阶段,要检测、提取输入的特征,并将其映射到哈希表的不同条目上,直到找到一个匹配的条目。

  1. 提取输入图像中的兴趣点。
  2. 兴趣点的一对或基础将被确定
  3. 使用兴趣点或基础点。用它来检查哈希表中适当的入口,并为出现的一对(模型,和你的基础/兴趣点)投票。
  4. 当某一对得分高时,那么它就可以成为输入图像中的物体与哈希表中的模型之间的匹配。

伪代码

预处理阶段

For each point in an object in a scene:
    1. define reference points or basis; 
    2. compute the coordinates of all the other points in this reference frame; 
    3. Use the reference points/basis as an address to the hash table and store the object info 
        in that space;
End

识别阶段

For each point in an object from input image:
    1. define reference points or basis; 
    2. compute the coordinates of all the other points in this reference frame; 
    3. Use the reference points/basis to look up the hash table ;
    4. For each model from the table that matches the input vote for its reference frame;
    5. for the reference frames with the highest votes then save the associated transformation;
End

复杂度

设:
M- 数据库中已知模型的数量
S- 识别过程中每个场景的特征数量
C- 形成基础所需的fo特征数量
H- 访问哈希表bin的复杂性,这取决于哈希表大小和bin分布。

最坏情况下的时间复杂性。
预处理。**Θ(Mnc+1)**
识别。**Θ(HSc+1)**

应用

Geomteric散列是作为计算机视觉的一种有效方法被介绍的,它已经被应用于不同的领域,如医学成像、分子生物学、计算机辅助设计等等。让我们来讨论其中的一些。

医学成像
Geomteric hashing被用于医学成像。从不同的成像技术(如CT扫描和MRI)中获取特定器官的信息是一个问题,这意味着一个器官有不同的方向,当把它与一个特定的模型相匹配时将是一个问题。几何散列是这个问题的一个很好的解决方案,因为它可以把一个特定的图像/物体与一个模型相匹配,尽管经历了闭塞或转换。

下面是一项在医学成像中实现几何散列的研究。A. Guéziec, X. Pennec和N. Ayache的《使用几何散列的医学图像注册》。它比较了从不同角度拍摄的同一事物的不同医学图像,并使用几何散列来计算自动注册医学图像的三维变换。

分子生物学
Geomteric被用来解决分子生物学中的表面和体积匹配问题。Geomteric散列可用于分子对接,这是一种用于结构分子生物学和计算机辅助设计的方法。其目的是预测不同分子的首选方向,或预测其主要的结合模式。

这里有一项研究,实现了基于几何学的分子对接过程的几何散列。Fischer, D., Lin, S. L., Wolfson, H. L., & Nussinov, R.的基于几何学的分子对接过程套件。