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

怎样仿制网站抚州网络推广

怎样仿制网站,抚州网络推广,上海关键词优化公司哪家好,做旅游网站课程设计报告#鱼眼模型参考链接 本文假设去畸变后的图像与原图大小一样大。由于去畸变后的图像符合针孔投影模型,因此不同的去畸变焦距得到不同的视场大小,且物体的分辨率也不同。可以见上图,当焦距缩小为一半时,相同大小的图像(横…

#鱼眼模型参考链接

在这里插入图片描述
本文假设去畸变后的图像与原图大小一样大。由于去畸变后的图像符合针孔投影模型,因此不同的去畸变焦距得到不同的视场大小,且物体的分辨率也不同。可以见上图,当焦距缩小为一半时,相同大小的图像(横向投影距离一样长),对应的视场角不同。所以为了扩大视野,需要缩小焦距,作为相机坐标系到去畸变图像的投影内参焦距。

理论方面不再多说,直接上代码:

C++ 版本

#include <opencv2/opencv.hpp>
#include <string>
#include <math.h>
using namespace std;//图像去畸变部分///
int main(){cv::Size img_sizea;std::string image_file = "test.jpeg";cv::Mat src = cv::imread(image_file);cv::Mat distortiona(img_sizea,CV_8UC3);// 内参cv::Mat camera_matrixa = (cv::Mat_<double>(3, 3) << 5.4108215568312232e+02, 0.0, 1.0318237337253406e+03, 0, 5.4083086444334469e+02, 1.0225293088570558e+03, 0, 0, 1);cv::Mat distortion_coefficientsa=(cv::Mat_<double >(1,4)<<1.0926628389307196e-01,-6.5713320780575097e-04,8.4866561354316559e-03,-4.2045330300667406e-03);cv::Mat  new_intrinsic_mat(3, 3, CV_64FC1, cv::Scalar(0));camera_matrixa.copyTo(new_intrinsic_mat);//调整输出校正图的视场new_intrinsic_mat.at<double>(0, 0) *= 0.4;      //注意数据类型,非常重要new_intrinsic_mat.at<double>(1, 1) *= 0.4; //调整输出校正图的中心new_intrinsic_mat.at<double>(0, 2) *= 1.0;   new_intrinsic_mat.at<double>(1, 2) *= 1.0;// new_intrinsic_mat.at<double>(0, 2) += 0.0;   // new_intrinsic_mat.at<double>(1, 2) += 0.0;cv::fisheye::undistortImage(src, distortiona, camera_matrixa, distortion_coefficientsa, new_intrinsic_mat);cv::resize(distortiona, distortiona, cv::Size(1024,1024));cv::imshow("undistort", distortiona);cv::waitKey(0);imwrite("undistort.jpg", distortiona);
return 0;
}

Python 版本

import cv2 as cv
import numpy as npdef fisheye_undistortion(img, K, D, fs):#一定要使用copy,作为不同的变量newK = K.copy()#调整输出校正图的视场newK[0][0] = fs * newK[0][0]newK[1][1] = fs * newK[1][1]#调整输出校正图的中心newK[0][2] = 1.0 * newK[0][2]newK[1][2] = 1.0 * newK[1][2]undis_img = cv.fisheye.undistortImage(img, K, D, None, newK)return  undis_img, newKdef camera2undistortionimg(camera_point, newK):x = camera_point[0] / camera_point[2]y = camera_point[1] / camera_point[2]u = x * newK[0][0] + newK[0][2]v = y * newK[1][1] + newK[1][2]return [u, v]#内参
K = np.array([[5.4108215568312232e+02, 0.0, 1.0318237337253406e+03],[0, 5.4083086444334469e+02, 1.0225293088570558e+03],[0, 0, 1]], dtype=np.float32)
#畸变系数
D = np.array([[1.0926628389307196e-01],[-6.5713320780575097e-04],[8.4866561354316559e-03],[-4.2045330300667406e-03]], dtype=np.float32)#读取图像
srcimg = cv.imread("./test.jpeg")#去畸变
fs = 0.4 #焦距比例控制,控制视场大小
undis_img, newK = fisheye_undistortion(srcimg, K, D, fs)
print(newK)
#相机到去畸变图像映射
camera_p = (-20, 20, 6)
[u, v] = camera2undistortionimg(camera_p, newK)
print([u, v])
#显示验证
cv.circle(undis_img,(int(u), int(v)), 10, (0,0,255), -1)
undis_img = cv.resize(undis_img,(1024, 1024))
cv.imshow("undis_img",undis_img)
cv.waitKey(0)
http://www.mmbaike.com/news/103467.html

相关文章:

  • 大连建设银行官网招聘网站怎么样推广自己的公司
  • 个人网站建设基本流程注册查询网站
  • 用网站模板建网站网络公司
  • 中央经济工作会议2021解读夫唯seo培训
  • 门户网站的案例分析山西seo关键词优化软件搜索
  • 济南网站建设 选聚搜网络查淘宝关键词排名软件
  • dedecms采集规则各类网站免费拓客软件排行榜
  • 怎么减少wordpress网站cpu占用百度seo搜索引擎优化培训
  • 网站美工工作步骤是什么5118营销大数据
  • 滨海县做网站注册淘宝小程序社群营销怎么做
  • 广州文化网站模板万网域名查询注册商
  • 政府网站信息公开建设要求南宁百度推广seo
  • 织梦网站栏目建设app下载注册量推广平台
  • 电脑软件下载官方网站举例说明什么是seo
  • 摄影师个人网站怎么做二级域名和一级域名优化难度
  • 个人主体可以做网站吗产品软文范例500字
  • 郓城做网站公司seo软件代理
  • 网站建设教程书籍如何创造一个自己的网站
  • 有了页游源代码如何做网站公司网页制作流程
  • 算卦网站哪里可以做网络销售工资一般多少
  • 网站 制作 中心百度投诉中心电话
  • 动态网页怎么做上海seo搜索优化
  • 合肥做企业网站的网络公司沈阳网络营销推广的公司
  • seo电商考拉seo
  • 做网站用的pm是啥推广策划方案模板
  • 什么是网站的功能模块种子库
  • 让别人做网站需要提供什么 百度一下
  • 做百度糯米网站的团队外国人b站
  • 四川省住房和城乡建设厅新网站线上教育培训机构十大排名
  • 东莞微信网站建设重庆百度竞价开户