EP0116590A1 - Firmware backprojector in computerized tomograph systems - Google Patents

Firmware backprojector in computerized tomograph systems

Info

Publication number
EP0116590A1
EP0116590A1 EP83902647A EP83902647A EP0116590A1 EP 0116590 A1 EP0116590 A1 EP 0116590A1 EP 83902647 A EP83902647 A EP 83902647A EP 83902647 A EP83902647 A EP 83902647A EP 0116590 A1 EP0116590 A1 EP 0116590A1
Authority
EP
European Patent Office
Prior art keywords
address
output
register
logic
read
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP83902647A
Other languages
German (de)
French (fr)
Inventor
József FEHERVARY
László MEZO
Péter FÜLÖP
Sándor ORY
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Medicor Muvek
Original Assignee
Medicor Muvek
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Medicor Muvek filed Critical Medicor Muvek
Publication of EP0116590A1 publication Critical patent/EP0116590A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/003Reconstruction from projections, e.g. tomography
    • G06T11/006Inverse problem, transformation from projection-space into object-space, e.g. transform methods, back-projection, algebraic methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2211/00Image generation
    • G06T2211/40Computed tomography
    • G06T2211/421Filtered back projection [FBP]

Definitions

  • the invention relates to a firmware back projector intended primarily to perform the back projecting phase of the filtered backprojection applied in CT systems, which can be interfaced to the DMA channel of a mini-computer, which is capable of performing the partial or full backprojection of the slice scanned from any given profiles arranged in any sequence.
  • the image reconstruction can be performed in the following forms:
  • the theory of the first two methods is well-known, however, practically they can't be realized (computer problems: insufficient speed of algorithm, divergence, enormous central memory required, etc.).
  • the third method is based upon the Fourier-transformation, basicly the CT producers utilize this solution for image-reconstruction.
  • a well-known procedure is the so-called filtered backprojection.
  • Bp/r, ⁇ / is the density distribution of the backprojected image
  • P(r, cos/ ⁇ - ⁇ /, ⁇ ) are the projections to be backprojected
  • r and ⁇ are polar coordinates
  • is the angle under the projections are measured during the scan.
  • a logical compromise among these contradictory measures is to perform the backprojection with finite linear interpolation and selecting the next neighbour among the interpolated values.
  • the backprojection can be performed by ⁇ .) analogic way ⁇ .) software ⁇ . ) hardware.
  • the first method has never been used in commercial CT equipment.
  • the backprojection should be a real-time processing (the pure software solution is too slow, taking into consideration the state-of-the-art scanners)
  • the software backprojection is theoretically obvious.
  • a CT scanner is built around a computer and the slowness of the data acquisition system of the first generation CT scanners promoted the software backprojection.
  • the post-reconstruction time of some minutes is hardly acceptable (the data acquisition takes less than 1 minute).
  • Illustrating the above mentioned with an excellent commercially available CT system (GE CT/T 7800) data acquition : 6-12 seconds post-reconstruction: 90-120 seconds.
  • GE CT/T 7800 data acquition : 6-12 seconds post-reconstruction: 90-120 seconds.
  • Even the development resulted the greater size of the image to be backprojected, nevertheless the operation to be accomplished is proportional to n (where nxn is the image-size).
  • the Densitome CT scanner (CGR, France) had an image size of 128 x 128, the image reconstruction time on a relatively fast POP 11/55 was about 4,5 minutes.
  • the present equipments have a size of 256 x 256, even some high spatial resolution equipments have a size of 512 x 512.
  • the latter image-size requires 64 times as much reconstruction time as the 128 x 128 required.
  • the image reconstruction is accomplished by software (due to the sequential nature of it) it results really 64 times slower reconstruction. Further analyzing the timing: the back- projection of a single profile to a single pixel requires at least the following operations:
  • the best choice is the hardware solution,however, the disadvantages are completed by the rigorous operating requirements (service, air-conditioning, size, etc.).
  • the backprojection to be accomplished in the CT systems seems to be the territory where the optimal solution can be approached by selecting the proper hardware-software ratio, i.e. by applying a firmware solution.
  • the task is to eliminate the disadvantages of the well-known backprojectors by designing a firmware equipment which is capable of economically performing the backprojection by digital precis on, by the speed of the hardware and by the flexibility of the software.
  • the substance of the invention is that it contains SINTAB memory containing a software generated table required by the backproj.ecting procedure, supported by input, output registers and control logic; read-address logic generating the addresses of the pixels on the profiles based upon the data contained in SINTAB memory, driving the address multiplexers of the convolution output memories; two convolution output memories connected to the latter through address multiplexes which have direct connection with the write-address locjic, supported by data multiplexer, containing the convolved or convolved and interpolated data to be back projected, capable to perform pipe-line operation with an external convolver through alternate buffers as well as parallel read/write logic; operating mode selector flip-flop connected to the output register of the SINTAB memory;
  • a favourable realization of the invention has a read-address logic containing: two intermediate registers (SIN and COS registers, respectively) containing the line and column address offset values required for the sequential backprojection, connected to the output register of the SINTAB memory;
  • the A input of the just mentioned multiplexer is connected to the output of the column address adder
  • FIG 1 is the overview of major components associated with the backprojector according to the invention.
  • Figure 2 is the outline of the address generation and Figure 3a, 3b contain the theory of the pixel-size correction.
  • the input of the SINTAB memory 2 is connected to the input register 1 as long as it's output joins the output register 3.
  • Each of the three networks are con-trolled by a control logic 4.
  • the input register 1 contains the data to be written in
  • the output register 3 stores temporarily the data read out
  • the control logic 4 generates the necessary address and control signals determined by the algorithm of the backprojection.
  • the output register 3 joins on one hand to the input of a read-address logic 5, on the other hand it is connected to the input of an operating mode selector flip-flop 21.
  • the output of the component 21 is connected to one of the inputs of an address comparator 22 whose output is determined by the fact the pixel just under backprojection in on the profile or it is out of the range of the profile.
  • the output of the read-address logic 5 is fed-back to the other input of the address comparator 22.
  • the same signal is connected to the B and A inputs of the address multiplexers 14, 15, driving the address lines of the convolution output memories 16, 17, respectively.
  • the multiplexers 14, 15 are driven through their A and B inputs by a write-address logic 25.
  • the output of these multiplexers joins the convolution output meinorie ⁇ 16 and 17, respectively.
  • the memories contain the convolved profiles, the profiles are written by a computer through the inputs "DATA IN".
  • the data outputs of the convolution output memories 16, 17 are connected to the inputs of the data multiplexer 18.
  • This multiplexer forwards the data just read out of one of the convolution output memories to the input of the data register 19.
  • the enable input of the data register 19 joins one of the outputs of the address comparator 22.
  • the other inverted output of the address comparator is connected to the enable input of the zero register 20. Both the outputs of zero register 20 and data register 19 are bussed to one of the inputs of the adder 24.
  • the other input of this adder joins the data out lines of the image memory 23 forming the same time the output of the backprojector unit (OUT), as long as the output of the adder is connected to the data in lines of the image memory.
  • the image memory 23 stores during the backprojection the partially backprojected image as well as at the end of the back projection the image reconstructed is forwarded through it's "OUT" output to the computer or display generator not delineated here.
  • the logic contains an intermediate SIN register 6 and an intermediate COS register 7 for storage of the data read out of the SINTAB memory 2 through the output register 3, both the 6 and 7 components are connected to the input of the read- address logic 5.
  • the output of the intermediate SIN register joins the input of the line address adder 9 as well as the output of the intermediate COS register joins the column address adder 11.
  • the B input of the lins address multiplexer 8 is connected to the output of the line address adder 9, as long as it's A input is connected to the input of the read-address logic 5.
  • the output of the line address multiplexer 8 joins the input of the current line address register 10, the output of the component 10 is connected on one hand to the B input of the address multiplexer 12 on the other hand it is fed back to the input of the line address adder 9.
  • the A input of the address multiplexer 12 is connected to the output of the column address adder 11 as well as it's output is connected to the input of the current operating point register 13.
  • the output of the component 13 forms the common output of the whole read-address logic 5 and it is fed back to one of the inputs of the column address adder 11.
  • the survey of the operation postulates that one of the convolution output memories 16 or 17 already contains the convolved or convolved and interpolated data of a given profile (Table II).
  • a further condition of operation is that the SINTAB memory already contains the data necessary to the backprojection according to Table III.
  • the image memory 23 Before initiating the backprojection, the image memory 23 contains any given background offset value (mostly zero). During the backprojection it stores the partially backprojected image according to Table IV
  • the value located at the ⁇ address of the SINTAB memory is read out and it's operating mode bit is clocked through the output register 3 into the operating mode selector flip-flop 21.
  • the address comparator 22 decides if there is anything to be backprojected or rather the projection of the pixel is not within the range of the given profile. Certainly the range is different if a profile contains 256 or 512 samples. Having clocked the value into the operating mode selector flip-flop, the backprojection of the first profile is similar to any n-th profile.
  • the SINUS value corresponding to the profile is read out and stored in the intermediate SIN register 6.
  • the corresponding COSINUS value is read out and stored in the intermediate COS register 7.
  • the base address (16 LS and 8 MS bits) is clocked into the current line address register 10. This address is the coordinate of the reference pixel (1 line 1 pixel) on the profile under backprojection. Now until the completion of the backprojection of the profile the B input is selected at the line address multiplexer 8. The base address is to be written from the current line address register through the B input of the address multiplexer 12 into the current operating point register 13, too.
  • Such the projection address of the first pixel is stored in point register 13 , now until the completion of the backprojection ⁇ f the profile the component 10 stores the projection address of the first pixel of the line just under backprojection as well as point register 13 stores the projection address of the pixel just under backprojection.
  • the mathemat hical background of the address generation in the coordinate system is surveyed on the basis of Table V and Fig. 2, The angles ⁇ 1 , ⁇ 2 , ⁇ 3 and ⁇ 4 referenced there are the angles under the projections are measured in the different quarters of the coordinate system.
  • the read-modify-write cycle begins at the image memory 23. Since the output of the current operating point register 13 is connected to the address comparator 22 too, the latter is capable to decide if the address is within the range or not. After a 200ns period the data read out of the convolution output memory 16 or 17 (depending on the profile) can be clocked into the data register 19. Now the state of the comparator determines if the data just read out of the convolution output memory or ⁇ is to be added to the data read out of the image memory.
  • the adder 24 performs the addition of the two operands and the sum is written back into the image memory as the completion of it's read-modify-write cycle.
  • a decoder is enabled to sense if a whole line of the image is already processed. If not, so the input of the current operating point register 13 is to be connected with the output of the column address adder 11 by selecting the A input of the address multiplexer 12. The coordinate of the next pixel on the profile (+COS step) is generated by this time at the output of the column address adder 11.
  • the cycle-time of the backprojection (pixel by pixel) within a line of the image is 800ns. If a whole line of the image is already processed, the current line address register 10 is to be clocked.
  • the input of component 10 is connected with the output of the line address adder 9 by selecting the B input of the line address multiplexer 8, The coordinate of the first pixel of the next line on the profile (+SIN step) is generated by this time at the output of the line address adder 9. This value is clocked into 10, If the whole image is not yet processed, the B input of the address multiplexer 12 is selected and the content of the current line address register 10 is written into the current operating point register 13. If the whole image is already processed a shut-down sequence is initiated. At this moment the state of the convolution output memories 16, 17 can be checked if the backprojection of a new profile is to be initiated.
  • the backprojector is restarted. If no new profile is available, the backprojector is waiting in IDLE state or lets the computer to read back the content of the image memory.
  • the backprojector according to the invention performs the pixel-size correction on the basis of the following equations.
  • the distance of data acquisition during a translation by the central beam 26 and a fan beam 27 are (Fig. 3a);
  • is the angle between the given fan and central beams (determined by the collimator geometry); n is the number of samples/profile; a is the pixel size determined by the central beam and a' is the pixel size determined by the given fan beam.
  • the backprojector is capable to process the data convolved by the computer.
  • the interpolator unit is located on the data board alongside with the convolution output memories.
  • the interpolator computes the linear interpolation of the data convolved and writes them into the convolution output memories in accordance with Table II.
  • the backprojector is capable to receive the input convolved data from a pipe-line convolver. If so, the input is the preprocessed data for the convolver and the output is the whole reconstructed image from the backprojector.
  • - can be configured as a stand-alone unit or capable to operate parallel to a pipe-line convolver.
  • the convolution output memories can be read in 200 ⁇ s and selecting a read- -modify-write cycle time of 800ns (theoretically it could be slightly faster) at the image memory it is feasable to backproject the profile simultaneously into four image memories (storing different portions of the image to be reconstructed).
  • the equipment maintains the flexibility of a software solution (applying a software generated SINTAB memory content according to the operating mode selected).
  • the equipment substitutes an expensive device, the array-processor.
  • the maintenance is economical (only the special purpose hardware and not a universal hardware is required, the configuration of the central computer can be poorer, some add-on hardware for the corrections can be saved).

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Processing (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

Rétroprojecteur microprogrammé pour systèmes tomographiques commandés par ordinateur contenant un tableau produit par logiciel nécessaire au procédé de rétroprojection, supporté par des registres d'entrée, de sortie et une logique de commande; une logique d'adresse de lecture produisant les adresses des pixels (éléments d'images) sur les profils d'après les données contenues dans la mémoire SINTAB, attaquant les multiplexeurs d'adresses des mémoires de sortie de circonvolution; deux mémoires de sortie de circonvolution connectées à ces dernières par l'intermédiaire des multiplexeurs d'adresses qui ont une connexion directe avec la logique d'adresse d'écriture, supportée par le multiplexeur de données, contenant les données circonvolutées et interpolées à rétroprojeter, capable qu'un fonctionnement en pipeline avec un circonvoluteur extérieur par l'intermédiaire de tampons alternés ainsi qu'une logique parallèle lecture/écriture; une bascule d'un sélecteur du mode de fonctionnement collectée au registre de sortie de la mémoire SINTAB; un comparateur d'adresses validant ou invalidant la correction de densité du pixel (éléments d'images) en cours de rétroprojection, connectée à la sortie de ce dernier ainsi qu'à la logique d'adresse de lecture; un registre de zéro, contenant la valeur zéro à ajouter en cas d'invalidation de la correction de densité; un registre de données connecté à la sortie du multiplexeur de données dont la sortie est validée ou invalidée en fonction de l'état de la sortie du comparateur d'adresses; une mémoire d'image contenant les valeurs de densité des pixels; un additionneur capable d'ajouter la valeur qui vient d'être lue de la mémoire d'image et sa valeur correspondante sur le profil rétroprojeté.A firmware overhead projector for computer-controlled tomographic systems containing a table produced by software necessary for the overhead projection process, supported by input registers, output registers and control logic; a read address logic producing the addresses of the pixels (pixels) on the profiles according to the data contained in the SINTAB memory, driving the address multiplexers of the convolution output memories; two convolution output memories connected thereto via the address multiplexers which have a direct connection with the write address logic, supported by the data multiplexer, containing the convoluted and interpolated data to be back-projected, capable of pipelined operation with an external spinner via alternate buffers as well as parallel read/write logic; a flip-flop of an operating mode selector collected at the output register of the SINTAB memory; an address comparator enabling or disabling the density correction of the pixel (image elements) being rear-projected, connected to the output of the latter as well as to the read address logic; a zero register, containing the zero value to be added in case of invalidation of the density correction; a data register connected to the output of the data multiplexer whose output is enabled or disabled depending on the state of the output of the address comparator; an image memory containing the pixel density values; an adder capable of adding the value which has just been read from the image memory and its corresponding value on the back-projected profile.

Description

FIRMWARE BACKPROJECTOR IN COMPUTERIZED TOMOGRAPH SYSTEMS
Technical field
The invention relates to a firmware back projector intended primarily to perform the back projecting phase of the filtered backprojection applied in CT systems, which can be interfaced to the DMA channel of a mini-computer, which is capable of performing the partial or full backprojection of the slice scanned from any given profiles arranged in any sequence.
Background of the invention
Recently X-ray diagnostics promotes the examination of the human body's anatomy as well as the diagnosis of the human diseases. The limitations of the conventional X-ray technique might be eliminated since the realization of the computerized tomograph (CT), This new iconographic method has been applied since 1973, The computerized tomograph reconstructes the two-dimensional image of the body-slice scanned, more exactly, it computes the X-ray density values corresponding to the discrete points of this slice. Matematically the task is given: wanted an algorithm to reconstruct the image of the two-dimensional slice from a great amount of profiles measured during the scan.
Theoretically the image reconstruction can be performed in the following forms:
1. Direct matrix procedure
2. Iterative method
3. Analytical solution
The theory of the first two methods is well-known, however, practically they can't be realized (computer problems: insufficient speed of algorithm, divergence, enormous central memory required, etc.). The third method is based upon the Fourier-transformation, basicly the CT producers utilize this solution for image-reconstruction. A well-known procedure is the so-called filtered backprojection.
The basic computer phases of which are the followings:
1. Prepocessing (corrections, pre-filtering, etc.) 2. Convolution
3. Backprojection
4. Postprocessing
Fundamental difficulties arise during the 2nd and 3rd phases since most of the computer-time is wasted for them. The mathematical equation of the backprojection:
where
Bp/r,Ф/ is the density distribution of the backprojected image, P(r, cos/θ-Ф/, θ) are the projections to be backprojected, r and Ф are polar coordinates, θ is the angle under the projections are measured during the scan.
Taking into consideration discrete angles and linear sampling the above integral can be merely approximated. The usual methods for approximation: - next neighbour selection, - linear interpolation.
Any given image reconstruction can be evoluated if certain optimum criteriums are defined. The most important measures are:
- point response width
- maximum secondary overshot
- noise sensitivity.
A logical compromise among these contradictory measures is to perform the backprojection with finite linear interpolation and selecting the next neighbour among the interpolated values. The backprojection can be performed by α.) analogic way β.) software ﻻ. ) hardware. The first method has never been used in commercial CT equipment. Some of the technical difficulties of the above mentioned methods:
- a certain precision is required ( a decisive argument against the analogic way)
- the backprojection should be a real-time processing (the pure software solution is too slow, taking into consideration the state-of-the-art scanners)
- the highly developed method should be economical (the fast universal hardware seems hardly be the best choise).
Recently the image reconstruction of the commercial CT equipments is mostly based upon the filtered backprojection. The realization of the back projection following the convolution is either software or hardware method.
The software backprojection is theoretically obvious. A CT scanner is built around a computer and the slowness of the data acquisition system of the first generation CT scanners promoted the software backprojection. However, taking into consideration a rapid data acquisition, the post-reconstruction time of some minutes is hardly acceptable (the data acquisition takes less than 1 minute). Illustrating the above mentioned with an excellent commercially available CT system (GE CT/T 7800) : data acquition : 6-12 seconds post-reconstruction: 90-120 seconds. Even the development resulted the greater size of the image to be backprojected, nevertheless the operation to be accomplished is proportional to n (where nxn is the image-size). Illustrating it: the Densitome CT scanner (CGR, France) had an image size of 128 x 128, the image reconstruction time on a relatively fast POP 11/55 was about 4,5 minutes. The present equipments have a size of 256 x 256, even some high spatial resolution equipments have a size of 512 x 512. The latter image-size requires 64 times as much reconstruction time as the 128 x 128 required. Considering the image reconstruction is accomplished by software (due to the sequential nature of it) it results really 64 times slower reconstruction. Further analyzing the timing: the back- projection of a single profile to a single pixel requires at least the following operations:
1. Address generation (computing the address of the pixel "on" the projection).
2. At least two comparisons, to decide if the pixel is at all on the profile
(i.e. is the address within a given range).
3. Reading the two operands to be added.
4. Addition of the operands (actually on most computers this means double precision addition), writing the result back to the image memory, 5. The operation under 1-4 should be preceded by interpolation (the address generated under 1 designates either an already interpolated value or after the address generation is to be accomplished the inter polation such forming one of the operands to be added), The hardware backprojection is performed by array-processors. The consequences of the hardware solutions are: a) Since these equipments are not particularly designed for accomplishing the backprojection, their universal nature results hardly the optimal solution for this well defined task. b) These hardware elements are very expensive. Even their price might be compared with that of the central computer. c)The efficient operation is guaranted only if they are interfaced to a more sophisticated computer. Taking into consideration the DEC's products it means at least a PDP 11/34 but one can see more sophisticated computers, too (e.g. Siemens SOMATOM DR, PDP 11/44). d) Mostly the performance of the backprojection is poorer than that of the invention's (see Table 1).
According to the above mentioned, the best choice is the hardware solution,however, the disadvantages are completed by the rigorous operating requirements (service, air-conditioning, size, etc.). The backprojection to be accomplished in the CT systems seems to be the territory where the optimal solution can be approached by selecting the proper hardware-software ratio, i.e. by applying a firmware solution. The task is to eliminate the disadvantages of the well-known backprojectors by designing a firmware equipment which is capable of economically performing the backprojection by digital precis on, by the speed of the hardware and by the flexibility of the software.
Disclosure of the invention
The substance of the invention is that it contains SINTAB memory containing a software generated table required by the backproj.ecting procedure, supported by input, output registers and control logic; read-address logic generating the addresses of the pixels on the profiles based upon the data contained in SINTAB memory, driving the address multiplexers of the convolution output memories; two convolution output memories connected to the latter through address multiplexes which have direct connection with the write-address locjic, supported by data multiplexer, containing the convolved or convolved and interpolated data to be back projected, capable to perform pipe-line operation with an external convolver through alternate buffers as well as parallel read/write logic; operating mode selector flip-flop connected to the output register of the SINTAB memory;
address comparator enabling or disabling the density-correction of the pixel just under backprojection, connected to the output of the latter as well as to the read-address logic;
zero register, containing the zero value to be added in case of disabling the density-correction;
data register connected to the output of the data multiplexer, whose output is enabled or disabled depending upon the output state of the addr.ess comparator;
image memory containing the density values of the pixels;
adder, which is capable to add the value just read out of the image memory and it's corresponding value on the profile under backprojection,
A favourable realization of the invention has a read-address logic containing: two intermediate registers (SIN and COS registers, respectively) containing the line and column address offset values required for the sequential backprojection, connected to the output register of the SINTAB memory;
line and column address adders with one of their inputs connected to the intermediate registers, respectively;
line address multiplexer whose B input is connected to the output of the line address adder and A input is connected to the output register of the SINTAB memory;
current line address register containing the address of the first pixel of the line just under backprojection on the profile* whose input is connected to the output of the line address multiplexer and whose output joins the input of the line address adder and the B input of the address multiplexer;
the A input of the just mentioned multiplexer is connected to the output of the column address adder;
current operating point register containing the address of the pixel just under back projection on the profile, whose input joins the output of the address multiplexer and whose output is connected to the input of the column address adder and forms the common output of the whole read-address logic, too.
Brief description of the drawings
Figure 1 is the overview of major components associated with the backprojector according to the invention.
Figure 2 is the outline of the address generation and Figure 3a, 3b contain the theory of the pixel-size correction.
Best mode of carrying out the invention
In the followings the invention will be described in connection with the example shown in Fig. 1.
It's logical to begin the listing of the components with the SINTAB memory 2. It contains the tables necessary to the backprojection. the SINTAB memory is written by a computer, not delineated here, through the input "TABLE IN".
The input of the SINTAB memory 2 is connected to the input register 1 as long as it's output joins the output register 3. Each of the three networks are con-trolled by a control logic 4. The input register 1 contains the data to be written in, the output register 3 stores temporarily the data read out, the control logic 4 generates the necessary address and control signals determined by the algorithm of the backprojection.
The output register 3 joins on one hand to the input of a read-address logic 5, on the other hand it is connected to the input of an operating mode selector flip-flop 21. The output of the component 21 is connected to one of the inputs of an address comparator 22 whose output is determined by the fact the pixel just under backprojection in on the profile or it is out of the range of the profile. The output of the read-address logic 5 is fed-back to the other input of the address comparator 22. The same signal is connected to the B and A inputs of the address multiplexers 14, 15, driving the address lines of the convolution output memories 16, 17, respectively. The multiplexers 14, 15 are driven through their A and B inputs by a write-address logic 25. The output of these multiplexers joins the convolution output meinorieό 16 and 17, respectively. The memories contain the convolved profiles, the profiles are written by a computer through the inputs "DATA IN". The data outputs of the convolution output memories 16, 17 are connected to the inputs of the data multiplexer 18. This multiplexer forwards the data just read out of one of the convolution output memories to the input of the data register 19. The enable input of the data register 19 joins one of the outputs of the address comparator 22. The other inverted output of the address comparator is connected to the enable input of the zero register 20. Both the outputs of zero register 20 and data register 19 are bussed to one of the inputs of the adder 24. The other input of this adder joins the data out lines of the image memory 23 forming the same time the output of the backprojector unit (OUT), as long as the output of the adder is connected to the data in lines of the image memory. The image memory 23 stores during the backprojection the partially backprojected image as well as at the end of the back projection the image reconstructed is forwarded through it's "OUT" output to the computer or display generator not delineated here.
Now detailing the read-address logic 5, it is constructed as follows: the logic contains an intermediate SIN register 6 and an intermediate COS register 7 for storage of the data read out of the SINTAB memory 2 through the output register 3, both the 6 and 7 components are connected to the input of the read- address logic 5. The output of the intermediate SIN register joins the input of the line address adder 9 as well as the output of the intermediate COS register joins the column address adder 11. The B input of the lins address multiplexer 8 is connected to the output of the line address adder 9, as long as it's A input is connected to the input of the read-address logic 5. The output of the line address multiplexer 8 joins the input of the current line address register 10, the output of the component 10 is connected on one hand to the B input of the address multiplexer 12 on the other hand it is fed back to the input of the line address adder 9. The A input of the address multiplexer 12 is connected to the output of the column address adder 11 as well as it's output is connected to the input of the current operating point register 13. The output of the component 13 forms the common output of the whole read-address logic 5 and it is fed back to one of the inputs of the column address adder 11. The survey of the operation postulates that one of the convolution output memories 16 or 17 already contains the convolved or convolved and interpolated data of a given profile (Table II).
A further condition of operation is that the SINTAB memory already contains the data necessary to the backprojection according to Table III.
Before initiating the backprojection, the image memory 23 contains any given background offset value (mostly zero). During the backprojection it stores the partially backprojected image according to Table IV
Let's follow now the backprojection based upon Fig. 1. At the first initiation of the back projector, the value located at the Ø address of the SINTAB memory is read out and it's operating mode bit is clocked through the output register 3 into the operating mode selector flip-flop 21. The address comparator 22 decides if there is anything to be backprojected or rather the projection of the pixel is not within the range of the given profile. Certainly the range is different if a profile contains 256 or 512 samples. Having clocked the value into the operating mode selector flip-flop, the backprojection of the first profile is similar to any n-th profile. The SINUS value corresponding to the profile is read out and stored in the intermediate SIN register 6. Similarly the corresponding COSINUS value is read out and stored in the intermediate COS register 7. Through the A input of the line address multiplexer 8 the base address (16 LS and 8 MS bits) is clocked into the current line address register 10. This address is the coordinate of the reference pixel (1 line 1 pixel) on the profile under backprojection. Now until the completion of the backprojection of the profile the B input is selected at the line address multiplexer 8. The base address is to be written from the current line address register through the B input of the address multiplexer 12 into the current operating point register 13, too. Such the projection address of the first pixel is stored in point register 13 , now until the completion of the backprojection αf the profile the component 10 stores the projection address of the first pixel of the line just under backprojection as well as point register 13 stores the projection address of the pixel just under backprojection. The mathemat hical background of the address generation in the coordinate system is surveyed on the basis of Table V and Fig. 2, The angles θ1 , θ2, θ3 and θ4 referenced there are the angles under the projections are measured in the different quarters of the coordinate system.
Having written the address into the current operating point register 13, for a period of about 200ns the read address lines are valid at the B and
A input of the address multiplexers 14 and 15. The same time the read-modify-write cycle begins at the image memory 23. Since the output of the current operating point register 13 is connected to the address comparator 22 too, the latter is capable to decide if the address is within the range or not. After a 200ns period the data read out of the convolution output memory 16 or 17 (depending on the profile) can be clocked into the data register 19. Now the state of the comparator determines if the data just read out of the convolution output memory or Ø is to be added to the data read out of the image memory. The adder 24 performs the addition of the two operands and the sum is written back into the image memory as the completion of it's read-modify-write cycle. During this phase a decoder is enabled to sense if a whole line of the image is already processed. If not, so the input of the current operating point register 13 is to be connected with the output of the column address adder 11 by selecting the A input of the address multiplexer 12. The coordinate of the next pixel on the profile (+COS step) is generated by this time at the output of the column address adder 11. The cycle-time of the backprojection (pixel by pixel) within a line of the image is 800ns. If a whole line of the image is already processed, the current line address register 10 is to be clocked. The input of component 10 is connected with the output of the line address adder 9 by selecting the B input of the line address multiplexer 8, The coordinate of the first pixel of the next line on the profile (+SIN step) is generated by this time at the output of the line address adder 9. This value is clocked into 10, If the whole image is not yet processed, the B input of the address multiplexer 12 is selected and the content of the current line address register 10 is written into the current operating point register 13. If the whole image is already processed a shut-down sequence is initiated. At this moment the state of the convolution output memories 16, 17 can be checked if the backprojection of a new profile is to be initiated. Provided the convolution output memory not just processed is already filled with the new convolved or convolved and interpolated data, the backprojector is restarted. If no new profile is available, the backprojector is waiting in IDLE state or lets the computer to read back the content of the image memory.
The backprojector according to the invention performs the pixel-size correction on the basis of the following equations. The distance of data acquisition during a translation by the central beam 26 and a fan beam 27 are (Fig. 3a);
m = a . n (1) m ' = a ' . n (2) and m'= m • cosα (3)
where α is the angle between the given fan and central beams (determined by the collimator geometry); n is the number of samples/profile; a is the pixel size determined by the central beam and a' is the pixel size determined by the given fan beam.
Dividing (1) by (2) and substituting (3) we get: a/a' = 1/cosα (4)
Taking into consideration the geometry of Fig. 3b, we get now that the corrections of Table V for the fan beams are: vertical step down: sinθ/cosα horizontal step to the right: cosθ/cosα The goal of the concrete realization was the reliable testing of the backprojector. 1.) Each of the memories can be tested individually: SINTAB memory, convolution output memories, image memory. 2.) The backprojector is capable to process the data convolved by the computer. The interpolator unit is located on the data board alongside with the convolution output memories. The interpolator computes the linear interpolation of the data convolved and writes them into the convolution output memories in accordance with Table II. 3.) The backprojector is capable to receive the input convolved data from a pipe-line convolver. If so, the input is the preprocessed data for the convolver and the output is the whole reconstructed image from the backprojector.
Specification of the backprojector based upon the invention: - storage capacity of the convolution output memories: each: 2Kx32 bits
- storage capacity of the SINTAB memory:
2kX16 bits(4 words per profile + 1 control word)
- storage capacity of the image memory (1-4 boards): 64Kx32 bits per board
- image size: 256x256 (1 memory board) or
512x512 (4 memory boards)
- profiles to be backprojected: 256 or 512 discrete convolved values, 3 interpolated values between 2 original filtered ones
- speed of backprojection: 52,5 ms/profile independently of the image size
- density value of the pixels stored on 32 bits during backprojection - at the end of the backprojection a hardware programmable normalization ( Ø - 31 arithmetic right shifts)
- backprojection on the basis of profiles
- pixel size correction
- theoretically any data acquisition system is suitable - backprojection for the whole image or any partial image is available - linear encoder correction during backprojection
- can be configured as a stand-alone unit or capable to operate parallel to a pipe-line convolver.
Special features of the backprojector according to the invention: - the backprojection is performed with hardware speed supporting the real-time processing. Practically the speed is limited by the read-modify-write cycle time of the memory-chips of the image memory board.
Taking into consideration that the convolution output memories can be read in 200πs and selecting a read- -modify-write cycle time of 800ns (theoretically it could be slightly faster) at the image memory it is feasable to backproject the profile simultaneously into four image memories (storing different portions of the image to be reconstructed).
- The equipment maintains the flexibility of a software solution (applying a software generated SINTAB memory content according to the operating mode selected).
- Interfacing the backprojector to the DMA channel of any computer is simple.
- It can be connected directly to a firmware convolver such forming together a pipe-line processor. - The structure supports some corrections to accomplish (pixel-size correction, linear-encoder correction) which can be done in other systems only by add-on electronics.
- The equipment substitutes an expensive device, the array-processor.
- The maintenance is economical (only the special purpose hardware and not a universal hardware is required, the configuration of the central computer can be poorer, some add-on hardware for the corrections can be saved).

