問題タブ [python-imaging-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2262 参照

python - 切り抜きとサイズ変更のためのPILとPython-GD

後でSeadragonAJAXの画像ピラミッドに変換するカスタム画像を作成しています。画像と画像ピラミッドはPILを使用して作成されます。現在、幅と高さの合計が約32,000,000 x 1000の約100枚の画像の画像と画像ピラミッドを生成するのに数時間かかります(はい、画像は非常に長くて狭いです)。パフォーマンスは、私が試した別のアルゴリズム(つまり、deepzoom.py)とほぼ同じです。python-gdの機能のほとんどが(GDライブラリから)Cでコーディングされているため、パフォーマンスが向上するかどうかを確認する予定です。大幅なパフォーマンスの向上を想定していますが、他の人の意見を聞きたいと思います。特に、PIL(w / Image.ANTIALIAS)ではサイズ変更とトリミングが遅くなります。Python-GDを使用すると、これは大幅に改善されますか?

コメントや提案を事前に感謝します。

編集:PILとpython-GDのパフォーマンスの違いはごくわずかのようです。コードをリファクタリングして、パフォーマンスのボトルネックを減らし、複数のプロセッサのサポートを含めます。Pythonの「マルチプロセッシング」モジュールをテストしました。結果は心強いものです。

0 投票する
1 に答える
1118 参照

python - matplotlib のヒストグラムが上部で切り取られる

matplotlib を使用してヒストグラムを生成する Python プログラムがあります。問題は、生成された画像の上部が切り取られることがあるということです。まず、関連するコードの抜粋を次に示します。pltismatplotlib.pyplotfigis は次のmatplotlib.figureとおりです。

以下のような状況で問題が発生します。に 300 個の要素がgradesあるとします。そのうちの 3 つのビンには 20 個を超える要素があり、残りは 20 個未満です。20 個を超えるものは上部が切り取られ、y 軸は 20 までしか上がりません。ただし、これは常に発生するとは限りません。grades同様の分布を持つ の別の 300 要素は、y 軸のスケーリングがfigsize. また、x 軸は常に正しく表示されることに注意してください。

y 軸を正しくスケーリングし、画像内に収まるバーを生成するにはどうすればよいですか?

0 投票する
1 に答える
3188 参照

browser - S3 に保存された画像のスケーリング

多数の Web サイトの画像ストレージを、無期限にスケーリングできるサービス (S3、CloudFiles など) にプッシュする必要がある状況にあります。この時点まで、Djangoの sorl-thumbnailの助けを借りて Python の Imaging ライブラリを使用して、ユーザーがカスタム サムネイル サイズをオンザフライで生成できるようにしました。

画像を S3 などに移動すると、その場でサムネイルをすばやく作成する機能が失われます。次のいずれかを実行できます。

  1. S3 からソースをダウンロードし、サムネイルをローカルで作成することにより、ゆっくりと実行してください
  2. あらかじめ決められた一連のサムネイル サイズ (Flickr 風) を作成し、それらをすべて S3
    コンにプッシュすることで、事前に実行します。生成できるサイズを制限し、決して使用されない多くのファイルを保存します。
  3. img タグの高さ/幅属性を使用してブラウザのサイズを変更します。
    短所: 必要以上に大きなファイルをダウンロードすることで使用される余分な帯域幅

この時点で、#3 はほとんど欠点のない問題の単純な解決策のように見えます。このウェブサイトからのいくつかの簡単なテストとデータは、品質が予想ほど悪くないことを示しています (アスペクト比が維持されていることを保証できます)。

考慮していない可能性のある他のオプションや欠点について何か提案はありますか?

注: 画像はデジタル写真であり、Web での表示のみに使用されます。サイズは、高さ/幅で 1000 ~ 50 ピクセルの範囲です。

0 投票する
4 に答える
13537 参照

python - Python、Python Image Library 1.1.6 で、サイズを変更せずにキャンバスを拡張するにはどうすればよいですか?

私はおそらくハンドブックで間違ったものを探していますが、画像オブジェクトを取得して、元の画像のサイズを変更 (ストレッチ/スクイッシュ) せずに拡大しようとしています。

おもちゃの例: 200 x 100 の青い四角形を想像してください。次に、何らかの操作を実行すると、200 x 100 の青い四角形が置かれた白い背景で構成される新しい画像オブジェクト 400 x 300 ができました。これがどの方向に拡大するか、または新しい背景色などを制御できる場合のボーナス.

基本的に、繰り返し追加する画像があり、最初はどのサイズになるかわかりません。

元のオブジェクトをつかんで、新しい、少し大きなオブジェクトを作成し、そこに元のオブジェクトを貼り付け、もう少し描画して、繰り返すことが可能だと思います。計算コストがかかりそうです。ただ、これはよくある操作だと思いますので、機能はあるのではないかと思いました。おそらく私は間違っていると思いました。

0 投票する
1 に答える
117 参照

python - 古いイメージからエクステントを保存する

Windows プラットフォームでPIL 1.1.6、Python 2.5 を使用しています。

私のプログラムでは、ポイント操作 (ピクセル値の変更) を実行してから、新しい画像を保存しています。

新しいイメージと古いイメージを読み込んでいるときに、それらが同じ範囲にありません。古い画像の範囲を新しい画像に課す方法は?

私のコードは次のとおりです。

0 投票する
4 に答える
37965 参照

python - Python画像認識

私がやりたいのは、シンプルなアプリの画像認識です。

  1. 与えられた画像(500 x 500)pxs(1色の背景)
  2. 画像には、(50x50)ピクセルの幾何学的図形(三角形または正方形またはsmaleyface :))が1つだけ含まれます。
  3. Pythonは図形の認識を行い、幾何学的図形が何であるかを表示します。

