0%

Book Description

Image Processing and Acquisition using Python provides readers with a sound foundation in both image acquisition and image processing—one of the first books to integrate these topics together. By improving readers’ knowledge of image acquisition techniques and corresponding image processing, the book will help them perform experiments more effectively and cost efficiently as well as analyze and measure more accurately. Long recognized as one of the easiest languages for non-programmers to learn, Python is used in a variety of practical examples.

A refresher for more experienced readers, the first part of the book presents an introduction to Python, Python modules, reading and writing images using Python, and an introduction to images. The second part discusses the basics of image processing, including pre/post processing using filters, segmentation, morphological operations, and measurements. The second part describes image acquisition using various modalities, such as x-ray, CT, MRI, light microscopy, and electron microscopy. These modalities encompass most of the common image acquisition methods currently used by researchers in academia and industry.

Features

  • Covers both the physical methods of obtaining images and the analytical processing methods required to understand the science behind the images.
  • Contains many examples, detailed derivations, and working Python examples of the techniques.
  • Offers practical tips on image acquisition and processing.
  • Includes numerous exercises to test the reader’s skills in Python programming and image processing, with solutions to selected problems, example programs, and images available on the book’s web page.

New to this edition

  • Machine learning has become an indispensable part of image processing and computer vision, so in this new edition two new chapters are included: one on neural networks and the other on convolutional neural networks.
  • A new chapter on affine transform and many new algorithms.
  • Updated Python code aligned to the latest version of modules.

