Pythonを使用した画像処理

Joseph Gordon-Levitt
Joseph Gordon-Levittオリジナル
2025-03-03 10:18:13767ブラウズ

PythonのScikit-Imageライブラリを使用した画像処理:実用的なガイド

1911年の新聞編集者は、「写真を使ってください。千語の価値がある」と有名に述べました。 これは、日常の写真からMRIや超音波などの専門的な医療スキャンまで、コミュニケーションで機能する重要なロール画像がコミュニケーションで再生されることを強調しています。 画像の獲得方法は大きく異なります。皮膚がんの画像​​のためのdermatoscopes、個人的な写真用のデジタルカメラ、カジュアルなスナップショット用のスマートフォン。ただし、多くの場合、獲得プロセスに起因するぼやけなどの画像の欠陥が発生する可能性があります。 それでは何? 既存の医療画像を扱うとき、再イメージングは​​選択肢ではありません。これは、画像処理手法が非常に貴重になる場所です オックスフォード辞書で定義されているように、

画像処理は、「特に品質を向上させるために、デジタル化された画像の分析と操作」です。 このデジタル操作にはプログラミング言語の使用が必要であり、その強力なライブラリを備えたPythonは優れた選択です。 このチュートリアルでは、Pythonのライブラリを使用した基本的な画像処理タスクを示しています。

画像のグレイスケーリングscikit-image

ライブラリは画像操作を簡素化します。 まず、カラー画像をグレースケールに変換することから始めます。 ライブラリの関数は画像をロードし、

を輝度計算を使用してグレイスケールに変換します:

scikit-image imread()rgb2gray()

これがPythonコードです:

L = 0.2125*R 0.7154*G 0.0721*B

結果のグレースケール画像:

from skimage import io, color

img = io.imread('pizzeria.png')
img_grayscale = color.rgb2gray(img)

io.imsave('gray-pizzeria.png', img_grayscale)
io.imshow(img_grayscale)
io.show()

フィルターの適用Image Processing Using Python

画像フィルタリングは、エッジの強化、シャープニング、平滑化などの操作を通じて画像を強化します。 エッジ検出にSOBELフィルターを適用します:

(注:画像が2Dでない場合は警告が表示される場合があります。適切な画像形式を確認してください。)

sobelフィルタリングされた画像:
from skimage import io, filters

img = io.imread('pizzeria.png')
sobel_a = filters.sobel(img)

io.imsave('sobel-filter.png', sobel_a)

他のフィルターは、ぼやけるためのガウスフィルターのように、さらなる画像操作機能を提供します。 標準偏差パラメーターは、ぼやけた強度を制御します

Image Processing Using Python ガウスフィルターの結果(σ= 10およびσ= [20,1]):

from skimage import io, color, filters

img = io.imread('pizzeria.png')
gaussian_a = filters.gaussian(img, 10)
gaussian_b = filters.gaussian(img, [20, 1])

io.imsave('gaussian-filter-10.png', gaussian_a)
io.imsave('gaussian-filter-20-1.png', gaussian_b)

しきい値Image Processing Using Python Image Processing Using Python

しきい値は、グレースケールの画像をバイナリ画像(白黒)に変換します。 平均グレイスケール値をしきい値として使用します:

しきい値画像:

Image Processing Using Python

結論

scikit-image幅広い画像処理機能を提供しています。 より高度な技術については、その広範なドキュメントを調べてください。 Pythonの学習に興味がある人のために、包括的なチュートリアルはすぐに利用できます。

以上がPythonを使用した画像処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。