Recognition of a comet

2 views (last 30 days)
jyothsna chennareddy
jyothsna chennareddy on 4 Mar 2011
sir, My project is "Comets recognition from satellite images".I have tried this code { for i = 1:3 im{i}= imread([int2str(i),'.jpg'],'jpg'); p{i} = rgb2gray(im{i}); q{i} = p{i}>180; bx{i} = bwareaopen(q{i},5); bw{i} = bwareaopen(q{i},8); k{i} = imsubtract(bx{i},bw{i}); s{i} = regionprops(k{i}, 'centroid'); centroids = cat(1, s{i}.Centroid); hold(imgca,'on') imshow(im{i}); plot(imgca,centroids(:,1), centroids(:,2),'G*') hold(imgca,'off') pause(0.4) end } But failed because it is representing some other object rather than the comets position that is indicated by kreutz comet.Please kindly reply me soon.

Accepted Answer

Walter Roberson
Walter Roberson on 4 Mar 2011
It is not always possible to recognize comets from a single image. You need to compare two or more images to determine whether an object has moved, as comets might turn out to only be a single pixel in any one image.

More Answers (1)

Sarah Wait Zaranek
Sarah Wait Zaranek on 4 Mar 2011
From looking at your code, it looks like you are trying to distinquish your comet by finding something fairly white. I am uncertain what you are trying to do by subtracting the two "open" images. If it is to remove noise, you might just want to do it once. If you know anything else about your comet, such as you want a particular aspect ratio, etc -I would try and use other properties to narrow it down.

Community Treasure Hunt

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

Start Hunting!