我有一个项目需要制作用于人脸识别的神经网络。 网络输入应该是需要识别的面部特征。
我搜索了很多,发现Matlab的计算机视觉工具箱的SURF探测器将帮助我提取脸部特征。但SURF检测器提取面部关键点,并为每个关键点设置64或128个值的矢量。问题是关键点的数量是变化的,我需要对每个面都相同,以便能够提供神经网络的输入。
所以我想只提取一些可以作为单个数字呈现的特征,比如鼻子,嘴巴,眼睛的比例,眼睛之间的距离等。
我怎样才能获得这些功能,它们是否足以作为神经网络的输入,需要识别面部?在神经网络的输出上会有相同数量的神经元,因为数据库中存在不同的人,并且在训练阶段我将使用照片中提取的面部特征来提供网络,如果是照片,则让#&# 39; s表示数据库中五分之三的人,我的输出层看起来像[0,0,1,0,0]。
这是一个很好的方法,你能给我一些代码,从Matlab中提取面部特征吗?
答案 0 :(得分:1)
鼻子/嘴巴/眼睛对眼睛的比例和眼睛之间的距离会给你带来非常糟糕的结果。那些不是准确或足够独特的措施。
如果您正在寻找面部识别功能,您应该考虑LBP: http://www.scholarpedia.org/article/Local_Binary_Patterns#Face_description_using_LBP