Computer Program Listing Appendix
A total of two compact discs as Copy 1 and Copy 2, created Mar. 4, 2009, each containing the following files is attached as the computer program listing appendix and are incorporated herein by this reference. Both compact discs, Copy 1 and Copy 2, are identical and contain the text of an example of source code for implementing one embodiment of the method of the invention for registration correction. CD Copy 1 and CD Copy 2 both contain the identical file named “60100USD1_USAN11558593,” of size: 25,228 bytes and were both created on Mar. 4, 2009.
The executable file (regcorr.exe) is built from two header files (rrahn.h and regcorr.h) and four C++ files (fileinfo.cp, nr-fft.cpp, multiplycomplexvalues.cpp, and regcorr2.cpp), linked by project regcorr.ide. The project was compiled by Borland C++ 5.01, set for “Win32 Console” mode, and using the static class library framework. The executable file size is roughly 60 kB. (Programs, “regcorr.exe” and “regcorr_no_lateral.exe,” differ only in whether they provide the option of calculating the lateral offset and writing it to a text file. Both programs can also skip the calculations and instead read the offsets from a text file.)
The present invention relates to imaging and, more particularly, to detection of and correction for relative object-detector motion in an imaging system where, typically, successive views from different positions are acquired, each view representing a two-dimensional projection or pseudo-projection of the three-dimensional object.
An optical projection tomographic microscope (OPTM) is suitable for high-resolution imaging of a microscopic object, such as a biological cell and its nucleus, which are embedded in a fluid medium and contained within a microcapillary tube having inner and outer diameters of 40 microns and 150 microns, respectively. An OPTM employs a plurality of views, each acquired by rotating the object and its containment vessel about an axis perpendicular to the optical axis and parallel to the axis of the microcapillary tube. A camera, having a CCD image sensor composed of an M×N array of pixels, captures the light after it has passed through the object and the imaging optics, which produce a magnified image of the field of view (FOV) on the CCD. Since each view is taken from a different perspective, the content of each view will differ from the others.
Owing to the extremely small sizes of the components, it can be quite difficult to position the axis of rotation (typically coincident with the central axis of the microcapillary tube) in the center of the detector's FOV. It is further very difficult to hold the microcapillary tube stationary while rotating it. In addition, the cell itself may move along the tube axis in between views. As a result, each view, which is already altered due to the tube rotation, can in addition be subject to translations both axial (parallel to the microcapillary axis) and lateral (perpendicular to the optical axis and to the tube axis). These lateral translations are in addition to those already present for objects that are not on the rotation axis.
In order to obtain an accurate 3D reconstruction, whether through filtered backprojection or other means, it is therefore necessary to correct for the axial motion and for that portion of the lateral motion that is not due to the changing perspective from one view to another. It is further necessary to determine where in the detector FOV the axis of rotation is located.
U.S. Pat. No. 4,858,128, to Nowak describes a method where consecutive scenes are correlated with one another, first in one axis and then, independently, in the other axis. The location of the maximum value for the two correlations determines the required offset for the two axes. The method described fails to provide means for distinguishing the “natural” lateral translation, due to the change in perspective, from the “erroneous” lateral translation, due to translation of the microcapillary tube. The Nowak patent teaches, “it may be useful to estimate such background component of the signal and to subtract the estimate from the image data.”
William H. Press et al., Numerical Recipes in C: The Art of Scientific Computing, Cambridge University Press; 2nd edition (Jan. 1, 1993) describe means for implementing, via a computer program, the techniques of cross-correlation between two arrays of data using fast Fourier transforms (FFTs). In brief, the cross-correlation of two data arrays (such as image data) can be obtained by applying an FFT to each array, multiplying one of the resulting arrays by the complex conjugate of the other, and applying an inverse FFT to the result.
In order to overcome current shortcomings in the state of the art, it is an objective of the present invention to provide a method for finding the location of the central axis of a microcapillary tube for each view in a multi-view imaging system. It is a further objective of the invention to provide a method for detecting relative object-detector motion between successive views in a multi-view imaging system. It is a further objective of the invention to provide a method for correcting image data to remove errors due to object motion during image data collection. It is a still further objective of the invention to provide an imaging system of a type producing a plurality of X-Y data matrices representing projection or pseudo-projection views of an object for subsequent tomographic reconstruction of axial slices of the object. The detected motion may be removed by suitably shifting later data to align it with earlier data, or vice versa.
The present invention provides an apparatus and method for correction of relative object-detector motion between successive views during optical tomographic imaging in three dimensions. An object of interest is illuminated to produce an image. A lateral offset correction value is determined for the image. An axial offset correction value is determined for the image. The lateral offset correction value and the axial offset correction value are applied to the image to produce a corrected file image.
While the novel features of the invention are set forth with particularity in the appended claims, the invention, both as to organization and content, will be better understood and appreciated, along with other objects and features thereof, from the following detailed description taken in conjunction with the drawings described hereinbelow.
The invention is described herein with respect to specific examples relating to biological cells, however, it will be understood that these examples are for the purpose of illustrating the principals of the invention, and that the invention is not so limited. Although the present invention may be employed in other types of imaging systems, such as, for example, X-ray computed tomography (CT) imaging, for concreteness of description the following disclosure is directed toward the invention in the environment of an optical projection tomographic microscopy (OPTM) system.
In the discussion that follows, the following assumptions are used when providing numerical examples:
It is to be understood that these numerical values are for illustrative purposes only; other numerical values may be employed without detracting from the nature of the invention.
Referring now to
The reference image takes advantage of the constancy of the separation between the walls of the microcapillary tube, and consists of two maximally bright lines separated by the known amount found in the acquired images; the rest of the reference image has zero brightness. The tube walls appear only faintly in the pseudo-projection images, as the refractive indices of the tube walls are matched with materials inside the tube and between the tube and the slide/coverslip assembly. The effect of the histogram operation is to enhance the contrast between the tube walls and the rest of the image. Using the predetermined tube wall separation, in combination with the known number of pixels along the X-axis of the image, makes it possible to distinguish the movement of the tube itself from the movement of the objects within the tube, due to the rotation of the tube and the consequent perspective change. By cross-correlating the two images based on a constant feature, our method minimizes the possibility of tracking the movements of changing features within the cell.
A cross-correlation method is used to determine the amount of the axial offset from the Y-axis. To do so, a copy of the original image is again thresholded, but using different criteria for determining which pixels are reset to zero brightness. A 2D FFT is applied to this image, and multiplied, pixel-by-pixel, with the complex conjugate of the 2D FFT of the thresholded image derived from the immediately preceding view. A 2D FFT is applied to the result, and the X-axis offset is determined as the maximum in the cross-correlation function along the line that corresponds to the difference in the lateral correction of the current image with that of the previous image. This is a distinction from previous methods, in that the X-axis is constrained by the Y-axis offset; it is not found independently of the Y-axis offset.
Unlike the lateral correction, the axial correction is an iterative process and thus is subject to cumulative errors. The axial cross-correlation functions effectively, however, as long as the change in perspective between consecutive images is not too large; this corresponds to small angular increments in the rotation. By keeping the angular increment small, the spatial content does not vary by much, allowing the cross-correlation to track similar features in each image. Since the angular increment also determines the lateral resolution of the 3D tomographic reconstruction, the requirement that the angular increment be kept small to allow the cross-correlation to work well is not an onerous one.
Briefly stated, this embodiment of the present invention removes the effects of axial and lateral movement by the microcapillary tube by suitably shifting subsequent images to align them with previous images, or vice versa. Cross-correlation methods are used to find the offset on the lateral axis, then on the tube axis, with the restriction that the peak correlation for the axial movement must come after the determination of the lateral movement.
The first step 111 is to generate the binary template image. Two white lines having, for example, a grayscale level of 65,535, are created at their ideal positions. Each line has a length of 480 pixels, running parallel to the short image dimension. The locations of the two lines are determined by the long image dimension (640 pixels) and the tube wall separation, empirically determined as 530 pixels. The first line is located at line 0 and the second line is located at line 530. In this embodiment, the size of the template image may be expanded from 640×480 to 1024×1024 to provide zero-padding in both dimensions; however, this action is not essential to the invention.
A 2D FFT is performed on the template image so that real and imaginary components are saved in alternating indices of the resulting array. Thus, for a zero-padded array, the array size is 2048×1024. The template image is now in a form ready for use.
At step 114 the lateral offset is found. In step 114, the image is thresholded in order to black out the background pixels, and then cross-correlated with the binary image of two bright lines. Images of interest are subject to the lateral offset determination 114. The difference between the lateral correction 114 of the current image and that of the previous image is also saved for use in the axial correction 115.
Referring now to
As an example, suppose the input image has minimum and maximum grayscale values of 31 and 190, respectively, so that each bin has a width of eight gray levels [(1+190+31)/20=8]. Now further suppose that peak in the histogram occurs at bin #16 (i.e., gray levels from 151 to 158). Then the thresholded image will be similar to the original image, except that all pixels with an initial gray level greater than 150 now have a gray level of zero.
A 2D FFT is applied to the thresholded image 22, and its Fourier transform is multiplied 23 by the complex conjugate of the Fourier transform of the template image. The resulting array is summed 24 along and each of the 640 rows to compute a new array, which is Fourier transformed (in 1D) 25 to find the cross-correlation of the rows of the thresholded image and the reference image. The maximum value of the 1D array is located 26 and evaluated 28. The position of the maximum is designated as DLAT and its magnitude is designated as CMAX.
The necessary offset is determined by the difference between DLAT and its ideal position of 55 [(640−530)/2=55]. Thus, for example, if DLAT=63, then an upward shift of 8 pixels is necessary (63−55=8), while if DLAT=41, then a downward shift of 14 pixels (55−41=14) is required.
The procedure 114 is repeated for all images in the data set. Note that each image is referenced to the same template, so there is no cumulative error. To assist in the axial correction, DLAT is saved 29 for each image.
Referring now to
A copy of the input image is thresholded 31 in the same manner as for the lateral correction, but in this case the number of bins in the histogram is B3. In the present example, B3=2. Thus, all pixels with a gray level greater than the mid-range gray level are set to zero, while those with lower gray levels retain their initial values. For example, an input image with minimum and maximum values of 31 and 190, respectively, will result in a thresholded image identical to the initial one, except that all pixels that were initially brighter than 110 are now zero.
Having thus blacked out the bright pixels, the thresholded image is Fourier-transformed in 2D 32. It is then filtered 33 to eliminate the smallest features, which may produce spurious peaks on the cross correlation. Only spatial frequencies up to 102 cycles/pixel, corresponding to feature sizes of ten pixels or less, are multiplied and pixels at higher spatial frequencies are set to zero. The resulting array is saved 34 as SN and multiplied 35 by the complex conjugate of SN-1, obtained from the preceding image's thresholded copy. A 2D FFT is next applied to the resulting array to find the cross-correlation of the two consecutive, thresholded, low-pass-filtered images. The difference in the lateral offset between the two consecutive images [DLAT(N)−DLAT(N−1)] found from the lateral correction step 114 is necessary now, since it is incorrect to find the global maximum of the correlation array. Instead, a local maximum, FMAX, must be found in the row that corresponds to [DLAT(N)−DLAT(N−1)]. The column containing FMAX is designated GMAX. If GMAX is greater than half the padded image dimension (1024, in this example), then its value signifies a negative shift, relative to the preceding image, having a magnitude equal to the zero-padded dimension minus the value of GMAX. If GMAX is less than half the zero-padded dimension, then the required shift, relative to the preceding image, is positive and equal to GMAX.
As an example, suppose DLAT(N−1)=45, while DLAT(N)=63. Then FMAX will be found on row 18 of the correlation array (63−45=18). If FMAX, the maximum value of row 18, occurs in the fifth column, then GMAX=5 and the image must be shifted five pixels to the left of the previous image. If the maximum occurs at row 1019 (GMAX=1019), then the image must be shifted five pixels to the right (1024−1019=5) of the previous image, since 1019 is greater than 512.
After GMAX is found, the value of the shift is added to the sum of all the previous axial offsets to determine DAXIAL, the cumulative difference from the first acquired image to the current image. The shift may be positive or negative; hence, some images may not require any axial shift. For each image, four values are written to a text file:
The corrected file is generated by cropping the appropriate number of pixels from one or two edges and shifting the remaining pixels by the number cropped. To maintain the original image dimensions (640×480), the spaces at the opposite edges from the cropped edges are replaced by pixels set to the maximum gray level of the original image.
For example, suppose that for one of the images, the maximum gray level is 229, DLAT=63, DAXIAL=29, and GMAX=1022. Then the pixels in the top eight rows (63−55=8) and the left 27 columns (29−1024+1022=27) are deleted from the image. Thus the ninth row of column 28 occupies the upper left corner. Eight rows are added to the bottom of the image, and 28 columns are added to the right of the image; these pixels have gray levels of 229. When these procedures are complete, the 632×453-pixel region in the upper left of the corrected image is identical to the 632×453-pixel region in the lower right of the original image. Both images have dimensions of 640×480.
Another example embodiment incorporates only the axial correction 115 and the writing of the corrected image 116. This embodiment is useful when the walls of the microcapillary tube are not visible and the tube's lateral motion is known to be negligible In yet another embodiment, the tube wall separation is calculated automatically from the first view (N=0). Otherwise it is identical to the embodiment described hereinabove with reference to
In another embodiment of the invention, the characteristics of the thresholding step may vary based on feedback from the correlation. Such iterative approaches may be employed in the first thresholding step for the lateral correction, in the second thresholding step for the axial correction, or in both. One characteristic that may be varied is the number of divisions or bins used in the histogram. Another characteristic that can be varied is the number of gray levels contained within each histogram bin. For example, the histogram may be based on the square root of the brightness level.
According to a feature of the invention, the output of the method is a cropped copy of the input file, with the uncropped portions shifted vertically and/or horizontally, and with additional blank pixels inserted at one or two of the borders to retain the input image size.
According to a further feature of the invention, the results of the method employed are saved to a digital file, which may be altered and edited using computer word-processing applications. The altered text file may then be used to generate the offsets in the two axes, thus bypassing many of the calculations described above. In this embodiment, the lateral correction procedure of steps 114 through 116 is iterated to find the maximum of CMAX. If CMAX has a magnitude less than a critical value CCRIT, then the entire procedure is repeated, starting with the thresholding 27, but with the number of bins in the histogram changed from B1 to B2. CMAX is again located 26 and evaluated 28.
Referring now to
It will be recognized that the curved surface of the capillary tube will act as a cylindrical lens and that this focusing effect may not be desirable in a projection system. Those skilled in the art will appreciate that the bending of photons by the tube can be eliminated if the spaces between the point source and the tube and between the tube and the detector surfaces are filled with a material 10 whose index of refraction matches that of the capillary tube and that the tube can be optically coupled (with oil or a gel, for example) to the space filling material.
Consider the present example of cells packed into a capillary tube. The cells may preferably be packed single file so that they do not overlap. The density of packing whole cells of about 100 microns in diameter into a capillary tube with diameter less than 100 microns can be roughly 100 cells per centimeter of tube length. For bare nuclei of about 20 microns in diameter, the packing can be roughly 500 nuclei per centimeter of tube length where the tube diameter is proportional to the object size, about 20 microns in this case. Thus, within several centimeters of capillary tube length, a few thousand non-overlapping bare nuclei can be packed. By translating the tube along its central axis 4, motion in the z-direction can be achieved. Moving the tube in the x,y-directions allows objects within the tube to be centered, as necessary, in the reconstruction cylinder of the optical tomography system. By rotating the tube around its central axis 4, a multiplicity of radial projection views can be produced. Moving the tube in the z-direction with constant velocity and no rotation simulates the special case of the flow optical tomography.
One advantage of moving a tube filled with cells that are otherwise stationary inside the tube is that objects of interest can be stopped, then rotated, at speeds that permit nearly optimal exposure for optical tomography on a cell-by-cell basis. That is, the signal to noise ratio of the projection images can be improved to produce better images than may be usually produced at constant speeds and direction typical of flow systems. Objects that are not of interest can be moved out of the imaging systems swiftly, so as to gain overall speed in analyzing cells of interest in a sample consisting of a multitude of cells. Additionally, the ability to stop on an object of interest, then rotate as needed for multiple projections, nearly eliminates motion artifacts. Still further, the motion system can be guided at submicron movements and can advantageously be applied in a manner that allows sampling of the cell at a resolution finer than that afforded by the pixel size of the detector. More particularly, the Nyquist sampling factor of 2 could be managed by the motion system moving in increments that fill half a pixel width, for example. Similarly, the motion system can compensate for the imperfect fill factor of the detector.
Referring now to
Referring now to
The output from the camera 43 is stored in a computer memory 72. A microcapillary tube 3 containing the specimen can be translated along the x or y axes of tube coordinate system 6. In addition, the microcapillary tube 3 can be rotated about its “θ” axis 49, via a rotational motor 5 that can be computer-controlled. As used herein micro-capillary tube is defined as a capillary tube having a diameter where the field of view for microscopic imaging is comparable to the capillary tube diameter. In an example embodiment the rotational motor 5 is controlled by control signals 71 as provided by the computer 7. For high speed applications other controls may be added in order to reduce vibrations during an axial scan. The acquired image may be displayed on monitor 73.
Referring now to
Referring now to
The invention has been described herein in considerable detail in order to comply with the Patent Statutes and to provide those skilled in the art with the information needed to apply the novel principles of the present invention, and to construct and use such exemplary and specialized components as are required. However, it is to be understood that the invention may be carried out by specifically different equipment, and devices and reconstruction algorithms, and that various modifications, both as to the equipment details and operating procedures, may be accomplished without departing from the true spirit and scope of the present invention.
This application is a divisional of U.S. patent application Ser. No. 10/876,328, filed Jun. 24, 2004, of Rahn et al., entitled “Method for Correction of Relative Object-Detector Motion Between Successive Views,” issued Aug. 21, 2007 as U.S. Pat. No. 7,260,253 which is incorporated herein by this reference, and is in turn a continuation-in-part of U.S. patent application Ser. No. 10/126,026, filed Apr. 19, 2002, of Nelson, entitled “Variable Motion Optical Tomography of Small Objects,” issued Mar. 27, 2007 as U.S. Pat. No. 7,197,355, which is also incorporated herein by this reference.
Number | Name | Date | Kind |
---|---|---|---|
3470373 | Brewer | Sep 1969 | A |
3497690 | Wheeless, Jr. | Feb 1970 | A |
3598471 | Baldwin | Aug 1971 | A |
3657537 | Wheeles, Jr. | Apr 1972 | A |
3748468 | Hartman | Jul 1973 | A |
3833762 | Gudmundsen | Sep 1974 | A |
3960449 | Carleton | Jun 1976 | A |
3999047 | Green | Dec 1976 | A |
4175860 | Bacus | Nov 1979 | A |
4183623 | Haines | Jan 1980 | A |
4200353 | Hoffman | Apr 1980 | A |
4293221 | Kay | Oct 1981 | A |
4360885 | Edgar | Nov 1982 | A |
4714345 | Schrader | Dec 1987 | A |
4858128 | Nowak | Aug 1989 | A |
4873653 | Grosskopf | Oct 1989 | A |
4891829 | Deckman | Jan 1990 | A |
5141609 | Sweedler | Aug 1992 | A |
5148502 | Tsujiuchi | Sep 1992 | A |
5189518 | Nishida | Feb 1993 | A |
5281517 | Bacus | Jan 1994 | A |
5308990 | Takahashi | May 1994 | A |
5312535 | Waska | May 1994 | A |
5321501 | Swanson | Jun 1994 | A |
5402460 | Johnson | Mar 1995 | A |
5548395 | Kosaka | Aug 1996 | A |
5550892 | Katsevich | Aug 1996 | A |
5552605 | Arata | Sep 1996 | A |
5668887 | Parker | Sep 1997 | A |
5673300 | Reckwerdt | Sep 1997 | A |
5680484 | Ohyama | Oct 1997 | A |
5710429 | Alfano | Jan 1998 | A |
5741411 | Yeung | Apr 1998 | A |
5757981 | Kawakubo | May 1998 | A |
5760901 | Hill | Jun 1998 | A |
5760951 | Dixon | Jun 1998 | A |
5828408 | Mottin | Oct 1998 | A |
5848123 | Strommer | Dec 1998 | A |
5878103 | Sauer | Mar 1999 | A |
5880838 | Marx | Mar 1999 | A |
5909476 | Cheng | Jun 1999 | A |
5915048 | Hill | Jun 1999 | A |
5987158 | Meyer | Nov 1999 | A |
6005617 | Shimamoto | Dec 1999 | A |
6026174 | Palcic | Feb 2000 | A |
6038067 | George | Mar 2000 | A |
6047080 | Chen | Apr 2000 | A |
6072624 | Dixon | Jun 2000 | A |
6078681 | Silver | Jun 2000 | A |
6091983 | Alfano | Jul 2000 | A |
6130958 | Rohler | Oct 2000 | A |
6165734 | Garini | Dec 2000 | A |
6192144 | Holz | Feb 2001 | B1 |
6201628 | Basiji | Mar 2001 | B1 |
6211955 | Basiji | Apr 2001 | B1 |
6215587 | Alfano | Apr 2001 | B1 |
6239871 | Gilby | May 2001 | B1 |
6248988 | Krantz | Jun 2001 | B1 |
6249341 | Basiji | Jun 2001 | B1 |
6251586 | Mulshine | Jun 2001 | B1 |
6251615 | Oberhardt | Jun 2001 | B1 |
6252979 | Lee | Jun 2001 | B1 |
6312914 | Kardos | Nov 2001 | B1 |
6388809 | MacAulay | May 2002 | B1 |
6452179 | Coates | Sep 2002 | B1 |
6519355 | Nelson | Feb 2003 | B2 |
6522775 | Nelson | Feb 2003 | B2 |
6529614 | Chao | Mar 2003 | B1 |
6591003 | Chu | Jul 2003 | B2 |
6608682 | Ortyn et al. | Aug 2003 | B2 |
6636623 | Nelson | Oct 2003 | B2 |
6640014 | Price | Oct 2003 | B1 |
6697508 | Nelson | Feb 2004 | B2 |
6741730 | Rahn | May 2004 | B2 |
6775399 | Jiang | Aug 2004 | B1 |
6868177 | Camahort | Mar 2005 | B1 |
6904163 | Fujimura et al. | Jun 2005 | B1 |
6944322 | Johnson et al. | Sep 2005 | B2 |
7141773 | Kaplan et al. | Nov 2006 | B2 |
7197355 | Nelson | Mar 2007 | B2 |
20010012069 | Derndinger | Aug 2001 | A1 |
20020122167 | Riley et al. | Sep 2002 | A1 |
20020161534 | Adler | Oct 2002 | A1 |
20030210760 | Nelson | Nov 2003 | A1 |
20030222197 | Reese | Dec 2003 | A1 |
20040001618 | Johnson | Jan 2004 | A1 |
20040008515 | Brown | Jan 2004 | A1 |
20040076319 | Fauver | Apr 2004 | A1 |
20040228520 | Dresser | Nov 2004 | A1 |
20050006595 | Goodwin et al. | Jan 2005 | A1 |
20050085721 | Fauver et al. | Apr 2005 | A1 |
Number | Date | Country |
---|---|---|
WO0111341 | Feb 2002 | WO |
WO0218537 | Mar 2002 | WO |
WO0235474 | May 2002 | WO |
WO 02095476 | Nov 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20070071357 A1 | Mar 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10876328 | Jun 2004 | US |
Child | 11558593 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10126026 | Apr 2002 | US |
Child | 10876328 | US |