I am just wondering what is the difference between the "classification" and "detection" fine tuning types for the available checkpoints in the object detection API. Are they both eligible to train novel classes? The checkpoints obtained from such training, can be further trained with the very same pipeline.config, or does it need to have a different fine tuning type?
EDIT
to make the question clearer, one can take as reference the ckpts mentioned in https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_training_and_evaluation.md#model-parameter-initialization .
Digging in the code one could find for example that some classes of CenterNet models use the CenterNetResnetV1FpnFeatureExtractor class to restore the model from a checkpoint, which seems to accept "classification" types only (https://github.com/tensorflow/models/blob/1b5a4c9ed33242783eaf29e664618331dbb59e1b/research/object_detection/models/center_net_resnet_v1_fpn_feature_extractor.py#L168), while one can find some CenterNet models addressed as "detection" types (one can compare the fine_tune_checkpoint_type that comes with the pipeline.config file in the download of centernet_hg104_512x512_coco17_tpu-8 ckpt from the "detection" cktp list mentioned above).
I find it in general rather confusing, and I am not sure that this does not generate undesired effects like retraining the whole model from scratch ignoring the desired ckpt or similar. Obviously it would be nice not to have to inspect the whole code to find how every each model is restored from a ckpt.
