computer-vision相关内容

如何在不丢失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 然后扭曲图像.如果我只使用两个图像,这种方法可以正常工作.对于多个图像,它仍然无法正确拼接它们.有谁知道这种情 ..

纹理映射过程后如何合并两个 .obj 文件?

在 3D 网格上应用纹理后,会生成三个文件(包括一个 .obj、.mtl 和一个 atlas 文件).我已经在 2 个对象上映射了纹理,现在我想将这些对象合并在一起,但我不知道如何合并它们的文件.有什么方法(不是非免费工具)吗? 解决方案 单对象波前obj文件的naive文件合并相对容易: 将第一个文件读入内存 记住每个表的条目数 将第二个文件附加到内存中(人脸除外) ..
发布时间:2022-01-09 18:49:36 C/C++开发

如何使用 Pytesseract 提取图像中的小数点

上面是图片,我已经尝试了从 SO 或 google 获得的一切,似乎没有任何效果.我无法在图像中得到确切的值,我应该得到 2.10,而不是总是得到 210. 并且不仅限于此图像,只有在数字 1 tesseract 之前具有小数的任何图像都会忽略十进制值. def returnAllowedAmount(self,imgpath):th = 127最大值 = 255img = cv2.im ..

查找图像的方向

我正在使用 OpenCv 进行模式匹配.我有一个模型,我将目标与函数 cvMatchShapes 进行比较.它有效,但我想知道目标的方向.我该怎么做? 解决方案 边界旋转矩形是否适用于例如轮廓方向不同 180 度的情况? 解决问题的另一种方法是计算轮廓矩(我想你在 cvMatchShapes 中使用轮廓,你也可以用类似的方式计算图像矩)OpenCV Contours Moments? ..
发布时间:2022-01-09 18:49:11 其他开发

C++ 中的连接组件标签

我需要在 C++ 应用程序中的图像上使用 连接组件标签 算法.我可以自己实现,但我试图使用 Boost 的 union-find/disjoint sets 实现,因为它在 union-find wiki 中被提及文章. 我不知道如何创建 disjoint_sets 对象,以便它可以处理我拥有的图像数据(无符号短裤).我错过了什么?Boost 文档中的示例对我来说没有任何意义.当我有图像时, ..
发布时间:2022-01-09 18:49:03 C/C++开发

哪个是“使用 Opencv 估计和可视化 2d 骨架"的最佳算法?从绘制的轮廓

从绘制的轮廓中“使用 Opencv 估计和可视化 2d 骨架"的最佳算法是什么? 递归质心算法是最好的吗?请提供任何参考链接或文档. 解决方案 不做所有功课,这里有一些提示: 你只有一个轮廓——一个将内部和外部分开的边界.要确定骨架,您需要一个连续的填充对象.洪水填充算法将起作用. 对象的骨架是迭代侵蚀后剩下的对象. ..
发布时间:2022-01-09 18:48:54 其他开发

使用 OpenCV 检测 .pdf 表单图像中的水平空白行

我有 .pdf 文件已转换为该项目的 .jpg 图像.我的目标是识别您通常会在 .pdf 表单中找到的空白(例如 ____________),这些空白指示用户填写某种信息的空间.我一直在使用 cv2.Canny() 和 cv2.HoughlinesP() 函数进行边缘检测. 这工作得相当好,但有不少误报似乎不知从何而来.当我查看“边缘"文件时,它会在其他单词周围显示一堆噪音.我不确定这种噪音 ..
发布时间:2022-01-09 18:48:41 Python

使用蒙版获取图像的平均值

我有一系列同心矩形,并希望获得外部矩形排除内部矩形的手段.见附图,我需要得到阴影区域的平均值. 所以我使用内部矩形的掩码传递给 cv2.mean 方法,但我不确定如何设置掩码.我有以下代码: for i in xrange(0,len(wins)-2,1):mean_1 = cv2.mean(wins[i])[0]msk = cv2.bitwise_and(np.ones_like((wi ..
发布时间:2022-01-09 18:48:14 其他开发

Canny Edge 的自适应参数

我正在使用一个使用 OpenCV 的项目来检测将放置在桌子上的卡片.我已经使用 Canny Edge 成功检测到它.但是,对于不同的图像,必须手动调整参数.我希望我的项目能够处理每个图像,而无需手动调整参数.我该怎么办? 解决方案 如果您的图像由 Distinct Background &前景,您可以按照本文中的说明自动获取阈值 http://www.academypublisher.co ..
发布时间:2022-01-09 18:48:06 其他开发

用于查找曲线段的霍夫变换

霍夫变换可用于从图像中提取线条.它也可以用来提取曲线——虽然这有点困难,因为更高维的霍夫变换会消耗资源.我想知道是否如何将霍夫变换限制为 3 阶曲线的 2D 投票空间,即 x^{3}+ax^{2}+bx+c ? 任何人都知道任何解释这一点的好网站(似乎找不到任何网站).或者如果没有,请在此处解释:). 解决方案 广义霍夫变换的精髓在于,累加器的“边"就是你要找的答案.如果您尝试匹配椭 ..
发布时间:2022-01-09 18:47:39 其他开发

OpenCV python的API:FlannBasedMatcher

我正在尝试重写此处中描述的代码.使用 Opencv 的 python API. 代码的第 3 步有这几行: FlannBasedMatcher 匹配器;标准::向量火柴;matcher.match(descriptors_object,descriptors_scene,matches); 我在 OpenCV 参考 中反复查看,但没有发现与 python 中的 FlannBasedMa ..
发布时间:2022-01-09 18:47:23 Python

pcl::RANSAC 分割,获取云中的所有平面?

我有一个点云库函数,可以检测点云中最大的平面.这很好用.现在,我想扩展此功能以分割出云中的每个平面并将这些点复制到新的云中(例如,房间地板上有球体的场景将返回地板和墙壁,但不是球体,因为它不是平面的).如何扩展以下代码以获取所有飞机,而不仅仅是最大的飞机?(运行时间是这里的一个因素,所以我不希望只是在循环中运行相同的代码,每次都剥离新的最大平面) int主要(int argc,char** ar ..

无法加载文件或程序集“Magick.NET-x86.DLL"或其依赖项之一

我使用了 Magick.NET,它是 ImageMagick 的 .NET 包装器,它会在客户端计算机上引发上述错误.不过,它在我的机器上运行良好.我还没有安装 ImageMagick,所以我根本无法理解我需要在客户端机器上做什么.我已经安装了 VS 2012. 此外,Magick.NET 在其中包含 ImageMagick,我认为它使用 C++/CLI 并向本机 ImageMagick 公 ..
发布时间:2022-01-09 18:46:53 C#/.NET

在 OCR 处理之前移除背景颜色或纹理

典型的手机用户在为卡片大小的物体拍照时,图像中通常会包含一些背景纹理——请参考附件示例.在某些情况下,该背景可能会影响 OCR 的准确性. 我想知道是否有解决方案来去除背景(我肯定有),或者检测背景区域,以便可以在 OCR 之前将它们裁剪掉.在附加图像的情况下,木桌和台面展示是被删除的候选对象.我想对比色可能是一种解决方案,但不太确定. 解决方案 在某些情况下,作为人类,您在区分背景 ..
发布时间:2022-01-09 18:46:23 其他开发