Я обучил крошечную модель на своем собственном наборе данных. Модель отлично работает в Python с OpenCV. Но когда я хочу запустить ту же модель в OpenCV (3.4.3) на смартфоне Android, я получаю ложные определения на верхнем краю кадра. Я использую dnn tutorial от OpenCV.
Сеть создается как:
// Net net = Dnn.readNet(getPath("my_yolov3-tiny.weights", this), getPath("my_yolov3-tiny.cfg", this));
Net net = Dnn.readNetFromDarknet(getPath("my_yolov3-tiny.cfg", this), getPath("my_yolov3-tiny.weights", this));
Результат одинаков для обоих методов.
Я регистрирую обнаружение в Logcat со следующим кодом:
Log.e(TAG, "detection 0th object: classID=" + classId + " - label: " + label + " - xleft: " + xLeftBottom + " - yLeft: " + yLeftBottom + " - xright: " + xRightTop + " - yright: " + yRightTop);
и получите следующий вывод:
classID=0 - label: [my_object_name]: 0.24151088297367096 - xleft: 43 - yLeft: 0 - xright: 0 - yright: 0
Я получаю обнаружения, хотя рамка черная. Есть ли известные проблемы в этой версии?