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

怎么用 c文件做网站重庆网站建设专家

怎么用 c文件做网站,重庆网站建设专家,wordpress 收费下载,万网网站建设流程上次介绍了calibrateCamera()接口参数#xff0c;这次实际调用。 程序中所用标准标定板。 一、图片预处理 使用的图片原像素是3072*2048#xff0c;即600万像素#xff0c;处理起来不快#xff1b;改成了560*420#xff0c;即20万像素。调用opencv接口如下#xff1a; //… 上次介绍了calibrateCamera()接口参数这次实际调用。 程序中所用标准标定板。 一、图片预处理 使用的图片原像素是3072*2048即600万像素处理起来不快改成了560*420即20万像素。调用opencv接口如下 // 最小分辨率560x420像素Size dsize Size(560, 420);Mat shrink;resize(img, shrink, dsize, 0, 0, INTER_AREA);//保存stringstream str;str ../opencv_/data/pic/11 .png;imwrite(str.str(), shrink); 二、相机标定流程 主要是objectPoints世界坐标系中的点。使用标准棋盘传入的是交叉点(不包括边角)的实际坐标以物理实际尺度(如mm)为单位。写坐标时保证z轴为0按照先x变化后y变化从小到大的顺序来写。如果网格尺寸为12.5毫米写作(0,0,0),(12.5,0,0), (25,0,0)...     ①读取图片找到角点对粗角点精确化 cv::imread(pic) cv::findCirclesGrid() cv::find4QuadCornerSubpix() ②设置棋盘三维物理坐标 我使用的是标准圆网格7*749个。 ③调用calibrateCamera()接口 程序如下  程序中cv::Size2f(12.5,12.5)是两圆的中心距。   std::vector imagePointBuf; /* 缓存每幅图像上检测到的角点 */ std::vector imagePointSeq; /* 保存检测到的所有角点 */ int imageCount0; /* 图像数量 */cv::Size boardSize cv::Size(7,7); /* 标定板上每行、列的角点数 */cv::Size imageSize; /* 图像的尺寸 */for(int i1; i12; i){std::string pic(../CalibrateCamera/data/pic/ std::to_string(i) .png );cv::Mat imageInput cv::imread(pic);//cv::findChessboardCorners(imageInput,boardSize,imagePointBuf);bool ret cv::findCirclesGrid(imageInput,boardSize,imagePointBuf); if(true ret){qDebug() findChessboardCorners success i;imageCount;if (1 imageCount) {imageSize.width imageInput.cols;imageSize.height imageInput.rows;} cv::Mat viewGray; // cv::cvtColor(imageInput,viewGray,CV_BGR2GRAY);cv::cvtColor(imageInput,viewGray,cv::COLOR_BGR2GRAY);/* 亚像素精确化 */cv::find4QuadCornerSubpix(viewGray,imagePointBuf,cv::Size(7,7)); //对粗提取的角点进行精确化imagePointSeq.push_back(imagePointBuf); //保存亚像素角点// cv::drawChessboardCorners(imageInput, boardSize, imagePointBuf, true); // cv::imshow(Camera Calibration,viewGray);//显示图片}else{qDebug() findChessboardCorners failed i;}}qDebug() 角点提取完成\n;//以下是摄像机标定qDebug() 开始标定………………;/*棋盘三维信息 mm*/cv::Size2f squareSize cv::Size2f(12.5,12.5); /* 实际测量得到的标定板上每个棋盘格的大小 */ std::vector std::vector objectPoints; /* 保存标定板上角点的三维坐标 */ /*内外参数*/cv::Mat cameraMatrix cv::Mat(3,3,CV_32FC1,cv::Scalar::all(0)); /* 摄像机内参数矩阵 */std::vector pointCounts; // 每幅图像中角点的数量cv::Mat distCoeffs cv::Mat(1,5,CV_32FC1,cv::Scalar::all(0)); /* 摄像机的5个畸变系数k1,k2,p1,p2,k3 */std::vector rotateMat; /* 每幅图像的旋转向量 */std::vector transMat; /* 每幅图像的平移向量 */ int i,j,t;for (t0;tstd::vector tempPointSet;for (i0;i boardSize.height;i){ span /boardSize.height;i){for (j0;j boardSize.width;j){ span /boardSize.width;j){cv::Point3f realPoint;/* 假设标定板放在世界坐标系中z0的平面上 */realPoint.x i*squareSize.width;realPoint.y j*squareSize.height;realPoint.z 0;tempPointSet.push_back(realPoint);}}objectPoints.push_back(tempPointSet);}/* 初始化每幅图像中的角点数量假定每幅图像中都可以看到完整的标定板 */for (i0;i imageCount;i){ span /imageCount;i){pointCounts.push_back(boardSize.width*boardSize.height);}/* 开始标定 */ cv::calibrateCamera(objectPoints, imagePointSeq, imageSize,cameraMatrix, distCoeffs, rotateMat, transMat, 0);qDebug() 标定完成\n;     未完待续...... 5_相机标定_1_标定板选取与角点绘制 5_相机标定2_calibrateCamera()与内外参         如需修改像素程序可在后台留言“修改图片像素”.
http://www.zqtcl.cn/news/216426/

相关文章:

  • 建设部人才交流中心网站wordpress theauthor
  • 物联网网站开发公司比较还做的调查网站
  • 网站建设教程 冰美人视频全国网站建设排名
  • 对网站策划的看法公司宣传册设计与制作图片
  • 手机医疗网站网站模板的制作怎么做
  • 那种投票网站里面怎么做百度浏览器网站入口
  • 宁波城乡建设局网站有专门做面包的网站么
  • 网站推广方法及特点网站添加内容
  • c2c网站怎么做网页模板布局
  • 知果果网站谁做的房产信息网显示已签约
  • 高校学风建设专栏网站亿速云
  • iis 发布asp网站代码编程入门
  • 游戏的网站策划应该怎么做微信小程序开发300元
  • 网站关键词优化怎么弄做网站找哪家最好
  • 提供零基础网站建设教学网站做302重定向
  • 无锡网站推广外包服务页面设计参评
  • 班级网站设计素材有没有专业做盐的网站
  • 免费做旅游海报的网站深圳网站建设公司哪里有
  • 制作网站空间域名哈尔滨网站建设 博客
  • 如何做搞笑的视频视频网站五合一网站建设方案
  • 百怎么做网站经典传奇网页游戏
  • 国外网站设计案例做淘宝客网站能有效果吗
  • 做网站商城需要什么建立一个企业网站
  • 住房城乡建设厅网站wordpress外链视频播放
  • 中国建设银行网站开通短信企业搭建自己的网站
  • 苏州网站维护云梦县城乡建设局网站
  • 分类信息导航网站模板建设银行网站每天几点更新
  • 百度竞价排名规则及费用seo怎么做整站排名
  • 网站免费模板资源商标设计一般多少钱
  • 视频微网站开发谷歌怎么做网站推广