首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可以加快findChessboardCorners的速度吗?

可以加快findChessboardCorners的速度吗?
EN

Stack Overflow用户
提问于 2018-02-21 02:52:19
回答 1查看 3.9K关注 0票数 0

我找到了这篇文章OpenCV findChessboardCorners very slow,但它没有完全回答我的问题。

我在一台覆盆子pi上运行了一个相机校准工具,它需要大量的时间来检测全分辨率图像中的棋盘角落。我目前对它们进行了重新缩放,但计算出的参数不能用于全尺寸图像。

我在想的一件事是在小4倍的图像中检测角点,然后将角点坐标乘以4,但我得到的结果并不完全相同。

你认为有没有一种方法可以加速或插入另一个角点检测?

我使用的是python实现(cv2)

谢谢

EN

回答 1

Stack Overflow用户

发布于 2018-02-23 01:48:49

大部分时间花在棋盘提取上,这包括(粗略地说)三个步骤:检测图像中的棋盘角点,将它们细化到亚像素分辨率,并将它们与标称棋盘进行匹配。

在这三个步骤中,第一步是最昂贵的,因为它涉及到处理整个图像。因此,您可以通过检测角点并匹配较低分辨率的棋盘(使用cv2.findChessboardCorners)来获得一些时间。然后,您可以将它们的坐标重新缩放到全分辨率,并对它们进行亚像素细化(cv2.find4QuadCornersSubpix)以获得更高的精度。优化例程在检测到的角落周围的小区域上工作,因此它需要的内存要少得多-这在处理缓存大小有限的CPU时很有帮助。

由于其他原因,此过程也很有帮助,请参见this other answer

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48892301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档