manifold learning – from brain visualization to advanced image processing anders brun, phd student...

Post on 20-Jan-2016

214 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Manifold Learning– from Brain Visualization to Advanced Image Processing

Anders Brun, PhD studentMedical Informatics, Dept. of Biomed. Eng. (IMT)Center for Medical Imaging and Visualization (CMIV)Linköpings universitet, Sweden

IMTIMT

GeodesicsGeodesics

TensorsTensors

ManifoldsManifolds

Diffusion Weighted MRIDiffusion Weighted MRI

VisualizationVisualization

Intrinsic and Extrinsic meansIntrinsic and Extrinsic means

Manifold LearningManifold Learning

Machine LearningMachine Learning

Image ProcessingImage Processing

2

Thesis Advisors Hans Knutsson

Prof.Medical InformaticsDepartment of Biomedical EngineeringLinköpings universitet

Carl-Fredrik WestinAssociate Prof. of Radiology Laboratory of Mathematics in ImagingHarvard Medical School / Brigham and Women´s Hospital

Magnus HerberthsonAssistant Prof.Department of MathematicsLinköpings universitet

3

Abstract

In this talk I discuss the need to standardize image processing on manifolds. Two tools are presented, a framework for storage of geometric tensor arrays and a method for manifold learning, related to the Riemannian exponential and logaritmic map. Finally some future perspectives are presented, in particular the fusion of manifold learning and image processing.

4

Processing Tensor fields on Manifolds

Storage, processing and visualization of functions M ! V ­ V ... ­ V ­­V* ­­V* ­ ... ­ V*

Intrinsic formulations, Charts, Atlases, Coordinate Free Methods ...

Extrinsic methods can be problematic and there are more complicated cases than 2D surfaces embedded in 3D!

RP2

also SO(3), ...

5

A collaboration by:

Anders Brun, Burak Acar, Emma Munos, Leila Cammoun, Andreas Sigfridsson,Dario Sosa, Marcos Martin Fernandez, Björn Svensson, Magnus HerberthsonHans Knutsson

The Similar Tensor Array Core

The Similar Tensor Array Conventions

”Simple conventions for storing tensor array data ...”

6

What problem are we solving?

”The Ideal Customer”A fresh MSc or PhD student starting to work

with tensor data

Wanting to:Apply new algorithms to old (known) test dataApply old algorithms to new datsetsExchange tensor data between algorithms

and/or people

7

Core and Extensions

Mathematics

Processing paradigms

Data storage

Physics

Worlds

STAC

STAE A lot of tensor

processing can be done in the core

Extensions should include conventions for: DTI Elastography Image Processing Geoscience ...

Existing standards NRRD, VTK, Analyze, ...

Applications

8

Scalar data

array_dimensionality = 2 array_size = [4, 3] tensor_order = 0 tensor_index_types = {} data = [0.1 0.3 0.7 0.5 0.7 0.5 ...

0.5 0.6 0.8 0.1 0.5 0.3]

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

(4 * 3)

9

Vector data

array_dimensionality = 2 array_size = [4, 3] tensor_order = 1 tensor_index_types = {contravariant} data = [1.2 1.4 1.2 0.4 0.5 0.4]

... but in what basis???

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

(4 * 3 * 2)

10

The basis describing tensors

Indices are coordinates:(c1, c2) or generally ci

Basis vectors given by:

or generally

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

11

Dual vectors

array_dimensionality = 2 array_size = [4, 3] tensor_order = 1 tensor_index_types = {covariant} data = [0.2 2.4 3.1 0.3 1.2 0.7]

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

(4 * 3 * 2)

12

A metric instead of voxelsize

array_metric_tensor = gij

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

13

A metric instead of voxelsize

array_metric_tensor = gij

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

(1,1) (1,2) (1,3)

(2,1) (2,2) (2,3)

(3,1) (3,2) (3,3)

(4,1) (4,2) (4,3)

14

Additional core fields

