opencv不失真图像有一个奇怪的圆圈

2024-05-31

我尝试使用 opencv 针孔模型来计算校准参数,然后使图像不失真。 问题是,未失真的图像中有一个奇怪的圆圈,如下所示。

代码、原始图像和结果图像是here https://github.com/wennycooper/A004_pinhole:

任何评论将不胜感激。


校准是一项比乍看起来更困难的任务。我认为主要问题是你只在图像的中心显示目标,所以畸变参数找到了这个奇怪的参数优化。有趣的是知道您允许优化哪些参数以及使用哪些标志(可以通过 OpenCV 的校准函数找到很多参数:fx、fy、cx、cy、k1、k2、p1、p2、 k3,k4,k5,k6,s1,s2,s3,s4...)。

我建议如下:
- 尝试在屏幕的所有部分使用更多图像,如果可能的话,删除图像中非常强大的图像压缩。
- 购买粘纸,在其上打印目标并将其粘在一块玻璃上,忘记纸板。
- 您可以稍微改进校准目标和角点检测,请参阅文档findChessboardCornersSB.
- 也许减少 OpenCV 估计的参数数量有助于正则化。在我的例子中,我设置 k3 = k4 = k5 = k6 = 0。这是通过提供一个失真系数为零的向量来完成的(distCoeffs)并给出标志 CALIB_FIX_K3、CALIB_FIX_K4 等。查看其他一些标志是否适用于您的系统(例如 CALIB_FIX_ASPECT_RATIO)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

