【发布时间】:2016-09-03 20:29:17
【问题描述】:
我不明白训练阶段和预测阶段是如何工作的。在找到 LBPH 特征后是否使用另一种算法,如 svm 或 k-nearestneighbour?
【问题讨论】:
标签: c++ opencv machine-learning computer-vision
我不明白训练阶段和预测阶段是如何工作的。在找到 LBPH 特征后是否使用另一种算法,如 svm 或 k-nearestneighbour?
【问题讨论】:
标签: c++ opencv machine-learning computer-vision
如果您检查:https://github.com/Itseez/opencv_contrib/blob/master/modules/face/src/lbph_faces.cpp 然后你会看到他们使用 1-nearest neighbour,摘自检测函数:
// find 1-nearest neighbor
collector->init((int)_histograms.size(), state);
for (size_t sampleIdx = 0; sampleIdx < _histograms.size(); sampleIdx++) {
double dist = compareHist(_histograms[sampleIdx], query, HISTCMP_CHISQR_ALT);
int label = _labels.at<int>((int)sampleIdx);
if (!collector->collect(label, dist, state))return;
}
使用 1-最近邻分类器,因为本地二进制模式描述符足够简单。有关更深入的解释,请参阅论文:“Face Recognition with Local Binary Patterns”
附带说明。这不是一个真正的实施/实际问题,因此不属于这个论坛。我建议使用 opencv 论坛。
【讨论】: