MATLAB Answers

To create a mak for an image

2 views (last 30 days)
Utkarsh Goyal
Utkarsh Goyal on 1 Oct 2020
Commented: Tanguy on 30 Oct 2020
Hello
I am very new to the MATLAB, and I want to create the image mask so that I can train my image segmentation network.
So in masked image I want pigs to be in white in color and all the other things to be balck so it will be bianry image pigs will be in white and all other(gates, ropes, fence,background) in black.
Please help me with the code.
Thanks

  4 Comments

Show 1 older comment
Utkarsh Goyal
Utkarsh Goyal on 3 Oct 2020
I have tried Image segment app, but I have huge dataset so I was thinking of writing some code so the process can be automated
Sindar
Sindar on 3 Oct 2020
Once you've got a viable segmentation in the app, you can generate code and try it on other images
Tanguy
Tanguy on 30 Oct 2020
You could loop over your images, open them with imtool3D, segment with smartbrush tool, and save your manual segmentation automatically after closing the image:
list = dir('*.png'); % list your image files
for ii = 1:length(list)
% load file
filename = fullfile(list(ii).folder,list(ii).name);
I = imread(filename);
% Open viewer
h = figure('Toolbar','none','Menubar','none');
tool = imtool3D(I,[],h);
% wait until you draw your mask and close the figure
waitfor(h);
% save mask
Mask = tool.getMask(1);
imwrite(Mask, strrep(filename,'.png','_mask.png')) % save the mask
end
Hope that helps!

Sign in to comment.

Answers (1)

Raunak Gupta
Raunak Gupta on 5 Oct 2020
Hi,
For generating mask for large amount of data you need to have good amount of labeled data in which you correctly mention the mask manually. For that you may use Image Segmenter App for automatic segmentation using Auto cluster options mentioned here. Then you can adjust the mask so that it becomes perfect by using the steps mentioned in this answer
This way you will get some labeled data, which you can use in training a semantic segmentation model which can help you label more images. Below documentation can help you get started with Semantic segmentation using Deep Learning.

  0 Comments

Sign in to comment.

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!