問題タブ [indexed-image]

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 投票する
1 に答える
624 参照

python - インデックス付きの pygame.Surfaces のパレットをマージする方法はありますか?

インデックス付きのカラー パレットを持つ Surfaceがあり、それに別のインデックス付きの色の Surface を追加BaseSurfしたいblit(それを と呼びましょうNewSurf)。ただし、BaseSurf のパレットは NewSurf のパレットとは異なり、pygame は不足している色を BaseSurf のパレットに自動的に追加しません。したがって、NewSurf の色を BaseSurf のパレットにマングリングせずに追加する方法が必要です (Surface のピクセルで実際に使用されるパレット インデックスを上書きします)。

このコードを実行すると:

...これが私が見るものです...

私が考えていたものではありません。

--編集:組み合わせたグラフィックは、シーケンスがオフであっても、NewSurf の色を BaseSurf が使用しているものに近づけることに注意してください。右下のブロブは、実際には null 値 (0,0,0,255) を使用して、最も近い色に一致します!

明らかに、NewSurf (右側) のインデックスは BaseSurf に転送されています。これは正確に間違っているわけではありませんが、私が望んでいるものでもありません。NewSurf を BaseSurf にブリットして、修正した画像の正確なカラー データを保持するにはどうすればよいですか (ただし、インデックス付きのカラー画像は保持します)。

これは、同じ意味での別の (未回答の) 質問です。

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

python - インデックス付きのサーフェスは、アルファ値 (255 以外) を持つパレットをサポートしていますか?

を呼び出すとmyIndexedSurface.get_palette()、32 ビット RGBA 値のリストが返されます。アルファ値が含まれているため、透明効果を伴うパレット インデックスを設定して使用することもできるのではないかと考えました。これらのサーフェスは、フル深度 (32 ビット) のピクセル データを持つサーフェスよりも効率的にオーバーレイまたはマスクとしてブリットできます。

ただし、これまでのところ、パレット要素のアルファ値はロックされているようで255、私が試した方法では変更されません。

  • .set_palette_at(idx, (r,g,b,A))rg、および を正しく設定しますが、 の値bに関係なく、アルファ値を 255 のままにしAます。

  • .set_palette(somePalette)RGBAタプル要素に 255 以外のアルファ値があるValueError: takes an alpha value of 255場合に発生します。somePalette

私がやろうとしていることは可能ですか?各パレットリスト要素のアルファ値は純粋に装飾的なもので、24 (RGB) ではなく 32 ビット (RGBA) ピクセルデータを期待する他のプロセスでより簡単に使用できるのでしょうか?

Pygame のインデックス付きサーフェスは、そもそもこの程度の複雑さを処理する機能を備えていない可能性があるように感じますが、そうすべきではない理由を考えたり見つけたりすることもできませ。おそらく、Pygame にはspecial_flagsこの目的のために神秘的なものが 1 つありますか?

Surface 自体を初期化しようmyIndexedSurface = pygame.Surface(surfSize).convert(8)myIndexedSurface = pygame.Surface(surfSize, flags=pygame.SRCALPHA).convert(8)しましたが、効果がありませんでした。

私はまだPILまたはPygame のPixelArray解決策を見ていません。

0 投票する
0 に答える
386 参照

image - インデックス付きイメージを MATLAB に保存する

ポイントカースで表示されるこの画像がありますここに画像の説明を入力

X、Y インデックス RGB

インデックス値は私にとって重要であり、この画像を保存して後で使用したいと考えています。しかし、私が使用しているとき

作成されたイメージにはインデックス値がありません。結果として保存された画像は次のとおりです (png 形式)。 ここに画像の説明を入力

以下のように im を生成します

ループでデータを追加します。

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

matlab - データを失うことなく、画像を RGB に変換してインデックスを付け、元に戻します

インデックス付きイメージを RGB に変換してから、RGB からインデックス付きイメージに戻すのに問題があります。なぜかオリジナルと違う結果になってしまいました。私はステガノグラフィーを行っているので、データが変更されると機能しません。

これは私のコードで、これはサンプル画像です:

ここに画像の説明を入力

変数JJindは等しいはずです。それらが異なるものとして検出されるのはなぜですか?

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

imagemagick - カラーマップを維持しながらImageMagickでインデックス付きPNG画像のサイズを変更する

カスタム バッチ スクリプトを使用して、フォルダー内のすべての PNG 画像のサイズ変更されたコピー (33% と 66%) を作成しています。これが私のコードです:

元の画像がインデックス化されている場合を除いて、正常に機能します。この場合、画像の小さいバージョンは RGB です (そのため、元の画像よりもファイル サイズが大きくなります)。

いくつかのバージョンを試しましたが、うまくいきませんでした。これを整理するはずだったのは、次のようなものでした。

しかし、うまくいきません。

編集:

これは共同で更新されましたが、まだ想定どおりに動作しません (添付の画像を参照してください。左がオリジナルで、右がサイズ変更されています)。

ここに画像の説明を入力

元の画像: 元の画像

スケーリングされたバージョン: スケーリングされた画像