Недавно я перешел с OpenCV3.3 на последнюю версию OpenCV4 на моем Ubuntu 18.04 LTS. У меня постоянные проблемы с установкой. Моя установка не дала никаких ошибок, когда я следовал руководству по установке это. Но всякий раз, когда я включаю модуль opencv2/highgui.hpp
в свой проект, у меня возникают проблемы, как показано ниже. Кажется, это проблема, вызванная highgui.hpp, когда я перешел по ссылке это.
/home/arun/Documents/AutonomousLaneDetection/app/main.cpp: In function ‘int main(int, char**)’:
/home/arun/Documents/AutonomousLaneDetection/app/main.cpp:118:36: error: ‘CV_CAP_PROP_FRAME_WIDTH’ was not declared in this scope
int videoWidth = videofile.get(CV_CAP_PROP_FRAME_WIDTH);
^~~~~~~~~~~~~~~~~~~~~~~
/home/arun/Documents/AutonomousLaneDetection/app/main.cpp:119:37: error: ‘CV_CAP_PROP_FRAME_HEIGHT’ was not declared in this scope
int videoHeight = videofile.get(CV_CAP_PROP_FRAME_HEIGHT);
^~~~~~~~~~~~~~~~~~~~~~~~
/home/arun/Documents/AutonomousLaneDetection/app/main.cpp:123:27: error: ‘CV_FOURCC’ was not declared in this scope
CV_FOURCC('M', 'J', 'P', 'G'), 10,
^~~~~~~~~
/home/arun/Documents/AutonomousLaneDetection/app/main.cpp:123:27: note: suggested alternative: ‘CV_BLUR’
CV_FOURCC('M', 'J', 'P', 'G'), 10,
^~~~~~~~~
CV_BLUR
Эти константы были изменены в имени и местоположении в OpenCV в течение некоторого времени.
Свойства захвата больше не начинаются с CV_
, поэтому удалите этот префикс из всех них. Вы можете найти список всех доступных свойств захвата здесь, обратите внимание, что все они начинаются с CAP_PROP_
.
Конструктор кода FOURCC
теперь является методом класса VideoWriter
, поэтому вам следует использовать VideoWriter::fourcc(...)
. Документы можно найти здесь.
OpenCV 3.4 — это нет OpenCV 4. Нет «AKA». OpenCV имеет обе версии, и они разные.