OpenCV实现简易标定板的方法

  介绍

这篇文章给大家分享的是有关OpenCV实现简易标定板的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

本文实例为大家分享了OpenCV实现简易标定板的具体代码,供大家参考,具体内容如下

使用OpenCV生成标定板图片,然后找高精度打印机进行打印,贴在硬板上,就可以得到一个简易的标定板。

废话不多说,代码如下:

//编程环境:VS2013, X64 OpenCV3.0.0   # include  & lt; iostream>   # include  & lt; opencv2 \ \ core.hpp>核心;   # include  & lt; opencv2 \ opencv.hpp>   ,   using  namespace 性传播疾病;   using  namespace 简历;   ,   int  main () {,   ,,,,,,,//单位转换   ,int  dot_per_inch =, 96,,,//我的电脑是96 dpi (dot  per 英寸)   ,double  cm_to_inch =, 0.3937;//1厘米=0.3937英寸   2.54,double  inch_to_cm =,,,,,//1 inch =2.54厘米   1.0,double  inch_per_dot =,,/, 96.0;   ,   ,,,,,,,//自定义标定板   1.3,double  blockSize_cm =,,,//方格尺寸:边长1.3厘米的正方形   ,,,,,,,int  blockNum =, 8;,//8 * 8个方格   ,   ,   ,int  blockSize =, (int) (blockSize_cm /inch_to_cm  * dot_per_inch);   ,cout  & lt; & lt; blockSize  & lt; & lt;, endl;   ,   ,int  imageSize =, blockSize  *, blockNum;   ,cout  & lt; & lt; imageSize  & lt; & lt;, endl;   ,Mat 棋盘(图象尺寸,图象尺寸,还以为,CV_8UC3,标量::(0));   ,unsigned  char  color =, 0;   ,   ,for  (int 小姐:=,0;,小姐:& lt;,图象尺寸;,小姐:=,小姐:+,blockSize) {   时间=color 才能;~颜色;   for 才能;(int  j =, 0;, j  & lt;,图象尺寸;,j =, j  +, blockSize) {   ,,Mat  ROI =,棋盘(矩形(j,我还以为,blockSize, blockSize));   ,,ROI.setTo(标量:所有(颜色);   ,,color =, ~颜色;   ,,}   ,}   ,imshow (“Chess  board",,棋盘);   ,,,,,,,imwrite (“C: \ \ \ \用户ComputerName \ \ \ \图片chessBoard.jpg",棋盘);   ,cvWaitKey (3000);   ,,,,,,,return  0;   }

 OpenCV实现简易标定板的方法

<>强声明:代码红色部分是标定板生成的主要代码,参考的是别人的,具体出处找不到了。单位换算是我后来添加的,方便大家根据镜头视场生成合理的标定板。

感谢各位的阅读!关于“OpenCV实现简易标定板的方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

OpenCV实现简易标定板的方法