1.find –name *.jpeg |cut –d’/’ –f2-3 >train.txt
一直报错 cut:分界符必须是单个字符,目前没有解决,train、val、test均为手工建立
2.修改图片大小的语句也有错,应为 convert –resize 256x256 $name $name。
Convert其他用法:
convert xxx.jpg xxx.png 将jpeg转成png文件
convert -resize 1024x768 xxx.jpg xxx1.jpg 将图像的像素改为1024*768
convert -sample 50%x50% xxx.jpg xxx1.jpg 将图像的缩减为原来的50%*50%
convert -rotate 270 sky.jpgsky-final.jpg 将图像顺时针旋转270度
3.creat_imagenet文件中的训练路径和测试路径使用绝对路径,将RELIZE=false改成true
4.计算图像均值路径修改参照http://blog.csdn.net/qqlu_did/article/details/47131549
但是执行时cpp报 incorrect data fieldsize错,无法解决。后来发现是有一张图片本身尺寸小于256*256,处理掉之后忘记重新运行creat_imagenet.sh了,导致即使修改了图片,特征值的文件还是原来的。
5.网络定义的一步,笔记中给出的文件都不存在,参考此处:
http://www.cnblogs.com/NanShan2016/p/5532589.html
注意我们使用的数据类型是leveldb,代码中需要添加—backend:leveldb,否则将默认为lmdb格式,会报错。
6.成功运行后可能会遇到错误:Check failed:error ==cudaSucess(2 vs.0)out of memory,说明内存不够用了。使用命令nvidia-smi查看内存,使用kill -9 PID将命令杀死就可以了。