我从这里-可在网上找到下载了一个名为BMS的显着性模型,名为“利用凸性进行显着性检测:布尔映射方法”。该代码已在Windows上实现和测试。
我试图在我的机器(Linux )上设置,方法是读取文件"readme.txt“中包中的指令。文件上说:
我已经将OpenCV的路径设置为:
opts.opencv_include_path = '-I/usr/local/include/opencv2/ -I/usr/local/include/'; % OpenCV include path
opts.opencv_lib_path = '/usr/lib/libopencv*'; % OpenCV lib path但是,这给了我一个错误:
Error using compile>pkg_config (line 74)
OpenCV include path not found: -I/usr/local/include/opencv2/ -I/usr/local/include/
Error in compile (line 34)
[cv_cflags,cv_libs] = pkg_config(opts);我已经检查了OpenCV包的路径,一切都很好,但是在MATLAB中,编译器无法检测到文件。我已经尝试了所有的选择网上,但没有任何工作。
请帮我运行密码,谢谢!
发布于 2018-03-07 18:18:07
我认为您的系统中缺少OpenCV库。您可以分9个步骤安装它:
sudo apt-get install build-essential cmake pkg-config libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libgtk-3-dev libatlas-base-dev gfortranwget https://github.com/opencv/opencv/archive/3.4.1.zipunzip opencv-3.4.1.zipcd opencv-3.4.1/wget https://github.com/Itseez/opencv_contrib/archive/3.4.1.zipunzip 3.4.1.zipmkdir -p build && cd buildcmake -D WITH_TBB=OFF -D WITH_OPENMP=ON -D WITH_IPP=ON -D CMAKE_BUILD_TYPE=RELEASE -D BUILD_EXAMPLES=OFF -D WITH_NVCUVID=OFF -D WITH_CUDA=OFF -D BUILD_DOCS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_TESTS=OFF -D WITH_CSTRIPES=ON -D WITH_OPENCL=ON -D WITH_MATLAB=ON -D WITH_LAPACK=ON -D WITH_PNG=ON -D WITH_FFMPEG=ON -D BUILD_opencv_python2=ON -D BUILD_opencv_python3=ON -D BUILD_opencv_python_bindings_generator=ON -D PYTHON2_EXECUTABLE=/usr/bin/python2.7 -D PYTHON2_INCLUDE_DIR=/usr/include/python2.7 -D PYTHON2_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so -D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/local/lib/python2.7/dist-packages/numpy/core/include -D PYTHON2_PACKAGES_PATH=lib/python2.7/dist-packages -D PYTHON3_EXECUTABLE=/usr/bin/python3 -D PYTHON3_INCLUDE_DIR=/usr/include/python3.5m -D PYTHON3_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include PYTHON3_PACKAGES_PATH=lib/python3.5/dist-packages -D CMAKE_INSTALL_PREFIX=/usr/local/ -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.1/modules ..make -j 8sudo make install安装OpenCV后,可以编译BMS。在Matlab中,设置变量opts.opencv_include_path=/usr/local/include/opencv2/和opts.opencv_lib_path=/usr/local/lib/。
警告:测试上面的命令是否足以在您的机器上编译。以下命令可能不是必需的。我在这里遇到了一些问题(可能是因为我使用了Octave而不是Matlab)。这些问题是:
您可以通过在BMS.h的第32行中添加以下语句来解决此问题:using namespace std;
在MxArray.cpp第484行添加以下语句
int* pointer; *pointer = si[0];
将BMS.obj MxArray.obj替换为BMS.o MxArray.o,位于“编译程序”的第52行。
https://stackoverflow.com/questions/49137713
复制相似问题