运行“基于极限学习机ELM的人脸识别程序”犯下的一些错误

简介: 运行网上别人的一段基于超限学习机ELM的人脸识别程序犯下的一些错误

代码来源:基于极限学习机ELM的人脸识别程序
感谢文章主的分享
我的环境是

  • win10
  • anaconda Command line client (version 1.6.5)(conda 4.3.30)
  • tensorflow-gpu 1.1.0
  • python 3.6.2

1. 直接运行代码块,提示“未知引用 import hpelm"

这是因为我的Python环境没有安装hpelm导致的,运行代码pip install hpelm。第一次安装没有成功,查询发现可能是pip版本问题,升级了pip版本,运行pip3 install hpelm,安装成功,两次使用的安装命令不同,不知道是不是因为升级了pip版本才安装hpelm成功的。

2. 提示‘import cv2’错误

安装hpelm后,再次运行代码,提示上述错误,因为我的环境没有安装opencv,运行

  1. pip install numpy Matplotlib
  2. pip install opencv-python安装成功即可

3. 提示numpy版本不对

再次运行代码,提示numpy版本不对,提示错误

RuntimeError: module compiled against API version 0xc but this version of numpy is 0xa

网上提示升级numpy版本,方法:

  1. 运行pip uninstall numpy
  2. 运行pip install -U numpy
    安装成功即可。

4. 提示错误'AssertionError: X has wrong dimensionality: expected 10000, found 1'

错误如下:

Traceback (most recent call last):
File "train_hpelm.py", line 38, in <module>
elm.train(np.array(input_data),np.array(output_data))
File "C:UserscaichangqingAppDataLocalcondacondaenvstensorflowlibsite-packageshpelmelm.py", line 182, in train
X, T = self._checkdata(X, T)
File "C:UserscaichangqingAppDataLocalcondacondaenvstensorflowlibsite-packageshpelmelm.py", line 533, in _checkdata
(self.nnet.inputs, X.shape[1])
AssertionError: X has wrong dimensionality: expected 10000, found 1

由于路径问题,代码中路径的格式’D:abcabca',中间''符号被当成转义字符,造成路径错误,应该改成

  • D:\\abc\\abc\\a
  • 或者 D:/abc/abc/a

5. AttributeError: module 'opencv' has no attribute 'resize'

错误如下:

AttributeError: module 'opencv' has no attribute 'resize'

在代码的引用中,导入opencv是import opencv as cv2,我的环境是'python 3.6',应该使用import cv2 导入

6. 读入图片错误

错误如下:

OpenCV Error: Assertion failed (ssize.width > 0 && ssize.height > 0) in cv::resize, file C:projectsopencv-pythonopencvmodulesimgprocsrcresize.cpp, line 4044
Traceback (most recent call last):
File "train_hpelm.py", line 15, in
manimg = cv2.resize(cv2.imread(file_path, cv2.IMREAD_GRAYSCALE),(100, 100),interpolation=cv2.INTER_CUBIC)
cv2.error: C:projectsopencv-pythonopencvmodulesimgprocsrcresize.cpp:4044: error: (-215) ssize.width > 0 && ssize.height > 0 in function cv::resize

试了很多,最后发现我下载的人脸库有问题,同样环境下,cv2.imread()可以读取别的图片,不能读取我下载的人脸库图片,cv2.imread()读取后返回值是None。同时,所有不能正确读入图片都会提示该错误。
(后来同学说cv2.imread()不能读取gif图片,我下的是这个格式的)

7. 新下载的库,改名就行了

#coding=utf-8  
import os
path = "D:\\tensorflow\\face\\yale" #更改为你自己的人脸库路径
count = 1
flag = 1
for i in range(1,166):
   flag = i%11
   add_pre=lambda x:'0'+str(x) if len(str(x))==1 else str(x)      #加前缀
   if(flag == 0 ):
      flag = 11
   files = os.path.join(path, 's{}.bmp'.format(i))
   if(os.path.isfile(files)):
           filename=os.path.splitext(files)[0];#文件名
      filetype=os.path.splitext(files)[1];#文件扩展名
      Newdir=os.path.join(path,'subject{}_{}'.format(add_pre(count),flag)+filetype);#新的文件路径
      os.rename(files,Newdir)#重命名
   if(flag == 11): count += 1
目录
相关文章
|
机器学习/深度学习 人工智能 算法
基于Python进行人脸验证人脸识别系统 毕业设计附完整代码 可直接运行
基于Python进行人脸验证人脸识别系统 毕业设计附完整代码 可直接运行
408 0
基于Python进行人脸验证人脸识别系统 毕业设计附完整代码 可直接运行
|
TensorFlow 算法框架/工具 计算机视觉
关于运行“基于极限学习机ELM的人脸识别程序”代码犯下的一些错误
代码来源 基于极限学习机ELM的人脸识别程序 感谢文章主的分享 我的环境是 win10 anaconda Command line client (version 1.6.5)(conda 4.3.30) tensorflow-gpu 1.1.0 python 3.6.2 1. 直接运行代码块,提示“未知引用 import hpelm" 这是因为我的Python环境没有安装hpelm导致的,运行代码pip install hpelm。
1548 0
|
2月前
|
机器学习/深度学习 监控 算法
m基于深度学习网络的活体人脸和视频人脸识别系统matlab仿真,带GUI界面
m基于深度学习网络的活体人脸和视频人脸识别系统matlab仿真,带GUI界面
38 0
|
12天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
37 6
|
2月前
|
算法 安全 搜索推荐
深入浅出:使用Python实现人脸识别系统
在当今数字化时代,人脸识别技术已成为安全验证、个性化服务等领域的关键技术。本文将引导读者从零开始,逐步探索如何利用Python和开源库OpenCV来构建一个基础的人脸识别系统。本文不仅会详细介绍环境搭建、关键算法理解,还会提供完整的代码示例,帮助读者理解人脸识别的工作原理,并在实际项目中快速应用。通过本文,您将能够掌握人脸识别的基本概念、关键技术和实现方法,为进一步深入学习和研究打下坚实的基础。
|
6月前
|
存储 编解码 数据库
基于人脸识别的智能门锁系统
基于人脸识别的智能门锁系统
88 0
|
7月前
|
关系型数据库 测试技术 数据库
Python 基于人脸识别的实验室智能门禁系统的设计与实现
Python 基于人脸识别的实验室智能门禁系统的设计与实现
|
2月前
|
小程序 JavaScript Java
android电子班牌人脸识别系统源码
智慧校园云平台全套源码包含:电子班牌管理系统、成绩管理系统、考勤人脸刷卡管理系统、综合素养评价系统、请假管理系统、电子班牌发布系统、校务管理系统、小程序移动端、教师后台管理系统、SaaS运营云平台。
34 1
|
2月前
|
机器学习/深度学习 XML 数据库
深入浅出:使用Python实现人脸识别系统
在本文中,我们将探索如何使用Python和开源库OpenCV来构建一个基础的人脸识别系统。不同于传统的技术文章摘要,这里我们将以故事化的方式引入问题背景,带领读者从零开始,逐步深入到人脸识别技术的核心原理和实现过程中。我们将讨论人脸识别技术的基本概念、所面临的挑战、以及如何通过Python代码解决这些问题。最终,读者将获得足够的知识和技能,去实现一个简单的人脸识别系统,为进一步的学习和研究打下坚实的基础。
|
3月前
|
机器学习/深度学习 算法 计算机视觉
基于yolov2网络的人脸识别系统matlab仿真,包括识别正脸,侧脸等
基于yolov2网络的人脸识别系统matlab仿真,包括识别正脸,侧脸等

热门文章

最新文章