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

В настоящее время я пытаюсь отладить алгоритм обнаружения углов шахматной доски в 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

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

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


person user8378087    schedule 27.08.2020    source источник
comment
Я все время сталкиваюсь с ошибкой Не удается открыть файл включения. Вы установили путь включения компилятора?   -  person drescherjm    schedule 28.08.2020
comment
Я вижу, что этот модуль находится здесь: github.com/opencv/opencv / tree / master / modules / highgui / include /   -  person drescherjm    schedule 28.08.2020


Ответы (1)


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

Вам нужно переместить строку списка (APPEND debug_modules opencv_highgui) из оператора if. Я уверен, что есть способ установить DEBUG_opencv_calib3d напрямую, но я этого не понял, но это хакерское решение работает.

person user8378087    schedule 28.08.2020