1.1 python图像的坐标变换-平移变换
第一章 图像的坐标变换-平移变换
文章目录
- 第一章 图像的坐标变换-平移变换
- 1算法原理
- 2 代码
- 3 效果
1算法原理
图像的几何变换,也就是矩阵乘法。
平移变换是在原来像素加上一个平移值,加法公式如下:
我们可以用乘法来代替加法。矩阵的乘法的普适性明显强于加法很多。以矩阵形式表示平移前后的像素关系为:
例如:点(x0,y0)在x轴上平移Δx和在y轴上平移Δy像素距离之后到达点(x1,y1),如下图:
2 代码
运行代码说明
1.要改变代码中的地址,我的地址说明,我是把待处理图片统一放在一个(同级)image文件夹,用os.listdir(base)读取图片名称列表
最后在第18行代码中合并base和图片名称,得到完整图片地址
2.如果想更改为读取同目录下图片,可以13-18行代码可以改为
paths = ['img1.jpg','img2.jpg','img3.png'......] for path in paths:print(path)# 读取图片 1 是加载彩色图像。任何图像的透明度都会被忽视。它是默认标志。img = cv.imread(path, 1)
3.注意plt.savefig(‘1.new’ + path)是保存plt图像,如果不使用可以注释掉
import osimport numpy as np
import cv2 as cv
import matplotlib.pyplot as plt
from matplotlib import font_manager# 字体实例对象
my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\simsun.ttc",size=15)
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号base = r'image'
paths = os.listdir(base)
for path in paths:print(path)# 读取图片 1 是加载彩色图像。任何图像的透明度都会被忽视。它是默认标志。img = cv.imread(os.path.join(base,path), 1)rows, cols = img.shape[0:2]M = np.float32([[1,0,100],[0,1,100]]) # 此平移相当与右平移100,再下平移100pxnew_img = cv.warpAffine(img, M, (cols, rows)) # 通过仿射变换函数来进行平移,M是平移矩阵cv.imwrite('messigray.png',new_img) # 保存图片# # 画图 方式1# fig = plt.figure()# ## ax1 = fig.add_subplot(121)#比如121,指的就是将这块画布分为1×2,然后1对应的就是1号区,2对应的2号区# ax1.imshow(img)# ax1.set_title('My first matplotlib plot')## ax2 = fig.add_subplot(122)# ax2.imshow(res)# plt.show() # 显示图片# 方式2plt.figure()plt.suptitle('平移变换')plt.subplot(1,2,1)plt.title('原图')plt.imshow(cv.cvtColor(img, cv.COLOR_BGR2RGB)) # 要cv.cvtColor转换plt才可以正常显示彩色图像,灰度图像也有另外命令plt.subplot(1,2,2)plt.title('新图')plt.imshow(cv.cvtColor(new_img, cv.COLOR_BGR2RGB))plt.savefig('1.new' + path) # 通过这个可以保存plt的图像plt.show()
3 效果
1.1 python图像的坐标变换-平移变换相关推荐
- 1.4 Python图像的坐标变换-仿射变换
1.4 Python图像的坐标变换-仿射变换 文章目录 1.4 Python图像的坐标变换-仿射变换 1 算法原理 2 代码 3 效果 1 算法原理 图像的几何变换,也就是矩阵乘法. 通过仿射变换将图 ...
- 1.2 Python图像的坐标变换-尺度变换
1.2 Python图像的坐标变换-尺度变换 文章目录 1.2 Python图像的坐标变换-尺度变换 1 算法原理 2 代码 3 效果 1 算法原理 图像的几何变换,也就是矩阵乘法. 尺度变换是在原来 ...
- python图像中如何显示中文
python图像中如何显示中文 在开头加入这两行即可 from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei']
- 【Tool】Augmentor和imgaug——python图像数据增强库
Augmentor和imgaug--python图像数据增强库 Tags: ComputerVision Python 介绍两个图像增强库:Augmentor和imgaug,Augmentor使用比较 ...
- python怎么计算图像梯度_opencv python图像梯度实例详解
这篇文章主要介绍了opencv python图像梯度实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一阶导数与Soble算子 二阶导数与拉普 ...
- python图像增强_【Tool】Augmentor和imgaug——python图像数据增强库
Augmentor和imgaug--python图像数据增强库 Tags: ComputerVision Python 介绍两个图像增强库:Augmentor和imgaug,Augmentor使用比较 ...
- python图像resize_Python图像resize前后颜色不一致问题
今天帮师姐解决一个bug,测试了Python图像resize前后颜色不一致问题. 代码片段执行的功能:图像指定倍数超分辨率,输入为[0-1] float型数据,输出为格式不限的图像 bug:输入图像与 ...
- Python中的图像处理(第六章)Python图像量化及采样处理(2)
Python中的图像处理(第六章)Python图像量化及采样处理(2) 前言 一. Python准备 二. Python仿真 三. 小结 前言 随着人工智能研究的不断兴起,Python的应用也在不断上 ...
- python图像音频处理-通过图像傅里叶变换判断相位和幅度的重要性
python图像音频处理-判断相位和幅度的重要性 这一步骤思想很简单.分别将两个图像或两个音频做FFT,再选取图像1/音频1的幅度,结合上图像2/音频2的相位,再做IFFT.看返回的图像或音频更接近图 ...
最新文章
- 从未在一起更让人遗憾_明明是真爱,却又不能在一起
- mysql数据迁移数据一致性检教6_如何在数据库迁移中保证数据一致性?
- Lambda表达式的基础知识
- SpringBoot @ConfigurationProperties详解
- AutoEncoder、RBM、DBM、DBN
- python 手势检测和追踪_用kinect和python进行手势识别:嗯学习
- python数学编程中文版_利用python来推数学公式简单版
- MAgent安装及初步试验
- 【ArcGIS|空间分析|网络分析】4 查找最近的消防站
- fast虚拟服务器ip地址设置,falogin.cn fast怎样正确设置电脑的IP地址和DNS等参数? - falogincn登录页面...
- yolov4训练自己的数据
- JQuery Easyui/TopJUI 多表头创建
- MMI、SS、USSD介绍
- 【Linux】Ubuntu18.04深度学习环境配置+Google+TIM+搜狗输入法等安装方法
- 解决Word多级列表章标题第一章与节标题1.1排序混乱问题
- 【C语言】----找出100以内的所有质数(素数),并且输出前十个
- 臭可乐,怎么才能让你不吃便便呢,唉
- 女大学生出轨行为心理[组图]
- AIRCHECK G2 v5 新版本-AirMapper APP发布
- 系列创业家陈丕宏:互联网创业的五大定律