简介
OpenCV库是一个常用的开源图像处理库,有Python版本,可以实现画图、人脸识别等功能,使用简单,功能强大。
Mind+的Python模式可以非常简单的部署环境,使用也非常简单,因此在Mind+中使用OpenCV可以非常快速的实现人脸识别。
安装
常规OpenCV安装会比较麻烦,但是使用Mind+则非常简单,可以一键安装依赖库。
-
安装Mind+1.7.0及以上版本 http://mindplus.cc
-
打开软件,切换到Python模式,等待终端出现Python信息。

-
点击库管理,首次打开等待一下初始化完成,切换到阿里源,选择图像处理中的opencv-Python,点击安装,等待完成,如果安装慢(超过半小时)可以尝试重启软件后切换不同的Python源。

使用
环境检测
- 安装完成之后,可以在终端输入命令查看当前使用的openCV版本:
依次输入:
import cv2 回车
print(cv2.__version__) 回车,可以看到当前cv2的版本号,能正确输出则说明安装没有问题

摄像头窗口显示
# -*- coding: UTF-8 -*-
import cv2 as cv
cap = cv.VideoCapture(0) #打开编号0的摄像头
while(True):
# 获取摄像头帧数据
ret, frame = cap.read()
# 处理为灰度帧
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
# 使用两个窗口显示获取的内容
cv.imshow('frame',frame)
cv.imshow('gray',gray)
#间隔一段时间显示,如果按下Q键则退出
if cv.waitKey(20) & 0xFF == ord('q'):
break
# 退出
cap.release()
cv.destroyAllWindows()

人脸识别
- 前面说过opencv库自带了一些识别算法,其中就包含人脸检测算法,输入如下代码。
# -*- coding: UTF-8 -*-
import cv2 as cv
# 导入内置的模型文件,此文件在opencv库文件夹下,使用cv.data.haarcascades +的方式即可引用
face_cascade = cv.CascadeClassifier(cv.data.haarcascades +'haarcascade_frontalface_default.xml')
cap = cv.VideoCapture(0) #打开编号0的摄像头
while(True):
# 获取摄像头帧数据
ret, frame = cap.read()
# 处理为灰度帧
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
# 使用人脸识别模型识别
faces = face_cascade.detectMultiScale(gray,1.3,5)
# 将识别到的结果坐标在画面上画一个矩形框
for (x,y,w,h) in faces:
frame = cv.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)
# 显示有框的画面
cv.imshow('frame',frame)
#间隔一段时间显示,如果按下Q键则退出
if cv.waitKey(20) & 0xFF == ord('q'):
break
# 退出
cap.release()
cv.destroyAllWindows()
- 点击运行代码,将摄像头对着人脸,则人脸上就会被标记出来。

- 获取到人脸坐标之后,接下来就可以使用坐标做其他控制操作了
  
|
cap = cv.VideoCapture(0) #打开编号0的摄像头
如果还是不行尝试电脑连接手机热点
https://zhuanlan.zhihu.com/p/63154631