Recognition of a comet

3 Ansichten (letzte 30 Tage)
jyothsna chennareddy
jyothsna chennareddy am 4 Mär. 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.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 4 Mär. 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.

Weitere Antworten (1)

Sarah Wait Zaranek
Sarah Wait Zaranek am 4 Mär. 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.

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by