Claims

CLAIMS :
1. A firmware backprojector intended primarily to perform the backprojecting phase of the filtered backprojection applied in CT systems, which can be interfaced to the DMA channel of a mini-computer, which is capable of performing the partial or full backprojection of the given slice scanned from any given profile arranged in any sequence, c h a r a c t e r i z e d by that it contains SINTAB memory (2) having software generated tables required by the backprojecting procedure, supported by input (1), output (3) registers and control logic (4); read- address logic (5) generating the address of the pixel on the profile on the basis of the data contained in SINTAB memory (2), driving the address multiplexers (14,15) of the convolution output memories (16,17); two convolution output memories (16, 17) connected to the read-address logic (5) through the address multiplexers (14,15) which have further connection to the write-address logic (25), supported by data multiplexer (18), containing the convolved or convolved and interpolated data to be backprojected, capable to perform pipe-line operation with an external convolver through alternate buffers and parallel read-write-logic; operating mode selector flip-flop (21) connected to the output register (3) of the SINTAB memory (2); address comparator (22) enabling or disabling the density-correction of the pixel, just under backprojection, connected to the output of the latter as well as to the read-address logic (5); zero register (20) containing the zero value to be added in case of disabling the density-correction; data register (19) connected to the output of the data multiplexer (18), whose output is enabled or disabled depending upon the output state of the address comparator (22); image memory (23) containing the density values of the pixel; adder (24) to produce the sum of the value just read out of the image memory (23) and its corresponding value on the profile.
2. A firmware backprojector according to claim 1, c h a r a c t e r i z e d by that its read-address logic (5) contains, two intermediate registers SIN (6) and COS (7) registers, respectively, containing the line and column address offset values required for the sequential backprojection, connected to the output register (3) of the SINTAB memory; line and column address adders (9, 11) with one of their inputs connected to the intermediate registers (6,7), respectively; line address multiplexer (8) whose inputs are connected to the output of the line address adder (9) and to the output register (3), respectively; current line address register (10) containing the address of the first pixel of the line just under backprojection on the profile, whose input is connected to the output of the line address multiplexer (8) and whose output joins the input of the line address adder (9) and one of the inputs of the address multiplexer (12); address multiplexer (12) whose other input not yet mentioned is connected to the output of the column address adder (11); current operating point register (13) containing the address of the pixel just under backprojection on the profile, whose input joins the output of the address multiplexer (12) and whose output is connected to the input of the column address adder (11) and forms the same time the common output of the whole read- address logic (5).
EP83902647A 1982-08-19 1983-08-19 Firmware backprojector in computerized tomograph systems Withdrawn EP0116590A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
HU822702A HU188196B (en) 1982-08-19 1982-08-19 Firmware back-projector for ct systems
HU270282 1982-08-19

