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

东山网站建设外国酷炫网站

东山网站建设,外国酷炫网站,网站开发在线,做公司网站客户群体怎么找目录 枕形畸变和去枕形畸变 去枕形畸变失败 枕形畸变和去枕形畸变 import cv2 import numpy as np import matplotlib.pyplot as plt# 创建一个带网格的原始图像 def create_grid(image_size512, grid_size20):image np.zeros((image_size, image_size, 3), dtypenp.uint8)…

目录

枕形畸变和去枕形畸变

去枕形畸变失败


枕形畸变和去枕形畸变

import cv2
import numpy as np
import matplotlib.pyplot as plt# 创建一个带网格的原始图像
def create_grid(image_size=512, grid_size=20):image = np.zeros((image_size, image_size, 3), dtype=np.uint8)for i in range(0, image_size, grid_size):cv2.line(image, (i, 0), (i, image_size), (255, 255, 255), 1)cv2.line(image, (0, i), (image_size, i), (255, 255, 255), 1)return image# 应用枕形畸变
def apply_pincushion_distortion(image, k1=0.05):image_size = image.shape[0]fx, fy = image_size * 1.0, image_size * 1.0cx, cy = image_size / 2, image_size / 2camera_matrix = np.array([[fx, 0, cx], [0, fy, cy], [0, 0, 1]])dist_coeffs = np.array([k1, 0, 0, 0, 0])  # 正值增加枕形畸变h, w = image.shape[:2]new_camera_matrix, roi = cv2.getOptimalNewCameraMatrix(camera_matrix, dist_coeffs, (w, h), 1)distorted_image = cv2.undistort(image, camera_matrix, dist_coeffs, None, new_camera_matrix)return distorted_image# 去除枕形畸变
def remove_pincushion_distortion(image, k1=0.0005):image_size = image.shape[0]fx, fy = image_size * 1.0, image_size * 1.0cx, cy = image_size / 2, image_size / 2camera_matrix = np.array([[fx, 0, cx], [0, fy, cy], [0, 0, 1]])dist_coeffs = np.array([-k1, 0, 0, 0, 0])  # 负值去除枕形畸变h, w = image.shape[:2]new_camera_matrix, roi = cv2.getOptimalNewCameraMatrix(camera_matrix, dist_coeffs, (w, h), 1)undistorted_image = cv2.undistort(image, camera_matrix, dist_coeffs, None, new_camera_matrix)return undistorted_image# 主函数
if __name__ == "__main__":original_grid = create_grid()distorted_grid = apply_pincushion_distortion(original_grid,k1=-0.2)undistorted_grid = remove_pincushion_distortion(distorted_grid,k1=-0.2-0.2)# 使用 OpenCV 展示图像cv2.imshow('Original Image', original_grid)cv2.imshow('Pincushion Distorted Image', distorted_grid)cv2.imshow('Undistorted Image', undistorted_grid)cv2.waitKey(0)cv2.destroyAllWindows()

去枕形畸变失败

import cv2
import numpy as np
import matplotlib.pyplot as plt# 创建一个带有枕形畸变的网格图像
def create_pincushion_distorted_grid(image_size=512, grid_size=20):image = np.zeros((image_size, image_size, 3), dtype=np.uint8)for i in range(0, image_size, grid_size):cv2.line(image, (i, 0), (i, image_size), (255, 255, 255), 1)cv2.line(image, (0, i), (image_size, i), (255, 255, 255), 1)k1, k2, p1, p2, k3 = -0.2, 0, 0, 0, 0  # 负数制造枕形畸变fx, fy = image_size, image_sizecx, cy = image_size / 2, image_size / 2camera_matrix = np.array([[fx, 0, cx], [0, fy, cy], [0, 0, 1]])dist_coeffs = np.array([k1, k2, p1, p2, k3])map1, map2 = cv2.initUndistortRectifyMap(camera_matrix, dist_coeffs, None, camera_matrix, (image_size, image_size), 5)distorted_image = cv2.remap(image, map1, map2, cv2.INTER_LINEAR)return image, distorted_image, camera_matrix, dist_coeffs# 去除枕形畸变
def undistort_image(image, camera_matrix, dist_coeffs):h, w = image.shape[:2]new_camera_matrix, roi = cv2.getOptimalNewCameraMatrix(camera_matrix, dist_coeffs, (w, h), 1, (w, h))undistorted_image = cv2.undistort(image, camera_matrix, dist_coeffs, None, new_camera_matrix)return undistorted_image# 主函数
if __name__ == "__main__":original_grid, distorted_grid, camera_matrix, dist_coeffs = create_pincushion_distorted_grid()# 手动生成去畸变的映射map1, map2 = cv2.initUndistortRectifyMap(camera_matrix, dist_coeffs, None, camera_matrix, (original_grid.shape[1], original_grid.shape[0]), cv2.CV_32FC1)undistorted_grid = cv2.remap(distorted_grid, map1, map2, cv2.INTER_LINEAR)# 使用 OpenCV 展示图像cv2.imshow('Original Image', original_grid)cv2.imshow('Distorted Image', distorted_grid)cv2.imshow('Undistorted Image', undistorted_grid)cv2.waitKey(0)cv2.destroyAllWindows()

http://www.yayakq.cn/news/520633/

相关文章:

  • 如何自己做加盟网站诚聘网站开发人员
  • 喀喇沁旗网站建设公司星沙网站制作
  • 茶具网站模板微商分销如何搭建分销模式
  • wordpress建手机网站俄语在线网站制作
  • 网站建设多少中华南大街网站建设
  • 大连模板网站制作电话地方门户网站发展趋势
  • 怎么注册网自己的网站吗用pycharm做网站
  • 建站技术论坛深圳的建站公司
  • 新手站长做装修网站产品推广营销方案
  • 上海网站推广排名wordpress创建目录失败
  • 襄阳住房和城乡建设局网站首页简阳网站建设简阳
  • 网站开发要注意哪些细节seo网站课程
  • 公司网页网站如何做做现货值得关注的财经网站
  • 网站建设的缺点让人做网站 需要准备什么软件
  • 点样做网站苏州网站开发公司兴田德润优惠吗
  • 四川建设厅特种工报名网站js做网站登录框验证码
  • 网站扁平结构网站开发主页
  • 做百度手机网站排名谷歌优化公司
  • vs2012解决方案做网站网站开发it项目规划书
  • 网站开发行业标准dell网站设计特色
  • 建站代理赚钱吗上海建设工程造价信息网站
  • 外贸企业网站建设安全教育平台登录入口网址
  • jsp 网站开发教程东莞网站建设网站建立
  • 网站宣传流程大学生创新创业大赛
  • 中文wordpress网站模板下载失败青岛网站的优化
  • 网站开发设计前景有没有网址
  • 专业做网站app的公司哪家好建筑电工证查询网站
  • 企业网站推广的重要性wordpress页面显示文章列表
  • 开公司如何做网站推广html网站模仿
  • php开发的大型网站有哪些定制商品的网站建设