comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: x-ray imaging using 3x4 projection matrices
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: x-ray imaging using 3x4 projection matrices [message #49149] Mon, 03 July 2006 11:08
Marius Hagen is currently offline  Marius Hagen
Messages: 3
Registered: November 2005
Junior Member
mark wrote:
> I would like to simulate projecting x-rays through a my own virtual 3D
> object to this 2D plane for any given projection angle using the 3x4
> projection matrices that I have. Does anyone have some code for this,
> or some advice as to how to proceed?

Mark,

Your simulation sounds like the classic tomosynthesis problem, which is
closely related to the instrument that I work with. In order to
construct a simulation for the system that I use, I first chop the
object up into voxels (often millions of voxels) and then I can
consider each planar slice of the object (a plane parallel to the
detector plane). Each of these slices is a 2D function which gets
mapped to a set of 2D pixels on the detector plane, so my simulation
involves calculating the magnification and shift for doing that
mapping, and then interpolating the result onto the detector pixel
grid.

As far as constructing a system matrix for this, then, you need a
matrix which tells you the sensitivity of each pixel on the detector to
every voxel in the object. (This matrix gets very large very fast as
the object voxels and detector pixels increase in number.) What I do
is to build a matrix in which the columns are the voxels of the object,
the rows are the pixels of the image, and the values of each entry are
the "sensitivities", meaning that if an object voxel has a value of "1"
and the corresponding pixel has a value of "0.5", then that matrix
element will have a value of 0.5. The above process of calculating the
signal at each pixel is then just the process of filling in the
elements of the system matrix. You will find that the matrix is
generally extremely sparse.

My system measures emission, and so the pixel values are exactly the
things I'm interested in. Since you're doing an x-ray problem, you
probably will be interested in the logarithm of those values rather
than the values themselves, but the overall process should be similar.
I hope this helps...

- Marius
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Problem when reading many HDF-EOS file
Next Topic: Re: IDL Colorbar generation question

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 18:14:03 PDT 2025

Total time taken to generate the page: 0.00492 seconds