如何在 Python 中使用 scikit-learn 查看图像的像素值?
数据预处理基本上指的是将所有数据(从各种资源或单个资源收集)收集到通用格式或统一数据集(取决于数据类型)的任务。
由于现实世界中的数据永远不会是理想的,因此数据可能存在缺失单元格、错误、异常值、列不一致等问题。
有时,图像可能未正确对齐,或者可能不清晰或尺寸过大。预处理的目标是消除这些差异和错误。
要获取图像的像素,可以使用名为“flatten”的内置函数。读取图像后,像素值将以数据帧的形式存储。使用“flatten”函数将 RGB 图像的三维转换为一维,并将像素值获取到数据帧中。
无需打印整个数据帧,而是打印数据帧的维度。让我们以上传图像并使用 scikit-learn 库将图像中存在的像素作为数据帧获取为例:
示例
from skimage import io import pandas as pd path = "path to puppy.PNG" img = io.imread(path) print("Image being read") io.imshow(img) print("Image printed on console") my_df = pd.DataFrame(img.flatten()) print("The image pixels dimensions are ") print(my_df.shape)
输出
Image being read Image printed on console The image pixels dimensions are (886104, 1)
解释
导入所需的库。
定义图像存储的路径。
使用“imread”函数访问路径并读取图像。
使用“imshow”函数在控制台上显示图像。
使用“flatten”函数将 RGB 图像的三维转换为一维,并将像素值获取到数据帧中。
无需打印行数过多的数据帧,而是显示数据帧的维度。
可以使用“print(my_df)”查看数据帧。
输出是在控制台上打印图像像素值的数据帧。
广告