pig_face
This repository is used to save the code for a competition
1. 运行环境
Ubuntu 16.04 python 2.7.12 cuda8.0 cudnn6.0 tensorflow 1.3.0
GPU 4*TITAN XP
2. 从视频中截取出猪:
(1)为了排除背景数据对模型的影响,我们使用yolo-9000算法提取出视频中每一帧的猪,代码来源于https://github.com/philipperemy/yolo-9000. 我们对其代码做了修改,将yolo解压包的代码解压后覆盖 darknet/src下同名文件即可
(2)经观察后发现,虽然yolo-9000对猪的识别不一定会归于hog类,但是基本上所有的框都会以视频中的猪为主体,因此在取框的时候,我们不以hog类的框为输出图像,而是以置信度为参考标准。
(3)我们保留所有置信度大于0.1的窗口
(4)每个视频大约能得到一万多张ROI图片,我们按大小排序,选取大约前4000张图片,并剔除不相关的物体图片以及背景干扰较大的图片(比如没有框到猪身上,或者只框了极小部分的猪),将其作为训练集和验证集。
(5)最后得到94677张图片
3. 预处理以及生成数据集
(1)运行raw_data/image_process.py, 将上一步得到的图片通过padding的方法变为正方形,保证在之后的步骤中resize操作不会扭曲图片
(2)运行raw_data/get_data_txt.py,对数据进行分割,并且将数据分割成50个储存文件,存在txt文件中,方便之后大数据的