machine-learning - 如何使用神经网络进行人脸检测?

标签 machine-learning computer-vision neural-network theano

我正在尝试使用用 theano 编写的神经网络构建人脸检测系统。我对计算交叉熵的预期输出应该是什么感到有点困惑。我不想知道脸部是否存在,我需要突出显示图像中的脸部(找到脸部的位置)。图像的大小是恒定的。但图像中脸部的大小却不是。我该怎么办?另外,我的网络摄像头当前捕获 480x640 的图像。在输入层中创建这么多神经元会对系统造成很大负担,如何在不丢失任何特征的情况下压缩图像?

最佳答案

有很多可能的解决方案,最简单的解决方案之一是执行滑动窗口搜索并询问网络“图像的这一部分有脸吗?” - 这是相当“标准”的方法。特别是,你按照层次结构进行操作——将图像分割成 9 个重叠的正方形(我假设图像是正方形),并在每个正方形中询问“里面有一张脸吗?”通过将其重新调整为您的网络输入。接下来,您再次将回答"is"的人分成 9 个方格并重复。这样你就可以快速找到面孔。另一种方法是执行监督分割,尝试预测图像的哪些部分(像素/超像素)属于面部,哪些部分不属于面部。这不是详尽的列表,但应该让您大致了解如何继续。

how do i compress the images without losing any features?

你没有。这不可能。缩小规模时总会丢失一些数据(无损压缩存在,但它会破坏结构,从而使分类变得极其困难)。

关于machine-learning - 如何使用神经网络进行人脸检测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34461249/

相关文章:

python-3.x - 对新的线性 SVM 数据帧进行分类时出错

包含训练集和测试集对象的 R 列表

c++ - 如何使用 OpenCV 从已知的 3D 点云(没有 I 构建)估计新图像 I 的相机姿态矩阵

nlp - 如何创建词向量

python - 在 model.fit() 期间记录 Keras 中每个时期的计算时间

machine-learning - 神经网络中的批量归一化

python - 使用 RNN 的神经机器翻译背景下的投影层是什么?

algorithm - 如何在不使用 Google 的情况下估算 "Did you mean?"?

image - 图像的显性 "color"

python - 如何在 OpenCV Haar 分类器中显示最大的矩形