当前位置: 首页 > news >正文

cv.drawChessboardCorners 是 OpenCV 中用于可视化棋盘格角点检测

cv.drawChessboardCorners 是 OpenCV 中用于可视化棋盘格角点检测

cv.drawChessboardCorners 是 OpenCV 中用于可视化棋盘格角点检测结果的核心函数,常配合 cv.findChessboardCorners 使用,主要用于相机标定、立体视觉等场景的结果验证。

函数基本信息

函数原型(Python 版)

cv.drawChessboardCorners(image, patternSize, corners, patternWasFound) → image

参数说明

返回值

绘制了角点的图像(与输入 image 是同一对象,原地修改)。

核心功能

完整检测到角点:绘制所有角点,并连接成棋盘格网格(彩色线条);
未完整检测到角点:仅绘制检测到的零散角点(无网格);
角点以红色小圆点标记,网格以彩色线条连接(便于直观验证检测效果)。

使用步骤(完整示例)

完整代码(棋盘格角点检测 + 可视化)
# -*- coding:utf-8 -*-importcv2 as cvimportsysif__name__=='__main__':# 读取图像image1=cv.imread('./images/test01.jpg')image2=cv.imread('./images/test02.png')ifimage1 is None or image2 is None: print('Failed to read test01.jpg or test02.png.')sys.exit()# 转为灰度图像gray1=cv.cvtColor(image1, cv.COLOR_BGR2GRAY)gray2=cv.cvtColor(image2, cv.COLOR_BGR2GRAY)# 定义数目尺寸board_size1=(9,6)board_size2=(7,7)# 检测角点_, points1=cv.findChessboardCorners(gray1, board_size1)_, points2=cv.findCirclesGrid(gray2, board_size2)# 细化角点坐标_, points1=cv.find4QuadCornerSubpix(gray1, points1,(5,5))_, points2=cv.find4QuadCornerSubpix(gray2, points2,(5,5))# 绘制角点检测结果image1=cv.drawChessboardCorners(image1, board_size1, points1, True)image2=cv.drawChessboardCorners(image2, board_size2, points2, True)# 展示结果cv.imshow('Square Result', image1)cv.imshow('Circle Result', image2)cv.waitKey(0)cv.destroyAllWindows()

关键说明

棋盘格准备:需使用黑白相间的棋盘格(如 9x6 内角点对应 10x7 个方格);
亚像素细化:cv.cornerSubPix 是可选步骤,但能大幅提升角点坐标精度(对相机标定至关重要);
检测失败处理:若 ret=False,说明未完整检测到所有角点,需检查图像(如光照、棋盘格完整性)。

常见问题与解决方案

扩展应用

cv.drawChessboardCorners 常与相机标定流程结合:
检测多张棋盘格图像的角点;
用 cv.calibrateCamera 计算内参 / 外参;
用 cv.undistort 校正图像畸变;
绘制角点验证标定结果的准确性。
如果需要相机标定的完整代码示例,可以补充说明,我会进一步完善。

http://www.jsqmd.com/news/134598/

相关文章:

  • 2025年回顾:CIO直面业务与技术双重需求挑战
  • 2025年12月成都婚纱照推荐榜:川西/中式大婚/目的地婚礼/微电影/旅拍婚纱照、婚纱照套餐、微电影/旅拍/目的地/中式大婚婚前影像,喜影社解锁川西浪漫,婚前影像与婚纱照的品质之选 - 海棠依旧大
  • Open-AutoGLM点咖啡到底有多智能?:三大场景验证其真实能力
  • 黑暗视物不再难!机器学习赋能红外技术,机器人无光环境精准作业
  • 事件型报文
  • 【Java毕设源码分享】基于springboot+vue的的幼儿园兴趣班报名管理系统设计与实现(程序+文档+代码讲解+一条龙定制)
  • 提示工程架构师必知:AI提示设计的常见挑战与对策
  • 线程池异步化技巧
  • 2025年12月电容式接近开关,国产替代接近开关,接近开关公司推荐:行业测评与选择指南 - 品牌鉴赏师
  • 2026年QBY3/QBK气动隔膜泵厂家推荐:精选质量可靠品牌 - 品牌推荐大师1
  • 全球汽车后装远程信息服务订阅量突破9000万大关
  • 2025年热门的涤氨混纺四方立绒实力厂家TOP推荐榜 - 品牌宣传支持者
  • 2025全域GEO优化价值深耕:核心服务商选型指南与能力拆解 - 品牌推荐排行榜
  • GitHub上发现近乎完美的免费大模型课程!科学家+工程师双路径学习路线,附带实战Notebook,小白/程序员必收藏!
  • 编辑器分发RTSP地址接入到视频汇聚平台EasyCVR离线原因排查
  • C++学习笔记 38 基准测试
  • 三菱FX PLC组态下的五层电梯智能控制系统方案
  • 邮件系统反滥用机制设计与实现
  • 可解释AI门槛大降!曼大LLM控制技术资源需求削减90%+,LangVAE框架加速可信AI落地
  • 全域精准赋能:2025年末GEO优化服务商甄选指南与核心能力解析 - 品牌推荐排行榜
  • 2025年12月济南国际婴幼园推荐榜:济南/东部国际婴幼园/历下东部送托/小月龄托育/国际托育中心/专业师资托育/高知家庭托育,比查尔德领衔高品质托育,解锁安心之选 - 海棠依旧大
  • 局域网内部邮件服务器搭建方法 - U-Mail邮件系统
  • Open-AutoGLM免root部署完全手册(从Docker到沙箱隔离的4种方案)
  • 最近一个thinkphp项目首页总是跳转到一个国外垃圾网址,怎么处理?
  • 【Open-AutoGLM网页操作全指南】:手把手教你快速上手AI自动化建模
  • 2025年比较好的电视柜缓冲铰链/二段力缓冲铰链厂家最新权威推荐排行榜 - 品牌宣传支持者
  • 2025 年面试复盘大全 500 道:Redis+ZK+Nginx+ 数据库 + 分布式 + 微服务
  • 蓝队必读:HW行动安全防护指南
  • 5000万欧元助力欧洲工业转型!EIB与Comau达成融资协议,聚焦机器人与自动化研发
  • -2025.12.9