Catatan: Saya mengimplementasikan kembali rcnn lebih cepat dalam proyek ini ketika saya mulai belajar Pytorch. Lalu saya menggunakan Pytorch di semua proyek saya. Saya masih ingat harganya satu minggu bagi saya untuk mencari cara membangun kode CUDA sebagai lapisan Pytorch :). Tapi sebenarnya ini bukan implementasi yang baik dan saya tidak mencapai peta yang sama dengan kode Caffe asli.
Proyek ini tidak lagi dipertahankan dan mungkin tidak kompatibel dengan pytorch terbaru (setelah 0.4.0). Jadi saya sarankan:
Ini adalah implementasi Pytorch dari RCNN yang lebih cepat. Proyek ini terutama didasarkan pada Py-Faster-RCNN dan TFFRCNN.
Untuk detail tentang R-CNN, silakan merujuk ke makalah lebih cepat R-CNN: Menuju deteksi objek real-time dengan jaringan proposal wilayah oleh Shaoqing Ren, Kaiming He, Ross Girshick, Jian Sun.
Pasang persyaratan (Anda dapat menggunakan PIP atau Anaconda):
conda install pip pyyaml sympy h5py cython numpy scipy
conda install -c menpo opencv3
pip install easydict
Klon Repositori R-CNN yang lebih cepat
git clone [email protected]:longcw/faster_rcnn_pytorch.gitBangun Modul Cython untuk NMS dan Lapisan ROI_Pooling
cd faster_rcnn_pytorch/faster_rcnn
./make.sh Unduh model terlatih vggnet_fast_rcnn_ititer_70000.h5 (diperbarui) dan atur jalur model di demo.py
Jalankan demo demo python demo.py
Ikuti proyek ini (TFFRCNN) untuk mengunduh dan menyiapkan pelatihan, validasi, data uji, dan model VGG16 pra-terlatih di ImageNet.
Karena program memuat data di faster_rcnn_pytorch/data secara default, Anda dapat mengatur jalur data sebagai berikut.
cd faster_rcnn_pytorch
mkdir data
cd data
ln -s $VOCdevkit VOCdevkit2007 Kemudian Anda dapat mengatur beberapa hiper-parameter di train.py dan parameter pelatihan dalam file .yml .
Sekarang saya mendapat peta 0,661 di VOC07 sementara kertas asal mendapat peta 0,699. Anda mungkin perlu menyetel fungsi kerugian yang ditentukan dalam faster_rcnn/faster_rcnn.py sendiri.
Dengan bantuan krayon, kita dapat mengakses kekuatan visualisasi Tensorboard untuk kerangka kerja pembelajaran yang mendalam.
Untuk menggunakan Tensorboard, instal crayon (https://github.com/torrvision/crayon) dan atur use_tensorboard = True in faster_rcnn/train.py .
Atur jalur model terlatih di test.py
cd faster_rcnn_pytorch
mkdir output
python test.pyLisensi: Lisensi MIT (MIT)