总结一下用caffe跑图片数据的研究流程

最近在用caffe玩一些数据集,这些数据集是从淘宝爬下来的图片。主要是想研究一下对女性衣服的分类。

下面是一些具体的操作流程,这里总结一下。

1 爬取数据。写爬虫从淘宝爬取自己需要的数据。

2 数据预处理。将图片从jpg,png格式转为leveldb格式。因为caffe的输入层datalayer是从leveldb读取的。这一步自己基于caffe写了个工具实现转换。

转换命令例子:

./convert_imagedata.bin /home/linger/imdata/skirt_train/ /home/linger/linger/testfile/skirt_train_db/ /home/linger/linger/testfile/skirt_train_attachment/ 3 250 250

./convert_imagedata.bin /home/linger/imdata/skirt_test/ /home/linger/linger/testfile/skirt_test_db/ /home/linger/linger/testfile/skirt_test_attachment/ 3 250 250

./compute_image_mean.bin /home/linger/linger/testfile/skirt_train_db /home/linger/linger/testfile/skirt_train_mean.binaryproto

./compute_image_mean.bin /home/linger/linger/testfile/skirt_test_db /home/linger/linger/testfile/skirt_test_mean.binaryproto

3 建立网络模型。主要是写train.prototxt和test.prototxt,还有solver.prototxt。前两者是训练和测试的网络结构,后者是网络的一些配置参数。

4 训练和测试模型。有时候需要调整一些参数,比如learning rate,或者调整网络结构。

5 可视化响应图和权重图。主要把最后一层的特征响应图和权重图画出来,便于观察规律。这两个工具也是自己写的。

工具使用例子:

./visualize_weights.bin /home/linger/linger/caffe-action/caffe-master/examples/cifar10/cifar10_full_test.prototxt /home/linger/linger/caffe-action/caffe-master/examples/cifar10/cifar10_full_iter_60000 1 GPU /home/linger/linger/testfile/skirt_test_attachment/image_filename
/home/linger/linger/testfile/weights/ 7

./visualize_features.bin /home/linger/linger/caffe-action/caffe-master/examples/cifar10/cifar10_full_test.prototxt /home/linger/linger/caffe-action/caffe-master/examples/cifar10/cifar10_full_iter_60000 20 GPU /home/linger/linger/testfile/skirt_test_attachment/image_filename
/home/linger/linger/testfile/innerproduct/ 7

总结一下用caffe跑图片数据的研究流程,布布扣,bubuko.com

时间: 06-20

总结一下用caffe跑图片数据的研究流程的相关文章

Android5.1图库Gallery2代码分析数据加载流程

图片数据加载流程. Gallery---->GalleryActivity------>AlbumSetPage------->AlbumPage--------->PhotoPage 相册集                        照片集                 某张图片 1,AlbumSetPage.java private void initializeData(Bundle data) { String mediaPath = data.getString(A

用caffe跑自己的数据,基于WINDOWS的caffe

本文详细介绍,如何用caffe跑自己的图像数据用于分类. 1 首先需要安装过程见 http://www.cnblogs.com/love6tao/p/5706830.html 同时依据上面教程,生成了caffe.exe 2 构建自己的数据集.分为train和val 两个数据集,本次实验为2分类任务,一个是包含汽车的图像,一个是不包含汽车图像,其中train 为训练数据集,该文件夹中图像命名格式为trainpos0000.jpg和trainneg0000.jpg,图像通过该命名方式连续编码,val

使用caffe的cifar10网络模型训练自己的图片数据

由于我涉及一个车牌识别系统的项目,计划使用深度学习库caffe对车牌字符进行识别.刚开始接触caffe,打算先将示例中的每个网络模型都拿出来用用,当然这样暴力的使用是不会有好结果的- -||| ,所以这里只是记录一下示例的网络模型使用的步骤,最终测试的准确率就暂且不论了! 一.图片数据库 来源 我使用的图像是在项目的字符分割模块中分割出来的字符图像,灰度化并归一化至32*64,字符图片样本示例如下: 建立自己的数据文件夹 在./caffe/data/目录下建立自己的数据文件夹mine,并且在mi

Windows Caffe(三) 图像数据转化为Caffe可以运行的数据

在运行Caffe自带的两个例子的时候,我们的数据都来自互联网,是直接下载的二进制文件. 但我们大多数情况下使用的是原始的图片数据(如.jpg .png等),接下来研究如何将原始的图片数据转化为caffe可以运行的数据. 1.准备图片数据 caffe安装完成之后,在example/images文件下会有四张.jpg图片,cat.jpg, cat gray,jpg, cat_gray.jpg, fish-back.jpg 2.生成图片清单 我们写需要一个sh脚本,调用Linux命令生成图片的清单.W

python爬取微博图片数据存到Mysql中遇到的各种坑\python Mysql存储图片

本人长期出售超大量微博数据,并提供特定微博数据打包,Message to [email protected] 前言   由于硬件等各种原因需要把大概170多万2t左右的微博图片数据存到Mysql中.之前存微博数据一直用的非关系型数据库mongodb,由于对Mysql的各种不熟悉,踩了无数坑,来来回回改了3天才完成. 挖坑填坑之旅 建表 存数据的时候首先需要设计数据库,我准备设计了3个表 微博表:[id, userid, blog_text, lat, lng, created_time, res

pytorch学习:准备自己的图片数据

图片数据一般有两种情况: 1.所有图片放在一个文件夹内,另外有一个txt文件显示标签. 2.不同类别的图片放在不同的文件夹内,文件夹就是图片的类别. 针对这两种不同的情况,数据集的准备也不相同,第一种情况可以自定义一个Dataset,第二种情况直接调用torchvision.datasets.ImageFolder来处理.下面分别进行说明: 一.所有图片放在一个文件夹内 这里以mnist数据集的10000个test为例, 我先把test集的10000个图片保存出来,并生着对应的txt标签文件.

MACOS获得 CGContextRef 获得图片数据类型转换 NSImage、CIImage、CGImageRef

将NSImage转换为CIImage #import <QuartzCore/CIFilter.h> // convert NSImage to bitmap NSImage * myImage  = [self currentImage]; NSData  * tiffData = [myImage TIFFRepresentation]; NSBitmapImageRep * bitmap; bitmap = [NSBitmapImageRep imageRepWithData:tiffD

coco2dx jni 调用 java 相机返回 图片数据

新建 一个项目 名字:testJin  包名:com.TanSon.org  python命令:python create_project.py -project testJin -package com.TanSon.org -language cpp eclipse 导入项目配置 ... 略去,(可以google) 1 c++ 调用 andriod 1.1 包含头文件 #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) #include <jni.

iOS读取图片数据的两种方法:UIImageJPEG和UIImagePNG

UIImageJPEGRepresentation函数有两个参数:引用的图片和压缩系数. UIImagePNGRepresentation(UIImage * image)函数只有一个引用图片参数. UIImagePNGRepresentation(UIImage * image)要比UIImageJPEGPresentation(UIImage * image, 1.0)返回的图片数据量大很多,如果对图片清晰度要求不高,可以通过设置UIImageJPEGReprentation的第二个参数,大