Как создать OpenCV с флагами отладки

#c #opencv #cmake #cmake-gui

#c #opencv #cmake #cmake-графический интерфейс

Вопрос:

В настоящее время я пытаюсь отладить алгоритм обнаружения углов шахматной доски в OpenCV. Для этого я раскомментировал

 #define DEBUG_CHESSBOARD
  

строка в исходном коде ниже.

https://github.com/opencv/opencv/blob/master/modules/calib3d/src/calibinit.cpp

Затем я пытаюсь выполнить сборку с использованием графического интерфейса CMake в Windows. Когда я делаю это, я продолжаю сталкиваться с ошибкой «Не удается открыть включаемый файл: ‘opencv2 / highgui.hpp», очевидно, из-за строки 89 в исходном коде, приведенном выше (также показано ниже).

 #ifdef DEBUG_CHESSBOARD
#include "opencv2/highgui.hpp"
  

Я искал везде и не уверен, как решить проблему. В файле есть соответствующий комментарий, в котором говорится, что

 // Requires CMake flag: DEBUG_opencv_calib3d=ON
#define DEBUG_CHESSBOARD
  

но я не могу понять, как включить этот флаг.

Если у кого-нибудь есть какие-либо мысли по этому поводу, я был бы очень признателен! Большое вам спасибо!

Комментарии:

1. Я продолжаю сталкиваться с ошибкой «Не удается открыть включаемый файл Вы установили путь включения компиляторов?

2. Я вижу, что модуль находится здесь: github.com/opencv/opencv/tree/master/modules/highgui/include /…

Ответ №1:

Решается путем изменения CMakeLists.txt в opencv-master/modules/calib3d/CMakeLists.txt .

Вы должны переместить строку «список (ДОБАВИТЬ debug_modules opencv_highgui)» из инструкции if. Я уверен, что есть способ установить DEBUG_opencv_calib3d напрямую, но я этого не понял, но это хакерское решение работает.