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!


