Skip to content

chenqianben/Speckle-Denoise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Speckle-Denoise

Deep Learning Approaches on Medical Ultrasound Image Denoising in Pytorch and Tensorflow.

Objectives

Medical ultrasound is becoming today one of the most accessible diagnostic imaging modalities. A high image quality is the basis on which clinical interpretation can be made with sufficient confidence. However, medical ultrasound images suffer typically from speckle effect due to interference in the image formation.

We propose to study deep learning approaches to perform ultrasound speckle reduction. We will explore several different methods including end-to-end learning and hybrid methods. We would also like to push the understanding and the interpretation of the network behavior through a deeper analysis of network structures and activation functions.

State-of-the-art algorithms

Models

  • DnCNN [PDF] [WEB]
    • Beyond a Gaussian Denoiser: Residual Learning of Deep CNN for Image Denoising (TIP2017), Zhang et al.
  • FFDNet [PDF] [WEB]
    • FFDNet: Toward a fast and flexible solution for CNN-based image denoising, Zhang et al.
  • CBDNet [PDF] [WEB]
    • Toward Convolutional Blind Denoising of Real Photographs (Arxiv2018), Shi Guo, Zifei Yan, Kai Zhang, Wangmeng Zuo, Lei Zhang.
  • MWCNN [PDF] [WEB]
    • Multi-level wavelet-CNN for image restoration (2018), Liu, Pengju, et al.
  • KPN [PDF] [WEB]
    • Burst Denoising With Kernel Prediction Networks (CVPR2018), Ben Mildenhall, Jonathan T. Barron, Jiawen Chen, Dillon Sharlet, Ren Ng, Robert Carroll.

Generalization Capacity

  • CBDNet [PDF] [WEB]
    • Toward Convolutional Blind Denoising of Real Photographs (Arxiv2018), Shi Guo, Zifei Yan, Kai Zhang, Wangmeng Zuo, Lei Zhang.
  • Model without bias [PDF]
    • Robust and interpretable blind image denoising via bias-free convolutional neural networks, Mohan, Sreyas, et al.

Codes

In Pytorch

Models

  • [model_baseline.py] U-net
  • [model_gdfn.py] global dynamic filter network
  • [model_kpn.py] kernel predicion network

In Tensorflow

Models

  • [model_baseline.py] U-net
  • [model_gdfn2.py] global dynamic filter network
  • [model_local_dfn.py] local dynamic filter network
  • [model_mwcnn.py] multi-level wavelet cnn
  • [model_kpn.py] kernel predicion network
  • [model_mwkpn.py] multi-level wavelet kernel prediction network

Train

  • [train_blind_noise.ipynb] train models without noise estimation
  • [train_burst_blind_noise.ipynb] train burst models without noise estimation
  • [train_burst_with_noise_est.ipynb] train burst models with noise estimation
  • [train_noise_est.ipynb] train noise estimation models
  • [train_ultrasound_data.ipynb] train ultrasound data with one of the above models

Test

  • [test_ultrasound_data.ipynb] train ultrasound data with one of the above models

Eval

  • [eval_gdfn.ipynb] evaluate global dfn filters
  • [eval_kpn.ipynb] evaluate kpn/local dfn filters
  • [eval_mwcnn.ipynb] evaluate multi-level wavelet effects on U-net
  • [eval_transfer_learning.ipynb] evaluate transfer learning effects

Method

  • [dwt.py] discrete wavelet transform implementation in tensorflow2
  • [hybrid_method.ipynb] hybride methode implementation

Notes

  • Codes in Juppyter Notebook are for educative demonstration.
  • You can also consult the Project Report for more information.

About

Deep Learning Approaches on Medical Image Denoising

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published