IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 【Python】推荐五个常用的图像处理库 -> 正文阅读

[人工智能]【Python】推荐五个常用的图像处理库

1. 引言

Python目前是世界上使用最多的编程语言之一。它能够以更少的工作量和更少的代码行数来完成许多事情。它还可以使用很少的代码行来方便地编辑和创建图像。
本文重点介绍,在图像处理领域,我们最常使用的一些Python开源库。
闲话少说,我们直接开始吧!

2. Pillow库

Pillow是Python中常用的图像处理库之一。它提供了许多操作图像的函数,如调整大小、滤波操作等。这是Python中最好用的图像处理库之一。唯一的缺点是它已经很久没有更新了。
安装安库的命令如下:

pip install pillow

这里通过一个简单的代码片段来展示这个库是如何工作的。让我们使用Pillow来增加对比度,让深色图像变得更漂亮一些。
代码如下:

from PIL import Image,ImageEnhance
img_original = Image.open("dark.jpg")
img_original.show("Original Image")
img = ImageEnhance.Contrast(img_original)
img.enhance(3.8).show("Image With More Contrast")

运行效果如下:
在这里插入图片描述

3. Numpy库

NumPy代表Numerical Python。它是一个Python库,可以帮助我们处理所有类型的科学计算。NumPy是在执行任何类型的数据预处理或数据科学相关任务时导入的第一个库。此外,它还可以用来进行图像处理操作。
使用NumPy,我们可以轻松地操纵图像的RGB值。举例如下:

from PIL import Image
import numpy as np
img = np.array(Image.open('0.jpg'))
img_red = img.copy()
img_red[:, :, (1, 2)] = 0
img_green = img.copy()
img_green[:, :, (0, 2)] = 0
img_blue = img.copy()
img_blue[:, :, (0, 1)] = 0
img_ORGB = np.concatenate((img,img_red, img_green, img_blue), axis=1)
img_converted = Image.fromarray(img_ORGB)
img_converted.show() ## Combine Image Contains all four images

运行结果如下:
在这里插入图片描述

4. Scipy库

Scipy是Python中主要用于数学和科学计算的库,但同时它也可以用于处理多维图像。这是一个非常大的库,包含许多科学计算的工具。当使用Scipy库进行图像处理时,只需导入scipy.ndimage模块即可。

安装scipy库的命令如下:

pip install scipy

使用该库进行高斯模糊的样例代码如下:

from scipy import misc
import matplotlib.pyplot as plt
fig = plt.figure()
plt.gray()  # show the filtered result in grayscale
ax1 = fig.add_subplot(121)  # left side
ax2 = fig.add_subplot(122)  # right side
ascent = misc.ascent()
result = gaussian_filter(ascent, sigma=5)
ax1.imshow(ascent)
ax2.imshow(result)
plt.show()

运行结果如下:
在这里插入图片描述

5. Opencv库

OpenCV是最常用的一种图像处理库,可以方便地与网络摄像头、图像和视频进行交互。它可以执行多种实时任务,于2000年首次发布。它因其简单性和代码可读性而出名。目前,它主要用于计算机视觉任务,如人脸检测和识别、目标检测等。
安装该库的命令如下:

pip install opencv-python

使用该库,进行crop操作的样例如下:

import cv2
img = cv2.imread("images/test.jpg")
imgCropped = img[50:283,25:190]
shape = imgCropped.shape
print(shape[0])
imgCropped = cv2.resize(imgCropped,(shape[0]*12//10,shape[1]*2))
cv2.imshow("Image cropped",imgCropped)
cv2.imshow("Image",img)
cv2.waitKey(0)

运行结果如下:
在这里插入图片描述

6. Pgmagick库

Pgmagick是Python库中GraphicsMagick的补充,它提供了许多图像处理的功能,比如调整大小、旋转、锐化、渐变等操作。

安装pgmagick的命令如下:

pip install pgmagick

下面是使用该库进行缩放的样例代码:

from pgmagick.api import Image 
  
img = Image('fox.png') 
  
# scaling image up to 1.5x 
img.scale((150, 100), 'fox_scaled')

上述代码的运行结果如下:
在这里插入图片描述

7. 总结

本文重点介绍了在Python中进行图像处理的五个常用的开源库,这五个库功能强大,包含各式各样的图像处理函数,极大地提升了开发效率,推荐大家积极使用。

在这里插入图片描述
关注公众号《AI算法之道》,获取更多AI算法资讯。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-26 15:18:31  更:2022-05-26 15:19:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:41:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码