更强大的棋盘检测,类似于libcbdetect的算法

checkerboard的Python项目详细描述


棋盘格

PyPI versionGitHub license

在python中,除了opencv之外,我找不到任何能可靠地找到棋盘格的库。 然而,opencv的棋盘在棋盘有些模糊或旋转时往往会失败。

因此,这个图书馆诞生了。它可能比opencv稍慢,但它将find那个棋盘格。

opencv与这个库的比较(opencv在左边,棋盘在右边): comparison

快速启动

您可以通过pip轻松安装棋盘格:

pip install checkerboard

然后,您可以继续检测这样的棋盘格:

fromcheckerboardimportdetect_checkerboardsize=(9,6)# size of checkerboardimage=...# obtain checkerboardcorners,score=detect_checkerboard(image,size)

返回的corners格式与 findChessboardCorners来自opencv的函数,已计算 达到亚像素精度。

返回的score是棋盘格质量的度量 检测。一个完美的棋盘会有0分, 而一个糟糕的检测结果是1分。

参考文献

棋盘检测的实现主要基于libcbdetect 以及随附文件:

@INPROCEEDINGS{Geiger2012ICRA,
  author = {Andreas Geiger and Frank Moosmann and Oemer Car and Bernhard Schuster},
  title = {Automatic Calibration of Range and Camera Sensors using a single Shot},
  booktitle = {International Conference on Robotics and Automation (ICRA)},
  year = {2012}
} 

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java对多个for循环使用一个整数有什么好处?   要求的Java枚举错误返回类型   使用AOP的Java Spring MVC CSRF令牌   PHP ZF2中的java 安卓登录按钮和远程web登录   java将双精度转换为整数转换为字符串,并在TxtField CodeNameOne中输出   java代码不断向后向数组中输入值   如何使用Java获取git信息?   当使用DateUtils类的parseDateStructive()方法时,java异常无法解析日期   java执行示例Flink kafka consummer   java触发REST调用时无法解释某些汉字   java错误:不兼容的类型:<null>如果使用安卓 room(!\u cursor.isNull(null))则无法转换为int   java Spring引导构建正常,但Heroku部署失败   我无法使用ORMLite库在java(安卓)中执行“WITH RECURSIVE”子句   java JavaFX图像加载错误