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

flashfxp 上传网站模板之家官网中文

flashfxp 上传网站,模板之家官网中文,免费手机端网站模板,网络舆情分析师证书opencv-rust 系列2: camera_calibration 前言: 这里只是opencv-rust自带示例的中文注解. 略微增加了一些代码也是我在调试时用到的. 说明: camera_calibration.rs是opencv-rust自带的示例, 在examples目录中可以找到,我增加了一些中文注释如下.如需运行可以在项目根目录执行命…opencv-rust 系列2: camera_calibration 前言: 这里只是opencv-rust自带示例的中文注解. 略微增加了一些代码也是我在调试时用到的. 说明: camera_calibration.rs是opencv-rust自带的示例, 在examples目录中可以找到,我增加了一些中文注释如下.如需运行可以在项目根目录执行命令: cargo run --example camera_calibration在vscode软件内点击main函数上方绿色三角Run运行程序时, 当前位置是项目的根目录.在命令行使用cargo run运行程序时, 当前位置是命令行所处目录.为了保持统一,我使用项目根目录为当前目录设定, 所以运行本程序一定要在项目根目录.使用highgui::imshow(Source, img)?;显示窗口时不要使用中文!!! 建议 opencv 程序都不要使用中文.文末贴两张图,你可以下载后以jpg后缀名保存到./examples/data目录,以供程序运行使用.当然,Cargo.toml中需包含: [dependencies] opencv 0.93.1源代码如下: //! Port of code from the tutorial at: https://docs.opencv.org/4.x/dc/dbb/tutorial_py_calibration.htmluse std::error::Error; use std::fs; use opencv::core::{no_array, Point2f, Point3f, Size, TermCriteria, TermCriteria_EPS, TermCriteria_MAX_ITER, Vector}; use opencv::prelude::*; use opencv::{calib3d, highgui, imgcodecs, imgproc}; use std::env;fn main() - Result(), Boxdyn Error {// 获取当前工作目录let current_dir env::current_dir().expect(无法获取当前目录);// 打印当前工作目录的路径println!(当前路径: {}, current_dir.display());// 设置校准的终止条件包括最大迭代次数和最小精度let criteria TermCriteria {typ: TermCriteria_EPS TermCriteria_MAX_ITER, // 终止条件类型max_count: 30, // 最大迭代次数epsilon: 0.001, // 精度阈值};// 准备三维世界中的物体点例如棋盘格的角点, like (0,0,0), (1,0,0), (2,0,0) ....,(6,5,0)let objp_len 6 * 7; // 棋盘格的尺寸为6x7let objp Vector::from_iter((0..objp_len).map(|i| Point3f::new((i % 7) as f32, // x坐标(i / 7) as f32, // y坐标0.))); // z坐标假设棋盘格位于z0的平面上// 读取当前目录下所有.jpg文件let images fs::read_dir(./examples/data)?.into_iter().flatten().filter(|entry| entry.path().extension().map_or(false, |ext| ext jpg));//对每张图片进行校正for image in images {// 初始化用于存储所有图像的物体点和图像点的数组let mut objpoints Vector::VectorPoint3f::new(); // 三维世界中的点let mut imgpoints Vector::VectorPoint2f::new(); // 图像平面中的点// 读取原始图像并显示 println!(准备读取图片: {}, image.path().to_string_lossy());let mut img imgcodecs::imread_def(image.path().to_string_lossy().as_ref())?; highgui::imshow(Origin, img)?;highgui::wait_key(5000)?;let mut gray Mat::default();// 将图像转换为灰度图imgproc::cvt_color_def(img, mut gray, imgproc::COLOR_BGR2GRAY)?;let mut corners Vector::Point2f::default();// 在灰度图中查找棋盘格角点let ret calib3d::find_chessboard_corners_def(gray, Size::new(7, 6), mut corners)?;if ret {println!(找到角点, 正在对该图校正);// 如果找到了角点将其添加到物体点数组objpoints.push(objp.clone()); // 使用亚像素级精度细化角点位置imgproc::corner_sub_pix(gray, mut corners, Size::new(11, 11), Size::new(-1, -1), criteria)?;// 在图像上绘制角点并显示calib3d::draw_chessboard_corners(mut img, Size::new(7, 6), corners, ret)?;highgui::imshow(Source, img)?;// 将角点添加到图像点数组imgpoints.push(corners);// 相机校准let mut mtx Mat::default(); // 相机内参矩阵let mut dist Mat::default(); // 畸变系数let mut rvecs Vector::Mat::new(); // 旋转向量let mut tvecs Vector::Mat::new(); // 平移向量calib3d::calibrate_camera_def(objpoints,imgpoints,gray.size()?,mut mtx,mut dist,mut rvecs,mut tvecs,)?;//下面使用两种方法去除图像的畸变// 方法1,使用cv.undistort()去除图像畸变let mut dst_undistort Mat::default();calib3d::undistort_def(img, mut dst_undistort, mtx, dist)?;highgui::imshow(Result using undistort, dst_undistort)?;// 方法2,使用remapping方法去除图像畸变let mut mapx Mat::default();let mut mapy Mat::default();calib3d::init_undistort_rectify_map(mtx,dist,no_array(),no_array(),img.size()?,f32::opencv_type(),mut mapx,mut mapy,)?;let mut dst_remap Mat::default();imgproc::remap_def(img, mut dst_remap, mapx, mapy, imgproc::INTER_LINEAR)?;// 显示使用remap方法去畸变后的结果highgui::imshow(Result using remap, dst_undistort)?;// 等待按键然后继续处理下一张图像highgui::wait_key_def()?;}else {println!(没有找到角点, 该图不能进行校正);}}// 销毁所有OpenCV创建的窗口highgui::destroy_all_windows()?;Ok(()) }
http://www.yayakq.cn/news/3738/

相关文章:

  • 广州住房和城乡建设部网站建设网站教程全集
  • 哪个网站可以做图片多个网站 备案
  • 东阿网站建设公司亿星网站建设
  • 聊城网站建设推广wordpress搭建视频
  • 开源镜像网站怎么做网页视频下载ios
  • 怎么建设网站最便宜公司网站简介怎么做
  • 云南省文山州网站建设怎么在网上卖东西?
  • 武进网站建设市场艺术字体在线生成器毛笔字
  • 云南建网站需要多少钱网站制作的方法
  • 杭州网站开发企业企业建设网站的主要目的有哪些
  • 有的网站为什么打不开怎么回事建网站需要多少钱选苏州聚尚网络
  • 设计做的好看的网站有哪些如何制作一个企业网站
  • 网站的统计代码网站在线咨询模块
  • 网页和网站淄博网站制作定制优化
  • 网站建设合同司法解释深圳全网营销方案
  • 国外红色企业网站php网站上做微信支付功能
  • 网站建设研究学生管理系统网站
  • 校园网站建设考评办法公司简介英语作文
  • 如何搭建一个视频网站wordpress允许作者上传媒体
  • 网站首页排名下降国外域名免费注册
  • 文化类网站的前置审批wordpress本地搭建
  • o2o网站 方案潍坊最新消息
  • 免费个人网站建站源码中国十大热门网站排名
  • 网站域名需要续费的吗百度制作网站
  • 手机网站常用代码怎么用个人电脑做网站
  • vue网站引导页怎么做推广策略包括哪些方面
  • 网站建设类织梦模板云南创网科技有限公司
  • 天津河东网站建设公司国内看网站 优帮云
  • 网站模板交易关于seo的行业岗位有哪些
  • 西安网站建设最新案例甘肃省 网站建设 审批