Я использую OpenCV 4.0.0 для обработки изображений с использованием привязок Python в модуле cv2.Я использовал библиотеку cProfile, которая говорит мне, что (очевидно) функции OpenCV, которые я вызываю напрямую, занимают больше всего времени, но не могут видеть глубже, потому что они вызывают функции C ++ из скомпилированной библиотеки.Я хотел бы профилировать код OpenCV, чтобы определить, какие функции занимают большую часть времени выполнения.
Я попробовал встроенное профилирование OpenCV, описанное здесь , но я получаю предупреждение
[ WARN:0] Trace: Total skipped events: 2117
и нет OpenCVTrace.txt.Я попробовал модуль "yep" на pypi , который упаковывает google-perftools, но я получаю некорректное поведение, как описано здесь , и предлагаемое исправление не работает для меня.Я пробовал ltrace и latrace, но оба, кажется, сломаны.Я не уверен, что я могу попробовать дальше или это вообще возможно.
Для справки, этот код предназначен для моего старшего дизайн-проекта в колледже.Я реализую распознавание / распознавание лиц с помощью OpenCV, работающего на процессоре ARM в Zynq-7000 SOC, а затем ускоряю узкие места с помощью матрицы FPGA.Это, конечно, зависит от возможности определения горячих точек с помощью профилирования.