问题标签 [opencv-contrib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - ximgproc(opencv-contrib 子模块)安装成功,但我收到 AttributeError
我安装opencv-contrib
了它ximgproc
作为一个子模块,使用这个:
当我在以下行运行时:
我收到此错误:
如何使用ximgproc
函数?
opencv - 如何在 Visual Studio 2019 上的 Windows 10 中安装带有 contrib 模块的 OpenCV
我正在尝试在 Windows 10 机器上安装带有 Visual Studio 2019 的 contrib 模块的 OpenCV。
我之前在 Visual Studio 2017 中有一个工作版本,但最近无法让 2019 或 2017 工作。
我一直在使用 CMake 来安装它,在生成之前添加了额外的模块路径。一旦我构建了 ALL_BUILD 和 INSTALL 文件,我就不确定应该在哪里添加库和包含路径,并且我发现教程之间的结果相互冲突,而且似乎都不起作用。
我的代码不包含库,并说它无法打开源文件。
这是我的代码:
错误是:
无法打开源文件“opencv2/core/core.hpp”
我已经查看了以下材料以尝试解决此问题,但是没有最新的指南来包含 contrib 模块,也没有任何工作
python - 如何在opencv python中执行缩放和旋转不变模板(特征)匹配和对象检测
我需要用于检测缩放和旋转不变对象的代码。图片中有 8 个笔式驱动器,它们的大小和旋转角度不同。我只能用 matchTemplate() 检测到几个笔式驱动器。我需要使用 SURF、BRIEF 或任何其他可以检测所有 8 个笔式驱动器的算法的代码。我搜索了其他问题,他们只提供想法,但没有 python 代码。
可以使用的包有:
- opencv-contrib(因为 surf,brief 被移到 contrib 包中)
- 蟒蛇3
模板:
输出:
代码 :
编辑:我已将问题更改为比例和旋转不变模板匹配(特征匹配)和对象检测示例:https ://m.youtube.com/watch?v=lcJqinjHb90
我可以使用以下程序检测单个对象,但我需要检测多个对象。
代码:
输出 :
python-3.x - 尽管包含在 cmake 中,但仍缺少非免费的 opencv 算法
在我的 python3 脚本中使用 opencv sift 功能给了我:
error: (-213:The function/feature is not implemented) This algorithm is patented and is excluded in this configuration; Set OPENCV_ENABLE_NONFREE CMake option and rebuild the library in function 'create'
但是这个选项被设置并且cmake输出说
Non-free algorithms: YES"
因此我认为标志是正确的。关于 python3 的输出是:
-- Interpreter: /Users/andre/.virtualenvs/dl4cv/bin/python (ver 3.7.6)
-- Libraries: /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python3.7/config-3.7m-darwin/libpython3.7.dylib (ver 3.7.6)
-- numpy: /Users/andre/.virtualenvs/dl4cv/lib/python3.7/site-packages/numpy/core/include (ver 1.18.0)
-- packages path: lib/python3.7/site-packages
这对我来说看起来不错。一切都在 virtualenv 中设置并运行,但我无法弄清楚我不能使用 sift。任何人都可以提供一些指导吗?
opencv - 如何将 OpenCV-contrib 的所有额外模块添加到 OpenCV 库?
我通过提供路径:
在CMake GUI中的OPENCV_EXTRA_MODULES_PATH中基于这些说明构建了带有额外模块的 OpenCV 。C:/opencv/opencv-4.2.0/opencv_contrib-4.2.0/modules
但是,当我想基于此页面使用MultiTracker时,我会遇到此错误:
无法打开包含文件:“samples_utility.hpp”:没有这样的文件或目录
此错误来自此行:
我知道samples_utility.hpp
是一个文件opencv_contrib-4.2.0\modules\tracking
,但为什么在构建的库中找不到它?我必须从CMake添加它还是应该从头开始构建 OpenCV?
c++ - C++ 无法打开源文件“opencv2/tracking.hpp”
我正在尝试使用 OpenCV 多跟踪器,但找不到tracking.hpp
. 我已经根据这些说明使用OpenCV-contrib模块构建了 OpenCV 。现在在 Visual Studio 中,我已经这样做了:
$OPENCV_DIR
用户变量在哪里:
我也有;
- 将路径添加
C:\opencv\opencv4.2.0\opencv-4.2.0\build\install\x64\vc16\lib
到Linker -> Gnereal -> Additional Library Directories
. - 添加
opencv_world420.lib
到Linker -> Input -> Additional Dependencies
现在的问题是opencv.hpp
并且tracking.hpp
没有被检测到:
两者都opencv.hpp
存在tracking.hpp
于C:\opencv\opencv4.2.0\opencv-4.2.0\build\install\include\opencv2
. 我应该怎么做才能让程序识别OpenCV-contrib模块?
python - OpenCV-contrib/Python/Windows:Tracker.write() 在 matrix_wrap.cpp 中引发错误,Tracker.read() 使 Python 崩溃
我已将此作为问题发布在 GitHub opencv_contrib 上,但尚未收到任何回复。
系统信息(版本)- OpenCV => 4.2.0
- 操作系统/平台 => Windows 10、64 位
- 编译器 => Visual Studio 16 2019
- Python => 3.7.6,使用 Anaconda
我想在 Windows 上使用 Python 中的 Tracker 类,似乎在 Python 中访问算法参数的唯一方法是向 .yaml 文件写入/读取 Tracker 对象。当我尝试Tracker.write()
时,我得到一个 cv2.error。这是我的测试用例:
当我尝试此操作时(Python 3.7.6、OpenCV 4.2.0... 带有预打包的二进制文件,或者从源代码重建时),它失败并显示tracker.write(fs)
以下消息:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
cv2.error: OpenCV(4.2.0) C:\Users\dick\OpenCV\opencv-4.2.0\modules\core\src\matrix_wrap.cpp:112: error: (-213:The function/feature is not implemented) You should explicitly call mapHost/unmapHost methods for ogl::Buffer object in function 'cv::_InputArray::getMat_'
在稍微不同的测试中,我收到了以下错误消息:
Traceback (most recent call last):
File "<stdin>", line 5, in <module>
cv2.error: OpenCV(4.2.0) C:\Users\dick\OpenCV\opencv-4.2.0\modules\core\src\matrix_wrap.cpp:130: error: (-213:The function/feature is not implemented) Unknown/unsupported array type in function 'cv::_InputArray::getMat_'
我有一个朋友比我更精通 C++/Linux/Visual Studio,她向我证实这tracker.write()
在 Linux 上运行良好,编写一个.yaml
文件,使用tracker.read()
如下读取它:
当我尝试tracker.read()
使用已知良好的.yaml
文件时,Python 直接崩溃到命令提示符——根本没有错误消息。我想这是一个密切相关的问题。
我朋友的评估是“据我所知,在 Windows 中,正在创建的 Mat 对象是错误的数据类型(它是否具有额外的维度或错误的类型(即 float 与 int)或者它是一个空的空指针)。”,到目前为止,我已经把她的时间强加给了她足够多的时间。有人可以查看 C++ 代码,看看出了什么问题,也许为什么它可以在 Linux 上运行,而不是在 Windows 上运行?
在四处寻找类似问题时,我认为 #2393 看起来有些熟悉,其中 Mat 类的行为不如预期。
[注:这是我第一次打开问题,我不熟练使用 C++ 或使用 VS(我在重新编译时得到了很多帮助!),我还在学习 Python——我希望 OpenCV 团队会支持像我这样的 Python 最终用户访问跟踪算法参数,即使他们别无选择,只能 Windows。:-) 谢谢。]
c++ - OpenCv 预装在 google Colab 中,但我想从 opencv_contrib 添加一个额外的模块。如何做到这一点?
我正在使用 google Colab,对于预安装的 opencv,功能运行良好,但我想使用尚未完全发布但可以使用 opencv-contrib 安装的“BRISQUE”。有一些方法可以遵循,但它们不适用于 google colab。所以不适合我。我实际上希望将 opencv-contrib 中的“质量”模块附加到我的 opencv 中。该模块的链接是https://github.com/opencv/opencv_contrib/tree/master/modules/quality
附上示例程序的屏幕截图,它给出了错误..
任何帮助,将不胜感激。提前致谢。
python - 筛选和冲浪的opencv contrib问题
对于以下代码!
我得到这个错误
AttributeError:模块“cv2.cv2”没有属性“xfeatures2d”
当我使用 conda 安装它时:
*已满足要求:c:\users***\anaconda3\lib\site-packages (3.4.2.16) 中的 opencv-contrib-python
已满足要求:c 中的 numpy>=1.14.5 :\users***\anaconda3\lib\site-packages (来自 opencv-contrib-python) (1.18.1)*
但是当我运行时: pip install opencv-contrib-pyt , iget :
错误:找不到满足 opencv-contrib-pyt 要求的版本(来自版本:无) 错误:未找到 opencv-contrib-pyt 的匹配分发
我不明白它是否已经安装,即使我有opencv和opencvcontrib我也不能使用sift
python - AttributeError: 'int' 对象没有属性 'read'
opencv-contrib-python
在阅读此行时使用,:
我收到一个错误:
我的源代码: