Я обучил квантованную модель семантической сегментации с моим собственным набором данных, используя скрипты Python, доступные на официальная страница Deeplab на Github. Я использовал магистраль mobilenetv2_coco_voc_trainaug. Я проверил модель результата в Netron, и вот как выглядит ввод и вывод:
Как видите, на выходе получается массив int64 размером 257x257. Насколько я понимаю, этот массив должен содержать индекс метки с наибольшей вероятностью для каждого индекса массива, или я что-то упустил? Но когда я пытаюсь прочитать это в Android, я получаю только нули и единицы, безразличные к тому, что на картинке, люди, корова и т. д.
for (y in 0 until imageHeight) {
for (x in 0 until imageWidth) {
// resultBuffer is a ByteBuffer of size imageSize * imageSize * 8
val value = resultBuffer.getLong((y * imageWidth + x) * 8)
}
}
Результат тоже не такой точный, так как я получаю значения сегментации там, где не должен. Любая помощь будет оценена по достоинству!