图像分析算法与霍夫变换在目标识别中的应用
1. 目标识别算法
1.1 算法概述
目标识别算法旨在从大地图中找出与小地图中相似的建筑物。该算法的输入是两个矢量化地图,一个是包含众多建筑物的大区域地图,另一个是仅含一座建筑物的小地图,且小地图中的建筑物与大地图中的某一建筑物相似,但可能经过了缩放和旋转。
1.2 算法步骤
- 角点数量比较 :比较两座建筑物的角点数量。若数量不同,则判定两座建筑物不同,算法停止;若数量相同,则进入下一步。
- 特征表示转换 :将建筑物的角点列表表示转换为使用墙的角度和长度的表示,即名义特征表示。具体做法是,对于建筑物的每一面墙(由一对点确定向量),计算其长度和角度。名义特征由以给定精度计算的角度直接描述,特征数量通过墙的长度除以特征长度得到。最终,建筑物的每一面墙由一对 (F, N) 描述,其中 F 是名义特征符号(墙的角度),N 是特征数量,得到形式为 ((F1, N1), (F2, N2), …, (Fm, Nm)) 的列表。
- 新列表创建 :为被比较的两座建筑物的表示分别创建一个包含值对的新列表。第一个值表示连续墙之间的角度,第二个值是角点前墙的长度(构成墙的名义特征数量)。角度的计算方式为 αi = (Fi+1 - Fi) mod 360(i ∈ 1, …, m - 1),最后一个角度(顶点在第一个角点)计算为 αm = (F1 - Fm) mod 360。这样的表示使地图上建筑物的旋转差异变得无关紧要,得到的列表形式为 ((α1, N1), (α2,