Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Re: image matching
Date: Wed, 22 Aug 2007 08:55:30 +0000 (UTC)
Organization: STFC Rutherford Appleton Laboratory
Lines: 82
Message-ID: <fagtm2$nk0$1@fred.mathworks.com>
References: <faepce$o6h$1@fred.mathworks.com> <fafl8g$bi7$1@fred.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-03-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1187772930 24192 172.30.248.38 (22 Aug 2007 08:55:30 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Wed, 22 Aug 2007 08:55:30 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 968489
Xref: news.mathworks.com comp.soft-sys.matlab:424901



"Matthew Whitaker" <mattlwhitaker@REMOVEgmail.com> wrote in 
message <fafl8g$bi7$1@fred.mathworks.com>...
> "Mark Verzeilberg" <nlda@mathwork.com> wrote in message 
> <faepce$o6h$1@fred.mathworks.com>...
> > for our project we want to know if it is possible to 
find 
> a
> > image in another image and find the position of our 
Blimp.
> > 
> > We have a Blimp (kind of a zeppelin) in an old gymanium
> > flying around taking pictures of the ground to find an
> > object. We have the idea that we can make some kind of
> > pattern on the ground so that the blimp can make 
pictures 
> of
> > the ground and that they can be matched with a computer 
> made
> > map with the same pattern as on the ground. This way we 
> want
> > to determine the position of the blimp. Is this possible
> > with MatLab and can we get an update rate of at least 1
> > position per second.
> > 
> > For some more information please ask. The idea is 
inspired
> > on DSMAC (Terrain Referenced Navigation).
> 
> Wow,
> There are a lot of varaiables here. 
> 1) What resolution would the floor map be at and what 
would 
> be the overall dimensions in pixels of the floor map.
> 2) What height would the blimp be at, what would be the 
> size of it's field of view and what would the resolution 
of 
> the blimp camera be.
> 3) What is the size of the target object. Is it two 
> dimensional or 3?
> 4) Are the blimp images fairly stable or is there a lot 
of 
> pitch and yaw effects?
> 
> 
> I suppose the first thing to look at would be pattern 
> correlation where you would take the image from the Blimp 
> camera and correlate it to the known map.  From Gonzalez, 
> Woods and Eddins - Digital Image Processing using Matlab 
> they have a small function on page 491 that does this
> [M,N] = size(f); %where f would be the map
> f = fft2(f);
> w = conj(fft2(w,M,N); %where w would be the blimp image
> g = real(ifft2(w.*f)); 
> [I,J] = find(g == max(g(:))); %coordinates of best match
> 
> Good Luck!

Trouble with using fast correlation, is that it will only 
work if there is no image scaling between the 'map' and the 
blimp image AND they are both have exactly the same 
orientation.

I would think that you should read up on image registration 
techniques - the IP toolbox has an excellent GUI 
demonstration for doing this, however the demonstration 
needs manual input to identify matching landmarks on 
the 'map' and blimp image. This will provide a 
transformation matrix which will allow the blimp image to 
be warped to match the 'map', at which point the fast 
correlation method can be pushed into action. 

Obviously in practice you can't use the manual landmark 
selection technique, else you wouldn't have asked your 
question. This means that you will need some form of 
automation in selecting said landmarks. However without 
seeing the sort of image you have for the 'map' and the 
blimp image, it is a little difficult to give any advice 
here.

Regards

Dave Robinson