画像の白を透明にして別の画像と重ね合わせる方法
52 views (last 30 days)
Show older comments
添付しました画像でカラーのみの画像1と境界のみの画像2の画像を重ね合わせてて画像3のようなものを作成したいです。
画像2の白情報が残っているため、白を透明にしたうえで画像2を上位とした重ね合わせをしたいのですが、どうしたらできますでしょうか。
Image Processing Toolbox以外のツールボックスの使用があっても構いません。
よろしくおねがいします。
+=
0 Comments
Accepted Answer
Atsushi Ueno
on 3 Mar 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 Comments
Hernia Baby
on 3 Mar 2022
Edited: Hernia Baby
on 3 Mar 2022
masked_rgb = rgb .* uint8(msk);
ここ天才的ですね
境界の部分だけ 0 なので必然的に黒になるんですね
More Answers (0)
See Also
Categories
Find more on Convert Image Type in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!