opencv不失真图像有一个奇怪的圆圈 的相关文章

  • Opencv 运动检测与跟踪

    我需要在网络摄像头的视频帧中进行强大的运动检测和跟踪 背景总是一样的 目的是识别物体的位置 如果可能的话没有阴影 但并不急于去除阴影 我已经尝试过用于背景减法和阈值化的opencv算法 但这仅取决于一个图像作为背景 如果背景的亮度 或相机自
  • 将yuv420p原始数据转换为opencv图像

    我有来自 rtmp 服务器的原始数据 像素格式为 yuv420p 我使用管道来读取数据 但我不知道如何将原始数据解码为图像 command ffmpeg command extend loglevel fatal i rtmp localh
  • 从凸点获取角点

    我编写了算法来提取图像中显示的点 它们形成凸形 我知道它们的顺序 如何从这些点中提取角点 顶部 3 个和底部 3 个 我正在使用opencv 如果你已经有了物体的凸包 并且该包包含角点 那么你需要做的就是简化包直到它只有 6 个点 有很多方
  • OpenCV 2.4 Jpeg 到 PNG(带 alpha 通道)

    我有一个 JPEG 和一个蒙版 我想创建一个具有三个 JPEG 通道的 PNG 并且 Alpha 通道应该是蒙版 如何使用 OpenCV 实现这一目标 Regards std vector
  • 线程“main”java.lang.UnsatisfiedLinkError中出现异常:java.library.path中没有opencv_java249

    我目前正在尝试在我的 32 位笔记本电脑上设置 OpenCV 但我不断收到一条令我困惑的错误消息 Exception in thread main java lang UnsatisfiedLinkError no opencv java2
  • 多线程中的 OpenCV CascadeClassifier C++ 接口

    我想在多个线程中使用 CascadeClassifier 对象运行 OpenCV C 接口 我的程序的工作方式是我的主线程将 some file xml 加载到 CascadeClassifier 对象中 生成三个或更多线程并向它们传递级联
  • 我可以将 OpenCV 的发布配置与我的应用程序的调试配置一起使用吗?

    我正在编写一个通用 Windows 应用程序 它使用 OpenCV 进行相机校准和标签检测等 我希望能够在我自己的 DLL 处于调试模式时使用发布模式 完全优化的 OpenCV DLL 这可能吗 如果是这样 我如何配置 CMake 来实现它
  • CMake:编译 OpenCV 时未找到 CUDA 库

    我正在 Windows 上使用 CMAKE 编译支持 CUDA 的 OpenCV 3 0 0 当我点击 配置 时 出现如下错误 CMake Error The following variables are used in this pro
  • 无法加载 OpenCL 运行时 - OpenCV3 Python

    我有一个程序 在 Windows 上使用 OpenCV 2 4 9 python 中的前景检测来处理视频 并使用 py2exe 打包为 Windows 可执行文件 我最近将 opencv 更新为 opencv3 并重新打包了我的程序 当我在
  • OpenCv SVM 输出文件格式

    我正在实现我自己的 SVM 而不是使用 OpenCV 的 svm 类 如果我愿意 我希望我的 SVM 用于保存其输出的 XML 文件将来可以由 OpenCV 的 SVM 加载和使用 为此我需要做什么 简而言之 OpenCV 使用什么格式来存
  • HOGDescriptor 带有视频来识别物体

    不幸的是 我既是 python 又是 openCV 初学者 所以如果问题很愚蠢 请原谅我 我正在尝试使用cv2 HOGDescriptor识别视频中的物体 我关心的是逐帧识别 即没有跟踪等 这是我正在做的事情 我读了视频 目前是 mpg 通
  • OpenCV C++ 多线程

    我在 4 个不同的 Mat 对象上调用了 4x 这个 opencv 图像处理函数 void processBinary Mat binaryMat image processing 我想要对其进行多线程处理 以便所有 4 个方法调用同时完成
  • 我如何知道在 python 中使用 OpenCV 检测到的白色区域的位置?

    例如 在这段代码中 我过滤了视频源以显示白色区域 我如何知道他们的位置 坐标 x y import cv2 import numpy as np cap cv2 VideoCapture 0 while 1 frame cap read h
  • 将曲线图案与图像边缘匹配

    我有一个要搜索沿其边缘的曲线的目标图像和一个包含该曲线的模板图像 我需要实现的是在目标图像中找到模板图像中的曲线的最佳匹配 并根据分数来判断是否匹配 这还包括曲线的旋转和大小调整 目标图像可以是 Canny Edge 检测器的输出 如果这能
  • python cv2.Videocapture() 不起作用,cap.isOpened() 返回 false

    cv2 Videocapture 在使用网络摄像头时工作正常 但在尝试从硬盘驱动器读取时显示错误 cap isOpened 返回 false import cv2 import numpy as np background cv2 imre
  • OpenCV argc 和 argv 混淆

    我正在检查一些 OpenCV 教程 并在开头找到了这一行 这是链接 代码位于 CalcHist 部分下http opencv willowgarage com documentation c histograms html http ope
  • 如何在 Keras Lambda Layer 中使用 OpenCV 函数?

    我正在尝试使用一个在图像上使用某些 OpenCV 函数的函数 但我得到的数据是张量 我无法将其转换为图像 def image func img img cv2 cvtColor img cv2 COLOR BGR2YUV img cv2 r
  • python - opencv - 将像素从 bgr 转换为 hsv

    img cv2 imread example jpg img hsv cv2 cvtColor img cv2 COLOR BGR2HSV lower mask 0 10 lower red np array 0 50 50 upper r
  • ndk-build error.opencv2/core/core.hpp:没有这样的文件或目录

    我在 Android 中使用 OpenCV Nonfree 模块时遇到问题 我读了这个教程https sites google com site wghsite technical notes sift surf opencv androi
  • OpenCV 和 QT 之间的集成

    我对 QT 和 OpenCV 开发完全是新手 一般来说是 C 我想使用 OpenCV 开发一个应用程序并使用 Qt 创建其界面 我不明白的是 如何整合这两个部分 我的意思是 为了开发 java 我只使用 eclipse 它为我提供了 JFr