Publications (1)

Publication Number Publication Date
EP0116590A1 true EP0116590A1 (en) 1984-08-29

Family

ID=10960709

Family Applications (1)

Application Number Title Priority Date Filing Date
EP83902647A Withdrawn EP0116590A1 (en) 1982-08-19 1983-08-19 Firmware backprojector in computerized tomograph systems

Country Status (4)

Country Link
EP (1) EP0116590A1 (en)
JP (1) JPS59501804A (en)
HU (1) HU188196B (en)
WO (1) WO1984000679A1 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4066903A (en) * 1974-07-20 1978-01-03 Emi Limited Radiology
US4042811A (en) * 1975-11-28 1977-08-16 Picker Corporation Tomography system having an ultrahigh-speed processing unit
GB1571800A (en) * 1976-01-15 1980-07-16 Emi Ltd Radiography
DE2656634A1 (en) * 1976-12-14 1978-06-15 Siemens Ag X=ray scanner with multiprocessor - has output of detectors multiplexed into memory with multiprocessor analysis
DE2964915D1 (en) * 1978-10-24 1983-03-31 Emi Ltd Computerized tomographic apparatus
JPS6058504B2 (en) * 1980-11-17 1985-12-20 株式会社東芝 reconstruction device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO8400679A1 *

Also Published As

