构建视觉词典就是把大量局部描述子(比如 ORB 的二进制描述子)聚成若干类"视觉单词"(visual words)。每个簇心代表一类相似的局部图像模式(比如"椅子腿的某种局部纹理")。之后把每张图像里出现的这些单词频率统计成一个定长向量(BoW histogram),用于训练分类器。
1. 整体流程(高层次步骤)
-
对训练集中每张图像用 ORB 提取描述子(descriptors)。
-
把所有图像的描述子合并成一个大集合(可能很大)。
-
对集合采样(必要时),然后对描述子做聚类(通常用 k-means)得到 K 个簇心(这就是视觉词典)。
-
对每张图像,把它的描述子映射到最近的簇心,统计每个簇心出现的次数 → 得到长度为 K 的直方图(BoW)。
-
对直方图做归一化 / TF-IDF / L2 标准化 等预处理,再送入分类器(SVM等)。