Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Registering CT images
Date: Fri, 9 Apr 2010 00:25:22 +0000 (UTC)
Organization: The MathWorks, Inc.
Lines: 18
Message-ID: <hpls5i$5$1@fred.mathworks.com>
References: <hpljju$sb6$1@fred.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-02-blr.mathworks.com
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1270772722 5 172.30.248.37 (9 Apr 2010 00:25:22 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Fri, 9 Apr 2010 00:25:22 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 1187260
Xref: news.mathworks.com comp.soft-sys.matlab:624882

"Thommes " <thommes3000@gmail.com> wrote in message <hpljju$sb6$1@fred.mathworks.com>...
> I need some help here:
> 
> I have been trying to register two CT images of the same anatomic region which are reconstructed with different fields of view. There is a certain anatomic structure visible in both images, but displayed at different positions in different scales. I have defined a set of control points within the anatomic structure in both images and used cp2tform and imtransform to align both images. However, the resulting aligned image is obviously of different size than the base image and the anatomic structure is still at a different position, although now roughly the same size.
> How can I create an aligned image with the same matrix as the base image, where the control points are at the same position as in the base image?
> 
> Thank you very much!
> Chris
---------------
  In the Statistics Toolbox there is a function called 'procrustes' which may accomplish what I think you want.  It requires the set of control points in each image which you describe.  It finds that particular translation, orthogonal rotation, scaling, and possible reflection that minimizes the mean square difference between corresponding control points' positions.  It can work in three dimensions if desired but then of course the control points need to also be three dimensional.

  If you are troubled by the reflection aspect or if you don't have access to the Statistics Toolbox, there was a thread in this newsgroup a couple of years ago in which I outlined a procedure that performs the same computation as in 'procrustes' except that no reflection is allowed.  That thread is to be found at:

 http://www.mathworks.com/matlabcentral/newsreader/view_thread/169096

and was entitled "Procrustes Analysis without Reflection".

Roger Stafford