Table of Contents

  1. Cover
  2. Half Title
  3. Series Page
  4. Title Page
  5. Copyright Page
  6. Dedication
  7. Contents
  8. Foreword
  9. Preface
  10. Preface to the First Edition
  11. Introduction
  12. Authors
  13. List of Symbols and Abbreviations
  14. Part I: Introduction to Images and Computing using Python
    1. 1. Introduction to Python
      1. 1.1 Introduction
      2. 1.2 What Is Python?
      3. 1.3 Python Environments
        1. 1.3.1 Python Interpreter
        2. 1.3.2 Anaconda Python Distribution
      4. 1.4 Running a Python Program
      5. 1.5 Basic Python Statements and Data Types
        1. 1.5.1 Data Structures
        2. 1.5.2 File Handling
        3. 1.5.3 User-Defined Functions
      6. 1.6 Summary
      7. 1.7 Exercises
    2. 2. Computing using Python Modules
      1. 2.1 Introduction
      2. 2.2 Python Modules
        1. 2.2.1 Creating Modules
        2. 2.2.2 Loading Modules
      3. 2.3 Numpy
        1. 2.3.1 Numpy Array or Matrices?
      4. 2.4 Scipy
      5. 2.5 Matplotlib
      6. 2.6 Python Imaging Library
      7. 2.7 Scikits
      8. 2.8 Python OpenCV Module
      9. 2.9 Summary
      10. 2.10 Exercises
    3. 3. Image and Its Properties
      1. 3.1 Introduction
      2. 3.2 Image and Its Properties
        1. 3.2.1 Bit-Depth
        2. 3.2.2 Pixel and Voxel
        3. 3.2.3 Image Histogram
        4. 3.2.4 Window and Level
        5. 3.2.5 Connectivity: 4 or 8 Pixels
      3. 3.3 Image Types
        1. 3.3.1 JPEG
        2. 3.3.2 TIFF
        3. 3.3.3 DICOM
      4. 3.4 Data Structures for Image Analysis
      5. 3.5 Reading, Writing and Displaying Images
        1. 3.5.1 Reading Images
        2. 3.5.2 Reading DICOM Images using pyDICOM
        3. 3.5.3 Writing Images
        4. 3.5.4 Writing DICOM Images using pyDICOM
        5. 3.5.5 Displaying Images
      6. 3.6 Programming Paradigm
      7. 3.7 Summary
      8. 3.8 Exercises
  15. Part II: Image Processing using Python
    1. 4. Spatial Filters
      1. 4.1 Introduction
      2. 4.2 Filtering
        1. 4.2.1 Mean Filter
        2. 4.2.2 Median Filter
        3. 4.2.3 Max Filter
        4. 4.2.4 Min Filter
      3. 4.3 Edge Detection using Derivatives
        1. 4.3.1 First Derivative Filters
          1. 4.3.1.1 Sobel Filter
          2. 4.3.1.2 Prewitt Filter
          3. 4.3.1.3 Canny Filter
        2. 4.3.2 Second Derivative Filters
          1. 4.3.2.1 Laplacian Filter
          2. 4.3.2.2 Laplacian of Gaussian Filter
      4. 4.4 Shape Detecting Filter
        1. 4.4.1 Frangi Filter
      5. 4.5 Summary
      6. 4.6 Exercises
    2. 5. Image Enhancement
      1. 5.1 Introduction
      2. 5.2 Pixel Transformation
      3. 5.3 Image Inverse
      4. 5.4 Power Law Transformation
      5. 5.5 Log Transformation
      6. 5.6 Histogram Equalization
      7. 5.7 Contrast Limited Adaptive Histogram Equalization (CLAHE)
      8. 5.8 Contrast Stretching
      9. 5.9 Sigmoid Correction
      10. 5.10 Local Contrast Normalization
      11. 5.11 Summary
      12. 5.12 Exercises
    3. 6. Affine Transformation
      1. 6.1 Introduction
      2. 6.2 Affine Transformation
        1. 6.2.1 Translation
        2. 6.2.2 Rotation
        3. 6.2.3 Scaling
        4. 6.2.4 Interpolation
      3. 6.3 Summary
      4. 6.4 Exercises
    4. 7. Fourier Transform
      1. 7.1 Introduction
      2. 7.2 Definition of Fourier Transform
      3. 7.3 Two-Dimensional Fourier Transform
        1. 7.3.1 Fast Fourier Transform using Python
      4. 7.4 Convolution
        1. 7.4.1 Convolution in Fourier Space
      5. 7.5 Filtering in the Frequency Domain
        1. 7.5.1 Ideal Lowpass Filter
        2. 7.5.2 Butterworth Lowpass Filter
        3. 7.5.3 Gaussian Lowpass Filter
        4. 7.5.4 Ideal Highpass Filter
        5. 7.5.5 Butterworth Highpass Filter
        6. 7.5.6 Gaussian Highpass Filter
        7. 7.5.7 Bandpass Filter
      6. 7.6 Summary
      7. 7.7 Exercises
    5. 8. Segmentation
      1. 8.1 Introduction
      2. 8.2 Histogram-Based Segmentation
        1. 8.2.1 Otsu’s Method
        2. 8.2.2 Renyi Entropy
        3. 8.2.3 Adaptive Thresholding
      3. 8.3 Region-Based Segmentation
        1. 8.3.1 Watershed Segmentation
      4. 8.4 Contour-Based Segmentation
        1. 8.4.1 Chan-Vese Segmentation
      5. 8.5 Segmentation Algorithm for Various Modalities
        1. 8.5.1 Segmentation of Computed Tomography Image
        2. 8.5.2 Segmentation of MRI Image
        3. 8.5.3 Segmentation of Optical and Electron Microscope Images
      6. 8.6 Summary
      7. 8.7 Exercises
    6. 9. Morphological Operations
      1. 9.1 Introduction
      2. 9.2 History
      3. 9.3 Dilation
      4. 9.4 Erosion
      5. 9.5 Grayscale Dilation and Erosion
      6. 9.6 Opening and Closing
      7. 9.7 Grayscale Opening and Closing
      8. 9.8 Hit-or-Miss
      9. 9.9 Thickening and Thinning
        1. 9.9.1 Skeletonization
      10. 9.10 Summary
      11. 9.11 Exercises
    7. 10. Image Measurements
      1. 10.1 Introduction
      2. 10.2 Labeling
      3. 10.3 Hough Transform
        1. 10.3.1 Hough Line
        2. 10.3.2 Hough Circle
      4. 10.4 Template Matching
      5. 10.5 Corner Detector
        1. 10.5.1 FAST Corner Detector
        2. 10.5.2 Harris Corner Detector
      6. 10.6 Summary
      7. 10.7 Exercises
    8. 11. Neural Network
      1. 11.1 Introduction
      2. 11.2 Introduction
      3. 11.3 Mathematical Modeling
        1. 11.3.1 Forward Propagation
        2. 11.3.2 Back-Propagation
      4. 11.4 Graphical Representation
      5. 11.5 Neural Network for Classification Problems
      6. 11.6 Neural Network Example Code
      7. 11.7 Summary
      8. 11.8 Exercises
    9. 12. Convolutional Neural Network
      1. 12.1 Introduction
      2. 12.2 Convolution
      3. 12.3 Maxpooling
      4. 12.4 LeNet Architecture
      5. 12.5 Summary
      6. 12.6 Exercises
  16. Part III: Image Acquisition
    1. 13. X-Ray and Computed Tomography
      1. 13.1 Introduction
      2. 13.2 History
      3. 13.3 X-Ray Generation
        1. 13.3.1 X-Ray Tube Construction
        2. 13.3.2 X-Ray Generation Process
      4. 13.4 Material Properties
        1. 13.4.1 Attenuation
        2. 13.4.2 Lambert-Beer Law for Multiple Materials
        3. 13.4.3 Factors Determining Attenuation
      5. 13.5 X-Ray Detection
        1. 13.5.1 Image Intensifier
        2. 13.5.2 Multiple-Field II
        3. 13.5.3 Flat Panel Detector (FPD)
      6. 13.6 X-Ray Imaging Modes
        1. 13.6.1 Fluoroscopy
        2. 13.6.2 Angiography
      7. 13.7 Computed Tomography (CT)
        1. 13.7.1 Reconstruction
        2. 13.7.2 Parallel-Beam CT
        3. 13.7.3 Central Slice Theorem
        4. 13.7.4 Fan-Beam CT
        5. 13.7.5 Cone-Beam CT
        6. 13.7.6 Micro-CT
      8. 13.8 Hounsfield Unit (HU)
      9. 13.9 Artifacts
        1. 13.9.1 Geometric Misalignment Artifacts
        2. 13.9.2 Scatter
        3. 13.9.3 Offset and Gain Correction
        4. 13.9.4 Beam Hardening
        5. 13.9.5 Metal Artifacts
      10. 13.10 Summary
      11. 13.11 Exercises
    2. 14. Magnetic Resonance Imaging
      1. 14.1 Introduction
      2. 14.2 Laws Governing NMR and MRI
        1. 14.2.1 Faraday’s Law
        2. 14.2.2 Larmor Frequency
        3. 14.2.3 Bloch Equation
      3. 14.3 Material Properties
        1. 14.3.1 Gyromagnetic Ratio
        2. 14.3.2 Proton Density
        3. 14.3.3 T1 and T2 Relaxation Times
      4. 14.4 NMR Signal Detection
      5. 14.5 MRI Signal Detection or MRI Imaging
        1. 14.5.1 Slice Selection
        2. 14.5.2 Phase Encoding
        3. 14.5.3 Frequency Encoding
      6. 14.6 MRI Construction
        1. 14.6.1 Main Magnet
        2. 14.6.2 Gradient Magnet
        3. 14.6.3 RF Coils
        4. 14.6.4 K-Space Imaging
      7. 14.7 T1, T2 and Proton Density Image
      8. 14.8 MRI Modes or Pulse Sequence
        1. 14.8.1 Spin Echo Imaging
        2. 14.8.2 Inversion Recovery
        3. 14.8.3 Gradient Echo Imaging
      9. 14.9 MRI Artifacts
        1. 14.9.1 Motion Artifact
        2. 14.9.2 Metal Artifact
        3. 14.9.3 Inhomogeneity Artifact
        4. 14.9.4 Partial Volume Artifact
      10. 14.10 Summary
      11. 14.11 Exercises
    3. 15. Light Microscopes
      1. 15.1 Introduction
      2. 15.2 Physical Principles
        1. 15.2.1 Geometric Optics
        2. 15.2.2 Numerical Aperture
        3. 15.2.3 Diffraction Limit
        4. 15.2.4 Objective Lens
        5. 15.2.5 Point Spread Function (PSF)
        6. 15.2.6 Wide-Field Microscopes
      3. 15.3 Construction of a Wide-Field Microscope
      4. 15.4 Epi-Illumination
      5. 15.5 Fluorescence Microscope
        1. 15.5.1 Theory
        2. 15.5.2 Properties of Fluorochromes
        3. 15.5.3 Filters
      6. 15.6 Confocal Microscopes
      7. 15.7 Nipkow Disk Microscopes
      8. 15.8 Confocal or Wide-Field?
      9. 15.9 Summary
      10. 15.10 Exercises
    4. 16. Electron Microscopes
      1. 16.1 Introduction
      2. 16.2 Physical Principles
        1. 16.2.1 Electron Beam
        2. 16.2.2 Interaction of Electron with Matter
        3. 16.2.3 Interaction of Electrons in TEM
        4. 16.2.4 Interaction of Electrons in SEM
      3. 16.3 Construction of EMs
        1. 16.3.1 Electron Gun
        2. 16.3.2 Electromagnetic Lens
        3. 16.3.3 Detectors
      4. 16.4 Specimen Preparations
      5. 16.5 Construction of the TEM
      6. 16.6 Construction of the SEM
      7. 16.7 Factors Determining Image Quality
      8. 16.8 Summary
      9. 16.9 Exercises
  17. Appendix A: Image Processing and Acquisition using Python
    1. A.1 Introduction to Process-Based Parallelism
    2. A.2 Introduction to Joblib
    3. A.3 Parallel Examples
  18. Appendix B: Image Processing and Acquisition using Python
    1. B.1 Introduction to MPI
    2. B.2 Need for MPI in Python Image Processing
    3. B.3 Introduction to MPI4Py
    4. B.4 Communicator
    5. B.5 Communication
      1. B.5.1 Point-to-Point Communication
      2. B.5.2 Collective Communication
    6. B.6 Calculating the Value of PI
  19. Appendix C: Introduction to ImageJ
    1. C.1 Introduction
    2. C.2 ImageJ Primer
  20. Appendix D: Matlab® and Numpy Functions
    1. D.1 Introduction
  21. Bibliography
  22. Index
3.21.233.41