在图像的算法处理里,经常要使用一些标准的图像来做测试,比如棋盘图像就是其中之一,它经常使用来测试一些噪声、摄像头校准等等。下面就来使用OpenCV来生成一些棋盘图像,如果你想生成文件,直接使用前面的保存函数就可以了。整个代码如下:

#python 3.7.4,opencv4.1
#蔡军生 https://blog.csdn.net/caimouse/article/details/51749579
#
import numpy as np
import cv2
from matplotlib import pyplot as plt#棋盘生成
def generate_checkerboard(rows_num, columns_num, block_size, base_color):block_size = block_size * 4image_width = block_size * columns_numimage_height = block_size * rows_numinv_color = tuple(255 - val for val in base_color),checker_board = np.zeros((image_height, image_width, 3), np.uint8)color_row = 0color_column = 0for i in range(0, image_height, block_size):color_row = not color_rowcolor_column = color_rowfor j in range(0, image_width, block_size):checker_

在OpenCV里实现棋盘生成相关推荐

  1. python直角坐标转极坐标_Python在OpenCV里实现极坐标变换功能

    在中学里学习过直角坐标系,也叫做笛卡尔坐标系,它是正交坐标系,不过也学习过极坐标系,这种坐标系比较适合大炮发射的场合.极坐标系的定义如下: 在 平面内取一个定点O, 叫极点,引一条射线Ox,叫做极轴, ...

  2. 处理opencv里用plt显示imread读取图像偏色问题

    处理opencv里用plt显示imread读取图像偏色问题 摘要 代码 看看结果: 原因: 解决方法: 看看结果 摘要 使用opecv过程中经常需要使用plt输出图片作为前后对比,方便观察. 但是会出 ...

  3. OpenCV用方形棋盘进行相机校准

    OpenCV用方形棋盘进行相机校准 用方形棋盘进行相机校准 姿势估计 用方形棋盘进行相机校准 本教程的目的是学习在给定一组棋盘图像的情况下如何校准相机. 测试数据:使用data / chess文件夹中 ...

  4. Angular应用页面里appId的生成逻辑和位置

    DomRendererFactory2类的构造函数里,看到三个输入参数.我们感兴趣的是,appId这个三位随机字符,是如何生成的. 前面这个classRef是DomRendererFactory2的构 ...

  5. 彩色图片在OpenCV里的表示方式

    前面了解了灰度图片在python里的表示方式,也是图片的数据结构,它是采用numpy的ndarray来存储,是一个二维的数据结构.那么彩色图片是怎么样表示呢?难道也是采用二维数组吗?在理解表示方式之前 ...

  6. OpenCV里的常用Rect用法

    OpenCV里通常定义一个矩形有两种方式,一种是通过矩形左上角和矩形宽高来定义: Rect_ (_Tp _x, _Tp _y, _Tp _width, _Tp _height) 另一种是通过矩形左上角 ...

  7. 在OpenCV里用fillPoly填充多边形

    前面学习过fillConvexPoly函数,这个函数是用来填充凸多边形的,但在OpenCV里还添加了fillPoly函数,这个函数与fillConvexPoly函数有什么差别呢?一般来说,fillPo ...

  8. 在OpenCV里实现游戏外挂的位置识别

    前面学习过模板识别的函数,也演示过它的使用,但是还是不少学生来问我能不能用它来开发游戏的外挂,我的回答应该是肯定的.因为游戏是一种图形的展示,使用窗口的方法来识别已经不可能,根据位置识别只能固定的目标 ...

  9. 在OpenCV里使用机器学习库sklearn 实现手写数字识别1

    前面学习过KNN的方式来实现手写数字识别,不过效果一般,那么有没有别的方法来试一试,或许可以改进一点呢.在本文里将要介绍使用SVM和HOG的方式来实现手写数字识别,比如最终结果如下图: 在这个例子里与 ...

最新文章

  1. 出现java.lang.IllegalArgumentException异常
  2. DataLoader 与 Dataset
  3. WinAPI: GetWindow - 获取与指定窗口具有指定关系的窗口的句柄
  4. 51单片机(STC89C52RC) lcd1602实验小结
  5. js reduce实现中间件_MapReduce 模型
  6. JSP页面元素-新手向
  7. 在python中sqrt是什么意思_python中sqrt是什么意思
  8. 支付宝相关信息会被泄露出去吗?
  9. 多级队列调度算法可视化界面_多级反馈队列调度算法
  10. [转]使用Microsoft Web Application Stress Tool对web进行压力测试
  11. 十五、Oracle学习笔记:序列(用于表字段值自增)
  12. Hadoop集群搭建及配置⑥ —— Hadoop组件安装及配置
  13. 锐捷设备AC旁挂核心交换机①
  14. python flask用户权限管理 接口访问权限思路
  15. SQL数据库的存错过程中output用法
  16. 一个出生偏远山区挨个饿90后的触景生情
  17. python爬取微博非好友圈_python爬取微博好友圈信息
  18. python多线程实现访问页面升级_python使用多线程不断刷新网页的方法
  19. Life, Art, and Mysticism | Vita, arte e mistica | 布劳威尔 生活艺术和神秘主义翻译,第一章 | I - The sad world
  20. k8s 一键安装Kubernetes集群

热门文章

  1. 计算机5个函数,计算机常用函数表(5页)-原创力文档
  2. 微信小程序开发之——Dialog弹窗
  3. 《全民小镇》UI资源
  4. qdialog 返回值_Qt对话框QDialog
  5. linux 目录偏移,linux C复习:文件操作(偏移量)
  6. qdialog 返回值_qt - QDialog :: exec()的返回值始终是QDialog :: Rejected - 堆栈内存溢出...
  7. String中的split(,)和split(,,-1)的区别
  8. python 打开文件4种方式
  9. 获取java应用PID的几种方式
  10. 彼所游兮鸿蒙太空,实用英语表达:“剃度出家”怎么说