python创建数据集_使用Python从图像创建数据集以进行人脸识别

我正在尝试用Python编写人脸识别程序(我将应用k-nn算法进行分类).

首先,我将图像转换为灰度,然后创建了一个长列向量(通过使用Opencv的imagedata函数),该向量具有图像的像素(总共128×128 = 16384个特征)

因此,我得到了如下数据集(最后一列是类标签,我只显示了数据集的前7个特征,而不是16384).

176, 176, 175, 175, 177, 173, 178, 1

162, 161, 167, 162, 167, 166, 166, 2

但是,当我将k-nn应用于此数据集时,会得到尴尬的结果.我是否需要对该数据集应用其他过程,而不仅仅是将图像转换为像素表示?

谢谢.

解决方法:

如果您希望它运作良好,是的,您需要进行功能转换.

PCA或LDA运作良好. PCA将获取输入向量的集合(在这种情况下为您的矢量化图像),并找到跨越输入集合的特征面.然后,在测试过程中,将输入向量(即图像)投影到这组特征脸上,然后将所得坐标向量用作特征向量.有关更多信息,请参见[Turk and Pentland, 1991].

我在PIE database上使用此基本PCA方法进行的个人实验成功.

标签:image-recognition,knn,opencv,computer-vision,python

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值