Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >整理 Python 中的图像处理利器(共10个)

整理 Python 中的图像处理利器(共10个)

作者头像
Python知识大全
发布于 2021-10-26 05:33:27
发布于 2021-10-26 05:33:27
1.3K00
代码可运行
举报
文章被收录于专栏:Python 知识大全Python 知识大全
运行总次数:0
代码可运行

当今世界充满了各种数据,而图像是其中高的重要组成部分。然而,若想其有所应用,我们需要对这些图像进行处理。图像处理是分析和操纵数字图像的过程,旨在提高其质量或从中提取一些信息,然后将其用于某些方面。

图像处理中的常见任务包括显示图像,基本操作(如裁剪、翻转、旋转等),图像分割,分类和特征提取,图像恢复和图像识别等。Python 之成为图像处理任务的最佳选择,是因为这一科学编程语言日益普及,并且其自身免费提供许多最先进的图像处理工具。

让我们看一下用于图像处理任务的一些常用 Python 库。

# 1. scikit Image

scikit-image 是一个基于 numpy 数组的开源 Python 包。它实现了用于研究、教育和工业应用的算法和实用程序。即使是对于那些刚接触 Python 的人,它也是一个相当简单的库。此库代码质量非常高并已经过同行评审,是由一个活跃的志愿者社区编写的。

用法举例:图像过滤、模版匹配

可使用“skimage”来导入该库。大多数功能都能在子模块中找到。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import matplotlib.pyplot as plt%matplotlib inlinefrom skimage import data,filtersimage = data.coins()# ... or any other NumPy array!edges = filters.sobel(image)plt.imshow(edges, cmap='gray')

模版匹配(使用 match_template 函数)

# 2. Numpy

Numpy 是 Python 编程的核心库之一,支持数组结构。图像本质上是包含数据点像素的标准 Numpy 数组。因此,通过使用基本的 NumPy 操作——例如切片、脱敏和花式索引,可以修改图像的像素值。可以使用 skimage 加载图像并使用 matplotlib 显示。

用法举例:使用 Numpy 来对图像进行脱敏处理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import numpy as npfrom skimage import dataimport matplotlib.pyplot as plt%matplotlib inlineimage = data.camera()type(image)numpy.ndarray #Image is a numpy arraymask = image < 87image[mask]=255plt.imshow(image, cmap='gray')

# 3. Scipy

scipy 是 Python 的另一个核心科学模块,就像 Numpy 一样,可用于基本的图像处理和处理任务。值得一提的是,子模块 scipy.ndimage 提供了在 n 维 NumPy 数组上运行的函数。该软件包目前包括线性和非线性滤波、二进制形态、B 样条插值和对象测量等功能。

用法举例:使用 SciPy 的高斯滤波器对图像进行模糊处理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from scipy import misc,ndimageface = misc.face()blurred_face = ndimage.gaussian_filter(face, sigma=3)very_blurred = ndimage.gaussian_filter(face, sigma=5)#Resultsplt.imshow(<image to be displayed>)

# 4. PIL/ Pillow

PIL (Python Imaging Library) 是一个免费的 Python 编程语言库,它增加了对打开、处理和保存许多不同图像文件格式的支持。然而,它的发展停滞不前,其最后一次更新还是在 2009 年。幸运的是, PIL 有一个正处于积极开发阶段的分支 Pillow,它非常易于安装。Pillow 能在所有主要操作系统上运行并支持 Python 3。该库包含基本的图像处理功能,包括点操作、使用一组内置卷积内核进行过滤以及颜色空间转换。

用法举例:使用 ImageFilter 增强 Pillow 中的图像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from PIL import Image, ImageFilter#Read imageim = Image.open( 'image.jpg' )#Display imageim.show()from PIL import ImageEnhanceenh = ImageEnhance.Contrast(im)enh.enhance(1.8).show("30% more contrast")

# 5. OpenCV-Python

OpenCV(开源计算机视觉库,Open Source Computer Vision Library)是计算机视觉应用中使用最广泛的库之一。OpenCV-Python 是 OpenCV 的 python API。OpenCV-Python 不仅速度快(因为后台由用 C / C ++ 编写的代码组成),也易于编码和部署(由于前端的 Python 包装器)。这使其成为执行计算密集型计算机视觉程序的绝佳选择。

用法举例:使用 Pyramids 创建一个名为'Orapple'的新水果的功能

# 6. SimpleCV

SimpleCV 也是用于构建计算机视觉应用程序的开源框架。通过它可以访问如 OpenCV 等高性能的计算机视觉库,而无需首先了解位深度、文件格式或色彩空间等。学习难度远远小于 OpenCV,并且正如他们的标语所说,“ 它使计算机视觉变得简单 ”。支持 SimpleCV 的一些观点是:

  • 即使是初学者也可以编写简单的机器视觉测试
  • 摄像机、视频文件、图像和视频流都可以交互操作

用法举例

07

Mahotas

