Semantic segmentation for grayscale image
显示 更早的评论
How can implement semantic segmentation for gray scale image? How to train that network?
2 个评论
Walter Roberson
2022-6-27
Yes. At worst case, repmat() the grayscale along the third dimension to make it an RGB image.
Zara Khan
2022-6-28
回答(2 个)
Image Analyst
2022-6-27
0 个投票
Start here:
I'm working on a simplified version where you simply just locate your input images, and labeled images folder but it's not ready to share yet.
2 个评论
Zara Khan
2022-6-28
Image Analyst
2022-6-28
If the Mathworks demo isn't working then make sure your input is correct (whether color image or gray scale, and size of image, if that matters). If it is correct then call tech support and tell them the demo doesn't work.
Zara Khan
2022-6-28
0 个投票
12 个评论
Zara Khan
2022-6-28
Walter Roberson
2022-6-29
Please attach your image1.png
Zara Khan
2022-6-29
Image Analyst
2022-6-29
OK, but what did tech support say when you called them?
Zara Khan
2022-6-29
Walter Roberson
2022-6-29
When I run with your "image 1.png" and your code, I do not see any problem. It just gives an empty final plot, which is what should be expected since there are no triangles in the input image.
Zara Khan
2022-6-29
Walter Roberson
2022-6-29
This is the code I used:
filename = 'https://www.mathworks.com/matlabcentral/answers/uploaded_files/1050055/image%201.png';
data = load('triangleSegmentationNetwork');
net = data.net;
net.Layers;
I = imread(filename);
[C,scores] = semanticseg(I,net,'MiniBatchSize',32);
B = labeloverlay(I, C);
figure
imshow(B);
figure
imagesc(scores)
axis square
colorbar
BW = C == 'triangle';
figure
imshow(BW)
The code ran without error. The final image was empty...
Oh wait, the final images BW are not empty. What is happening is that every location is being detected as triangle, so the output is pure white (all locations match.)
Zara Khan
2022-6-29
In the below example, everything that shows up black is labeled 'background'.
The implication is that the triangle segmentation network is not very specific at all.
Your sign-language images are being segmented... but the segmentation is saying that everything in the image is part of some triangle.
filename = 'baby.jpg';
data = load('triangleSegmentationNetwork');
net = data.net;
net.Layers;
I = imread(filename);
[C,scores] = semanticseg(I,net,'MiniBatchSize',32);
B = labeloverlay(I, C);
figure
imshow(B);
figure
imagesc(scores)
axis square
colorbar
BW = C == 'triangle';
figure
imshow(BW)
Zara Khan
2022-6-30
Walter Roberson
2022-6-30
Perhaps you should be training your own network; see https://www.mathworks.com/help/deeplearning/ug/create-simple-semantic-segmentation-network-in-deep-network-designer.html
The pre-trained Triangle Semantic Segmentation Network might simply be too weak for your purposes, especially since your sample sign images are not very triangular.
类别
在 帮助中心 和 File Exchange 中查找有关 Deep Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


