python 图像处理(一)

简介: python 图像处理(一)

图像处理


简介:图像处理,利用计算机算法,对图像进行分析/操作的处理技术,包括图像的存储、表示、提取、操作、增强、复原和解释。


1.图像处理概念


图像概念

最简单图像(单通道,二值或单色,灰度或黑白图像f(x,y))

彩色RGB图像(三通道(r,g,b))

描述图像方法:空间数字化、振幅数字化

空间数字化:空间坐标(x,y)数字化图像采样

振幅数字化:灰度量化


20210621235619401.png

2.图像处理基本流程


图像处理流程基本步骤如下:


  1. 图像的获取与存储
  2. 加载图像数据至内存并存盘
  3. 操作、增强和复原
    (1)图像转换(灰度转化)
    (2)图像质量增强(模型变清晰)
    (3)图像去噪,图像复原
  4. 图像分割
  5. 信息提取/表示
  6. 图像理解/图像结束
    (1)图像分类
    (2)对象识别
  7. 20210622000911375.png

3.图像输入/输出显示

PIL读取、保存和显示



from PIL import Image,ImageFont,ImageDraw
im=Image.open("data.jpg")
print(im.width,im.height,im.mode,im.format,type(im))
#显示图像
im.show()
#用PIL函数convert()将彩色RGB转化为灰度,保存
im_g=im.convert('L')
im_g.save('data.jpg')


matplotlib读取、保存和显示


import matplotlib.image as mpimg
import matplotlib.pylab as plt
im=mpimg.imread('data.jpg')
print(im.shape,im.dtype,type(im))
plt.figure(figsize=(10,10))
plt.imshow(im)
plt.axis('off')
plt.show()

scikit-image读取、保存和显示


im=imread('data.jpg')
print(im.shape,im.dtype,type(im))
#从图片RGB转化为HSV格式
hsv=color.rgb2hsv(im)
hsv[:,:,1]=0.5
im1=color.hsv2rgb(hsv)
imsave('data.jpg')


4.图像类型


图像有如下类型:


(1)单通道图像:每个像素由单个值表示,包括二值(单色,每个像素由0~1组成)和灰度图像(每个像素由8位表示,其值在0~255)

(2)多通道图像


三通道,RGB图像和HSV都是三通道图像,RGB由三元值(r,g,b),r,g,b分别表示红色、绿色、蓝色的颜值值

四通道图像(r,g,b,a),其中a表示的透明度


图像处理常用操作


一种图像模式转换为另一种图像模式


im=imread('data.jpg')
im_g=color.rgb2gray(im)
plt.subplot(121)
plt.imshow(im,cmap='gray')
plt.axis('off')
plt.subplot(122)
plt.imshow(im_g,cmap='gray')
plt.axis('off')
plt.show()

下图为RGB格式图像转化为YIQ格式的矩阵计算:

20210622212818902.png

图像数据结构转化为图像数据


图像数据结构用scikit-image表示


im=Image.open('data.jpg')
im=np.array(im)
imshow(im)
plt.axis('off')
plt.show()
im=Image.fromarray(im)
imshow(im)


PIL图像操作裁剪与调整尺寸


(1)裁剪

im=Image.open('data.jpg')
im_c=im.crop((175,75,320,200))


(2)调整尺寸


调整为较大图像


im_large=im.resize((im.width*5,im.height*5),Image.BILINEAR)
#这里使用了双线值插值Image.BILINEAR,采样技术放大


调整为较小图像


im_small=im.resize((im.width//5,im.height//5),Image.ANTALIAS)
#这里使用抗混叠技术采样Image.ANTALIAS
• 1
• 2


灰度变化,镜像图像等


相关文章
|
9月前
|
机器学习/深度学习 算法 数据挖掘
Python 图像处理实用指南:6~10
Python 图像处理实用指南:6~10
399 0
|
9月前
|
存储 数据库 计算机视觉
Python图像处理库:学会Pillow再也不用PS啦
Python图像处理库:学会Pillow再也不用PS啦
107 0
|
9月前
|
机器学习/深度学习 人工智能 算法
图像处理与分析:Python中的计算机视觉应用
【4月更文挑战第12天】Python在计算机视觉领域广泛应用,得益于其丰富的库(如OpenCV、Pillow、Scikit-image)和跨平台特性。图像处理基本流程包括获取、预处理、特征提取、分类识别及重建生成。示例代码展示了面部和物体检测,以及使用GAN进行图像生成。
145 2
|
1月前
|
机器学习/深度学习 存储 数据挖掘
Python图像处理实用指南:PIL库的多样化应用
本文介绍Python中PIL库在图像处理中的多样化应用,涵盖裁剪、调整大小、旋转、模糊、锐化、亮度和对比度调整、翻转、压缩及添加滤镜等操作。通过具体代码示例,展示如何轻松实现这些功能,帮助读者掌握高效图像处理技术,适用于图片美化、数据分析及机器学习等领域。
70 20
|
9月前
|
机器学习/深度学习 存储 监控
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
|
1月前
|
机器学习/深度学习 算法 数据可视化
Python的计算机视觉与图像处理
本文介绍了Python在计算机视觉和图像处理领域的应用,涵盖核心概念、算法原理、最佳实践及应用场景。重点讲解了OpenCV、NumPy、Pillow和Matplotlib等工具的使用,并通过代码实例展示了图像读写、处理和可视化的方法。实际应用包括自动驾驶、人脸识别、物体检测等。未来趋势涉及深度学习、边缘计算和量子计算,同时也讨论了数据不足、模型解释性和计算资源等挑战。
|
3月前
|
计算机视觉 开发者 Python
利用Python进行简单的图像处理
【10月更文挑战第36天】本文将引导读者理解如何使用Python编程语言和其强大的库,如PIL和OpenCV,进行图像处理。我们将从基本的图像操作开始,然后逐步深入到更复杂的技术,如滤波器和边缘检测。无论你是编程新手还是有经验的开发者,这篇文章都将为你提供新的视角和技能,让你能够更好地理解和操作图像数据。
|
4月前
|
机器学习/深度学习 算法 计算机视觉
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
164 7
|
4月前
|
算法 数据可视化 计算机视觉
Python中医学图像处理常用的库
在Python中,医学图像处理常用的库包括:ITK(及其简化版SimpleITK)、3D Slicer、Pydicom、Nibabel、MedPy、OpenCV、Pillow和Scikit-Image。这些库分别擅长图像分割、配准、处理DICOM和NIfTI格式文件、图像增强及基础图像处理等任务。选择合适的库需根据具体需求和项目要求。
140 0
|
4月前
|
数据挖掘 计算机视觉 Python
基于Python的简单图像处理技术
【10月更文挑战第4天】在数字时代,图像处理已成为不可或缺的技能。本文通过Python语言,介绍了图像处理的基本方法,包括图像读取、显示、编辑和保存。我们将一起探索如何使用PIL库进行图像操作,并通过实际代码示例加深理解。无论你是编程新手还是图像处理爱好者,这篇文章都将为你打开一扇新窗,让你看到编程与创意结合的无限可能。

热门文章

最新文章