问题标签 [opencv3.1]
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.
opencv - 为什么 cv::cuda::createMedianFilter 函数比 cv::medianBlur 慢?
如您所知,Ptr<Filter> cv::cuda::createMedianFilter (int srcType, int windowSize, int partition=128)
OpenCV3.1.0 中添加了功能。
我正在尝试对具有自定义窗口大小(最多 21 个)的 8 位大图像(6000 * 6000)进行中值过滤。我比较cv::medianBlur
和cv::cuda::createMedianFilter
结果是
1) 为什么 cuda::createMedianFilter 比 cv::medianBlur 慢?
2) 我如何编写内核代码来实现使用具有自定义内核大小的 opencv Mat 的中值滤波器?
python - 如何从 OpenCV 3.1 中的文件加载 SVM 数据?
我从文件加载训练有素的 SVM 时遇到问题。我使用 Python 和 OpenCv 3.1.0。我通过以下方式创建 svm 对象:
接下来,我训练 svm 并通过以下方式保存到文件:
现在我想在其他 Python 脚本中加载这个文件。在文档中我找不到任何方法来做到这一点。
有没有从文件加载 svm 的技巧?感谢您的任何回复。
opencv - 如何在 CUDA 文件(.cu)中包含和使用 OpenCv3.1.0 库?
我尝试将自己的内核实现为中值滤波器,如下所示:
我得到编译错误:
C1083:无法打开包含文件:'opencv2/opencv.hpp':没有这样的文件或目录
我知道 .cu 文件使用 nvcc 编译并且无法编译 OpenCV 头文件。
1) 如何将 OpenCV3.1.0 库包含到 .cu 文件中?
java - JNI 传递的函数参数值与实际给出的值不同
我有一个本机 c++ 函数,它作用于通过 JNI(OpenCV4Android)从 Java 传递的 cv::Mat(opencv)对象。
这是我的函数声明:
这是我访问和打印传递参数的代码:
Java声明部分设置如下:
这是 OnCameraFrame() 方法的实现:
但是,对于我在 Java 部分(Mat.getNatvieObjAddr())上设置的两个参数,我得到了不同的值(在本机函数内部)。
这些是JNI接口两边的值:
最后一个参数是一个 jint 并给出了正确的值,这个问题是否与 jlong 在不同的架构上具有不同的大小有关(代码在 armv7a 处理器上运行)。
我很感激任何帮助。谢谢。
c++ - 使用 Visual Studio 2015 的网络摄像头
我有 VS-15 和 OpenCV-3.1。在输出窗口上,我得到一个纯灰色的空白显示。我该如何解决?
c++ - 使用 GDAL 和 OpenCV3.1.0 读取地理空间栅格文件
我正在尝试实现和运行 OpenCV 示例代码使用 GDAL 读取地理空间栅格文件
对于 DEM 模型,我N37W123.hgt.zip
从位于 USGS 的 SRTM 文件下载(位于该页面的结果部分)。
但是,DEM 模型未加载到cv::Mat dem
,cv::Mat dem = cv::imread(argv[2], cv::IMREAD_LOAD_GDAL | cv::IMREAD_ANYDEPTH );
我得到运行时错误throw std::runtime_error("DEM image type must be CV_16SC1");
1)为什么会这样?
2) 所有 DEM 数据类型均为 16 位有符号整数。可以吗?
3)如何使用GDALDataset::RasterIO
或GDALRasterBand::ReadBlock
直接读取DEM模型块?
c++ - OPENCV 3.1 videoio 错误:v4l:设备 /dev/video 无法查询频道数
我在运行 ubuntu 12.04 的工作站上有一个用 opencv 3.1 编写的 C++ 程序。该程序每 5 分钟从 USB 摄像头 (/dev/video2) 捕获一帧,执行一些操作,然后将帧保存到磁盘。由于某种原因,程序抛出了这个运行时错误,但代码似乎工作正常,即。它正在捕获和保存帧,即使运行了几天...我只是想知道运行时错误是什么意思以及为什么会抛出它,以及是否需要担心它?视频错误:V4L:设备/dev/video2:无法查询频道数
这是相关的捕获代码:
python-2.7 - python cv2.VideoCapture 打不开
我有一些 avi 文件,我正试图逐帧读取。我使用 opencv 3.1.0 来读取帧:
然后我只是阅读了帽子的框架。这在某些视频上效果很好。我最近又拍了一些视频,但同样的代码是空的。我检查了:
似乎视频没有正确打开。就我而言,唯一改变的是新视频是彩色的,而旧视频不是。我不知道这会如何改变代码中的任何内容。我检查了视频在其他软件(imageJ)中打开得很好,所以我相信视频本身不是问题。
任何想法为什么新视频无法正常打开?我无法找到有关如何调试此问题的任何信息。任何建议将不胜感激。
opencv - 具有一类的人脸识别器
我正在尝试使用 opencv 在我的应用程序中实现一项功能。基本上,我的应用程序允许用户使用他们的面部进行身份验证。将捕获实时视频并提取帧。使用这些提取的图像,学习模型。下次当用户登录时,会向模型发送帧以决定这是否是经过身份验证的用户。
我从使用. _ 但是,他们使用具有 10 个类别(10 人)的现有数据集。在我的例子中,只考虑一个类(或者我们可以考虑两个类,包括经过身份验证的用户和未知用户)。你能建议我一个解决方案吗?谢谢你。opencv
FaceRecognizer
c++ - 将 point2d 转换为 Mat
如何将 vector<Point2d> 转换为 Mat。
这不起作用,因为 imWrite() 只接受通道 1 或 3 或 4 并且图像点是 2 通道。
我正在使用 OpenCV 版本 3。