Muutke küpsiste eelistusi

Image Processing and Acquisition using Python 2nd edition [Kõva köide]

(SriRav Scientific Solutions, Minneapolis, Minnesota, USA), (University of Minnesota, Minneapolis, USA)
  • Formaat: Hardback, 452 pages, kõrgus x laius: 234x156 mm, kaal: 1120 g, 143 Illustrations, black and white
  • Sari: Chapman & Hall/CRC The Python Series
  • Ilmumisaeg: 01-Jul-2020
  • Kirjastus: Chapman & Hall/CRC
  • ISBN-10: 0367198088
  • ISBN-13: 9780367198084
  • Formaat: Hardback, 452 pages, kõrgus x laius: 234x156 mm, kaal: 1120 g, 143 Illustrations, black and white
  • Sari: Chapman & Hall/CRC The Python Series
  • Ilmumisaeg: 01-Jul-2020
  • Kirjastus: Chapman & Hall/CRC
  • ISBN-10: 0367198088
  • ISBN-13: 9780367198084
"Image Processing and Acquisition using Python, Second Edition provides readers with a sound foundation in both image acquisition and image processing-one of the first books to integrate these topics. 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 reader skills in Python programming and image processing, with solutions to selected problems, example programs, and images available on the book's CRC Press 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"--

