OpenCV的图像矫正

一、原理

图像矫正的原理是透视变换,下面来介绍一下透视变换的概念。

透视变换(Perspective Transform)基于一个4对点的映射关系(4个源点到4个目标点),通过这些点之间的映射,可以计算一个变换矩阵(3x3)。利用该矩阵对图像进行变换,实现畸变矫正。

二、代码

python 复制代码
import cv2
import numpy as np

#读取一张彩色图
img=cv2.imread('./3.png.')

#获取透视矩阵
# 1.找到原图的四个点,可以手动设置,也可以在后面学完轮廓后筛选自动获取
points1=np.float32([[175,142],[621,35],[89,491],[652,546]])

# 2.设置原图中的四个点在目标图中的位置
points2=np.array([[0,0],[img.shape[1],0],[0,img.shape[0]],[img.shape[1],img.shape[0]]],dtype=np.float32)

#获取矩阵
M=cv2.getPerspectiveTransform(points1,points2)

#进行透视变换
img_p=cv2.warpPerspective(img,M,(img.shape[1],img.shape[0]))

cv2.imshow('img',img)
cv2.imshow('img_p',img_p)
cv2.waitKey(0)

三、实验现象

相关推荐
~kiss~6 分钟前
图像处理~多尺度边缘检测算法
图像处理·算法·计算机视觉
lihuayong17 分钟前
LangGraph React智能体 - 推理与行动的完美结合
人工智能·langgraph·react 智能体
机器之心19 分钟前
Meta用40万个GPU小时做了一个实验,只为弄清强化学习Scaling Law
人工智能·openai
曾经的三心草23 分钟前
OpenCV5-图像特征harris-sift-特征匹配-图像全景拼接-答题卡识别判卷
人工智能·opencv·计算机视觉
慧星云37 分钟前
魔多 AI 支持 Wan 系列在线训练 :解锁视频生成新高度
人工智能
麻辣兔变形记43 分钟前
Solidity 合约超限问题及优化策略:以 FHEFactory 为例
人工智能·区块链
渡我白衣1 小时前
未来的 AI 操作系统(二)——世界即界面:自然语言成为新的人机交互协议
人工智能·语言模型·人机交互
墨利昂1 小时前
词向量:自然语言处理技术体系的核心基石
人工智能·自然语言处理
格林威2 小时前
可见光工业相机半导体制造领域中的应用
图像处理·人工智能·数码相机·计算机视觉·视觉检测·制造·工业相机
星期天要睡觉2 小时前
计算机视觉(opencv)——基于 MediaPipe 人体姿态检测
人工智能·opencv·计算机视觉