opencv相关内容

检测草地图像中的植物

我是计算机视觉领域的新手.我想检测草图像中的某种植物. 原图 Canny 边缘检测算法 霍夫线变换(边缘检测后) 我已经试过了: 通过比较区域中白色像素的平均值来去除背景中的草. 使用霍夫线变换算法进行线检测(草加错线) 您认为检测这种植物的最佳方法是什么? 解决方案 我想到了虚拟解决方案.由于草比植物本身更详细: 应用 Canny 或任何其他边 ..
发布时间:2022-01-09 18:53:55 C/C++开发

围绕轮廓对象生成颜色直方图

嘿,OpenCV/Emgu 大师, 我有一张正在为其生成轮廓的图像,见下文.我正在尝试生成基于颜色直方图的图像搜索空间的修剪以查找.我怎样才能在突出的对象轮廓周围获得遮罩并阻挡其余部分.所以我有一个两部分的问题: 如何“反转"轮廓外的图像?填埋反转,不是吗?我对 OpenCV 中的所有选项感到困惑. 其次,我如何从轮廓物体生成一维颜色直方图,在这种情况下红色汽车排除黑色背景,只生 ..
发布时间:2022-01-09 18:53:46 其他开发

在 MATLAB 和 OpenCV 之间提取不同的 SURF 特征?

