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

 更新时间:2022年04月01日 15:38:17   作者:振华OPPO  
OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令,本篇文章带你通过OpenCV实现重调大小与图像裁剪

准备工作

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

在这里插入图片描述

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

在这里插入图片描述

查看图像大小

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

我们来看下效果:

在这里插入图片描述

  • 上图中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)

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

在这里插入图片描述

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

在这里插入图片描述

图像裁剪

图像裁剪其实就是对矩阵进行截取,选哪些行哪些列,显示选中行列的像素点,就是裁剪后的图像。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的裁剪图:

在这里插入图片描述

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

在这里插入图片描述

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

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

相关文章

  • Python求算数平方根和约数的方法汇总

    Python求算数平方根和约数的方法汇总

    这篇文章主要介绍了 Python求算数平方根和约数的方法汇总的相关资料,需要的朋友可以参考下
    2016-03-03
  • 使用Python编写简单网络爬虫抓取视频下载资源

    使用Python编写简单网络爬虫抓取视频下载资源

    从上一篇文章的评论中看出似乎很多童鞋都比较关注爬虫的源代码。所有本文就使用Python编写简单网络爬虫抓取视频下载资源做了很详细的记录,几乎每一步都介绍给大家,希望对大家能有所帮助
    2014-11-11
  • 对Python中GIL(全局解释器锁)的一点理解浅析

    对Python中GIL(全局解释器锁)的一点理解浅析

    首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念,下面这篇文章主要给大家介绍了关于对Python中GIL的一点理解,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • python倒序for循环实例

    python倒序for循环实例

    这篇文章主要介绍了python倒序for循环实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • django rest framework 实现用户登录认证详解

    django rest framework 实现用户登录认证详解

    这篇文章主要介绍了django rest framework 实现用户登录认证详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python一步步带你操作Excel

    Python一步步带你操作Excel

    这篇文章主要介绍了Python编写命令行脚本操作excel的方法,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • Pandas 处理DataFrame中的inf值实现

    Pandas 处理DataFrame中的inf值实现

    Inf 表示正无穷大或负无穷大,通常是在数学计算中产生的结果,本文主要介绍了Pandas 处理DataFrame中的inf值实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • Python中使用filter过滤列表的一个小技巧分享

    Python中使用filter过滤列表的一个小技巧分享

    这篇文章主要介绍了Python中使用filter过滤列表的一个小技巧分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • Python中属性和描述符的正确使用

    Python中属性和描述符的正确使用

    Python的描述符和属性是接触到Python核心编程中一个比较难以理解的内容,自己在学习的过程中也遇到过很多的疑惑,通过google和阅读源码,现将自己的理解和心得记录下来,也为正在为了该问题苦恼的朋友提供一个思考问题的参考。
    2016-08-08
  • python安装第三方包的三种方法图文详解

    python安装第三方包的三种方法图文详解

    安装Python第三方包有多种方法,下面这篇文章主要给大家介绍了关于python安装第三方包的三种方法,文中通过图文的非常详细,需要的朋友可以参考下
    2024-03-03

最新评论