GithubHelp home page GithubHelp logo

inpainting's Introduction

Inpainting for CT and PET Scans

Introduction

Our goal is to perform an inpainting for computer tomographic (CT) images, to reduce the dose a patient has to undergo during an examination. We take advantage of recent developments in the architecture of neural nets and utilize so called deep convolutional generative adversarial neural nets (DCGANs) as well as an autoencoder (AE) which is trained in an adversarial fashion.

Radon Transforms

Radon transforms are images as one obtains them from CT scans before the reconstruction. Figure 1 shows a reconstructed CT scan in the axial plane of a patient.


Fig. 1: Reconstructed CT Scan of a Liver. [1]

Before the reconstruction, an image rather has the shape of many stacked sine functions. This typical appearance, as seen below, results from the detector and the x-ray source which rotate around the patient.


Fig. 2: (Left) Section through randomly simulated ellipses. (Right) Radon transform of these ellipses.

The shown radon transform is the result of transforming a simulated section through randomly created ellipses. For a proof of concept we stick to these simulated sections before applying the algorithm to real patient data.

Dose Reduction

In order to reduce the radiation, a patient has to undergo, one can simply reduce the number of projections. An example of a radon transform with a reduced number of projections is shown in figure 3.


Fig. 3: Radon transform with less projections.

To compensate for the reduced information that one obtains from such a radon transform, we test two methods for inpainting the unkown regions.

Methods

For the inpainting we test 2 methods. The first method is based on a DCGAN architecture from [3], and learns to generate snippets of radon transformations from a random input. To obtain the most likely inpainting, one optimizes for the random input, as shown in [2]. The snippets are then put together to inpaint a whole radon transformation. The second method is based on an AE that makes use of dilated convolutions to increase the receptive field and is trained in an adversarial fashion using both, a global and a local discriminator network [4].

Comparison

We can see that compared to the generative approach (Figure 4, center), the autoencoded approach (Figure 4, right) inpaints the radon transform with a global structure.


Fig. 4: (Left) Radon transform using only 25% dose. (Center) Inpainted radon transform using a DCGAN. (Right) Inpainted radon transform using an AE.

The reconstructed images overall represent the finding of the lacking global structure for the generative inpainting, which results in ring artifacts (Figure 5, center). Both resulting reconstruction are, due to the removed information, a little blurry.


Fig. 5: (Left) Reconstruction of original radon transform. (Center) Reconstruction using the DCGAN inpainted radon transform. (Right) Reconstruction using the AE inpainted radon transform.

Outlook

One huge advantage of the AE over the DCGAN approach is that the AE needs no further optimization step to perform the inpainting and is thus faster by at least a factor of 10. Given that CT images usually involve a huge number of images, further improvements to the DCGAN approach with for example greater image snippets might not be as conducive. The AE encoder on the other hand shows promising results and should further be investigated with some small adjustments, as explained in the conclusion here. We especially want to point out that with the unofficial release of PyTorch 0.4.0 and above, there will be Fourier methods added. Using these Fourier methods, one can add a layer to the neural network that performs a reconstruction of the inpainted radon transform, as explained in [5], thus making it possible to not only account for the radon space but for the object space as well. An example of a Fourier based reconstruction is presented in figure 6.


Fig. 6: Fourier based reconstruction method.

Literature

[1] Liver CT Scan

[2] Semantic Image Inpainting with Deep Generative Models

[3] Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks

[4] Globally and Locally Consistent Image Completion

[5] Fourier Methods in CT: Projection and Reconstruction Algorithms

inpainting's People

Contributors

mhubii avatar imagirom avatar

Watchers

Thorsten Beier avatar

inpainting's Issues

Hint

It might make sense to use a super-resolution approach here.

Greetings Thorsten

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.