получить вектор характеристик от Fast-RCNN - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь идентифицировать и группировать похожие изображения, я следовал этому уроку: https://douglasduhaime.com/posts/identifying-similar-images-with-tensorflow.html.

Проблема в том, что я использую fast_rcnn_resnet_101, и я обнаружил, что векторы функций в fast-rcnn сбрасываются после SecondStageBoxPredictor,Я использовал https://gist.github.com/markdtw/02ece6b90e75832bd44787c03a664e8d, чтобы получить векторы перед падением.

feat_avg = graph.get_tensor_by_name('SecondStageBoxPredictor/AvgPool:0')

np.savetxt('output1/' + "test" + '.npz',feat_vector,delimiter=',')

Однако, когда я пытаюсь сохранить вектор, я получаю ошибку:

ValueError: Expected 1D or 2D array, got 4D array instead

Я напечатал извлеченный вектор объектов, чтобы увидеть результат:

    Tensor("SecondStageFeatureExtractor/resnet_v1_101/block4/unit_3/bottleneck_v1/Relu:0", shape=(?, 7, 7, 2048), dtype=float32) 
 [[[[0.         0.         0.         ... 0.         0.
    0.        ]
   [0.         0.         0.         ... 0.         0.
    0.        ]
   [0.         0.         0.         ... 0.         0.
    0.        ]
   ...
   [2.9170244  0.         0.33220196 ... 0.         0.
    0.        ]
   [0.         0.         0.         ... 0.         0.
    0.        ]
   [0.         0.         0.         ... 0.         0.
    0.        ]].....

Я новичок в TensorFlow и CV, я хочу извлечь векторы объектов и затем использовать кластеризацию TSNE.,Что именно не так с вектором объектов, который я извлек

1 Ответ

0 голосов
/ 25 октября 2018

Вектор функции - это датчик 4D: [Пакет, Высота, Ширина, Каналы].np.savetxt ожидает 1D или 2D массив.Вы можете нарезать вектор объектов на 2D-массивы или использовать какой-либо другой функционал для сохранения его в формате 4D.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...