今年开始接触深度学习,之前很多工作都没有写博客觉得很可惜,决定从这次实验开始记录过程。第一次写,缺点比较多,欢迎大家提建议,以后改正。
一、数据
数据是我从网上下载的,后期打算自己采集图片再进行一次实验。数据集由三类图片构成,分别是bike,person和both,每类200张,一共600张。需要的同学可以从我的网盘下载,也可以自己找图片进行训练。网盘链接:链接:http://pan.baidu.com/s/1mihxBnU 密码:61t6然后分成数据集和测试集,测试集450张,每类150张,训练集150张,每类50张。建两个文件夹分别存放,路径是caffe-master/data/mydata/train 和caffe-master/data/mydata/val。因为接下来的程序要求图片大小一致,所以第一步是图片预处理,把图片都处理成256*256的,具体程序如下:(这步也可以省略,用后面的脚本进行处理更加方便。)
/**********************************************
* 批量更改图片大小
* Win10 + VS2015 + Opencv 3.1.0
* Sun Ruiyun
* 2017 / 07 / 06
***********************************************/
#include "stdafx.h"
#include <opencv2/opencv.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
#include <string>
#include <direct.h>
using namespace cv;
using namespace std;
int main()
{
int k;
for (k = 1; k <= 9; k++)
{
char imageName[100];
char imageSave[100];
sprintf_s(imageName, "D:\\documents\\visual studio 2015\\Projects\\resize\\resize\\resize\\bikes\\both_00%d.bmp", k);
sprintf_s(imageSave, "D:\\documents\\visual studio 2015\\Projects\\resize\\resize\\resize\\aft_bikes\\both00%d.bmp", k);
Mat src_img = imread(imageName);//读入图片数据
Mat dst_img1;
resize(src_img, dst_img1, Size(256, 256), 0, 0, CV_INTER_LINEAR); // 双线性插值
imwrite(imageSave, dst_img1);
waitKey(0);
}
}
用程序处理完的图片如下图所示,都是256*256大小的图片。