1. Image analysis and statistics: an introduction using R and RIPA
Image analysis and statistics: an introduction
using R and RIPA
Talita Perciano, PhD
Computational Research Division
Lawrence Berkeley National Laboratory
tperciano@lbl.gov
useR! 2014
2. Image analysis and statistics: an introduction using R and RIPA
Table of contents
Image Processing
RIPA package
R, Image Processing and Big Data
Acknowlegments
3. Image analysis and statistics: an introduction using R and RIPA
Image Processing
What is Image Processing?
Digital Image Processing
Any process applied to a digital image performed by a computer
Some main points about images:
2-D image: bidimensional function f(x, y), where x and y
are the spatial coordinates and the amplitude of f at (x, y)
is called the intensity at that point
Finite number of elements: each one with a position and a
scalar or vectorial value
f(x,y)=125
f(x,y)=(125,82,48,100)
4. Image analysis and statistics: an introduction using R and RIPA
Image Processing
Importance and utility
Very broad field of study
From common operations (contrast and noise reduction) to
more complex ones (image segmentation/classification and
pattern recognition)
High importance to scientific research
Advent of Big Data and Data Science → Dicover knowledge
Research fields: Geoscience and Remote Sensing,
Bioinformatics, Biology, Medicine, Physics, Astronomy, to
name a few
5. Image analysis and statistics: an introduction using R and RIPA
RIPA package
What is RIPA?
RIPA
R Image Processing and Analysis
User friendly package providing image processing tools
Analysis and exploration tools that can be applied to
diverse domains
RIPA can be used as an auxiliary tool for learning statistics
and image analysis
6. Image analysis and statistics: an introduction using R and RIPA
RIPA package
What is RIPA?
7. Image analysis and statistics: an introduction using R and RIPA
RIPA package
What can I do with RIPA?
Reading and writting
Punctual operations
Negative
Brightness and contrast
Linear contrast stretch and equalization
Local operations
Filtering: sobel, laplacian, high/low-pass, median, mean
Segmentation
General analysis of bands
Statistics of each band
Brushplots
PCA analysis
8. Image analysis and statistics: an introduction using R and RIPA
RIPA package
What can I do with RIPA?
Regions of Interest
Different types of ROI
Statistics, covariance matrices, brushplots and dynamic
graphics
Special manipulation for multidimensional data
Satellite images such as AVIRIS and LANDSAT
Preview of samples before reading
What about Big Data, High Performance and RIPA?
9. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
R, Image Processing and Big Data
What ca be used for Big Image Data in R:
bigmemory - manage massive matrices with shared memory
and memory-mapped files
biganalytics - extends the bigmemory package with
analytics functions
bigkmeans - implementation of k-means clustering
algorithm for native or bigmemory R objects
Can be used along with HP related packages such as Rcpp,
parallel, doSNOW, doMC
bigvis - tools for exploratory data analysis of large
datasets (10-100 million obs.). Reduce data points for
visualization
bigpca - provides principal component analysis for
bigmemory objects
10. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
R, Image Processing and Big Data
Examples
µ-CT data obtained from
ALS/LBNL (ceramic
composite)
Resolution of
0.65 × 0.65 × 0.65µm
This complete stack has 5000
slices (16GB)
Complete set of stacks of a
common experiment reaches
TB of data
11. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
R, Image Processing and Big Data
Examples
(a) One slice from µ-CT data (b) Segmented slice using
bigkmeans
12. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
R, Image Processing and Big Data
Examples
0
1000
2000
3000
4000
0 50 100 150 200
# slices (each slice 1800x1950)
time(s)
"kmeans"
bigkmeans
kmeans
kmeans x bigkmeans
Figure : Execution time for different number of slices from µ-CT
data. The maximum number of slices shown is 200 (702,000,000 obs.).
System details: Intel Xeon CPU 2.53GHz x 16
13. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
R, Image Processing and Big Data
Examples
0e+00
1e+07
2e+07
0 100 200
Data
Count
Histogram from 100 slices
Figure : Histogram of 100 slices from µ-CT data using bigvis package
(0.7s). Attempt to use the usual plot was interrupted after 1 hour
14. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
R, Image Processing and Big Data
Examples
Landsat 8 OLI image of the
Bay Area obtained from
glovis.usgs.gov
11 spectral bands (about 1GB)
Easy to visualize data?
16. Image analysis and statistics: an introduction using R and RIPA
R, Image Processing and Big Data
Final Comments - Big Data and RIPA
RIPA already has a starting point for parallel processing
RIPA is being taught how to talk to big* family packages
(examples shown before)
A lot of work to do!
Compatibility with image formats to be read
Few image processing/pattern recognition algorithms that
can be used with existent Big Data packages
Visualization is still a challenge
17. Image analysis and statistics: an introduction using R and RIPA
Acknowlegments
Acknowlegments
This work is supported by the U.S. Department of Energy
under contract no. DE-AC03-76SF00098
SPRINGER BRIEFS IN COMPUTER SCIENCE
Alejandro C. Frery ·Talita Perciano
Introduction to Image Processing Using R
Learning by Examples
Alejandro C. Frery
Talita Perciano
Introductionto
ImageProcessing
UsingR
LearningbyExamples
Frery·PercianoIntroductiontoImageProcessingUsingR
SPRINGER BRIEFS IN COMPUTER SCIENCE
Computer Science
ISBN 978-1-4471-4949-1
301403_Print.indd 1301403_Print.indd 1 12/7/2012 8:24:51 PM12/7/2012 8:24:51 PM
Being used for introductory courses
Downloaded 3567 times last year
http://tinyurl.com/khv6rmn