Перейти к содержимому
Compvision.ru

Поиск по сайту

Showing results for tags 'sleep'.



More search options

  • Search By Tags

    Введите теги через запятую.
  • Search By Author

Тип содержимого


Категории и разделы

  • Пакет OpenCV
    • OpenCV
    • Новости
    • Вопросы взаимодействия OpenCV + GDI, GDI+
  • Дополненная реальность (ARToolkit и др.)
    • ARToolkit
  • Нейросети
    • Вопросы по нейросетям и ИИ
  • Общие вопросы
    • Обсуждение общих вопросов
  • Другое

Найдено 1 результат

  1. Коллеги, прошу подсказки. Мониторил форум, не нашел ответов...Задача.Считать покадрово видеофайлики с минимум нагрузкой на ЦП. Работа решения планируется на одноплатных ПК без визуализации, то есть в фоновом режиме.Если считывать кадр и добавить задержку таким способом, нагрузка на ЦП в пределах 0.5% cv::imshow("ing", img); cv::waitKey(1000/fps); Если считывать кадр и добавить задержку так, нагрузка на ЦП в пределах 5.5% Sleep(1000/fps); Пробовал кучу вариантов. - Анализ в разных потоках, причем пробовал даже делегировать потоки относительно основного процесса. - Делал считывание кадров через FFmpeg, типа. ... avcodec_decode_video2(codec_context, frame, &frame_finished, &packet); if (frame_finished) { struct SwsContext * img_convert_ctx; img_convert_ctx = sws_getCachedContext(NULL, codec_context->width, codec_context->height, codec_context->pix_fmt, codec_context->width, codec_context->height, AV_PIX_FMT_BGR24, SWS_BICUBIC, NULL, NULL, NULL); sws_scale(img_convert_ctx, ((AVPicture*)frame)->data, ((AVPicture*)frame)->linesize, 0, codec_context->height, ((AVPicture *)pFrameRGB)->data, ((AVPicture *)pFrameRGB)->linesize); cv::Mat img(frame->height, frame->width, CV_8UC3, pFrameRGB->data[0]); //dst->data[0]); av_free_packet(&packet); sws_freeContext(img_convert_ctx); Sleep(40); или cv::imshow("img", img); cv::waitKey(40); } ... - Считывал кадры тоже по разному. Mat frame; cap >> frame; и так. cap.grab(); if (!cap.retrieve(frame) || frame.empty()) {continue;} В общем хоть убей, но при добавление инструкции cv::imshow("img", img); cv::waitKey(40); Загрузка ЦП оптимальна, но это не то, что нужно в плане реализации., так как планируется работа без визуализации. То есть в конечном итоге желательно установить задержку в Sleep(ms), с сохранением минимальной нагрузки на ЦП. Может есть другие подходы при считывание кадров, добавление задержки и минимальной загрузки ЦП?. Приоритет: Считать все кадры с минимум нагрузки на ЦП.
×