[tensor_name] = D[tensor_description] = ”Diffusion”[tensor_index_names], e.g. {a, b}[array_index_names], e.g. {i, j, k}

15

Image Processing is often invariant ...

... to how the image is displayed!

16

Tensor Array Processing should be invariant too.

Remember, in some applications there is no extrinsic space!

17

Even without an extrinsic space you can do ...

Geodesic tracking (given a metric field gij)) Distances (given a metric field gij) Balls (given a metric field gij) Fiber tracking (given a metric tensor) Image processing on curved manifolds (given a metric field gij) Tilted volumes with non-isotropic voxelsizes (given a metric tensor) Correct visualizations, up to actions of the orthogonal group O(n)

(with a metric) or general linear group GL(n) (without a metric) Solve PDEs Interpolate the field

18

Manifolds in Image Processing

– It´s a Klein bottle!

19

Manifolds in Biology

Adapted from Visual Cortex: Looking into a Klein Bottle by Nicholas Swindale,Current Biology, Vol. 6 No. 7:776–779, 1996

Optical recording from the visual cortex of a macaque monkey.

“[...] reasoning based on topological arguments may be increasingly helpful in attempting to understand how the world, Klein bottles and all, is unfolded onto the surface of the cortex.” – N. Swindale

20

Dimension reduction / Manifold Learning

Dimension Reduction Principal Components Analysis, PCA (Pearson, 1901; Hotelling, 1933) Multidimensional Scaling, MDS (Torgerson, 1952; cf. Young and Householder, 1938) Projection Pursuit (Friedman and Tukey, 1974) Independent Components Analysis, ICA (Herault and Jutten, 1986)

Non-linear Dimension Reduction Self Organizing Maps, SOM (Kohonen, 1982) Principal Curves ([Hastie and Stuetzle, 1989) Kernel PCA (Schölkopf et al, 1998) Isomap (Tenenbaum et al, 2000) Locally Linear Embedding, LLE (Roweis and Saul, 2000) Laplacian Eigenmaps, LE (Belkin & Niyogi, 2002) Hessian Eigenmaps, H-LLE (Donoho & Grimes, 2003) Diffusion Maps (Coifman, S. Lafon, 2004) Local Tangent Space Alignment, LTSA (Zhang and Zha, 2004) Sample Logmaps (Brun et al 2005)

21

Isomap

Isomap (Tenenbaum et al, Science, 2000)

22

Geodesics, Exponential maps and Logarithmic maps

Lagrangian style (Exponential maps)

Eulerian ...

23

Why are the Exp and Log functions Important in Signal Processing?

Analogies of operations in vector spaces and in manifolds, reproduced from (Pennec et al.,2005).

24

An Eulerian approach to Logp(x) ...

... easy if we can calculate distances on M!

25

Example: The Swiss Roll

No distortion for a “flat” metric!

LOGMAP

26

LOGMAP – manifold hunting

From LOGMAP: A Method for estimating Riemannian normal coordinates for a set of datapoints sampled from a manifold byA. Brun, C.-F. Westin, M. Herberthson and H. Knutsson, submitted to ICIP 2005.

Logmap

Data(high.dim.)

– It´s a Klein bottle!

27

28

Example: 2D shape (S-Logmap)

29

Example: 2D shape (PCA)

30

Manifolds of Images and Image Processing

x y

time

M

L2(Rn)

– What manifold is this?Find your favourite application for R3 £ P2 ...

31

Problems in Manifold Learning

Calculation of distances!What is the topologyWhat is a suitable metric?Large samples sizesSmall sample sizes

32

Problems in Tensor Processing

How to move tensors on a manifold to perform filtering in a point?

The structure tensors in Hyper Image Manifolds?

Choosing and managing charts in an Atlas

33

34

35

36

37

38

39

40

41

Learning

Encyclopedia Britannica:“Process of acquiring modifications in existing knowledge, skills, habits, or tendencies through experience, practice, or exercise.”

Oxford Advanced Learner’s Dictionary:“gain knowledge or skill by study, experience or being taught.”

top related