AI基础 OpenCV PIL Skimage你pick谁 (ai基础知识)
本文目录导航:
- 【AI基础】OpenCV,PIL,Skimage你pick谁
- Python图像解决|scikit-image数字图像解决(读取显示裁剪、二值化、图片消息、灰度图、扭转图片大小等)
- 图像解决库Skimage装置与经常使用
【AI基础】OpenCV,PIL,Skimage你pick谁
在深度学习图像解决中,对图像的基本操作如读取、保留、缩放、裁剪、旋转和色彩转换是基础。
本文将着重引见OpenCV、PIL和scikit-image这三个工具在这些操作上的运行,并对比它们之间的纤细差异。
首先,关于图像的解决,OpenCV、PIL和skimage都提供了相应的函数。
OpenCV经常使用imread(),PIL则经过open()方法读取图片。
在PIL中,导入Image模块是启动一切操作的前提。
例如,读取图片的代码如下:pythonimport Imageimg = (d:\picture\)图像可视化和消息失掉也很直观,可以借助matplotlib的show()方法。
检查图片格局和大小,只有调用图片对象的方法。
在图像操作上,PIL提供crop()用于裁剪,resize()调整尺寸,rotate()旋转,以及convert()成功色彩变动。
例如,裁剪代码是:pythoncropped_img = ((b1, a1, b2, a2))OpenCV和PIL在色彩空间转换方面有所不同,OpenCV自动BGR格局,而PIL则为RGB。
skimage的读取默以为RGB,且读取灰度图时会归一化像素值。
总结来说,OpenCV适宜须要底层操作和高效性能的场景,PIL则因其易用性和丰盛的图像解决配置常被选用,skimage则适宜对图像解决有高度准确要求的状况。
熟练把握这些工具的差异,有助于依据详细需求灵敏选用和运行。
Python图像解决|scikit-image数字图像解决(读取显示裁剪、二值化、图片消息、灰度图、扭转图片大小等)
scikit-image库在Python图像解决中表演着关键角色,它提供了丰盛的工具和函数来解决数字图像。
以下是一些经常出现操作的示例。
首先,咱们可以读取并显示外部图像。
接着,可以将图像转换为灰度图,同时读取内置星空图片,并显示其消息。
哈勃深空图像数据来自模块,它提醒了宇宙中的悠远星系,对钻研宇宙早期形态至关关键。
此外,咱们还可以读取内置小猫图片的白色通道,并对它启动二值化解决。
这个环节触及从skimage库中导入必要的模块,如io用于图像输入输入,data提供示例图像,color蕴含色彩空间转换等配置。
在解决内置小猫图片时,咱们首先经常使用()加载图像,并转换为灰度图像。
而后,经过嵌套循环对每个像素的灰度值启动判别,成功二值化。
最后,经常使用()显示二值化后的图像。
此外,咱们还可以对图片启动裁剪操作,将RGB图像转换为灰度图,并经常使用skimage的()绘制图片。
该函数在Matplotlib库中创立了一个图像对象,并在坐标轴上绘制二维图像数据。
关于subplot显示多视图,咱们可以经常使用subplots()函数。
此外,咱们还学习了如何扭转图片大小,经常使用rescale缩放图片,并注用意片的维度。
例如,咱们可以将图片增加为原来的一半行数和四分之一列数。
最后,咱们可以经常使用rotate()函数旋转图片。
在启动图像解决时,在matplotlib中用于将图像以灰度形式显示。
它将输入数据的值转换为灰度等级,有助于凸显图像的亮度散布和纹理特色。
图像解决库Skimage装置与经常使用
scikit-image是基于scipy的一款图像解决包,它将图片作为numpy数组启动解决,是十分好的数字图像解决工具。
其全称是scikit-image SciKit (toolkit for SciPy) ,对启动了裁减,提供了更多的图片解决配置。
skimage包由许多的子模块组成,各个子模块提供不同的配置。
关键子模块如下:官方 检查image文件的消息 skimage读进去的图片可以间接img[0][0]取得,然而必定记住它的格局. 关上的图片类型为np数组, 值为0-255,尺寸为 H,W,C,resize后值为0-1 方法一()显示图像 方法二()显示图像 图片读入程序中后,是以numpy数组存在的。
因此对numpy数组的一切配置,对图片也实用。
对数组元素的访问,实践上就是对图片像素点的访问。
输入小猫图片的G通道中的第20行30列的像素值 白色单通道访问 经过对数组的裁剪,就可以成功对图片的裁剪。