hyz-xmaster / VarifocalNet

VarifocalNet: An IoU-aware Dense Object Detector
Apache License 2.0
351 stars 52 forks source link

run demo report error #6

Open gpsherry opened 4 years ago

gpsherry commented 4 years ago

Hi I run the demo and report one problem as the follow picture and my environment is follow: cuda=10.1 pytorch=1.5 mmdetection=2.6 mmcv-full=1.15 Do you know the problem?

WX20201111-173042@2x
hyz-xmaster commented 4 years ago

I guess this problem may be caused by the incompatibility of your mmcv and pytorch. If you have used this command pip install mmcv-full==latest+torch1.6.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html to install mmcv, then your pytorch version should be 1.6.0. Alternatively, you can change the command to pip install mmcv-full==latest+torch1.5.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html to be compatible with your version of pytorch. By the way, if you reinstall mmcv, you need first uninstall the installed one.

gpsherry commented 4 years ago

Hi The method of you say is not useful, the same error is report. but i modify the mmdet/api/inference.py of device = next(model.parameters()).device to device = 0 ,then the problem is not occur.why??The code is have bug?

hyz-xmaster commented 4 years ago

Hi, the problem is fixed. Please see the commit. It is caused by one bug of MMDetection.

gpsherry commented 4 years ago

Hi I meet a new problem during the train model process, the train information of Loss is not print.

WX20201111-200333@2x
hyz-xmaster commented 4 years ago

Hi I meet a new problem during the train model process, the train information of Loss is not print.

WX20201111-200333@2x

I have no experience of using TensorBoard to view the training process. You may use dict(type='TextLoggerHook') instead of dict(type='TensorboardLoggerHook') to monitor the training.

gpsherry commented 4 years ago

I have used dict(type='TextLoggerHook') in the first time, but i can not see the train log, so i use dict(type='TensorboardLoggerHook') and can not see train log. now, i don't know my train problem that the mode is convergent or not.

hyz-xmaster commented 4 years ago

Are you running the training on a very small dataset? If it is, setting interval=1 should print the log. By the way, I do not think it will work to train such big a network on a that small dataset.

gpsherry commented 4 years ago

I test in original mmdetection code in my dataset is no problem and i debug your code find you train_pipeline load trian data len is 1 but test_pipeline is no problem.

gpsherry commented 4 years ago

Hi The train log problem is over, the coco.py add the filter of CLASSNAME and modify the classname is execute no matter.