opencv - 如何选择负样本? (OpenCV,目标检测)

标签 opencv object-detection

我想制作一个人脸检测应用程序,使用 Python、OpenCV 只检测我的脸。我想知道选择负样本是否有任何规则。我应该选择任何不包含我的脸的图像吗? (例如:道路、场景、动物等)或者我应该选择不包含我脸的人脸作为负像。

另外我想知道查找对象占用的公共(public)环境是否会影响效率? (例如:在检测汽车时选择空旷的道路作为负图像是一种好的做法吗?)

我真的很想知道你的想法。如果有的话,您能否也分享文章、文档?我真的很感激。感谢您的帮助!

最佳答案

这是一个相当困难的问题,很大程度上取决于您选择的算法。如果你例如使用 SIFT,那么你只使用正样本。如果您使用的是 Cascades,则负样本是必需的。

使用什么样本取决于应用,不存在单一答案。您通常应该提供涵盖您可能会出现的可能情况的正样本和负样本。随着算法变得更加复杂(深度学习),这变得更加相关。

因此,如果您认为其他面孔可以出现在图像中,并且您希望确保它认为它们是负面的,您需要提供此信息。如果您的脸可以出现在不同的背景下,那么包含这些情况也很重要。

总而言之,包括预期会出现的情况的样本(正面/负面)。

关于opencv - 如何选择负样本? (OpenCV,目标检测),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57568943/

相关文章:

Android Studio 找不到 OpenCV header

python - 使用对象检测时出现 Open cv 错误

opencv - 选择哪种算法进行目标检测?

tensorflow - 在 Tensorflow 中导出推理图时出现“解析输入...形状不完整”错误

java - 为什么如果导入library.jar,需要说出 native 库位置?

matlab - SVD 在 Matlab 和 OpenCV 中计算不同的结果

python - 将 RGB 图像转换为 LAB 图像时出现意外输出

c - 如何在 OpenCV 中访问 3d 矩阵的切片

python - 如何找到在python中从yolo检测到的对象的像素值?

python - 将 xml 文件转换为 tfrecord 文件时出错