Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでscikit-learnを使用して画像をRGBからグレースケールに変換するにはどうすればよいですか?


Scikit-learnは、一般にsklearnとして知られ、機械学習アルゴリズムを実装する目的で使用されるPythonのライブラリです。

ある色空間から別の色空間への画像の変換は、通常、新しく達成された色空間が他の操作を実行するためのより良い入力として証明できるようにするために使用されます。これには、色相、明度、飽和レベルなどの分離が含まれます。画像がRGB表現を使用して表される場合、色相と明度の属性は、チャネルR、G、およびBの線形結合として表示されます。

RGB色空間の画像をグレースケールに変換しようとすると、ピクセル値は赤、緑、青のピクセルの加重和として計算されます。方程式は以下に示されています-

Y = 0.2125 R + 0.7154 G + 0.0721 B

これらの重みは、3つの値すべてに等しい重みを提供する場合と比較して、赤、緑、青の色の人間の知覚をよりよく表すCRTリン光物質によって使用されるため、特に提供されます。

RGB画像をグレースケール画像に変換する方法を見てみましょう-

from skimage import io
import matplotlib.pyplot as plt
from skimage import data
from skimage.color import rgb2gray
from skimage import data
path = "path to puppy_1.JPG"
orig_img = io.imread(path)
grayscale_img = rgb2gray(orig_img)
fig, axes = plt.subplots(1, 2, figsize=(8, 4))
ax = axes.ravel()
ax[0].imshow(orig_img)
ax[0].set_title("Original image")
ax[1].imshow(grayscale_img, cmap=plt.cm.gray)
ax[1].set_title("Grayscale image")
fig.tight_layout()
plt.show()

出力

Pythonでscikit-learnを使用して画像をRGBからグレースケールに変換するにはどうすればよいですか?

説明

  • 必要なライブラリがインポートされます。
  • 画像が保存されるパスが定義されています。
  • 「imread」機能は、パスにアクセスして画像を読み取るために使用されます。
  • 「imshow」機能は、コンソールに画像を表示するために使用されます。
  • 関数「rgb2gray」は、画像をRGB色空間からグレースケール色空間に変換するために使用されます。
  • matplotlibライブラリは、このデータをプロットし、元の画像とグレースケールに変換された後の画像を表示するために使用されます。
  • これはコンソールに表示されます。

  1. Pythonでscikit-learnを使用して画像の輪郭を見つける方法は?

    Scikit-learnは、一般にsklearnとして知られ、機械学習アルゴリズムを実装する目的で使用されるPythonのライブラリです。オープンソースのライブラリであるため、無料でご利用いただけます。このライブラリは、Numpy、SciPy、およびMatplotlibライブラリに基づいて構築されています。 「正方形をマーチング」する方法は、画像の輪郭を見つけるために使用されます。 「skimage」ライブラリの「measure」クラスにある関数「find_contours」が使用されます。この場合、配列に存在する値は線形に補間されます。 このようにして、出力画像の輪郭の精度が大幅に向上し

  2. scikit-learnライブラリを使用してPythonで画像の解像度を取得するにはどうすればよいですか?

    データの前処理とは、基本的に、すべてのデータ(さまざまなリソースまたは単一のリソースから収集される)を共通の形式または統一されたデータセット(データの種類に応じて)に収集するタスクを指します。実際のデータは決して理想的ではないため、データにセルの欠落、エラー、外れ値、列の不一致などが含まれる可能性があります。場合によっては、画像が正しく配置されていないか、鮮明でないか、サイズが非常に大きいことがあります。前処理の目標は、これらの不一致やエラーを取り除くことです。 画像の解像度を取得するには、「shape」という名前の組み込み関数を使用します。画像が読み取られた後、ピクセル値は配列の形式で保存