gpt4 book ai didi

linux - 显着性模型 - BMS(设置错误)

转载 作者:太空宇宙 更新时间:2023-11-04 10:10:58 25 4
gpt4 key购买 nike

我从 here - available online 下载了一个名为 BMS 的显着性模型“Exploiting Surroundedness for Saliency Detection: A Boolean Map Approach” .代码已在 Windows 上实现和测试。

我正在尝试通过阅读文件 “readme.txt” 中包内给出的说明,在我的机器 (Linux Mint) 上进行设置。该文件说:

  1. Put the extracted files in a .
  2. Install OpenCV 2.40+.
  3. Go to /mex/ and specify the relevant OpenCV paths at the begining of the compile.m.
  4. Run compile.m in Matlab.
  5. Go to and run demo.m in Matlab.

我已经在 compile.m 文件中设置了 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 中,compile.m 无法检测到文件。我已经尝试了所有可用的在线选项,但没有任何效果。

请帮我运行一下代码,谢谢!

最佳答案

我想您的系统中缺少 OpenCV 库。您可以通过 9 个步骤安装它:

  1. 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 gfortran
  2. wget https://github.com/opencv/opencv/archive/3.4.1.zip
  3. 解压opencv-3.4.1.zip
  4. cd opencv-3.4.1/
  5. wget https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip
  6. 解压 3.4.1.zip
  7. mkdir -p build && cd build
  8. cmake -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_INSTA LL_PREFIX=/usr/local/-DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.1/modules ..
  9. make -j 8
  10. sudo make install

安装好OpenCV后,就可以编译BMS了。在 Matlab 中,设置变量 opts.opencv_include_path=/usr/local/include/opencv2/opts.opencv_lib_path=/usr/local/lib/

警告:测试上面的命令是否足以在你的机器上编译。以下命令可能不是必需的。我在这里遇到了一些问题(可能是因为我使用 Octave 而不是 Matlab)。问题是:

  • 在 mexBMS.cpp:29:0 包含的文件中:BMS.h:44:2: 错误:‘vector’没有命名类型

您可以通过在 BMS.h 的第 32 行添加以下语句来解决此问题:using namespace std;

  • MxArray.cpp:484:55:错误:从“const value_type* {aka const int*}”到“mwIndex* {aka int*}”的无效转换 [-fpermissive]

MxArray.cpp 的第 484 行添加以下语句:

int* 指针;
*指针 = si[0];

  • g++: 错误:BMS.obj: 没有那个文件或目录

BMS.obj MxArray.obj 替换为 BMS.o MxArray.o 在 `compile.m. 的第 52 行

关于linux - 显着性模型 - BMS(设置错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49137713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com