我在 OpenCV 中实现了我在 MATLAB 中设计的算法.我正在为 OpenCV 中的 SURF 特征提取器编写单元测试,我想将 MATLAB 提取的 SURF 特征的输出与 OpenCV 进行比较. 这个问题是,对 MATLAB 和 OpenCV 提取器使用相同的参数时,我得到了不同数量的特征.这怎么可能?是否有不同的方式来实现 SURF? 对于 MATLAB (http://w ..
发布时间:2022-01-09 18:53:38 其他开发

为“立体校正"寻找两个相机之间的旋转矩阵

所以我有一个深度图和相机的外在和内在.我想取回 3D 点和表面法线.我正在使用函数ReprojectImageTo3D.在立体校正函数中找到 Q 如何获得旋转矩阵之间第 1 和第 2 相机的坐标系?我有单独的旋转矩阵和平移向量,但是如何在“相机之间"获得它?.另外这会给我3D点.有没有一种方法可以生成表面法线? 解决方案 既然你有两个摄像头的外在矩阵,你不能简单地把摄像头1的逆外在矩阵乘以 ..
发布时间:2022-01-09 18:53:14 其他开发

信内信,模式识别

我想检测这种模式 如您所见,它基本上是字母 C,在另一个内部,具有不同的方向.我的模式可以有多个 C,我发布的带有 2 个 C 的只是一个示例.我想检测有多少个 C,以及每个 C 的方向.现在我已经设法检测到这种模式的中心,基本上我已经设法检测到最里面 C 的中心.您能否提供有关我可以使用的不同算法的任何想法? 解决方案 我们开始!这种方法的高级概述可以描述为顺序执行以下步骤: ..
发布时间:2022-01-09 18:52:58 其他开发

Gimp 程序中的 OpenCV Python 脚本 - 草/硬表面边缘检测

我想开发一个 Python OpenCV 脚本来复制/改进我开发的 Gimp 程序.该过程的目标是提供一个 x,y 点阵列,该阵列遵循草地和硬表面之间的分界线.这个阵列可以让我完成我的 500 磅 54 英寸宽的压力清洗机器人,它有一个 Raspberry Pi Zero(和摄像头),这样它就可以以每秒几英寸的速度跟随那个边缘.我将监控和/或当我在沙发上看电视时,通过它的 wifi 视频流和 iP ..
发布时间:2022-01-09 18:52:48 Python

通过 OpenCV 的 camshift 算法控制鼠标指针(或鼠标的基本功能)

我使用 EmguCV(openCV 的包装器)在 C# 中编写了一个程序.该程序使用 camshift 算法跟踪对象.围绕对象绘制一个矩形.光标移动到矩形的中心.输入来自网络摄像头. 最初的问题是光标无法覆盖整个屏幕.它的运动仅限于框架尺寸.所以我应用了一个乘法因子: X 方向移动的屏幕宽度/帧宽度. Y 方向移动的屏幕高度/帧高度 这样鼠标就可以覆盖整个区域.但是鼠标移动 ..
发布时间:2022-01-09 18:51:49 C#/.NET

基本矩阵分解:验证 R 和 T 的四种可能解决方案

我想使用 OpenCV 做一些 Structure-from-Motion.到目前为止,我有 basicmatix 和 essentialmatrix.有了基本矩阵,我正在做 SVD 以获得 R 和 T. 我的问题是我有 2 个可能的 R 解决方案和 2 个可能的 T 解决方案,这导致整体姿势有 4 个解决方案,其中 4 个解决方案中只有一个是正确的.如何找到正确的解决方案? 这是我的 ..
发布时间:2022-01-09 18:51:40 Java开发

如何在 OpenCV Python 中检测红色?

我正在尝试检测从我的网络摄像头拍摄的视频中的红色.下面给出的以下代码示例取自 OpenCV 文档.代码如下: 导入 cv2将 numpy 导入为 np上限 = cv2.VideoCapture(0)而(1):# 获取每一帧_, frame = cap.read()# 将 BGR 转换为 HSVhsv = cv2.cvtColor(帧,cv2.COLOR_BGR2HSV)# 定义 HSV 中蓝色的 ..
发布时间:2022-01-09 18:51:29 Python

2个像素之间的距离

来自软件开发,我是图像处理的新手.我尝试获取形状为 (100, 100, 3) 的 numpy 数组的图像中两个像素之间的距离. 例如,我想找到图像中像素蓝色 (0, 0, 255) 和像素红色 (255, 0, 0) 之间的距离,我尝试使用 for 循环或 np.where() ...但没有成功.距离可能是图像中两个索引之间的某种差异(这些颜色的像素可能更多,因此至少在图像中第一次遇到) ..
发布时间:2022-01-09 18:51:21 Python

如何获取图像中形状每一边的长度?

假设我们有如下图片: [![输入][1]][1] 我想确定边的数量,以及每边的长度. 在图像中,我们将三个边缘作为直线,而上一个是弯曲的边缘.我能够使用 Canny 边缘检测找到三个直边的长度.我们可以有四个顶点坐标,我们可以计算出三个直边/线的长度,但无法找到弯曲边的长度. 查找图像 python 中的边数和每边的长度以及顶点数这是获得图像中的边数,我们通过上面链接中的代 ..
发布时间:2022-01-09 18:51:10 Python

霍夫圆检测精度很低

我正在尝试从看起来具有非常好的清晰度的图像中检测圆形.我确实意识到圆圈的一部分丢失了,但从我读到的关于霍夫变换的内容来看,这似乎不会导致我遇到的问题. 输入: 输出: 代码: //读取图片Mat src = Highgui.imread("input.png");//将其转换为灰色垫 src_gray = 新垫();Imgproc.cvtColor(src, src_gray, ..

如何在不丢失opencv信息的情况下分割手写和打印的数字?

我编写了一个算法,可以检测打印和手写数字并对其进行分割,但是在使用滑雪图像包中的 clear_border 删除外部矩形手写数字时会丢失.任何阻止信息的建议. 示例: 如何分别获取全部 5 个字符? 解决方案 从图像中分割字符 - 方法- 对图像设置阈值(将其转换为 BW) 执行扩张 检查轮廓是否足够大 查找矩形轮廓 获取 ROI 并保存角色 Pyth ..

图像裁剪的 OpenCV 相机校准(ROI 子矩阵)

我在使用 OpenCV 的 undistort 函数时遇到了一点问题.我正在使用使用广角镜头的相机.假设我对它的访问是有问题的,因为它已经安装了.问题基本上归结为: 我已经成功测量了所有镜头参数,并且可以毫无问题地使全帧图像不失真,问题是我实际上是在某种线扫描模式下工作.我们只在传感器中间使用了一个切口,大约 100 像素高.图片说明: 现在,如果我对相关图像的 ROI(感兴趣区域)应 ..
发布时间:2022-01-09 18:50:15 C/C++开发

Python中许多图像的快速而强大的图像拼接算法?

我有一个固定的相机,它可以快速拍摄连续移动的产品,但在相同角度的固定位置(平移透视).我需要将所有图像拼接成全景图片.我尝试过使用 Stitcher 类.它有效,但计算需要很长时间.我还尝试使用另一种方法,使用 SIFT 检测器 FNNbasedMatcher,找到 Homography 然后扭曲图像.如果我只使用两个图像,这种方法可以正常工作.对于多个图像,它仍然无法正确拼接它们.有谁知道这种情 ..