画像の白を透明にして別の画像と重ね合わせる方法

66 Ansichten (letzte 30 Tage)
mushi77
mushi77 am 3 Mär. 2022
Kommentiert: mushi77 am 4 Mär. 2022
添付しました画像でカラーのみの画像1と境界のみの画像2の画像を重ね合わせてて画像3のようなものを作成したいです。
画像2の白情報が残っているため、白を透明にしたうえで画像2を上位とした重ね合わせをしたいのですが、どうしたらできますでしょうか。
Image Processing Toolbox以外のツールボックスの使用があっても構いません。
よろしくおねがいします。
+=

Akzeptierte Antwort

Atsushi Ueno
Atsushi Ueno am 3 Mär. 2022
>画像2の白を透明にしたうえで画像2を上位とした重ね合わせをしたいのですが、どうしたらできますでしょうか。
画像2を二値化(反転)してANDを取りました。今回は窓を残し窓枠を黒(0)にするためマスクしただけで目的の画像データになりました。もし窓枠の画像と合わせるのであれば、窓のマスク画像と窓枠のマスク画像を加算する事で目的の画像データになります。詳細は類似の質問→2値化画像(バイナリイメージ)のオブジェクトの輪郭を切り取る。 - (mathworks.com)
rgb = imread('1_testRGB.png');
msk = imread('2_testG.png') > 128;
masked_rgb = rgb .* uint8(msk); % 元画像とマスクのANDを取る
imshow(masked_rgb)
  2 Kommentare
Hernia Baby
Hernia Baby am 3 Mär. 2022
Bearbeitet: Hernia Baby am 3 Mär. 2022
masked_rgb = rgb .* uint8(msk);
ここ天才的ですね
境界の部分だけ 0 なので必然的に黒になるんですね
mushi77
mushi77 am 4 Mär. 2022
2値化して積とすると色部分は1の積でそのまま、境界部は0との積で0となるということですが。
こんな簡単にできるとは。。。ありがとうございました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Modify Image Colors finden Sie in Help Center und File Exchange

Produkte


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!