C++ & OpenVINO
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "infer.hpp"
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
// Проверяет количество аргументов
|
||||
if (argc != 3) {
|
||||
std::cerr << "Использование: " << argv[0] << " <model_path> <image_path>" << std::endl;
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
// Получает пути к модели и изображению из аргументов программы
|
||||
const std::string model_path = argv[1];
|
||||
const std::string image_path = argv[2];
|
||||
|
||||
// Проверяем наличие OpenVINO попыткой вывести версию
|
||||
try {
|
||||
std::cout << ov::get_openvino_version() << std::endl;
|
||||
} catch (const std::exception &ex) {
|
||||
std::cerr << ex.what() << std::endl;
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
// Читает изображение из файла
|
||||
cv::Mat image = cv::imread(image_path);
|
||||
if (image.empty()) {
|
||||
std::cerr << "ОШИБКА: Не удалось загрузить изображение" << std::endl;
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
// Определение значений
|
||||
const float probability = 0.5;
|
||||
const float NMS = 0.5;
|
||||
|
||||
// Создание объекта класса распознования
|
||||
Inf *i;
|
||||
i = new Inf(model_path, cv::Size(640, 640), probability, NMS);
|
||||
|
||||
// Запуск распознования объектов
|
||||
i->inference(image);
|
||||
|
||||
// Запись результата в файл
|
||||
cv::imwrite("/tmp/cpp_openvino_result.bmp", image);
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
Reference in New Issue
Block a user