Hello. I am preprocessing the image using convexhull method. Initial and intermediate methods are fine. The last method in displaying preprocessing image I am not getting the required display. I need only the rounded coins to get displayed at the end of preprocessed image without any black pixels. But it is displaying only with white pixel values. Pixel vales are copied properly from the original image(I) to preprocessed Image(PI). I am executing with the following code.
clc;clear;subplot(2,3,1);I = imread('coins.png');imshow(I);title('Original');subplot(2,3,2);BW = imbinarize(I);imshow(BW);title('Binary');subplot(2,3,3);CH = bwconvhull(BW);imshow(CH);title('Union Convex Hull');subplot(2,3,4);CH_objects = bwconvhull(BW,'objects');imshow(CH_objects);title('Objects Convex Hull');for a=1:size(I,1) for b=1:size(I,2) if(CH_objects(a,b)==0) PI(a,b)=1; else PI(a,b)=I(a,b); end endendsubplot(2,3,5);imshow(PI);title('Preprocessed Image');
Best Answer