Image Processing and Acquisition using Python, Second Edition provides readers with a sound foundation in both image acquisition and image processing—one of the first books to integrate these topics. 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 reader skills in Python programming and image processing, with solutions to selected problems, example programs, and images available on the book’s CRC Press 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.
    • Arvustused

      "With its impressively organized and comprehensive text, Image Processing And Acquisition Using Python is an ideal and unreservedly recommended curriculum textbook and should be a part of every professional, college and university library Computer Science collection in general, and Python instructional reference lists in particular." Midwest Book Review

      Reviews for the previous edition

      "This multi-disciplinary image processing guide hits the mark when targeting the introductory college-level user who is interested in an open source solution that is scalable. By approaching the topics in a broad and horizontal fashion, Ravi Chityala and Sridevi Pudipeddi have created a very practical resource that should have broad impact and appeal across multiple physical and biological disciplines while using multiple imaging modalities. This new book uses an intuitive and efficient structure to describe basic acquisition hand-in-hand with image processing topics using the open source Python coding and even provides pre-packed installations. The authors present an effective approach to address the typical requirement of prerequisite image acquisition, computational knowledge, and/or hardware requirements by carefully balancing programming, math, and computer requirements, making image processing accessible to students and high-end users alike in multiple disciplines." Mark A. Sanders, Program Director, University Imaging Centers, University of Minnesota

      "This is a well-suited companion for any introductory course on image processing. The concepts are clearly explained and well illustrated through examples and Python code provided to the reader. The code allows the reader to readily apply the concepts to any images at hand, which significantly simplifies the understanding of image processing concepts. This is what makes this book great. I recommend this book to researchers and students who are looking for an introduction to image processing and acquisition." Martin Styner, University of North Carolina at Chapel Hill

      "I am a faculty member with specialization in biomechanics and have often found it hard to conceptualize the fundamentals of image processing. That is until I found this book. Image Processing and Acquisition using Python is unique in that it offers an in-depth understanding of the foundation of mathematics associated with image analysis. Ravi Chityala and Sridevi Pudipeddi provide accessible examples with sample codes to show how the theories are applied. This can be very useful to beginning learners and also for researchers (having Python sample code can be very handy to prototype a solution). This book touches all the fundamental topics on image processing, such as pre/post processing using filters, segmentation, morphological operations, and measurements, and also an in-depth discussion on image acquisition using various modalities like x-ray, CT, MRI, light microscopy, and electron microscopy. All the topics are explained clearly and easily. I would highly recommend this book and cannot praise enough the logical and well-written format that it is presented in." Augusto Gil Pascoal, Laboratory of Biomechanics and Functional Morphology, University of Lisbon

      "This is a book that every imaging scientist should have on his or her desk students and researchers need a course or a book to learn both image acquisition and image processing using a single source, and this book, as a well-rounded introduction to both topics, serves that purpose very well. the authors have done a great job of covering the most commonly used image acquisition modalities a handy compendium of the most useful information. As a long-time Perl user, I had no problem installing Python and trying several useful examples from the book." From the Foreword by Alexander Zamyatin, Distinguished Scientist, Toshiba Medical Research Institute USA, Inc.

      "The parts on Python and image processing are the strengths of the book. I enjoyed these parts and heavily profited from them in fact they saved me a lot of time so that I can highly recommend the whole book. The book actually motivated me, as MATLAB® user for two decades, to migrate to Python. Furthermore, I will use this book as textbook for Python and image processing for my future classes in the imaging and processing lab that I teach." Professor Andreas Modler, Beuth University for Applied Sciences

      "The parts on Python and image processing are the strengths of the book. I enjoyed these parts and heavily profited from them in fact they saved me a lot of time so that I can highly recommend the whole book. The book actually motivated me, as MATLAB® user for two decades, to migrate to Python. Furthermore, I will use this book as textbook for Python and image processing for my future classes in the imaging and processing lab that I teach." - Andreas Modler, Beuth University of Applied Sciences, Germany

      Foreword xvii
      Preface xix
      Preface to the First Edition xxi
      Introduction xxv
      Authors xxvii
      List of Symbols and Abbreviations
      xxix
      I Introduction to Images and Computing using Python
      1(58)
      1 Introduction to Python
      3(20)
      1.1 Introduction
      3(1)
      1.2 What Is Python?
      3(2)
      1.3 Python Environments
      5(1)
      1.3.1 Python Interpreter
      5(1)
      1.3.2 Anaconda Python Distribution
      6(1)
      1.4 Running a Python Program
      6(1)
      1.5 Basic Python Statements and Data Types
      7(12)
      1.5.1 Data Structures
      11(5)
      1.5.2 File Handling
      16(2)
      1.5.3 User-Defined Functions
      18(1)
      1.6 Summary
      19(1)
      1.7 Exercises
      20(3)
      2 Computing using Python Modules
      23(14)
      2.1 Introduction
      23(1)
      2.2 Python Modules
      23(3)
      2.2.1 Creating Modules
      24(1)
      2.2.2 Loading Modules
      24(2)
      2.3 Numpy
      26(5)
      2.3.1 Numpy Array or Matrices?
      30(1)
      2.4 Scipy
      31(1)
      2.5 Matplotlib
      31(1)
      2.6 Python Imaging Library
      32(1)
      2.7 Scikits
      32(1)
      2.8 Python Open CV Module
      33(1)
      2.9 Summary
      34(1)
      2.10 Exercises
      34(3)
      3 Image and Its Properties
      37(22)
      3.1 Introduction
      37(1)
      3.2 Image and Its Properties
      38(6)
      3.2.1 Bit-Depth
      38(1)
      3.2.2 Pixel and Voxel
      39(2)
      3.2.3 Image Histogram
      41(1)
      3.2.4 Window and Level
      42(1)
      3.2.5 Connectivity: 4 or 8 Pixels
      43(1)
      3.3 Image Types
      44(5)
      3.3.1 JPEG
      44(1)
      3.3.2 TIFF
      45(1)
      3.3.3 DICOM
      45(4)
      3.4 Data Structures for Image Analysis
      49(1)
      3.5 Reading, Writing and Displaying Images
      49(4)
      3.5.1 Reading Images
      49(2)
      3.5.2 Reading DICOM Images using pyDICOM
      51(1)
      3.5.3 Writing Images
      52(1)
      3.5.4 Writing DICOM Images using pyDICOM
      52(1)
      3.5.5 Displaying Images
      53(1)
      3.6 Programming Paradigm
      53(3)
      3.7 Summary
      56(1)
      3.8 Exercises
      57(2)
      II Image Processing using Python
      59(216)
      4 Spatial Filters
      61(34)
      4.1 Introduction
      61(1)
      4.2 Filtering
      62(11)
      4.2.1 Mean Filter
      64(4)
      4.2.2 Median Filter
      68(2)
      4.2.3 Max Filter
      70(2)
      4.2.4 Min Filter
      72(1)
      4.3 Edge Detection using Derivatives
      73(16)
      4.3.1 First Derivative Filters
      74(2)
      4.3.1.1 Sobel Filter
      76(2)
      4.3.1.2 Prewitt Filter
      78(2)
      4.3.1.3 Canny Filter
      80(2)
      4.3.2 Second Derivative Filters
      82(1)
      4.3.2.1 Laplacian Filter
      83(3)
      4.3.2.2 Laplacian of Gaussian Filter
      86(3)
      4.4 Shape Detecting Filter
      89(2)
      4.4.1 Frangi Filter
      89(2)
      4.5 Summary
      91(1)
      4.6 Exercises
      92(3)
      5 Image Enhancement
      95(28)
      5.1 Introduction
      95(1)
      5.2 Pixel Transformation
      95(2)
      5.3 Image Inverse
      97(2)
      5.4 Power Law Transformation
      99(3)
      5.5 Log Transformation
      102(2)
      5.6 Histogram Equalization
      104(6)
      5.7 Contrast Limited Adaptive Histogram Equalization (CLAHE)
      110(2)
      5.8 Contrast Stretching
      112(2)
      5.9 Sigmoid Correction
      114(3)
      5.10 Local Contrast Normalization
      117(4)
      5.11 Summary
      121(1)
      5.12 Exercises
      121(2)
      6 Affine Transformation
      123(14)
      6.1 Introduction
      123(1)
      6.2 Affine Transformation
      124(10)
      6.2.1 Translation
      124(3)
      6.2.2 Rotation
      127(1)
      6.2.3 Scaling
      128(2)
      6.2.4 Interpolation
      130(4)
      6.3 Summary
      134(1)
      6.4 Exercises
      135(2)
      7 Fourier Transform
      137(30)
      7.1 Introduction
      137(1)
      7.2 Definition of Fourier Transform
      138(3)
      7.3 Two-Dimensional Fourier Transform
      141(5)
      7.3.1 Fast Fourier Transform using Python
      143(3)
      7.4 Convolution
      146(2)
      7.4.1 Convolution in Fourier Space
      147(1)
      7.5 Filtering in the Frequency Domain
      148(16)
      7.5.1 Ideal Lowpass Filter
      148(3)
      7.5.2 Butterworth Lowpass Filter
      151(1)
      7.5.3 Gaussian Lowpass Filter
      152(2)
      7.5.4 Ideal Highpass Filter
      154(3)
      7.5.5 Butterworth Highpass Filter
      157(2)
      7.5.6 Gaussian Highpass Filter
      159(1)
      7.5.7 Bandpass Filter
      160(4)
      7.6 Summary
      164(1)
      7.7 Exercises
      164(3)
      8 Segmentation
      167(28)
      8.1 Introduction
      167(1)
      8.2 Histogram-Based Segmentation
      168(11)
      8.2.1 Otsu's Method
      168(4)
      8.2.2 Renyi Entropy
      172(4)
      8.2.3 Adaptive Thresholding
      176(3)
      8.3 Region-Based Segmentation
      179(8)
      8.3.1 Watershed Segmentation
      181(6)
      8.4 Contour-Based Segmentation
      187(4)
      8.4.1 Chan-Vese Segmentation
      187(4)
      8.5 Segmentation Algorithm for Various Modalities
      191(2)
      8.5.1 Segmentation of Computed Tomography Image
      192(1)
      8.5.2 Segmentation of MRI Image
      192(1)
      8.5.3 Segmentation of Optical and Electron Microscope Images
      192(1)
      8.6 Summary
      193(1)
      8.7 Exercises
      193(2)
      9 Morphological Operations
      195(32)
      9.1 Introduction
      195(1)
      9.2 History
      195(1)
      9.3 Dilation
      196(5)
      9.4 Erosion
      201(4)
      9.5 Grayscale Dilation and Erosion
      205(4)
      9.6 Opening and Closing
      209(4)
      9.7 Grayscale Opening and Closing
      213(4)
      9.8 Hit-or-Miss
      217(4)
      9.9 Thickening and Thinning
      221(3)
      9.9.1 Skeletonization
      222(2)
      9.10 Summary
      224(1)
      9.11 Exercises
      224(3)
      10 Image Measurements
      227(24)
      10.1 Introduction
      227(1)
      10.2 Labeling
      228(3)
      10.3 Hough Transform
      231(7)
      10.3.1 Hough Line
      232(2)
      10.3.2 Hough Circle
      234(4)
      10.4 Template Matching
      238(4)
      10.5 Corner Detector
      242(6)
      10.5.1 FAST Corner Detector
      243(1)
      10.5.2 Harris Corner Detector
      244(4)
      10.6 Summary
      248(1)
      10.7 Exercises
      249(2)
      11 Neural Network
      251(14)
      11.1 Introduction
      251(1)
      11.2 Introduction
      252(1)
      11.3 Mathematical Modeling
      252(4)
      11.3.1 Forward Propagation
      252(2)
      11.3.2 Back-Propagation
      254(2)
      11.4 Graphical Representation
      256(3)
      11.5 Neural Network for Classification Problems
      259(1)
      11.6 Neural Network Example Code
      259(5)
      11.7 Summary
      264(1)
      11.8 Exercises
      264(1)
      12 Convolutional Neural Network
      265(10)
      12.1 Introduction
      265(1)
      12.2 Convolution
      266(1)
      12.3 Maxpooling
      267(1)
      12.4 LeNet Architecture
      268(5)
      12.5 Summary
      273(1)
      12.6 Exercises
      273(2)
      III Image Acquisition
      275(106)
      13 X-Ray and Computed Tomography
      277(38)
      13.1 Introduction
      277(1)
      13.2 History
      277(1)
      13.3 X-Ray Generation
      278(6)
      13.3.1 X-Ray Tube Construction
      278(2)
      13.3.2 X-Ray Generation Process
      280(4)
      13.4 Material Properties
      284(4)
      13.4.1 Attenuation
      284(2)
      13.4.2 Lambert-Beer Law for Multiple Materials
      286(1)
      13.4.3 Factors Determining Attenuation
      287(1)
      13.5 X-Ray Detection
      288(5)
      13.5.1 Image Intensifier
      289(1)
      13.5.2 Multiple-Field II
      290(1)
      13.5.3 Flat Panel Detector (FPD)
      291(2)
      13.6 X-Ray Imaging Modes
      293(2)
      13.6.1 Fluoroscopy
      293(1)
      13.6.2 Angiography
      293(2)
      13.7 Computed Tomography (CT)
      295(9)
      13.7.1 Reconstruction
      295(1)
      13.7.2 Parallel-Beam CT
      296(1)
      13.7.3 Central Slice Theorem
      296(4)
      13.7.4 Fan-Beam CT
      300(1)
      13.7.5 Cone-Beam CT
      301(2)
      13.7.6 Micro-CT
      303(1)
      13.8 Hounsfield Unit (HU)
      304(2)
      13.9 Artifacts
      306(5)
      13.9.1 Geometric Misalignment Artifacts
      307(1)
      13.9.2 Scatter
      307(2)
      13.9.3 Offset and Gain Correction
      309(1)
      13.9.4 Beam Hardening
      310(1)
      13.9.5 Metal Artifacts
      311(1)
      13.10 Summary
      311(2)
      13.11 Exercises
      313(2)
      14 Magnetic Resonance Imaging
      315(28)
      14.1 Introduction
      315(1)
      14.2 Laws Governing NMR and MRI
      316(3)
      14.2.1 Faraday's Law
      316(1)
      14.2.2 Larmor Frequency
      317(1)
      14.2.3 Bloch Equation
      318(1)
      14.3 Material Properties
      319(5)
      14.3.1 Gyromagnetic Ratio
      319(1)
      14.3.2 Proton Density
      320(1)
      14.3.3 Ti and T2 Relaxation Times
      321(3)
      14.4 NMR Signal Detection
      324(1)
      14.5 MRI Signal Detection or MRI Imaging
      324(3)
      14.5.1 Slice Selection
      326(1)
      14.5.2 Phase Encoding
      326(1)
      14.5.3 Frequency Encoding
      327(1)
      14.6 MRI Construction
      327(4)
      14.6.1 Main Magnet
      328(1)
      14.6.2 Gradient Magnet
      329(1)
      14.6.3 RF Coils
      329(1)
      14.6.4 K-Space Imaging
      330(1)
      14.7 T1, T2 and Proton Density Image
      331(2)
      14.8 MRI Modes or Pulse Sequence
      333(3)
      14.8.1 Spin Echo Imaging
      333(1)
      14.8.2 Inversion Recovery
      334(1)
      14.8.3 Gradient Echo Imaging
      335(1)
      14.9 MRI Artifacts
      336(4)
      14.9.1 Motion Artifact
      337(2)
      14.9.2 Metal Artifact
      339(1)
      14.9.3 Inhomogeneity Artifact
      339(1)
      14.9.4 Partial Volume Artifact
      340(1)
      14.10 Summary
      340(1)
      14.11 Exercises
      341(2)
      15 Light Microscopes
      343(20)
      15.1 Introduction
      343(1)
      15.2 Physical Principles
      344(6)
      15.2.1 Geometric Optics
      344(1)
      15.2.2 Numerical Aperture
      345(1)
      15.2.3 Diffraction Limit
      346(2)
      15.2.4 Objective Lens
      348(1)
      15.2.5 Point Spread Function (PSF)
      349(1)
      15.2.6 Wide-Field Microscopes
      350(1)
      15.3 Construction of a Wide-Field Microscope
      350(2)
      15.4 Epi-Illumination
      352(1)
      15.5 Fluorescence Microscope
      352(4)
      15.5.1 Theory
      352(1)
      15.5.2 Properties of Fluorochromes
      353(2)
      15.5.3 Filters
      355(1)
      15.6 Confocal Microscopes
      356(1)
      15.7 Nipkow Disk Microscopes
      357(2)
      15.8 Confocal or Wide-Field?
      359(1)
      15.9 Summary
      360(1)
      15.10 Exercises
      361(2)
      16 Electron Microscopes
      363(18)
      16.1 Introduction
      363(1)
      16.2 Physical Principles
      364(6)
      16.2.1 Electron Beam
      365(1)
      16.2.2 Interaction of Electron with Matter
      366(2)
      16.2.3 Interaction of Electrons in TEM
      368(1)
      16.2.4 Interaction of Electrons in SEM
      368(2)
      16.3 Construction of EMs
      370(4)
      16.3.1 Electron Gun
      370(2)
      16.3.2 Electromagnetic Lens
      372(1)
      16.3.3 Detectors
      373(1)
      16.4 Specimen Preparations
      374(1)
      16.5 Construction of the TEM
      375(1)
      16.6 Construction of the SEM
      376(1)
      16.7 Factors Determining Image Quality
      377(2)
      16.8 Summary
      379(1)
      16.9 Exercises
      380(1)
      A Process-Based Parallelism using Joblib
      381(4)
      A.1 Introduction to Process-Based Parallelism
      381(1)
      A.2 Introduction to Joblib
      381(1)
      A.3 Parallel Examples
      382(3)
      B Parallel Programming using MPI4Py
      385(10)
      B.1 Introduction to MPI
      385(1)
      B.2 Need for MPI in Python Image Processing
      386(1)
      B.3 Introduction to MPI4Py
      387(1)
      B.4 Communicator
      388(1)
      B.5 Communication
      389(4)
      B.5.1 Point-to-Point Communication
      389(2)
      B.5.2 Collective Communication
      391(2)
      B.6 Calculating the Value of PI
      393(2)
      C Introduction to ImageJ
      395(4)
      C.1 Introduction
      395(1)
      C.2 ImageJ Primer
      396(3)
      D MATLAB® and Numpy Functions
      399(4)
      D.1 Introduction
      399(4)
      Bibliography 403(14)
      Index 417
      Ravishankar Chityala, Ph.D. is Principal Engineer at IonPath, with eighteen years of experience in image processing. He teaches Python programming and Deep learning using Tensorow at the University of California Santa Cruz, Silicon Valley Campus. Previously, he worked as an image processing consultant at the Minnesota Supercomputing Institute of the University of Minnesota. As an image processing consultant, Dr. Chityala had worked with faculty, students and staff from various departments in the scientific, engineering and medical fields at the University of Minnesota, and his interaction with students had made him aware of their need for greater understanding of and ability to work with image processing and acquisition. Dr. Chityala co-authored Essential Python (Essential Education, California, 2018), also contributed to the writing of Handbook of Physics in Medicine and Biology(CRC Press, Boca Raton, 2009, Robert Splinter). His research interests include image processing, machine learning and deep learning.

      Sridevi Pudipeddi, Ph.D. has eleven years of experience teaching undergraduate courses. She teaches Machine Learning with Python and Python for Data Analysis at the University of California Berkeley at San Francisco campus. Dr. Pudipeddi's research interests are in machine learning, applied mathematics and image and text processing. Python's simple syntax and its vast image processing capabilities, along with the need to understand and quantify important experimental information through image acquisition, have inspired her to co-author this book. Dr. Pudipeddi co authored Essential Python (Essential Education, California, 2018).