simple faster rcnn解讀 一

一:代碼框架和跑通simple faster rcnn遇到的問題

代碼選擇:https://github.com/chenyuntc/simple-faster-rcnn-pytorch;

本文主要是自己將代碼跑通中遇到的問題以及代碼解讀做一個記錄。

1,代碼整體框架

2,跑通整個流程,主要按照上面代碼中readme說明就好了。

3,跑通過程中遇到的幾個問題

a,使用python3 build.py build_ext --inplace出現問題
(base) charles@charles-System-Product-Name:~/apt/simple-faster-rcnn-pytorch-master/model/utils/nms$ python3 build.py build_ext --inplace
running build_ext
skipping '_nms_gpu_post.c' Cython extension (up-to-date)
building '_nms_gpu_post' extension
gcc -pthread -B /home/charles/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/home/charles/anaconda3/include/python3.7m -c _nms_gpu_post.c -o build/temp.linux-x86_64-3.7/_nms_gpu_post.o
_nms_gpu_post.c:593:10: fatal error: numpy/arrayobject.h: No such file or directory
 #include "numpy/arrayobject.h"
          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
error: command 'gcc' failed with exit status 1

解決方式:因爲對應的-I/home/charles/anaconda3/include/python3.7m下面沒有numpy/arrayobject.h;在我這臺電腦上找了以下,正確的路徑應該是:-I/home/charles/anaconda3/lib/python3.7/site-packages/numpy/core/include/下面有numpy/arrayobject.h,所以在輸入python3 build.py build_ext --inplace前,先運行export CFLAGS=-I/home/charles/anaconda3/lib/python3.7/site-packages/numpy/core/include/
注: CFLAGS指定頭文件的路徑

 

b,在訓練過程中,會突然出現RuntimeError: DataLoader worker (pid 7848) is killed by signal: Killed.

在網上查了一下主要是由於batch-size設置和num-works設置過大導致,我設置numworks爲4,batch-size=2;可以先將num-works設成2看看;我的設置後跑了9000多次it後還出現了這個問題。還沒找到殺掉線程的根本原因。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章