Recognition of a comet

3 ビュー (過去 30 日間)
jyothsna chennareddy
jyothsna chennareddy 2011 年 3 月 4 日
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.

採用された回答

Walter Roberson
Walter Roberson 2011 年 3 月 4 日
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.

その他の回答 (1 件)

Sarah Wait Zaranek
Sarah Wait Zaranek 2011 年 3 月 4 日
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.

カテゴリ

Help Center および File ExchangeCreating, Deleting, and Querying Graphics Objects についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by