Chapter 10 Image Processing https vtk orgdocumentation Outline

  • Slides: 23
Download presentation
Chapter 10 Image Processing https: //vtk. org/documentation/

Chapter 10 Image Processing https: //vtk. org/documentation/

Outline • Motivation • DWA: a real world example • Algorithms • Code examples

Outline • Motivation • DWA: a real world example • Algorithms • Code examples

Motivation: Visualization vs. Computer Vision • Visualization: information to image • Computer Vision (CV):

Motivation: Visualization vs. Computer Vision • Visualization: information to image • Computer Vision (CV): image to information • Inverse of the process Visualization: Information/Data -> Graphics Objects -> Images Visualization Rendering Computer Vision: Images->Graphics Objects ->Information/Data Image Processing Pattern Recognition

Motivation: Applications • Augmented Virtual Reality: visualization meets image processing • Google Glass google.

Motivation: Applications • Augmented Virtual Reality: visualization meets image processing • Google Glass google. com/glass • Kinect Fussion https: //www. youtube. com/watch? v=qu. Ghaggn 3 c. Q https: //www. youtube. com/watch? v=GKRHWBS 6 gu. M

Motivation: Applications • Medical Imaging tumor detection, wound assessment • Monitoring traffic, surveillance, defects

Motivation: Applications • Medical Imaging tumor detection, wound assessment • Monitoring traffic, surveillance, defects detection • Automation robotics, factory, driving Google autonomous car

Applications: DWA • Digital Wound Assessment • Can be done locally or remotely •

Applications: DWA • Digital Wound Assessment • Can be done locally or remotely • Can be 2 D or 3 D

Applications: Remote DWA

Applications: Remote DWA

DWA: Web-based Image Processing Multi-tier Web Application: Client (phone app) Web Server Application Server

DWA: Web-based Image Processing Multi-tier Web Application: Client (phone app) Web Server Application Server Database Server

Architecture of a Four-Tier Application Supporting Software App User Interface Application Logic Database Engine

Architecture of a Four-Tier Application Supporting Software App User Interface Application Logic Database Engine Database DBMS / Database Server Database API Application Server Architecture of a Four-Tier Application WEB S E R V E R C L I E N T

Architecture of Remote DWA Supporting Software Mobile Dispatch Server WEB APP User Interface DWA

Architecture of Remote DWA Supporting Software Mobile Dispatch Server WEB APP User Interface DWA Image Processing Database Engine Database DBMS / Database Server Open. MRS SANA (sana. mit. edu) Architecture of Remote DWA Four-Tier Application S E R V E R MOCA Phone APP

DWA: Data Representation • • • 2 D array of colors Image header: info

DWA: Data Representation • • • 2 D array of colors Image header: info describe the image (dimensions, …) Compressed or not VTK image data (nxnx 1) Java image readers

DWA: Image Processing (1) (2) (3) (4) Preprocessing Segmentation Image Analysis Healing Projection

DWA: Image Processing (1) (2) (3) (4) Preprocessing Segmentation Image Analysis Healing Projection

DWA: Image Preprocessing (1) Calibration (2) Ruler processing (3) Outlier remover

DWA: Image Preprocessing (1) Calibration (2) Ruler processing (3) Outlier remover

DWA: Segmentation (1) Grey Scale (2) Gradient (3) Edge formation

DWA: Segmentation (1) Grey Scale (2) Gradient (3) Edge formation

Segmentation: Grey Scale Conversion /// grey scale as the length of the RGB color

Segmentation: Grey Scale Conversion /// grey scale as the length of the RGB color vector Public Gray. Scale. Image convert. To. Gray. Scale( Color. Image colorimage, int width, int height) { …. for(int i = 0; i < total; ++i) { newimage[i] = Math. sqrt((image[i * 3] * image[i * 3] + image[i * 3 + 1] * image[i * 3 + 1] + image[i * 3 + 2] * image[i * 3 + 2] ); } } return new Gray. Scale. Image(width, height, newimage);

Segmentation: Grey Scale Conversion /// grey scale as I in the IYQ model Public

Segmentation: Grey Scale Conversion /// grey scale as I in the IYQ model Public Gray. Scale. Image convert. To. Gray. Scale. YIQ( Color. Image colorimage, int width, int height) { …. for(int i = 0; i < total; ++i) { newimage[i] = 0. 299 * image[i * 3] + 0. 587 * image[i * 3 + 1] + 0. 114 * image[i * 3 + 2]; } } return new Gray. Scale. Image(width, height, newimage);

Segmentation: Gradient Computation /// Compute the gradient of grey scale, public void compute. XDif.

Segmentation: Gradient Computation /// Compute the gradient of grey scale, public void compute. XDif. Image(Gray. Scale. Image image){ …. for(int i = 0; i < total-1; ++i) { newimage[i] = Math. abs(image[I + 1] - image[i]); ; } } return new Gray. Scale. Image(width, height, newimage);

Segmentation: Edge Formation Create an array list for each edge. Array. List<Integer> edge =

Segmentation: Edge Formation Create an array list for each edge. Array. List<Integer> edge = new Array. List<Integer>() for(int i = 0; i < total; ++i) { if(image[i] > threshold) add. Edge. Pixel(i); // …… } edges = new Array. List<Integer> >(); edged. add(edge);

Segmentation: Edge Formation Geometric Descriptors: (1)List of edge pixels. (2)List of line segments. (3)Thining.

Segmentation: Edge Formation Geometric Descriptors: (1)List of edge pixels. (2)List of line segments. (3)Thining.

DWA: Image Analysis (1) (2) (3) (4) Size Color Shape Depth (3 D)

DWA: Image Analysis (1) (2) (3) (4) Size Color Shape Depth (3 D)

Image Analysis: Size (1) Registration (2) Calibration (3) Measurement count pixels by region growing

Image Analysis: Size (1) Registration (2) Calibration (3) Measurement count pixels by region growing

DWA: Healing Projection (1) Fit into existing healing trajectories. (2) Numerical results of predication.

DWA: Healing Projection (1) Fit into existing healing trajectories. (2) Numerical results of predication.

Image Processing Tools: ITK by Kitware: http: //www. itk. org/ Open. CV: http: //opencv.

Image Processing Tools: ITK by Kitware: http: //www. itk. org/ Open. CV: http: //opencv. org Open. CV application in robotics: http: //opencv. willowgarage. com/