xiaohaoChen / rrc_detection

Accurate Single Stage Detector Using Recurrent Rolling Convolution
Other
361 stars 136 forks source link

using the pretrained model (fine tuning) #1

Open MyVanitar opened 7 years ago

MyVanitar commented 7 years ago

Hello,

1) I have a GTX 1060 6G GPU, so I can fine tune the model only. I know the images and annotation should be in KITTI format. no problem about that. but would you please give a small description of fine tuning process of your model? I really appreciate it.

2) I could not find information about detection speed (FPS).

3) How many classes do the detector support?

4) How can I test the final model with an image/video or camera?

xiaohaoChen commented 7 years ago
  1. For finetuning the model, you shoud modify line 107 in "example/car/rrc_car_kitti.py" to the model you want to finetune. The size of input image is set to 2560*768, if you want to train the model for another size, you should modify line 69&70. The values of width and height should be multiples of 256.

  2. For a image with a size of 2560*768, it takes about 0.25s to forward once.

  3. The released model support detecting car only. You can train a detector for any number of classes. Just modify 'num_classes' in "rrc_car_kitti.py" and prepare the correct type data.

  4. Please refer to "rrc_detection/examples/car/rrc_test.py".

MyVanitar commented 7 years ago

Thank you for the reply.

The released model support detecting car only. You can train a detector for any number of classes. Just modify 'num_classes' in "rrc_car_kitti.py" and prepare the correct type data.

if you have trained the model for one class, then can I fine-tune it for more classes or I should train from scratch for more classes?

For a image with a size of 2560*768, it takes about 0.25s to forward once.

if I reduce the test image size, then the speed increases? I want to use it in real-time videos.

The size of input image is set to 2560*768, if you want to train the model for another size, you should modify line 69&70. The values of width and height should be multiples of 256.

So if understand correctly, all training images should have the same size AND multiplication of 256. Yes? OR they can have different sizez, but they should have width and height of multiplication of 256. which one is correct?

xiaohaoChen commented 7 years ago

1 You should train the model from scratch.

2 You can modify the input image size in rrc_test.py & deploy.prototxt and test the runtime.Both width and height should be multiples of 256.

3 Training images with different size are allowed, but they will be resize to a fixed size at training time. You can modify the fixed size and finetune or re-train the model.