How to choose a ROI in an image and mask the other data in a colored image?

1 visualización (últimos 30 días)
I have images in differet time steps (sample is attached) , I transfered them into M by N by T matrix. Now, I would like to Only have ROI (yellowish color whith all the information in this region) for all sequences. Then I need to have pixel data of a constant distance from border line i.e. to have data of radious in x direction.

Respuestas (1)

Prahlad Gowtham Katte
Prahlad Gowtham Katte el 15 de Mzo. de 2022
Hello
As per my understanding of your query you wish to mask the region other than the yellow-colored part of the image. You can convert the color image to binary and the white pixels represent the yellow-colored part acting as a mask. When you multiply the binary image with colored one. You get only the yellow-colored part and rest will be black. The following code will help to visualize the above.
clear all;
img=imread('SamplePicIR.png');
i=rgb2gray(img); %rgb to gray conversion
imshow(i);
bin=imbinarize(i);%gray to binary conversion
imshow(bin);
bin2(:,:,1)=bin;
bin2(:,:,2)=bin;
bin2(:,:,3)=bin;
z=immultiply(img,bin2);%Applying bin2 as a mask
imshow(z);
For more information, please refer to the following links:
Hope it helps!

Productos


Versión

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by