To create a mak for an image

조회 수: 1 (최근 30일)
Utkarsh Goyal
Utkarsh Goyal 2020년 10월 1일
댓글: Tanguy 2020년 10월 30일
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.
  댓글 수: 4
Sindar 2020년 10월 3일
Once you've got a viable segmentation in the app, you can generate code and try it on other images
Tanguy 2020년 10월 30일
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
% save mask
Mask = tool.getMask(1);
imwrite(Mask, strrep(filename,'.png','_mask.png')) % save the mask
Hope that helps!

댓글을 달려면 로그인하십시오.

답변 (1개)

Raunak Gupta
Raunak Gupta 2020년 10월 5일
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.


Help CenterFile Exchange에서 Image Data Workflows에 대해 자세히 알아보기





Community Treasure Hunt

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

Start Hunting!

Translated by