随机推荐

  • 如何获取属于某个进程的打开句柄的计数?

    您可以使用该程序流程浏览器 http technet microsoft com en us sysinternals bb896653查看正在运行的应用程序有多少个句柄 有没有办法用Delphi代码来获取这个数字 我有兴趣跟踪应用程序本身
  • 阻止特定 URL 进行测试的最佳方法是什么?

    我正在使用 Google Chrome 和 Fiddler 版本 4 4 观察一个网站 该页面正在使用 AJAX 来更新其数据 我想阻止特定的 URL 以测试如果它不起作用会发生什么 阻止 URL 最简单的方法是什么 你希望发生什么 转到自
  • Facebook 登录按钮:应用自定义样式

    我在使用新的 Facebook android sdk 4 时遇到了一个奇怪的问题 对于旧的 sdk 版本 我使用的是
  • self.__dict__.update(**kwargs) 的风格是好是坏?

    在 Python 中 假设我有一些类 Circle 它继承自 Shape Shape 需要 x 和 y 坐标 此外 Circle 需要半径 我希望能够通过执行类似的操作来初始化 Circle c Circle x 1 y 5 r 3 Cir
  • 通过 Excel VBA 保存并关闭 powerpoint

    下面的代码根据定义的名称创建多个图表 然后打开具有这些定义的名称的 powerpoint 文件并转储到图表中 除了最后一部分之外 一切都正常 保存并关闭文件 我已将尝试保存和关闭文件的尝试标记为绿色 任何帮助表示赞赏 Sub Slide19
  • 当我尝试转发电子邮件时,时事通讯无法隐藏 Gmail 上的响应内容

    我正在尝试写一份时事通讯 但当我测试时 我无法隐藏响应式内容GMail On Outlook and Yahoo一切正常 但如果我尝试转发电子邮件 隐藏的内容就会可见 我测试使用 putsmail https putsmail com gt
  • 使用 flash/flex 在客户端硬盘上下载/保存/写入文件

    我想知道如何下载 保存 写入文件我的服务器 to a 客户的计算机使用闪光灯或柔性 我正在寻找的示例可以在http www flexdownloads com http www flexdownloads com Sign up Sign
  • 在 3D 场景中实现“抓取”相机平移工具

    在我的场景中 我有想要 抓取 的地形 然后在移动光标时让相机平移 其高度 视图向量 视野等全部保持不变 因此 最初的 抓取 点将是世界空间中的工作点 我希望在拖动时该点保留在光标下方 我当前的解决方案是获取前一个和当前的屏幕点 取消投影它们
  • 按字符串子字符串的列过滤 Pandas 数据框

    我正在尝试使用列中的字符串值是数据框外部字符串的子字符串的条件来过滤数据框 下面的例子 df a b c hello bye hello reference str hello there output a c 一种方法可能是使用正则表达式
  • 排除 requirejs 模块中所有以 x 开头的内容

    I am 编译 将一些文件放入一个 requirejs 模块中 我有这样的配置 paths lib lib angular lib angular modules name myApp exclude lib jquery lib angu
  • Python 中嵌套列表的排序和分组

    我有以下数据结构 列表的列表 4 21 1 14 2008 10 24 15 42 58 3 22 4 2somename 2008 10 24 15 22 03 5 21 3 19 2008 10 24 15 45 45 6 21 1 1
  • 手动安装开放多语言世界网 (NLTK)

    我正在使用一台只能访问专用网络并且无法从命令行发送指令的计算机 因此 每当我必须安装 Python 包时 我都必须手动安装 我什至不能使用 Pypi 幸运的是 NLTK 允许我手动下载语料库 从here https www nltk org
  • 从 Orchard 中的食谱创建别名

    我想从配方创建以下别名 这是如何实现的 我创建了此类来为 Orchard 添加命令 以便从命令行或配方创建新别名 using Orchard using Orchard Alias using Orchard Commands using
  • 更改图像颜色与透明背景

    我需要使用 c System Drawings 将透明背景上带有绿色圆圈的图像加载到位图图像中 这是最简单的部分 但是 我需要在将其添加到更大的图像之前更改圆圈的颜色 而不影响周围的透明度 就我而言 我需要将圆圈颜色更改为黄色并将其添加为太
  • C++:字符串流有什么好处?

    谁能告诉我一些在 C 中使用字符串流的实际例子 即使用流插入和流提取运算符输入和输出到字符串流 您可以使用字符串流来转换任何实现operator lt lt 到一个字符串 include
  • Java 线程 JavaDoc

    我编写了一个只能在特定线程上调用的方法 是否应该将标准注释或注释添加到方法的 javadoc 中来表示这一点 不知道有任何这样的标准注释 Java 并发实践 http www javaconcurrencyinpractice com 在第
  • 自 Java 7 以来 HttpServer 延迟 1 秒

    我们正在使用内部HttpServer项目中的类 用于通过 HTTP 在客户端和服务器之间交换数据 当我们切换到 Java 7 时 我们意识到结果交付存在延迟 我们可以将问题简化为以下示例 Class EchoServer创建上下文 echo
  • ImageIO read() 和 write() 操作后 GIF 图像变得错误

    我有这个代码 它只是读取 GIF 文件 用背景重新绘制它 然后输出到新的 GIF 文件 问题是结果文件变得奇怪 我不知道为什么它的质量变得很差 JPG 文件不会出现此问题 如何修复它 import java awt Color import
  • jQuery AJAX“multipart/form-data”未发送数据?

    我不知道为什么我无法让 jQuery 传递上传数据 因为 AJAX 对象似乎已正确配置 并且正在发送正确的 Content Type MIME Type 标头 我尝试了两种不同形式的请求 一种是在文字中包含 FormData 对象 另一种是
  • opencv不失真图像有一个奇怪的圆圈

    我尝试使用 opencv 针孔模型来计算校准参数 然后使图像不失真 问题是 未失真的图像中有一个奇怪的圆圈 如下所示 代码 原始图像和结果图像是here https github com wennycooper A004 pinhole 任