第一章 图像的坐标变换-平移变换

文章目录

  • 第一章 图像的坐标变换-平移变换
    • 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. 1.4 Python图像的坐标变换-仿射变换

    1.4 Python图像的坐标变换-仿射变换 文章目录 1.4 Python图像的坐标变换-仿射变换 1 算法原理 2 代码 3 效果 1 算法原理 图像的几何变换,也就是矩阵乘法. 通过仿射变换将图 ...

  2. 1.2 Python图像的坐标变换-尺度变换

    1.2 Python图像的坐标变换-尺度变换 文章目录 1.2 Python图像的坐标变换-尺度变换 1 算法原理 2 代码 3 效果 1 算法原理 图像的几何变换,也就是矩阵乘法. 尺度变换是在原来 ...

  3. python图像中如何显示中文

    python图像中如何显示中文 在开头加入这两行即可 from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei']

  4. 【Tool】Augmentor和imgaug——python图像数据增强库

    Augmentor和imgaug--python图像数据增强库 Tags: ComputerVision Python 介绍两个图像增强库:Augmentor和imgaug,Augmentor使用比较 ...

  5. python怎么计算图像梯度_opencv python图像梯度实例详解

    这篇文章主要介绍了opencv python图像梯度实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一阶导数与Soble算子 二阶导数与拉普 ...

  6. python图像增强_【Tool】Augmentor和imgaug——python图像数据增强库

    Augmentor和imgaug--python图像数据增强库 Tags: ComputerVision Python 介绍两个图像增强库:Augmentor和imgaug,Augmentor使用比较 ...

  7. python图像resize_Python图像resize前后颜色不一致问题

    今天帮师姐解决一个bug,测试了Python图像resize前后颜色不一致问题. 代码片段执行的功能:图像指定倍数超分辨率,输入为[0-1] float型数据,输出为格式不限的图像 bug:输入图像与 ...

  8. Python中的图像处理(第六章)Python图像量化及采样处理(2)

    Python中的图像处理(第六章)Python图像量化及采样处理(2) 前言 一. Python准备 二. Python仿真 三. 小结 前言 随着人工智能研究的不断兴起,Python的应用也在不断上 ...

  9. python图像音频处理-通过图像傅里叶变换判断相位和幅度的重要性

    python图像音频处理-判断相位和幅度的重要性 这一步骤思想很简单.分别将两个图像或两个音频做FFT,再选取图像1/音频1的幅度,结合上图像2/音频2的相位,再做IFFT.看返回的图像或音频更接近图 ...

最新文章

  1. 从未在一起更让人遗憾_明明是真爱,却又不能在一起
  2. mysql数据迁移数据一致性检教6_如何在数据库迁移中保证数据一致性?
  3. Lambda表达式的基础知识
  4. SpringBoot @ConfigurationProperties详解
  5. AutoEncoder、RBM、DBM、DBN
  6. python 手势检测和追踪_用kinect和python进行手势识别:嗯学习
  7. python数学编程中文版_利用python来推数学公式简单版
  8. MAgent安装及初步试验
  9. 【ArcGIS|空间分析|网络分析】4 查找最近的消防站
  10. fast虚拟服务器ip地址设置,falogin.cn fast怎样正确设置电脑的IP地址和DNS等参数? - falogincn登录页面...
  11. yolov4训练自己的数据
  12. JQuery Easyui/TopJUI 多表头创建
  13. MMI、SS、USSD介绍
  14. 【Linux】Ubuntu18.04深度学习环境配置+Google+TIM+搜狗输入法等安装方法
  15. 解决Word多级列表章标题第一章与节标题1.1排序混乱问题
  16. 【C语言】----找出100以内的所有质数(素数),并且输出前十个
  17. 臭可乐,怎么才能让你不吃便便呢,唉
  18. 女大学生出轨行为心理[组图]
  19. AIRCHECK G2 v5 新版本-AirMapper APP发布
  20. 系列创业家陈丕宏:互联网创业的五大定律

热门文章

  1. Exchange 2010和Exchange 2016共存部署-2:升级Exchange 2010到SP3 RU12
  2. linux命令行安装 php_如何在 Linux 命令行中使用和执行 PHP 代码
  3. 微信和QQ的定位问题
  4. note_2019_9
  5. Android手机来电防火墙
  6. ViewPager底部圆点指示器
  7. Android如何打开闪光灯
  8. 《iOS 应用逆向与安全》读后感
  9. 如何防止身份证复印件被盗用
  10. wikioi 1069 关押罪犯