6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【個人メモ】画像ファイルの白い部分を透過させる

Last updated at Posted at 2020-08-27

初めに

発表スライドに使おうと思った画像が透過しないもので,かっこ悪かったので白い部分を透過させたい.

やり方

白はRGB値が(255,255,255).
画像を読み込んで,RGB値が(255,255,255)のピクセルに対して透過度が0になるようにしてあげて,最後に透過度のデータを含んだ形で保存してあげる.

white2transparency.m
% read imagefile
[file,path] = uigetfile('*.*');
filepath = sprintf('%s/%s',string(path),string(file));
image = imread(filepath);

% add alpha info
[L M N] = size(image);
Alpha = ones(L,M);

for i=1:L
    for j=1:M
        if image(i,j,:) == [255 255 255] % RGB value
            Alpha(i,j) = 0;
        end
    end
end

% savefile
filter = {'*.png';'*.*'};
[file2, path2] = uiputfile(filter);
imwrite(image,string(file2),'Alpha',Alpha);

RGBの値を任意の色に変えれば他の色を透過させることもできる.

ファイルはファイル選択ダイアログから選択できるようにしてある.
image.png

RGB値で選択しているので,複雑な形状であってもきれいにくりぬけるのが良いですね.
image.png

同じことができるアプリはたくさんありそうですが,こうした簡単な加工は自分でできるようになりたいと思っています.

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?