Mahotas 是另一个用于 Python 的计算机视觉和图像处理库。它包含传统的图像处理功能(如滤波和形态学操作)以及用于特征计算的更现代的计算机视觉功能(包括兴趣点检测和局部描述符)。该接口使用 Python,适用于快速开发,但算法是用 C++ 实现的,并且针对速度进行了优化。Mahotas 库运行很快,它的代码很简单,(对其它库的)依赖性也很小。建议阅读他们的官方文档以了解更多内容。

用法举例

Mahotas 库使用简单的代码来完成工作。对于“ 寻找 Wally ”的问题,Mahotas 完成的得很好,而且代码量非常小。

# 8. SimpleITK

ITK (Insight Segmentation and Registration Toolkit) 是一个开源的跨平台系统,为开发人员提供了一整套用于图像分析的软件工具。其中, SimpleITK 是一个建立在 ITK 之上的简化层,旨在促进其在快速原型设计、教育以及脚本语言中的使用。SimpleITK 是一个包含大量组件的图像分析工具包,支持一般的过滤操作、图像分割和配准。SimpleITK 本身是用 C++ 编写的,但可用于包括 Python 在内的大量编程语言。

这里有大量说明了如何使用 SimpleITK 进行教育和研究活动的 Jupyter notebook。notebook 中演示了如何使用 SimpleITK 进行使用 Python 和 R 编程语言的交互式图像分析。

用法举例

下面的动画是使用 SimpleITK 和 Python 创建的可视化的严格 CT / MR 配准过程。

# 9. pgmagick

pgmagick 是 GraphicsMagick 库基于 Python 的包装器。GraphicsMagick 图像处理系统有时被称为图像处理的瑞士军刀。它提供了强大而高效的工具和库集合,支持超过 88 种主要格式图像的读取、写入和操作,包括 DPX,GIF,JPEG,JPEG-2000,PNG,PDF,PNM 和 TIFF 等重要格式。

用法举例:缩放、边缘提取

缩放

边缘提取

# 10. Pycairo

Pycairo 是图形库 cairo 的一组 python 绑定。Cairo 是一个用于绘制矢量图形的 2D 图形库。矢量图形很有趣,因为它们在调整大小或进行变换时不会降低清晰度。Pycairo 库可以从 Python 调用 cairo 命令。

用法:Pycairo 可以绘制线条、基本形状和径向渐变

以上就是一些免费的优秀图像处理 Python 库。有些很知名,你可能已经知道或者用过,有些可能对你来说还是新的。那正好现在就上手操作一下,试一试吧!

