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实现html转ubb代码(html2ubb)
Jul 03 Python
python解析xml文件实例分析
May 27 Python
Python cookbook(数据结构与算法)实现优先级队列的方法示例
Feb 18 Python
pandas 读取各种格式文件的方法
Jun 22 Python
使用python opencv对目录下图片进行去重的方法
Jan 12 Python
python3.6+selenium实现操作Frame中的页面元素
Jul 16 Python
执行Django数据迁移时报 1091错误及解决方法
Oct 14 Python
基于python3 的百度图片下载器的实现代码
Nov 05 Python
Python实现栈和队列的简单操作方法示例
Nov 29 Python
Python基础之字典常见操作经典实例详解
Feb 26 Python
python编程的核心知识点总结
Feb 08 Python
pytorch MSELoss计算平均的实现方法
May 12 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基础教程 php内置函数实例教程
2012/08/21 PHP
php函数间的参数传递(值传递/引用传递)
2013/09/23 PHP
PHP封装的PDO数据库操作类实例
2017/06/21 PHP
javascript据option的value值快速设定初始的selected选项
2007/08/13 Javascript
利用jQuery接受和处理xml数据的代码(.net)
2011/03/28 Javascript
40个新鲜出炉的jQuery 插件和免费教程[上]
2012/07/24 Javascript
javascript调试之DOM断点调试法使用技巧分享
2014/04/15 Javascript
javascript定义变量时加var与不加var的区别
2014/12/22 Javascript
jquery实现仿Flash的横向滑动菜单效果代码
2015/09/17 Javascript
js实现select二级联动下拉菜单
2020/04/17 Javascript
JavaScript自执行函数和jQuery扩展方法详解
2017/10/27 jQuery
Vue绑定内联样式问题
2018/10/17 Javascript
JavaScript命名空间模式实例详解
2019/06/20 Javascript
vue 对axios get pust put delete封装的实例代码
2020/01/05 Javascript
Python实现计算文件夹下.h和.cpp文件的总行数
2015/04/23 Python
Python和Perl绘制中国北京跑步地图的方法
2016/03/03 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
python监控文件并且发送告警邮件
2018/06/21 Python
Selenium(Python web测试工具)基本用法详解
2018/08/10 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
2018/12/11 Python
对matplotlib改变colorbar位置和方向的方法详解
2018/12/13 Python
解决使用PyCharm时无法启动控制台的问题
2019/01/19 Python
Python从文件中读取数据的方法讲解
2019/02/14 Python
Python2 Selenium元素定位的实现(8种)
2019/02/25 Python
Python文件时间操作步骤代码详解
2020/04/13 Python
Python3实现飞机大战游戏
2020/04/24 Python
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
HTML5在手机端实现视频全屏展示方法
2020/11/23 HTML / CSS
美国眼镜在线零售商:Dualens
2019/12/07 全球购物
应届生自我鉴定
2013/12/11 职场文书
报社实习生自荐信
2014/01/24 职场文书
志愿者活动总结范文
2014/04/26 职场文书
国际金融专业自荐信
2014/07/05 职场文书
惊天动地观后感
2015/06/10 职场文书
python实现简单倒计时功能
2021/04/21 Python
Win11控制面板快捷键是什么?Win11打开控制面板的方法汇总
2022/07/07 数码科技