【问题标题】:Unable to build opencv-3.0 with opencv_contrib modules for python无法使用用于 python 的 opencv_contrib 模块构建 opencv-3.0
【发布时间】:2015-03-15 07:57:21
【问题描述】:

我使用以下指南安装 opencv-3.0 alpha 没有任何问题 - http://rodrigoberriel.com/2014/10/installing-opencv-3-0-0-on-ubuntu-14-04/

但是当我添加 opencv_contrib 模块的选项时,构建失败并出现错误-

Linking CXX shared library ../../lib/libopencv_xobjdetect.so
/usr/bin/ld: cannot find -lWRAP
/usr/bin/ld: cannot find -lpython
collect2: error: ld returned 1 exit status
make[2]: *** [lib/libopencv_xobjdetect.so.3.0.0] Error 1
make[1]: *** [modules/xobjdetect/CMakeFiles/opencv_xobjdetect.dir/all] Error 2
make: *** [all] Error 2

我的目标是在 python 中获得 SIFT API。 opencv-3.0 是唯一的选择,还是有旧版本可以做到这一点?

【问题讨论】:

  • 这个运气好吗?我也有同样的问题。
  • 如果您仍然遇到此问题,请查看我在更新答案中提供的链接。它对我有用。
  • 2.4.5 版对我来说运行良好,所以我不想更改它,但我会在 VM 上尝试并在此处发表评论。

标签: python opencv cmake sift


【解决方案1】:

我也遇到了同样的问题。问题可能是您需要将您的 opencv 源更新到最新版本。我在 opencv_contrib 上打开了一个问题并收到了以下答案:

“您需要将opencv存储库更新到最新版本才能使用它构建最新的opencv_contrib,当前的opencv_contrib版本与3.0.0-beta(您可能正在使用)不兼容。或者在2014-11-10附近查看opencv_contrib 。”

更新:我在 opencv 论坛上问了这个问题,得到了仓库维护者的回答:broken python bindings

【讨论】:

  • @goelakash 关键在于 opencv 与 contrib 的同步,而不是您使用的是 alpha 还是 beta。根据 opencv_contrib 贡献者的说法,提交 5466e321b8c8f97536002a357e5b7ff49a5d2bf9 似乎是正常工作的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-04
  • 1970-01-01
  • 2017-04-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多