pointpillars運行步驟:
-
1.git clone https://github.com/nutonomy/second.pytorch.git
-
2.配置一些運行代碼所需要的庫,如果已經配置過就不需要這步操作了。
具體的配置步驟可以按照作者readme中給出的流程操作:
-
3.因爲pointpillars是在second的基礎上進行修改的,而second的使用需要用到SparseConvNet,所以我們需要
git clone [email protected]:facebookresearch/SparseConvNet.git
,然後執行作者給出的如下流程。
cd SparseConvNet/
bash build.sh
然後將SparseConvNet放到/second.pytorch文件夾下就可以了。
-
4.將second.pytorch添加到PAYHONPATH的路徑下,這一步很關鍵!!!!!!
如果python路徑中沒有second.pytoch在後面運行代碼時找不到對於的庫就會出錯。
添加PYTHONPATH的方法是:
export PYTHONPATH =$ PYTHONPATH : /YOURPATH
比如我的路徑是,/home/xidian/second.pytorch,那需要執行
export PYTHONPATH =$PYTHONPATH :/home/xidian/second.pytorch
添加完成後可以通過查看python路徑看是否將second.pytorch加入到了路徑中。
python
import sys
print(sys.path)#打印出python路徑
5.構造數據集
我的數據集是放在了second.pytorch/second/data/sets中,按照作者給出的方式排列數據:
在排列好數據集之後要對數據進行一些處理, 如下圖
完成這些之後就可以開始訓練了。
6.修改config文件,config在/second.pytorch/second/configs/pointpillars路徑下,以car爲例,將.proto中的文件修改,
train_input_reader: { … database_sampler { database_info_path: “/path/to/kitti_dbinfos_train.pkl” … }
kitti_info_path: “/path/to/kitti_infos_train.pkl”
kitti_root_path: “KITTI_DATASET_ROOT” }
eval_input_reader: { kitti_info_path: “/path/to/kitti_infos_val.pkl”
kitti_root_path:“KITTI_DATASET_ROOT” }
將其中的路徑進行修改,修改成當前真實的路徑。
比如我自己的數據路徑是:
7.執行
cd ~/second.pytorch/second
python ./pytorch/train.py train --config_path=./configs/pointpillars/car/xyres_16.proto --model_dir=/path/to/model_dir
將model_dir的路徑修改成自己準備存儲model的路徑,以我自己的路徑爲例,就是
python ./pytorch/train.py train–config_path=./configs/pointpillars/car/xyres_16.proto --model_dir=./model
然後就可以開始訓練了,訓練打印信息如下:
你太大了,我不練了!!!