リンクはありますか?ヒントはありますか?APIはありますか?thxs :)

0 投票する
3 に答える
12601 参照

python - PILを使用してサイズを変更し、回転EXIF情報をファイルに適用するにはどうすればよいですか?

Pythonを使用して画像のサイズを変更しようとしています。私のカメラでは、ファイルはすべて横向きに書き込まれます。

exif情報はタグを処理して、画像ビューアに何らかの方法で回転するように要求します。ほとんどのブラウザはこの情報を理解していないので、このEXIF情報を使用して画像を回転させ、他のすべてのEXIF情報を保持したいと思います。

Pythonを使用してそれを行う方法を知っていますか?

EXIF.pyのソースコードを読んで、私はそのようなものを見つけました:

この情報とPILを使用して適用するにはどうすればよいですか?

0 投票する
6 に答える
41426 参照

python - PIL 色を置き換える最良の方法は?

画像から特定の色を削除しようとしていますが、期待どおりに機能していません。ここで見たのと同じことをしようとしましたPILを使用してすべての白いピクセルを透明にしますか? ただし、画質が少し失われるため、削除された場所の周りに奇妙な色のピクセルのゴーストが少し残ります. 3 つの値がすべて 100 未満の場合にピクセルを変更するようなことを試みましたが、画像の品質が低かったため、周囲のピクセルは黒でもありませんでした。

Python で PIL を使用して、色とその周囲のものを置き換えるより良い方法を知っている人はいますか? これはおそらく、オブジェクトを完全に削除するために私が考えることができる唯一の確実な方法ですが、これを行う方法は考えられません.

画像の背景は白で、テキストは黒です。アーティファクトを残さずに、画像からテキストを完全に削除したいとしましょう。

誰かの助けを本当に感謝します!ありがとう

0 投票する
4 に答える
17706 参照

python - PIL イメージから OpenCV イメージを作成するにはどうすればよいですか?

(Python で) OpenCV を使用して画像処理を行いたいのですが、PILImageオブジェクトから開始するcvLoadImage()必要があるため、ファイル名を使用するため、呼び出しを使用できません。

このレシピ ( http://opencv.willowgarage.com/wiki/PythonInterfaceから適応) は動作しませcvSetDataargument 2 of type 'void *'。何か案は?

への最後の引数cvSetDataも間違っていると思いますが、どうあるべきかわかりません。

0 投票する
6 に答える
7229 参照

python - PyQt を PIL イメージに変換する

QImage に画像があり、表示する前に PIL で処理したいと考えています。ImageQT クラスを使用すると PIL イメージを QImage に変換できますが、QImage から PIL イメージに変換するものはないようです。