matlabで画像をインポートした後、表示する前に画像の背景を透明にするにはどうすればいいですか?たとえば、私は白い背景に赤いボールがあります。赤いボールだけが見え、白いピクセルは透明になるように、イメージの白いピクセルを透明にするにはどうしたらいいですか?Matlabでピクセルを透明にする
6
A
答えて
15
画像が「png」形式で保存されていることを確認する必要があります。次に、各ピクセルの透明度を個別に指定する行列であるpngファイルの'Alpha' parameterを使用することができます。本質的には、ピクセルが透明である場合は1、そうでない場合は0のブール値行列です。これは、透明にしたい色が常に同じ値(つまり、uint8では255)であれば、forループで簡単に行うことができます。常に同じ値でない場合は、そのピクセルが透明になるしきい値または値の範囲を定義できます。
更新:
まず、画素が白であるときはいつでも画像を反復し、(あなたが透明に白設定と仮定)によってアルファ行列を生成1.
ように、その画素におけるアルファ行列を設定します# X is your image
[M,N] = size(X);
# Assign A as zero
A = zeros(M,N);
# Iterate through X, to assign A
for i=1:M
for j=1:N
if(X(i,j) == 255) # Assuming uint8, 255 would be white
A(i,j) = 1; # Assign 1 to transparent color(white)
end
end
end
そして ".PNG"
imwrite(X,'your_image.png','Alpha',A);
10
として画像を保存するには、この新たに作成されたアルファ行列(A)を使用しMATLABのループは遅いため、すべてのコストをかけて回避する必要があります。ループを削除するコードを書き換えることは、一般に「ベクトル化」コードと呼ばれます。 ademing2の回答の場合は、次のようにして行うことができます。
A = zeros(size(X));
A(X == 255) = 1;
関連する問題
- 1. RGBピクセルの透明度
- 2. リーフレットImageOverlayのピクセル透明度?
- 3. HTML5キャンバスにのみ透明でないピクセルをコピーする
- 4. Matlabのマーカー透明度
- 5. MATLABの透明な流線
- 6. キャンバスを使用して不透明なピクセルを白にする
- 7. MATLABで "関心領域"(ROI)を透明にする
- 8. webrtcを使用した透明ピクセルによるストリーミングビデオ
- 9. Android Renderscriptは隣接ピクセルを透明に設定します
- 10. 黒/透明ピクセル以外のMatをマージするOpenCV関数
- 11. Visual Studio 2015イメージエディタ - 透明な背景を設定する1ピクセル
- 12. 図の透明な背景(matlab)
- 13. PNGの透明性が失われる(すべてのピクセルが透明でない場合)
- 14. 透明なSVGをJavaで透明にするには?
- 15. XNA:透明でないピクセルにのみSpriteBatch.Draw(...)カラーを適用する
- 16. matlabで黒のピクセルを白にする
- 17. Java BufferedImageピクセルが透明かどうかを知る方法
- 18. MKMapViewを透明にするが、オーバーレイを不透明にする
- 19. colworWithPatternImageは1ピクセルの透明な境界線を返します
- 20. ドラッグイメージを半透明でなく不透明にする
- 21. SWT透明ピクセルが白に変更されました
- 22. Matlabで画像に部分的に透明なオーバーレイを作成するには?
- 23. Matlab:透明なテクスチャを使用して3Dサーフェスをオーバーレイする
- 24. Matlabの透明性が透明性に違反するのはなぜですか? Matlabの<code>parfor</code>を使用している間
- 25. Matplotlibのピクセル値に基づいて透明度を設定する
- 26. 透明なPNGの周りの白いピクセルを削除するには?
- 27. java透明なグラデーションオーバーレイのピクセルの色を取得
- 28. matlabで完全に不透明な六面体を作成する
- 29. iOS:RGBAイメージを使用し、UIImageViewで部分的に透明にする方法はありますか? (透明なピクセルの黒を取得する)
- 30. CIImageを使用してすべての黒ピクセルを透明にします。
Thanks @ ademing2簡単な例がありますか? – omegaFlame
私は元の答えを例で編集しました。 –
ありがとうございます。しかし、画像出力は1x1と87byteだけです。何か案は? – omegaFlame