Python OpenCV超详细讲解调整大小与图像操作的实现


Posted in Python onApril 02, 2022

准备工作

右击新建的项目,选择Python File,新建一个Python文件,然后在开头import cv2导入cv2库。

Python OpenCV超详细讲解调整大小与图像操作的实现

我们还要知道在OpenCV中,坐标轴的方向是x轴向右,y轴向下,坐标原点在左上角,比如下面这张长为640像素,宽为480像素的图片。OK,下面开始本节的学习吧。

Python OpenCV超详细讲解调整大小与图像操作的实现

查看图像大小

  • 调用imread()方法获取我们资源文件夹中的图片lambo.png
  • 输出图像的shape属性
img=cv2.imread("Resources/lambo.png")
print(img.shape)

我们来看下效果:

Python OpenCV超详细讲解调整大小与图像操作的实现

上图中462是图像的高度,也就是y轴;

623是图像的宽度,也就是x轴;

3是通道数,BGR(蓝绿红)通道

重新调整图像大小

  • resize()方法可以将图像调整到指定的宽和高,参数1是需要调整的图像img,参数2是(600,300),也就是新图像的宽和高。
  • 我们打印下imgResize的shape,看看是不是输出(300,600,3)。
  • 最后将原图和修改大小后的图像显示出来。
img=cv2.imread("Resources/lambo.png")
imgResize=cv2.resize(img,(600,300))
print(imgResize.shape)
cv2.imshow("img",img)
cv2.imshow("imgResize",imgResize)
cv2.waitKey(0)

我们来运行一下,可以看到右侧是调整后的图像,明显宽和高都比原图小:

Python OpenCV超详细讲解调整大小与图像操作的实现

来看下控制台的输出,和图像大小是一样的:

Python OpenCV超详细讲解调整大小与图像操作的实现

图像裁剪

图像裁剪其实就是对矩阵进行截取,选哪些行哪些列,显示选中行列的像素点,就是裁剪后的图像。imgCropped=img[200:400,200:400]就是对原图进行裁剪,高从200到400,宽也从200到400,区间范围只要不超过它的高和宽即可。

img=cv2.imread("Resources/lambo.png")
imgCropped=img[200:400,200:400]
cv2.imshow("img",img)
cv2.imshow("imgCropped",imgCropped)
cv2.waitKey(0)

我们运行看下效果,左侧是623X462的原图,右侧是200X200的裁剪图:

Python OpenCV超详细讲解调整大小与图像操作的实现

我们将裁剪的图像放到原图上进行覆盖,可以拼成原图。

Python OpenCV超详细讲解调整大小与图像操作的实现

本节内容也是比较简单的,主要是让大家熟悉下OpenCV最基础的应用,为后面打下基础。眼过千遍不如手过一遍,快去动手敲一遍吧~?

到此这篇关于Python OpenCV超详细讲解调整大小与图像操作的实现的文章就介绍到这了,更多相关Python OpenCV 图像操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python使用正则匹配实现抓图代码分享
Apr 02 Python
python实现带错误处理功能的远程文件读取方法
Apr 29 Python
Python 类的继承实例详解
Mar 25 Python
Windows下python3.7安装教程
Jul 31 Python
详解python selenium 爬取网易云音乐歌单名
Mar 28 Python
python过滤中英文标点符号的实例代码
Jul 15 Python
pytorch 使用单个GPU与多个GPU进行训练与测试的方法
Aug 19 Python
Python实现串口通信(pyserial)过程解析
Sep 25 Python
python操作gitlab API过程解析
Dec 27 Python
pytorch使用 to 进行类型转换方式
Jan 08 Python
Python unittest框架操作实例解析
Apr 13 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 Python
Python实现提取PDF简历信息并存入Excel
Apr 02 #Python
python对文档中元素删除,替换操作
Apr 02 #Python
Python中第三方库Faker的使用详解
Python数据处理的三个实用技巧分享
Python+Tkinter打造签名设计工具
Python正则表达式中flags参数的实例详解
Apr 01 #Python
Python+Tkinter制作专属图形化界面
You might like
PHP错误提示的关闭方法详解
2013/06/23 PHP
PHP实现的英文名字全拼随机排号脚本
2014/07/04 PHP
PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
2014/10/22 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
自定义Laravel (monolog)日志位置,并增加请求ID的实现
2019/10/17 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
Extjs学习笔记之八 继承和事件基础
2010/01/08 Javascript
JavaScript游戏之优化篇
2010/11/08 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
玩转方法:call和apply
2014/05/08 Javascript
函数window.open实现关闭所有的子窗口
2015/08/03 Javascript
基于Jquery+div+css实现弹出登录窗口(代码超简单)
2015/10/27 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
jQuery获取复选框被选中数量及判断选择值的方法详解
2016/05/25 Javascript
jQuery内存泄露解决办法
2016/12/13 Javascript
深入理解ES7的async/await的用法
2017/09/09 Javascript
vue自定义filters过滤器
2018/04/26 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
Bootstrap实现省市区三级联动(亲测可用)
2019/07/26 Javascript
解决ant Design中this.props.form.validateFields未执行的问题
2020/10/27 Javascript
Bottle框架中的装饰器类和描述符应用详解
2017/10/28 Python
python中使用PIL制作并验证图片验证码
2018/03/15 Python
python分治法求二维数组局部峰值方法
2018/04/03 Python
Python的条件锁与事件共享详解
2019/09/12 Python
Python 2种方法求某个范围内的所有素数(质数)
2020/01/31 Python
Windows10+anacond+GPU+pytorch安装详细过程
2020/03/24 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
2020/04/07 Python
python爬虫判断招聘信息是否存在的实例代码
2020/11/20 Python
HTML5语义化元素你真的用对了吗
2019/08/22 HTML / CSS
STUBHUB日本:购买和出售全球活动门票
2018/07/01 全球购物
日本即尚网:JSHOPPERS.com(支持中文)
2019/12/03 全球购物
求职个人评价范文
2014/04/09 职场文书
法院授权委托书格式
2014/09/28 职场文书
医院领导班子整改方案
2014/10/01 职场文书
高三语文教学反思
2016/02/16 职场文书