如何在 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)”檢視資料幀。

  • 輸出是在控制檯上列印影像畫素值的資料幀。

更新於: 2020-12-10

593 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.