У меня есть модель onnx в opencv, и я пытаюсь нарисовать рамку вокруг обнаружения на изображении. Как реализовать эту функцию?
Это мой текущий код:
public static void main(String[] args) {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Net model = Dnn.readNet("face.onnx");
VideoCapture camera = new VideoCapture(1);
Mat frame = new Mat();
Mat scaled = new Mat();
while (true) {
camera.read(frame);
Imgproc.resize(frame, scaled, new Size(256, 320));
// create empty Mat images for float conversions
Mat imgFloat = new Mat(scaled.rows(), scaled.cols(), CvType.CV_32FC3);
// convert input image to float type multiplying by SCALE_FACTOR
scaled.convertTo(imgFloat, CvType.CV_32FC3, SCALE_FACTOR);
Mat blob = Dnn.blobFromImage(
imgFloat,
1.0, /* default scalefactor */
new Size(TARGET_IMG_WIDTH, TARGET_IMG_HEIGHT), /* target size */
new Scalar(1), /* mean */
true, /* swapRB */
false /* crop */
);
model.setInput(blob);
Mat classification = model.forward();
HighGui.imshow("Camera Capture", frame);
HighGui.waitKey(1);
}
}
Вывод модели: баллы и коробки. для оценок результат:
float32[1,4420,4]
а вывод для ящиков:
float32[1,4420,2]
Подробнее здесь: https://stackoverflow.com/questions/790 ... en-cv-java
Получение очков из model.forward в opencv (java) ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1728150122
Anonymous
У меня есть модель onnx в opencv, и я пытаюсь нарисовать рамку вокруг обнаружения на изображении. Как реализовать эту функцию?
Это мой текущий код:
public static void main(String[] args) {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Net model = Dnn.readNet("face.onnx");
VideoCapture camera = new VideoCapture(1);
Mat frame = new Mat();
Mat scaled = new Mat();
while (true) {
camera.read(frame);
Imgproc.resize(frame, scaled, new Size(256, 320));
// create empty Mat images for float conversions
Mat imgFloat = new Mat(scaled.rows(), scaled.cols(), CvType.CV_32FC3);
// convert input image to float type multiplying by SCALE_FACTOR
scaled.convertTo(imgFloat, CvType.CV_32FC3, SCALE_FACTOR);
Mat blob = Dnn.blobFromImage(
imgFloat,
1.0, /* default scalefactor */
new Size(TARGET_IMG_WIDTH, TARGET_IMG_HEIGHT), /* target size */
new Scalar(1), /* mean */
true, /* swapRB */
false /* crop */
);
model.setInput(blob);
Mat classification = model.forward();
HighGui.imshow("Camera Capture", frame);
HighGui.waitKey(1);
}
}
Вывод модели: баллы и коробки. для оценок результат:
float32[1,4420,4]
а вывод для ящиков:
float32[1,4420,2]
Подробнее здесь: [url]https://stackoverflow.com/questions/79057459/getting-points-from-model-foward-in-open-cv-java[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия