Guanghan / ROLO

ROLO is short for Recurrent YOLO, aimed at simultaneous object detection and tracking
Apache License 2.0
879 stars 278 forks source link

results in application is not good and some other problems #31

Open bnu-wangxun opened 6 years ago

bnu-wangxun commented 6 years ago

In experiment, I find ROLO is not better than YOLO, and the IOU is not low because the ROLO usually give a smaller bounding box. Secondly, in the ROLO project, the author only choose best examples to show, in Car35 video, and Couple(we randomly choose several), the ROLO cannot tracking objection: the bounding box is very far away from groundtruth. Thirdly, in the ROLO paper, 4102 = 4096 + 6. the 6 dimension (x, y ,w, h, c ,p) feature is used no difference with 4096 dimension deep feature. Form the experiments, I think the LSTM has not learned to take fully advantage of prior experience of bounding box.

The method make sense at first glance, but there are problems after careful thinking.

ps: the code is not robust, quit time was spent on modify it to run our own datasets.

yangxuehang commented 6 years ago

Hello,I encounter a problem when running ROLO to train on my dataset. “Variable rnn/lstm_cell/weights/Adam/ does not exist, or was not created with tf.get_variable(). Did you mean to set reuse=None in VarScope? ”

Have you ever encountered this problem? How did u revise it? Thank you!

gouthamvgk commented 5 years ago

The problem is with the code which gives wrong predictions. The output is taken as pred[0][:, 4097:4101] which means the hidden state of first time step is taken into account, but we need the hidden state of last time step. So change it to pred[-1][:,4097:4101] which gives good values. There are also several problems in the code. For instance, batch_ys loads the second last image instead of last frame and the error is computed between ground truth of second last and last frame which is not intuitive.