Выполнение вывода Detectron2 в Caffe2 - PullRequest
0 голосов
/ 18 марта 2020

У меня есть модель Detectron2 .pth, которую я успешно преобразовал в Caffe2 .pb с помощью функциональности инструментов Detectron2, расположенной здесь: https://github.com/facebookresearch/detectron2/blob/master/tools/caffe2_converter.py

В соответствии с рекомендациями, использовали --run- eval-флаг для подтверждения результатов при конвертации, и результаты очень похожи на исходные результаты deteron2.

Чтобы выполнить вывод для нового изображения с использованием результирующих файлов model.pb и model_init.pb, используется следующая функциональность: https://github.com/facebookresearch/detectron2/blob/master/detectron2/export/api.py (в основном) https://github.com/facebookresearch/detectron2/blob/master/detectron2/export/caffe2_inference.py

Однако результаты вывода даже не близки. Кто-нибудь может предложить причины, по которым это может произойти? В репозитории Detectron2 говорится, что вся предварительная обработка выполняется в сценариях caffe2, но я что-то упустил?

Я могу предоставить свой код вывода:

caffe2_model = Caffe2Model.load_protobuf(input_directory)
img = cv2.imread(input_image)
image = torch.as_tensor(img.astype("float32").transpose(2, 0, 1))
data = {'image': image, 'height': image.shape[1], 'width': image.shape[2]}
output = caffe2_model([data])
...