目次
を使用する必要があります。
関数を使用して画像を表示する必要があります。例は次のとおりです。
ホームページ テクノロジー周辺機器 IT業界 Pythonイメージングライブラリで画像を操作します

Pythonイメージングライブラリで画像を操作します

Feb 19, 2025 pm 12:33 PM

Python画像処理ライブラリPIL/枕入りガイド

コアポイント

  • Python Image Processing Library(PIL)は、Pythonインタープリターに画像処理機能を追加し、さまざまな画像ファイル形式をサポートし、Pixelベースの操作、フィルター、画像強化などの標準的な画像処理プログラムを提供する無料のツールです。
  • PIL(1.1.7)の最後のバージョンは2009年にリリースされ、Python 1.5.2-2.7のみをサポートしていますが、Pillowという名前のプロジェクトにはPILコードベースがあり、Python 3.Xのコードベースサポートが追加されています。ほとんどのPythonユーザーにとって実行可能なオプション。
  • PILまたは枕を使用すると、画像の読み取り、画像のグレースケールやその他のタイプに変換する、画像のサイズ変更、画像の保存などのタスクを簡単に実行できます。図書館の包括的なドキュメントには、詳細とチュートリアルが提供されています。
Pythonスキルに関する以前の記事で、Pythonはユーザーに愛するように促すことができる言語であると述べました。

理由の1つは、この言語が多くの時間節約ライブラリを提供していることです。良い例は、この記事で強調されるPython画像処理ライブラリ(PIL)です。

何ができるか

PILは、Pythonインタープリターに画像処理機能を追加し、PPM、PNG、JPEG、GIF、TIFF、BMPなどの複数の画像ファイル形式をサポートする無料のライブラリです。

PILは、次のような多くの標準画像処理/操作プログラムを提供します。

ピクセルベースの操作
  • マスクと透明性治療
  • フィルター(例:ぼかし、輪郭、スムージング、エッジ検出)
  • 画像の強化(たとえば、シャープニング、輝度の調整、コントラスト)
  • ジオメトリ、色、その他の変換
  • 画像にテキストを追加します
  • カット、貼り付け、マージ
  • サムネイルを作成します
pil and枕

PILの問題の1つは、最新バージョン1.1.7が2009年にリリースされ、Python 1.5.2-2.7のみをサポートしていることです。 PILのウェブサイトはPython 3.xの今後のバージョンを約束しますが、その最後のコミットは2011年であり、開発は停止したようです。

幸いなことに、Python 3.xユーザーのすべてが終わったわけではありません。枕と呼ばれるプロジェクトには、PILコードベースが分岐し、Python 3.xのサポートが追加されました。ほとんどの読者がPython 3.xを使用している可能性があることを考えると、この記事は枕の更新に焦点を当てます。

枕のインストール

枕はPython 2.4からPythonの最新バージョンまでPythonをサポートしているため、PILの古いバージョンではなく、枕の設置にのみ焦点を当てます。

MacでPython 私は現在、Mac OS X Yosemite 10.10.5でこのチュートリアルを書いているので、Mac OS Xマシンに枕をインストールする方法について説明します。しかし、心配しないでください。このセクションの最後に、他のオペレーティングシステムに枕を設置する方法について説明するリンクを提供します。 ここでは、Mac OS XにPythonがプリインストールされていることをここで指摘したいと思います。ただし、このバージョンは3.xより早くなる可能性があります。 たとえば、

マシンでは、

端末コマンドを実行すると、python 2.7.10が取得されます。

pythonとpip $ python --version

枕を取り付ける非常に簡単な方法は、PIPを使用することです。

マシンにPIPをインストールしていない場合は、端末に次のコマンドを入力してください。

$ sudo easy_install pip
ログイン後にコピー
ログイン後にコピー
さあ、枕を取り付けるには、端末に次のように入力してください。

簡単ですね。
$ sudo pip install pillow
ログイン後にコピー
私が約束したように、他のオペレーティングシステムに枕を設置するための手順をここに見つけることができます。

いくつかの例

このセクションでは、PILでできる簡単な操作を実証します。 これらのテストを次の画像で実行します:

これらの例に従う場合は、この画像をダウンロードしてください。

Manipulating Images with the Python Imaging Library

画像を読んでください

これは、画像処理タスクで最も基本的な操作です。これは、画像を処理するには、最初に読み取る必要があるためです。 PILを使用すると、以下に示すように、これは簡単に行うことができます:

ここのIMGは、PIL画像モジュールの一部であるOpen()関数によって作成されたPIL画像オブジェクトであることに注意してください。

オープンファイル、文字列、またはタールアーカイブを読み取ることもできます。
from PIL import Image
img = Image.open('brick-house.png')
ログイン後にコピー

画像をグレイスケールに変換し、表示して保存します

ファイルbrick-house.pngはカラー画像です。グレースケールに変換するには、表示してから新しいグレイスケール画像を保存するには、次のことを実行できます。 これを行うには、3つの主要な関数を使用して、convert()、show()、およびsave()に注意してください。グレースケール画像に変換するため、パラメーター「L」はconvert()で使用されます。