Publication number Publication date
JPS59501804A (en) 1984-10-25
WO1984000679A1 (en) 1984-03-01
HU188196B (en) 1986-03-28

Similar Documents

Publication Publication Date Title
US4042811A (en) Tomography system having an ultrahigh-speed processing unit
EP1366469B1 (en) System and method for fast parallel cone-beam reconstruction using one or more microprocessors
JP3881698B2 (en) CT cone beam image reconstruction by circle and line scanning path
US5390111A (en) Method and system for processing cone beam data for reconstructing free of boundary-induced artifacts a three dimensional computerized tomography image
JP3049558B2 (en) High-speed combined back / forward projector for imaging device with CT scanner
EP0502187A1 (en) Parallel processing method and apparatus based on the algebra reconstruction technique for reconstructing a three-dimensional computerized tomography
JP2002320613A (en) Reverse projection method and apparatus for computed tomography
JPH0714030A (en) Reconstructing method of 3d picture as object from conical beam projection data and parallel processor
US5414622A (en) Method and apparatus for back projecting image data into an image matrix location
US4044240A (en) Tomography system having an ultra high speed processing unit
EP0083455B1 (en) Computerized tomography apparatus and method for reconstructing a cross-sectional image of an object
JP2001218763A (en) Half scanning algorithm used in high-speed multi-row type fan beam helical type detector
US4887211A (en) Image processor
JP4808303B2 (en) Method and apparatus for efficiently resampling a three-dimensional data set
JPS61119247A (en) Method and apparatus for regenerating transmitted and projected image
JP2943811B2 (en) Method for generating an image of a layer of an object and apparatus for implementing the method
JP2000041978A (en) Forward projection/back projection processor
US5047931A (en) Parallel computation of fan-beam back-projection reconstruction algorithm in computed tomography
JPH0245451B2 (en)
EP0116590A1 (en) Firmware backprojector in computerized tomograph systems
US5901195A (en) Two-step radon inversion processing for φ-planes having local radon origins
JP3285944B2 (en) Computer tomography equipment
Wiegand et al. Development and implementation of real-time ultrasound process tomography using a transputer network
JPH08112276A (en) X-ray ct apparatus
US7574027B2 (en) Back projection method in image reconstruction

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Designated state(s): DE FR GB NL

17P Request for examination filed

Effective date: 19840806

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 19860303

RIN1 Information on inventor provided before grant (corrected)

Inventor name: MEZO, LASZLO

Inventor name: FEHERVARY, JOZSEF

Inventor name: FUELOEP, PETER

Inventor name: ORY, SANDOR