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闭包及其作用域详解
Aug 28 Python
Python DataFrame 设置输出不显示index(索引)值的方法
Jun 07 Python
Python 字符串与数字输出方法
Jul 16 Python
在双python下设置python3为默认的方法
Oct 31 Python
python重试装饰器的简单实现方法
Jan 31 Python
Python模块汇总(常用第三方库)
Oct 07 Python
Pycharm 安装 idea VIM插件的图文教程详解
Feb 21 Python
详解Python3中的 input() 函数
Mar 18 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
May 26 Python
Python学习之路之pycharm的第一个项目搭建过程
Jun 18 Python
python实现感知机模型的示例
Sep 30 Python
Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头
Oct 22 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无限级栏目分类读取的实现代码
2014/02/19 PHP
Php连接及读取和写入mysql数据库的常用代码
2014/08/11 PHP
PHP处理Json字符串解码返回NULL的解决方法
2014/09/01 PHP
JS Timing
2007/04/21 Javascript
jquery radio 操作代码
2011/03/16 Javascript
js编写trim()函数及正则表达式的运用
2013/10/24 Javascript
jQuery.holdReady()使用方法
2014/05/20 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
2014/06/13 Javascript
Node.js中使用事件发射器模式实现事件绑定详解
2014/08/15 Javascript
jquery插件qrcode在线生成二维码
2015/04/26 Javascript
nodejs的压缩文件模块archiver用法示例
2017/01/18 NodeJs
关于预加载InstantClick的问题解决方法
2017/09/12 Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
2018/01/31 Javascript
vue中如何去掉空格的方法实现
2018/11/09 Javascript
简述vue-cli中chainWebpack的使用方法
2019/07/30 Javascript
JS FormData对象使用方法实例详解
2020/02/12 Javascript
[54:56]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第三局
2016/03/06 DOTA
django中静态文件配置static的方法
2018/05/20 Python
详解python异步编程之asyncio(百万并发)
2018/07/07 Python
Python如何调用外部系统命令
2019/08/07 Python
解析Python3中的Import
2019/10/13 Python
python itsdangerous模块的具体使用方法
2020/02/17 Python
pytorch ImageFolder的覆写实例
2020/02/20 Python
python 等差数列末项计算方式
2020/05/03 Python
css3让div随鼠标移动而抖动起来
2014/02/10 HTML / CSS
银行员工辞职信范文
2014/01/20 职场文书
金融事务专业毕业生求职信
2014/02/23 职场文书
党的群众路线教育实践活动个人对照检查材料(教师)
2014/11/04 职场文书
高三英语复习计划
2015/01/19 职场文书
大雁塔导游词
2015/02/04 职场文书
综合素质评价个性与发展自我评价
2015/03/06 职场文书
统计员岗位职责范本
2015/04/14 职场文书
个人收入证明格式
2015/06/24 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL
Python编写nmap扫描工具
2021/07/21 Python
SpringBoot2零基础到精通之数据库专项精讲
2022/03/22 Java/Android