详细参考 Github上SSD教程:https://github.com/weiliu89/caffe/tree/ssd
blog.csdn.net/lk123400/article/details/61191239
测试及可视化参考http://blog.csdn.net/jesse_mx/article/details/52965281
http://www.cnblogs.com/EstherLjy/p/6863890.html
检测目标,输出文本信息:
./.build_release/examples/ssd/ssd_detect.bin models/VGGNet/VOC0712/SSD_300x300/deploy.prototxt models/VGGNet/VOC0712/SSD_300x300/VGG_VOC0712_SSD_300x300_iter_10000.caffemodel /home/wjt/my_work/ssd/caffe/data/test_image/test_image.txt
在图像上标注目标:
python examples/ssd/plot_detections.py /home/wjt/my_work/ssd/caffe/data/test_result/test_result.txt /home/wjt/my_work/ssd/caffe/ --labelmap-file data/VOC0712/labelmap_voc.prototxt --save-dir data/test_result --visualize-threshold 0.6
注:注意路径设置
问题汇总:
1. No such file
./data/VOC0712/create_list.sh 出错
原因及解决方法:数据集位置没放置正确,将数据集按照源脚本文件说明的位置(/home/data/)放置,或者修改脚本文件中
2. ImportError:No module named _caffe (或者caffe.proto)
./data/VOC0712/create_data.sh原因及解决方法:环境变量中python路径没有设置正确,要将PYTHONPATH设置为SSD中caffe目录下的python,修改“~./bashrc”文件,加上python路径,并source一下即可解决
3. checked failed: num_test_image_ <= names_.size() (4952 vs. 117)
原因及解决方法:ssd_pascal.py文件中num_test_image参数没有修改,将其修改为实际的117,同时还要修改的参数为num_classes,参考教程blog.csdn.net/lk123400/article/details/61191239
4. 训练时loss=nan
原因及解决方法:由ssd_pascal.py运行生成的solver.prototxt中显示的学习率base_lr=0.001,在ssd_pascal.py文件中将base_lr设置为0.0001,loss变为正常数值
5. 中断训练再次训练时,显示 libcudart.so.8.0: canot open chared object file: No such file or directory
sudo ldconfig /usr/local/cuda/lib64
6. 训练时出现 Check fialed: error == cudaSuccess(2 vs. 0)out of memory
原因及解决方法:GPU显存被程序占用或者之前的进程没有正常结束,占用着GPU显存,使得用GPU训练时显存不足,用nvidia-smi命令查看占用显存的进程PID,用kill -9 [PID]强制杀死进程。