基于Tensorflow和OpenCV的简单表情符号识别教程1.数据集制作

今天看到了爱可可老师的微博:用Tensorflow.js实现的简单表情符号识别via:Nick Bourdakos
自己也想从头实现一个这样好玩的识别应用。所以自己动手实现一下,顺便记录下实现步骤。
参考了手机表情里的手势预计采用如下五种手势:
在这里插入图片描述
话不多说开始,第一步当然是数据的采集啦。
数据采集使用OpenCV就可以了。采集脚本如下:

import numpy as np
import cv2 as cv

#调用笔记本内置摄像头
cap=cv.VideoCapture(0)

i = 0
while i<1500:
	flag,img=cap.read()
	cv.imshow("img",img)
	cv.imwrite("data/hand"+str(i)+".png",img)
	k=cv.waitKey(1)
	i=i+1
	if i%100 ==0:
		print(i)

print("get data finished!")
cap.release()

采集了1500张图片,完成后data目录下如下:

下面就是数据标注了,标注采用labelImg这个工具。由于Github下载太慢,我把这个工具放到了百度网盘里(提取码gcju):https://pan.baidu.com/s/1TWWem2E7IvfxhR5biOyj9A
下载后解压,进入data目录编辑predefined_classes.txt,由于是六个手势,可以编辑六个label如下:
基于Tensorflow和OpenCV的简单表情符号识别教程1.数据集制作_第1张图片
然后运行labelImg.exe。
首先导入数据所在的文件夹,OpenDir–>选择文件夹,如下图:
基于Tensorflow和OpenCV的简单表情符号识别教程1.数据集制作_第2张图片

点击CreatRectBox后选择矩形区域后双击对应label(1,2,3,4,5,6)
后即完成标注。
基于Tensorflow和OpenCV的简单表情符号识别教程1.数据集制作_第3张图片
标注数据去了。。。

你可能感兴趣的:(AI案例)