web-dev-qa-db-ja.com

Pythonでの画像処理?

私は最近、少なくとも基本的な画像処理が必要な問題に遭遇しましたが、Pythonでこれを行うことができますか?

81
akdom

最も有名なライブラリは [〜#〜] pil [〜#〜] です。ただし、単に基本的な操作を行う場合は、おそらく、Python ImageMagick のバインディングを使用する方が良いでしょう。 Python。

53
Jim

「画像処理」の意味に応じて、numpyベースのライブラリでより良い選択をすることができます。 mahotasscikits.image 、または scipy.ndimage 。これらはすべてnumpy配列に基づいて機能するため、あるライブラリと別のライブラリの関数を組み合わせて使用​​できます。

私はウェブサイトを開始しました http://pythonvision.org これらの詳細情報があります。

45
luispedro

「標準」科学モジュールに基づいた画像処理へのアプローチもあります:SciPyには画像処理専用のパッケージがあります: scipy。 ndimage 。 Scipyは事実上、標準の一般的な数値計算パッケージです。それは事実上の標準の配列操作モジュールに基づいています NumPy :画像は数値の配列として操作することもできます。画像の表示に関しては、 Matplotlib (「科学三部作」の一部でもあります)により、画像の表示が可能になります 非常に簡単

SciPyは現在も積極的に維持されているため、将来のための良い投資です。さらに、SciPyは現在Python 3でも実行されますが、Python Imaging Library(PIL)では実行されません。

19
Eric O Lebigot
11

pycairo もあり、必要に応じてより適切な場合があります。

7
sgraham

実際には素晴らしい Python Imaging Library(PIL) があります。アンチエイリアス機能を含む既存の画像を変更したり、テキストなどで新しい画像を作成したりできます。また、前述のサイトで提供されているPILハンドブックに まともな入門チュートリアル があります。

6
akdom

カスタム画像処理効果を作成している場合は、PythonPixelsが役立つことがあります。 http://halfhourhacks.blogspot.com/2008/03/pythonpixels.html これは、画像処理の記述と実験を目的としています。

4
jmnben

VIPSは高速で、複数のCPUを使用する必要があります。

https://github.com/libvips/libvips/wiki/Speed-and-memory-use

3
guettli