以下は、生成された画像です:

from PIL import Image
img = Image.open('brick-house.png').convert('L')
img.show()
img.save('brick-house-gs','png')
ログイン後にコピー

他の画像タイプに変換

Manipulating Images with the Python Imaging Library

取り組んでいる画像はPNGタイプです。 JPGなどの別の画像タイプに変換するとします。これは、save()関数を使用して行うことができます(関数を使用して結果を保存する(ディスクに出力を書き込む)。

画像のサイズを変更します

元の画像のサイズ(サイズ)は440 x 600ピクセルです。サイズを変更して256 x 256ピクセルまでサイ​​ズにしたい場合は、以下を実行できます。
from PIL import Image
img = Image.open('brick-house.png')
img.save('brick-image','jpeg')
ログイン後にコピー

これにより、新しい正方形の画像が生成されます:

ご覧のとおり、これは画像をトリミングするのではなく、目的のサイズに圧縮します。もちろん、適切なアスペクト比を維持しながら画像をトリミングすることもできます。
from PIL import Image
img = Image.open('brick-house.png')
new_img = img.resize((256,256))
new_img.save('brick-house-256x256','png')
ログイン後にコピー

概要

Manipulating Images with the Python Imaging Library このクイックスタートは、PILの表面を導入し、PILライブラリを介してPythonの複雑な画像処理タスクを簡単に達成する方法を示すためにのみ設計されています。

このライブラリでできる他の多くのアクションについては、上記の問題の詳細や便利なチュートリアルを読むことができる包括的な枕のドキュメントで説明されています。

この紹介により、Pythonを使用して画像処理を試みるように促すことを願っています。楽しむ!

Python画像処理ライブラリ(PIL)FAQ(FAQ)< 私のシステムにPython Image Processing Library(PIL)をインストールする方法は?

Python Image Processing Library(PIL)をインストールするには、PythonのパッケージマネージャーであるPIPを使用する必要があります。端末またはコマンドプロンプトを開き、次のコマンドを入力します。 「枕」ライブラリはPILの枝であり、積極的に維持されているため、PILの代わりに「枕」を使用することをお勧めします。 Pythonの複数のバージョンがインストールされている場合は、Python 3に

を使用する必要があります。

PILを使用して画像を開いて表示する方法は? pip install pillow pip3 install pillow PILを使用して画像を開いて表示するには、

関数を使用して画像を開く必要があり、

関数を使用して画像を表示する必要があります。例は次のとおりです。

このコードでは、 'image.jpg'は画像ファイルの名前です。画像ファイルがPythonスクリプトと同じディレクトリにあることを確認するか、画像ファイルへの完全なパスを提供してください。 Image.open() Image.show() PILを使用して画像をサイズ変更する方法は?

$ sudo easy_install pip
ログイン後にコピー
ログイン後にコピー
PILを使用して画像をサイズ変更するには、

関数を使用できます。この関数は、ピクセルの新しいサイズを指定するタプルを受け入れます。例は次のとおりです。

このコードでは、画像サイズは800×800ピクセルにサイズを変更します。

(後続のFAQへの答えは似ており、省略されており、記事の一般的なアイデアを変更しておきます)Image.resize()

以上がPythonイメージングライブラリで画像を操作しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

GOでネットワークの脆弱性スキャナーを構築します GOでネットワークの脆弱性スキャナーを構築します Apr 01, 2025 am 08:27 AM

このGOベースのネットワーク脆弱性スキャナーは、潜在的なセキュリティの弱点を効率的に識別します。 Goの同時機能機能を速度で活用し、サービスの検出と脆弱性のマッチングが含まれます。その能力と倫理を探りましょう

CNCF ARM64パイロット:インパクトと洞察 CNCF ARM64パイロット:インパクトと洞察 Apr 15, 2025 am 08:27 AM

このパイロットプログラム、CNCF(クラウドネイティブコンピューティングファンデーション)、アンペアコンピューティング、Equinix Metal、およびActuatedのコラボレーションであるCNCF GithubプロジェクトのARM64 CI/CDが合理化されます。 このイニシアチブは、セキュリティの懸念とパフォーマンスリムに対処します

AWS ECSとLambdaを備えたサーバーレス画像処理パイプライン AWS ECSとLambdaを備えたサーバーレス画像処理パイプライン Apr 18, 2025 am 08:28 AM

このチュートリアルは、AWSサービスを使用してサーバーレスイメージ処理パイプラインを構築することをガイドします。 APIゲートウェイ、Lambda関数、S3バケット、およびDynamoDBと対話するECS Fargateクラスターに展開されたnext.jsフロントエンドを作成します。 th

2025年に購読する上位21の開発者ニュースレター 2025年に購読する上位21の開発者ニュースレター Apr 24, 2025 am 08:28 AM

これらのトップ開発者ニュースレターを使用して、最新のハイテクトレンドについてお知らせください! このキュレーションされたリストは、AI愛好家からベテランのバックエンドやフロントエンド開発者まで、すべての人に何かを提供します。 お気に入りを選択し、Relを検索する時間を節約してください

See all articles