how can i convert detected grayscale image object back into rgb form?

3 visualizzazioni (ultimi 30 giorni)
I have to detect red chilies from plant. I got this result which shown in given figure but now i have to convert this final detected chili image back into red form, how can i do this?
This is the code which i used in this work.
i=imread('IMG_20210825_153633 - Copy.jpg');
subplot(2,2,1);
imshow(i)
G=rgb2gray(i);
subplot(2,2,2);
imshow(G);
A=i(:,:,1);
subplot(2,2,3);
imshow(A);
f=imsubtract(A,G);
subplot(2,2,4);
imshow(f)

Risposta accettata

yanqi liu
yanqi liu il 22 Nov 2021
clc; clear all; close all;
i=imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/808449/image.jpeg');
i=imcrop(i,[5 8 632 291]);
subplot(2,2,1);
imshow(i)
G=rgb2gray(i);
subplot(2,2,2);
imshow(G);
A=i(:,:,1);
subplot(2,2,3);
imshow(A);
f=imsubtract(A,G);
subplot(2,2,4);
imshow(f)
bw = im2bw(mat2gray(f));
bw = imclose(bw, strel('disk', 5));
bw = bwareaopen(bw, 5);
i2 = i .* uint8(cat(3,bw,bw,bw));
figure; imshow(i2, []);

Più risposte (2)

Yongjian Feng
Yongjian Feng il 21 Nov 2021
Modificato: Yongjian Feng il 21 Nov 2021
How about changing the red chili area of the last image to alpha = 0 (so it is completely transparent). Then overlay on top of the original image

Image Analyst
Image Analyst il 21 Nov 2021
Use the Color Thresholder app on the apps tab of the tool ribbon. Load your image then choose HSV color space, then adjust the thresholds, then export the function. Easy, but if you have trouble, let us know, but attach the original image 'IMG_20210825_153633 - Copy.jpg'

Community Treasure Hunt

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

Start Hunting!

Translated by