我正在将DeepLabV3模型与Android Studio 4.1中的TFLite模块一起使用。 After Predicting无法处理输出后,在segmentationMasks行上引发异常。这与运行时异常有关。由:java.lang.IllegalArgumentException:标签数字21与轴1上的形状不匹配。
答案 0 :(得分:0)
您应该使用以下方法创建TensorLabel:
public TensorLabel(
@NonNull Map<Integer, List<String>> axisLabels, @NonNull TensorBuffer tensorBuffer)
和
val axisLabels = mapOf(3 to labels)
在DeepLabV3模型中,输出的形状为[1、257、257、21]。因此,标签应贴在第四轴上(索引= 3)。如果使用方法
public TensorLabel(@NonNull List<String> axisLabels, @NonNull TensorBuffer tensorBuffer)
标签将粘贴到尺寸大于1的第一个轴上,在这种情况下,这将是第二个轴(索引= 1)。