Ning-Ding / Implementation-CVPR2015-CNN-for-ReID

Implementation for CVPR 2015 Paper: "An Improved Deep Learning Architecture for Person Re-Identification".
MIT License
147 stars 71 forks source link

CMC rank #13

Closed pribadihcr closed 7 years ago

pribadihcr commented 7 years ago

Hi,

How to achieve the ranks with the same mentioned in the paper for CUHK03 for example. Thanks

Ning-Ding commented 7 years ago

@pribadihcr Hi~ You mean the result or the code implementation? If you mean the result, because we choose a different input image size with the paper and also a little different data input method(you could check with code in NumpyArrayIterator to see what the data input method we use. In the paper, the ratio of positive example and negative example is 1:2 and the model was trained on a fixed training dataset with that ratio, while we use 1:1 and the model was trained with online selected positive and negative examples whose ratio is set to be 1:1)

pribadihcr commented 7 years ago

Hi @Ning-Ding,

yes. So, what the highest result did you get for testing CUHK03 ?

Ning-Ding commented 7 years ago

Around 51% with a 0.6 random transform probability.

pribadihcr commented 7 years ago

51% in the 1st rank ?. its better than the paper right?.

Which part in the code for setting random transform probability?. Also, in your default code, the parameter for train is the same ? like: train_num=100,one_epoch=30000,epoch_num=1, width_shift_range=0.05,height_shift_range=0.05.

Ning-Ding commented 7 years ago

No, the paper could achieve a 54% but we cannot make it. While, we could surpass the PersonNet in dataset Market1501.

For the random transform probability, look at the params flag_random and flag_train. The implementation detail is in the NumpyArrayIterator_for_CUHK03. You may search the 'self.flag' in it.

pribadihcr commented 7 years ago

Hi @Ning-Ding,

I just got 35% with flag_train = 0.6, train_num=100,one_epoch=30000,epoch_num=5, width_shift_range=0.05,height_shift_range=0.05, model_def flag=0

Could you share the complete parameter ?. Thanks

Ning-Ding commented 7 years ago

@pribadihcr Sorry for the late reply, I just remember the best performance was not at the end, but around the middle of training process. If I got time, I will refactor the code. Also, this CNN architechture may be a little bit old, you could spare some time looking through the recently paper and implement a better architechture. If my code is a little bit helpful for you, I will be very happy. Recently I mainly work on the PVANET of field of Object Recognition for my employer. If you want to talk about it or keras, caffe even the Python programming, you can Email me: "dingning.buaa@gmail.com". I'm very happy to talk with you.