python PIL和CV对 图片的读取,显示,裁剪,保存实现方法

yizhihongxing

下面我将为您讲解如何使用Python PIL和CV对图片进行读取、显示、裁剪和保存。

图片读取

使用PIL库可以轻松读取图片,只需要使用Image.open()函数并传入图片路径即可。

from PIL import Image

img = Image.open("example.jpg")

使用cv2库也可以读取图片,只需要使用cv2.imread()函数而不是Image.open()函数。

import cv2

img = cv2.imread("example.jpg")

需要注意的是,cv2中图片的格式是BGR而不是RGB,因此在后续处理中,需要注意这一点。

图片显示

使用PIL库实现图片展示,只需要使用Image.show()函数即可。

from PIL import Image

img = Image.open("example.jpg")
img.show()

使用cv2库实现图片展示,只需要使用cv2.imshow()函数即可,但需要注意的是需要再加上一行cv2.waitKey(0),否则图片会一闪而过。

import cv2

img = cv2.imread("example.jpg")

cv2.imshow("image", img)
cv2.waitKey(0)

图片裁剪

使用PIL库实现对图片的裁剪,只需要使用Image.crop()函数即可,该函数传入一个4元组,分别是(left, upper, right, lower),表示裁剪的区域。

from PIL import Image

img = Image.open("example.jpg")

crop_img = img.crop((0, 0, 100, 100))
crop_img.show()

使用cv2库实现对图片的裁剪,只需要使用切片操作即可。

import cv2

img = cv2.imread("example.jpg")

crop_img = img[0:100, 0:100]
cv2.imshow("image", crop_img)
cv2.waitKey(0)

需要注意的是,在使用切片操作时,参数顺序是(y:y+h, x:x+w),其中(x,y)是左上角的坐标,(w,h)是宽度和高度。

图片保存

使用PIL库将图片保存,只需要使用Image.save()函数即可,该函数传入图片保存的路径。

from PIL import Image

img = Image.open("example.jpg")

img.save("new_image.jpg")

使用cv2库将图片保存,只需要使用cv2.imwrite()函数,该函数传入路径和需要保存的图片。

import cv2

img = cv2.imread("example.jpg")

cv2.imwrite("new_image.jpg", img)

以上就是使用Python PIL和cv2库对图片读取、显示、裁剪和保存的详细攻略,希望能对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python PIL和CV对 图片的读取,显示,裁剪,保存实现方法 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • Python创建或生成列表的操作方法

    当我们在Python编程中需要使用列表时,我们可以使用多种方式来创建或生成列表。下面将详细讲解Python创建或生成列表的操作方法,包括创建空列表、创建包含元素的列表、使用range()函数创建列表、使用列表推导式创建列表等。 创建空列表 创建空列表是Python中创建列表的最简单方法一。可以使用[]或list()来创建一个空列表。下面是两个示例,演示了如何…

    python 2023年5月13日
    00
  • python实现自动化之文件合并

    下面是详细讲解“Python实现自动化之文件合并”的完整攻略: 一、背景介绍 在日常工作和学习中,我们经常遇到需要将多个文件合并成一个文件的情况,比如将多个Excel表格合并成一个Excel表格,将多个CSV文件合并成一个CSV文件等等。手动操作往往费时费力,因此可以通过编写Python脚本实现自动化合并操作。 二、实现过程 Python实现自动化文件合并的…

    python 2023年5月19日
    00
  • 深入浅析 C++ 调用 Python 模块

    当我们需要使用Python第三方库或者调用Python脚本时,我们可以选择使用C++来完成这样的需求。本文将为您提供如何使用C++调用Python模块的完整攻略。 环境配置 首先我们需要确认系统环境中是否已经安装Python以及需要使用的Python第三方库。若没有安装,则需要前往Python官网进行下载并安装;若已经安装,可以通过pip或conda安装相应…

    python 2023年5月14日
    00
  • 跟老齐学Python之啰嗦的除法

    在Python中,除法运算符/的结果可能会出现小数,这是因为Python默认使用浮点数进行除法运算。但是在某些情况下,我们需要使用整数进行除法运算,这时候就需要使用Python中的整除运算符//。 下面是“跟老齐学Python之啰嗦的除法”的完整攻略: 1. Python中的除法运算符 在Python中,除法运算符/的结果可能会出现小数,例如: >&g…

    python 2023年5月14日
    00
  • python算法练习之抓交通肇事犯

    下面是“Python算法练习之抓交通肇事犯”的完整攻略,包含两个示例说明。 题目描述 假设有一辆车在某个时间段内在某个区域内行驶,现需要根据车辆的行驶迹和时间,找出是否有交通肇事犯罪嫌疑人。具体要求如下: 如果车辆在某个时间段内在个区域内行驶,并且在该区域内发生了交通事故,则认为该车辆有嫌疑。 如果车辆某个段内在某个区域内行驶,并且在该区域内停车时间超过一定…

    python 2023年5月14日
    00
  • Python得到弹幕并保存到Excel中怎么设置

    下面我将为你详细讲解Python如何获取弹幕并保存到Excel中。这个过程大致可以分为两个步骤: 获取弹幕数据 弹幕从哪里来?我们可以通过访问一些弹幕网站,例如B站或Acfun网站,获取弹幕数据。这里我以B站为例,首先我们需要找到弹幕API的地址,这里我们可以使用Fiddler等抓包工具,来获取弹幕信息相关的请求地址和参数。这里我提供一个B站获取弹幕API的…

    python 2023年5月13日
    00
  • IPython库中的display函数的简介、使用方法、应用案例详细攻略

    IPython库中的display函数的简介、使用方法、应用案例详细攻略 IPython是一个交互式的Python编程环境,它提供了许多有用的工具和函数,其中一个重要的函数是display函数。display函数可以用于在IPython中显示各种类型的对象,包括文本、图像、音频和视频等。本攻略将介绍display函数的简介、使用方法和应用案例。 简介 dis…

    python 2023年5月15日
    00
  • python获取linux系统信息的三种方法

    下面是详细的攻略: Python获取Linux系统信息的三种方法 在编写Python程序时,有时需要获取Linux系统的信息。本文将介绍三种常见的方法来获取Linux系统信息。 1. 使用commands模块 使用commands模块可以方便地获取Linux系统的信息。这个模块已经被Python将近10年废弃了,替换方案推荐使用subprocess模块。 以…

    python 2023年5月30日
    00
合作推广
合作推广
分享本页
返回顶部