How to extract highest intensity area from a greyscale spectrogram?
이전 댓글 표시
Hello.
I got greyscale mel-spectrograms images from a dataset and I want to divide it into several areas and to obtain the area where pixels have highest intensity in average.
This will be useful to label the images with rectangles for a deep learning training.
Hope somebody will help me.
I attach a greyscale spectrogram I got where you can show me the way to do it.
Thank you.
채택된 답변
추가 답변 (1개)
KALYAN ACHARJYA
2021년 1월 22일
편집: KALYAN ACHARJYA
2021년 1월 22일
1 개 추천
- Apply thresholding to cluster the image into two segment, certain higher pixel and lower value pixels.
- Get the largest blob as per requirement. (bwareafilt function)
What does "Major Intensity" mean here?
댓글 수: 5
Claudio Eutizi
2021년 1월 22일
KALYAN ACHARJYA
2021년 1월 22일
편집: KALYAN ACHARJYA
2021년 1월 22일
Lets say, the grayscale image is grayImage
temp=grayImage;
extract_roi=grayImage==max(grayImage(:));
temp(~extract_roi)=0;
imshow(temp); % Extracted ROI Image as temp variable
Claudio Eutizi
2021년 1월 22일
편집: Claudio Eutizi
2021년 1월 22일
KALYAN ACHARJYA
2021년 1월 23일
편집: KALYAN ACHARJYA
2021년 1월 23일
"but this code you wrote here shows a black image".
Most probably, there is only one maximum value pixel, so it is not easily visualized (check carefully). You can confirm the same with the extract_roi matrix, which must be the non-zero matrix.
Claudio Eutizi
2021년 1월 23일
카테고리
도움말 센터 및 File Exchange에서 Deep Learning Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
