Python 之 图像预处理(是一篇综合帖子)

 

用于图像管理的Python库
skimage 是一个开源的Python包,它可以和NumPy数组一起工作。它实现了用于研究、教育和工业应用的算法和实用程序。

numpy 提供了对数组的支持。图像,其实就是一个标准的NumPy数组,包含数据点的像素。因此,使用基本的NumPy操作,如切片、蒙版和索引,你可以改变图像像素的值。图像可以使用skimage加载,并使用Matplotlib显示。

scipy是Python的另一个主要科学模块(和NumPy一样),可以用于图像处理的主要任务。特别是scipy.ndimage子模块提供了与NumPy的n维数组一起工作的函数。

PIL/Pillow 是一个Python库,它提供了对多种不同图像文件格式的打开、处理和保存的支持。大多数人使用PIL(fork),它更容易安装,可以运行在所有主要的操作系统上,并且支持Python 3。该库包含基本的图像处理功能,包括点运算、滤波与一组内置卷积核和色彩空间转换。

OpenCV-Python (开源计算机视觉库)是计算机视觉应用最广泛的库之一。OpenCV-Python是OpenCV的Python API。OpenCV-Python不仅速度快,因为后台由C/C++代码组成,而且编码和部署也很容易(得益于Python shell)。

更多: mahotas、Pycairo 等

基本操作
基本操作:访问和修改像素值,访问图像属性,设置图像的区域,分割和合并。
改变颜色空间
几何变换
图像阈值化
平滑图像
形态转换
图像渐变
特征检测:边缘、轮廓、线条、面等。
直方图
图像变换
图像分割
图像内画
提示:在不触及深度学习算法(深度学习方法中单独的计算机视觉块)的情况下,给出基本操作。

管道Pipeline,在这个背景下,我们将研究图像处理操作:从图像中选择一些特征,以后可以用于学习算法。

本节实验室工作的主题
图像变换/平滑(滤镜、变换、卷积)
从图像中选择特征:小波、自动编码器。
线条选择(边缘、聚类、镂空、线条简化)。
...

 

你可能感兴趣的:(Python)