yuantn / MI-AOD

Code for Multiple Instance Active Learning for Object Detection, CVPR 2021
https://openaccess.thecvf.com/content/CVPR2021/papers/Yuan_Multiple_Instance_Active_Learning_for_Object_Detection_CVPR_2021_paper.pdf
Apache License 2.0
333 stars 43 forks source link

saving generated annotations in each active learning cycle #94

Closed chiran7 closed 1 year ago

chiran7 commented 1 year ago

Dear Author,

The current active learning method generates annotation in each active learning cycle from the unlabeled pool. However, the work directory and log file only save the names of images from the unlabeled pool. Can you suggest a way so that the log file can save the annotations generated by active learning cycles instead of just saving the image names (from the unlabeled pool)?

Thank you for your time and consideration.

yuantn commented 1 year ago

You can search the annotations from the origin dataset according to the image name index selected by the AL.

By the way, the annotations are not generated by AL, but copied by AL.

chiran7 commented 1 year ago

Dear Author @yuantn ,

Thank you for your response. In that case, can the predicted class in test.py while calculating uncertainty, it is using predicted probabilities of unlabeled set to get uncertainty (for selecting most informative images) as indicated by: y_head_f_1, y_head_f_2, y_head_cls = model(return_loss=False, rescale=True, return_box=return_box, **data)

Can we infer pseudolabels (that can act as annotations if we dont want to use annotations from existing data for unlabeled pool) from such predicted class (for instance, y_head_cls) ?

Do you have any idea or sample paper with code for semi-supervised active learning ? Can MI-AOD be modified into semi-supervised active learning approach ? if so, it will be great if you can provide some directions for modification.

Thank you for your time and consideration.

yuantn commented 1 year ago

Yes, for how to infer the pseudolabel from y_head_cls (i.e., the Equation (10) in the paper), you can refer to the Function get_img_pseudolabel_score in mmdet/models/dense_heads/MIAOD_head.py.

For now, my main research interest is no longer active learning. But if necessary, I can answer some basic questions for you. By the way, what is the full name of MI-AFR? I don't seem to have heard of it.

chiran7 commented 1 year ago

Dear author @yuantn,

Sorry for the confusion, it should be MI-AOD(as indicated in this repository). I was talking about way/possibility for extending current MI-AOD for semi-supervised active learning based approach.