---------End---------

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python 知识大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【Python】教你彻底了解Python中的图像处理与计算机视觉
​​​图像处理与计算机视觉是人工智能的两个重要分支,旨在通过计算机对图像进行处理和分析,从中提取有用的信息。在Python中,有许多强大的库和工具可以用于图像处理与计算机视觉。本文将深入探讨Python在图像处理与计算机视觉中的应用,涵盖图像处理与计算机视觉的基本概念、常用的图像处理库、基本图像操作、图像滤波与变换、特征检测与匹配、对象检测与识别,以及一些实际应用示例。
E绵绵
2025/05/25
1910
简单易懂最常用的Python图像处理库
当今世界充满了各种数据,而图像是其中高的重要组成部分。然而,若想其有所应用,我们需要对这些图像进行处理。图像处理是分析和操纵数字图像的过程,旨在提高其质量或从中提取一些信息,然后将其用于某些方面。
商业新知
2019/06/11
2.6K0
简单易懂最常用的Python图像处理库
十个python图像处理工具
【磐创AI导读】:本篇文章为大家介绍了十个python图像处理工具,希望对大家有所帮助。想要获取更多的机器学习、深度学习资源,欢迎大家点击上方蓝字关注我们的公众号:磐创AI。
磐创AI
2019/09/03
1.7K0
十个python图像处理工具
10个Python图像编辑工具,学好python就靠它们!
当今的世界充满了数据,而图像数据就是其中很重要的一部分。但只有经过处理和分析,提高图像的质量,从中提取出有效地信息,才能利用到这些图像数据。
一墨编程学习
2019/04/22
1.4K0
10个Python图像编辑工具,学好python就靠它们!
常用的十大python图像处理工具
今天,在我们的世界里充满了数据,图像成为构成这些数据的重要组成部分。但无论是用于何种用途,这些图像都需要进行处理。图像处理就是分析和处理数字图像的过程,主要旨在提高其质量或从中提取一些信息,然后可以将其用于某种用途。
AI研习社
2019/07/04
1.4K0
常用的十大python图像处理工具
技能 | Python处理图像10大经典库
scikit-image是一个与numpy数组配合使用的开源Python包,在学术研究、教育和行业领域都可应用。
小白学视觉
2022/04/06
1.3K0
技能 | Python处理图像10大经典库
10 个不可不知的 Python 图像处理工具 !
今天的世界充满了数据,图像是这些数据的重要组成部分。但是,在使用它们之前,必须对这些数字图像进行处理 - 分析和操作,以提高其质量或提取一些可以使用的信息。
小小詹同学
2019/05/17
1K0
收藏!10 个 Python 图像处理工具
今天的世界充满了数据,图像是这些数据的重要组成部分。但是,在使用它们之前,必须对这些数字图像进行处理 - 分析和操作,以提高其质量或提取一些可以使用的信息。
网名重要么
2023/06/07
5210
收藏!10 个 Python 图像处理工具
10个Python图像处理工具分享
来源商业新知网,原标题:干货整理!10个Python图像处理工具,入门必看,提效大法 | 资源
商业新知
2019/05/31
1.1K0
10个Python图像处理工具分享
10个不得不知的Python图像处理工具,非常全了!
10个常用的可以进行图像处理的Python库的介绍,可能有些你还没用过,可以试试看!
小白学视觉
2019/06/20
9680
10个不得不知的Python图像处理工具,非常全了!
10个Python图像处理工具
scikit-image是一个与numpy数组配合使用的开源Python包,在学术研究、教育和行业领域都可应用。
量子位
2019/05/30
1.1K0
10 个图像处理的Python库
Pillow是一个通用且用户友好的Python库,提供了丰富的函数集和对各种图像格式的支持,使其成为开发人员在其项目中处理图像的必要工具。
数据STUDIO
2023/09/04
7230
10 个图像处理的Python库
10个图像处理的Python库
在这篇文章中,我们将整理计算机视觉项目中常用的Python库,如果你想进入计算机视觉领域,可以先了解下本文介绍的库,这会对你的工作很有帮助。
deephub
2023/08/30
5020
10个图像处理的Python库
Python机器学习、深度学习库总结(内含大量示例,建议收藏)
目前,随着人工智能的大热,吸引了诸多行业对于人工智能的关注,同时也迎来了一波又一波的人工智能学习的热潮,虽然人工智能背后的原理并不能通过短短一文给予详细介绍,但是像所有学科一样,我们并不需要从头开始”造轮子“,可以通过使用丰富的人工智能框架来快速构建人工智能模型,从而入门人工智能的潮流。人工智能指的是一系列使机器能够像人类一样处理信息的技术;机器学习是利用计算机编程从历史数据中学习,对新数据进行预测的过程;神经网络是基于生物大脑结构和特征的机器学习的计算机模型;深度学习是机器学习的一个子集,它处理大量的非结构化数据,如人类的语音、文本和图像。因此,这些概念在层次上是相互依存的,人工智能是最广泛的术语,而深度学习是最具体的:
润森
2022/09/22
3.1K0
Python机器学习、深度学习库总结(内含大量示例,建议收藏)
用于图像处理的Python顶级库 !!
正如IDC所指出的,数字信息将飙升至175ZB,而这些信息中的巨大一部分是图片。数据科学家需要(预先)测量这些图像,然后再将它们放入人工智能和深度学习模型中。在愉快的部分开始之前,他们需要做重要的工作。
JOYCE_Leo16
2024/03/19
3240
用于图像处理的Python顶级库 !!
【干货】计算机视觉实战系列08——用Python做图像处理
【导读】在前面几讲中,专知成员Hui介绍了PIL、Matplotlib、Numpy、SciPy等Python图像处理的工具包。这一讲中,我们将介绍一个具体的实例——图像去噪,作为前面几讲的总结。 【干货】计算机视觉实战系列01——用Python做图像处理(基本的图像操作和处理) 【干货】计算机视觉实战系列02——用Python做图像处理(Matplotlib基本的图像操作和处理) 【干货】计算机视觉实战系列03——用Python做图像处理(Numpy基本操作和图像灰度变换) 【干货】计算机视觉实战系列04—
WZEARW
2018/06/05
1.3K0
Python数字图像处理-3种图像读取方式总结
学习数字图像处理,第一步就是读取图像。这里我总结下如何使用 opencv3,scikit-image, PIL 图像处理库读取图片并显示。
嵌入式视觉
2022/09/05
1.6K0
Python数字图像处理-3种图像读取方式总结
【干货】计算机视觉实战系列07——用Python做图像处理
这一次继续为大家详细讲解SciPy库的使用以及图像导数实战。
WZEARW
2018/04/25
2.4K4
【干货】计算机视觉实战系列07——用Python做图像处理
最佳的图像处理工具python扩展库
在当今这个社会,数据就是财富,数据就是金钱,一切都离不开数据,我们看到的一切图片,本质上都是数据,如何理解和处理这些图像数据是很大的难题,不过庆幸的是,在 python 中,已经有了非常丰富的扩展来帮助我们处理这些图片。
程序那些事儿
2023/03/07
6380
最佳的图像处理工具python扩展库
一文总结数据科学家常用的Python库(下)
【磐创AI导读】:本系列文章为大家总结了24个热门的python库,查看上篇。想要获取更多的机器学习、深度学习资源,欢迎大家点击上方蓝字关注我们的公众号:磐创AI。一文总结数据科学家常用的Python库(上)
磐创AI
2019/07/26
1.4K0
一文总结数据科学家常用的Python库(下)
相关推荐
【Python】教你彻底了解Python中的图像处理与计算机视觉
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验