图像仿射变换Opencv实现

python 复制代码
import cv2
import numpy as np

# 读取图像
image = cv2.imread('input_image.jpg')

# 图像宽度和高度
height, width = image.shape[:2]

# 旋转
angle = 45
rotation_matrix = cv2.getRotationMatrix2D((width/2, height/2), angle, 1)
rotated_image = cv2.warpAffine(image, rotation_matrix, (width, height))

# 平移
x_translation = 100
y_translation = 50
translation_matrix = np.float32([[1, 0, x_translation], [0, 1, y_translation]])
translated_image = cv2.warpAffine(image, translation_matrix, (width, height))

# 缩放
scale_factor = 0.5
scaled_image = cv2.resize(image, None, fx=scale_factor, fy=scale_factor, interpolation=cv2.INTER_LINEAR)

# 错切
shear_matrix = np.float32([[1, 0.5, 0], [0.5, 1, 0]])
sheared_image = cv2.warpAffine(image, shear_matrix, (width, height))

# 显示结果
cv2.imshow('Original Image', image)
cv2.imshow('Rotated Image', rotated_image)
cv2.imshow('Translated Image', translated_image)
cv2.imshow('Scaled Image', scaled_image)
cv2.imshow('Sheared Image', sheared_image)

# 等待按键
cv2.waitKey(0)
cv2.destroyAllWindows()

这段代码演示了如何对图像进行旋转、平移、缩放和错切等仿射变换,并使用 OpenCV 库进行实现。请确保将 input_image.jpg 替换为您要处理的图像文件名。

相关推荐
Coovally AI模型快速验证2 分钟前
开放词汇3D实例分割新思路:框引导+超点融合,精准检索罕见物体
人工智能·计算机视觉·3d·语言模型·机器人·无人机
拓端研究室4 分钟前
2025机器人行业白皮书:人形机器人、工业机器人、具身智能、核心零部件|附200+份报告PDF、数据、可视化模板汇总下载
人工智能
破烂pan4 分钟前
大语言模型在翻译领域的演进与游戏本地化应用分析
人工智能·游戏·语言模型
汤汤upup5 分钟前
Nature 2025 TabPFN的使用与报错解决
人工智能·机器学习
zandy10115 分钟前
从ChatBI到Agentic BI:HENGSHI SENSE 6.0如何用AI Agent重构企业决策智能
人工智能·重构·ai agent·chatbi·agentic bi
Codebee6 分钟前
告别 “糙” 体验!Ooder 企业级 AI:重构国产企业软件的 4 大核心解决方案
人工智能
OpenCSG11 分钟前
XNet :面向大模型与数据集的块级存储与传输能力
人工智能·开源·opencsg·agentichub
文档伴侣12 分钟前
体验访答:我的私有知识库新选择
人工智能·aigc·ocr
海边夕阳200613 分钟前
【每天一个AI小知识】:什么是自注意力?
人工智能·经验分享·机器学习·强化学习·自注意力
DX_水位流量监测18 分钟前
城市易涝点水位雨量监测设备技术体系与实践应用
大数据·运维·服务器·网络·人工智能