a. criminisi, t. sharp and k. siddiqui. properties of our algorithm efficient on high-res./nd images...

34
A. Criminisi, T. Sharp and K. Siddiqui

Upload: christopher-dunlap

Post on 26-Mar-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

A. Criminisi, T. Sharp and K. Siddiqui

Page 2: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Properties of our algorithmProperties of our algorithm

• efficient on high-res./nD images (~milliseconds)• easy to edit and fix• accurate (e.g. handling of thin structures)• robust to noise• edge sensitive• captures uncertainty (probabilistic output)

State of the art segmentation State of the art segmentation algorithmsalgorithms

• QPBO• Tree-reweighted mess. passing• Random Walker• Min-cut/max-flow• Belief propagation• Level Sets• Geodesic active contours• Region growing• K-means

Most based on complex energy minimization -> slow.

Page 3: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g
Page 4: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Input image User-entered brush strokes Likelihood of Fg v Bg

This is noisy!In order to obtain segmentation we need to encourage spatial smoothness

Notation

Point position

Image intensities

Output segmentation

Appearance likelihood

Appearance likelihood is computed from histograms of intensities accumulated under the two brush strokes

Legend• Green indicates high probability of Fg• Red indicates high probability of Bg• Grey for uncertain

Page 5: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

A very efficient way of propagating image information around

Page 6: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Image Binary mask

unit tangent vector

Geodesic distance (Euclidean for =0)

Coronal CT view of r. kidney User-drawn brush stroke Binary mask of brush stroke Gradient and tangent vectors

Output geodesic distance D(p)

Page 7: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Output geodesic distanceOutput geodesic distance

Forward pass: (top-left to bottom-right)

Backward pass: (bottom-right to top-left)

Properties of algorithm • Contiguous memory access• Parallelizable• GPU-friendly

• no region growing• no FMM• no level set

InputInput

Image (8bpp) after W/L mapping!

GDT raster scan algorithmGDT raster scan algorithm

with

Page 8: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

GPU algorithm implemented on NVidia processors using the CUDA language.GPU algorithm implemented on NVidia processors using the CUDA language.

Typical CT image resolution = 512 X 512

Timings

Downward pass:

with

…similarly for the other three passes.

The downward pass. The red column shows pixels processed by the current thread. The distance values in the top (green) row Have already been computed. Distances along the arrow directions Are computed from texture reads as in the equation on the left panel.

In 2D four passes are necessary: top-bottom, bottom-top, left-right, right-left

Downward pass:

1 2 3y

x

Page 9: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

1 2 3

4 5 6

7 8 9

dire

ction

of ra

ster

sca

n

GPU algorithm implemented on NVidia processors using the CUDA language.GPU algorithm implemented on NVidia processors using the CUDA language.

Pass 1 of 6:In 3D six passes are necessary.

with

Pass 1 of 6:

y

xz…similarly for the other five passes.

Page 10: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

How do we impose smoothness ?

Page 11: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Input binary mask M

withSigned distance from boundary

Signed distance Ds from boundary (in green) Signed distance Ds (zoomed)

For ease of explanation we focus on a toy 2D example here.

Page 12: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Geodesic morphology

Signed distance Ds from boundary (green)Input binary mask M

Geodesi

c d

ilati

on

Geodesi

c ero

sion

Eroded mask

Dilated mask

In each of the eroded and dilated masks part of the noisehas been removed. Now we need to combine the two so asto remove all of the noise.

Page 13: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Geodesic morphology, real example

Th

is is all e

xtre

mely

fast to

com

pu

te.

Distance Ds

Geodesic erosion

Geo. dilation , small d Geo. dilation , large d

Page 14: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Eroded maskDilated mask

Final, symmetric signed distance

Symmetric signed distance

The new distance is much smoother than the original one because the effect of noise has been reduced.

Original signed distance

Page 15: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

The GSF operator produces the final, noise-free mask Ms as:

Input binary mask M Symmetric signed distance Thresholding at 0 Final noise-free mask

More examples with different noise patterns

Input Distance Filtered image Input Distance Filtered image

Page 16: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Binary case was

Real-valued caseinput GSF

GGDT:GGDT:GeneralizedGeneralizedGeodesic DistanceGeodesic Distance

Ms: output segmentation

GSF( )

Page 17: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Ms: Output of GSF for small

Ms: Output of GSF for large

smoothsmooth

lockedlocked

Larger values of produce smoother segmentations

Page 18: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

The actual algorithm

Page 19: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Output of GSF for fixed

Appearance lik.

Soft input mask

Distance term with

Data likelihood

I. Compute pixel-wise likelihoods from user hints

combine

User brushes Appearance likelihood L a Distance term L d

Page 20: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

II. Segmentation from pixel-wise likelihoods

Output of GSF for fixed

Geodesic symmetric distance

Segmentation via GSF

GSF( )

Appearance likelihood La

Output segmentation Ms

Distance signal Ld

Page 21: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g
Page 22: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Aortic aneurism

The aorta, bottom of heart and pelvis have been segmented in 3D by our technique.The whole process (including user interaction) takes only a few seconds.

Three views of the segmented aorta. Bony structures (Bg) are shown faded to provide spatial context. Input is CT.

Page 23: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Carotid arteries

The carotids have been segmented interactively by our technique. Segmenting such long and thin structures is usually a problem for other existing algorithms.

Three views of segmented carotids. Bony structures (Bg) are shown faded to provide spatial context. Input is CT.

Page 24: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Studying the interaction between aorta and spine

The aorta and its thin bifurcations have been segmented by our technique in only a few seconds.

Three views of segmented aorta. The spine and heart (Bg) are shown faded to provide spatial context. Input is CT.

Page 25: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

A liver tumor

The tumor has been segmented with a single user click. The whole operationhas taken only a few milliseconds. Now that the tumor has been isolated statistics about itsdensity, shape and texture are easily computed (right panel).

Axial CT slice. The user segments a tumor in only a few milliseconds Automatic measurements of tumor

Page 26: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Segmenting different structures in MR images

Page 27: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Segmentation of noisy images

Very noisy input image. Input is CT. Our segmentation

Encouraging spatial smoothness is especially useful when dealing with very noisy images.

Page 28: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Very noisy input image. Input is MR Our segmentation

Segmentation of noisy images

Encouraging spatial smoothness is especially useful when dealing with very noisy images.

Page 29: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Testing accuracy in low-contrast images

Very low-contrast input image Our segmentation

The geodesic term in the definition of the geodesic distance enables segmentation in low contrast images.

Page 30: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Capturing uncertainty in low-contrast regions

In low gradient regions the algorithm correctly returns low confidence segmentation

In low gradient regions the algorithm correctly returns low confidence segmentation

Sharp segmentation (high confidence) becauseof strong gradients

Sharp segmentation (high confidence) becauseof strong gradients

Page 31: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g
Page 32: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

Images and ground-truth from the standard GrabCut test dataset Not much of a difference in terms of accuracy.

[ Rother, C. Kolmogorov, V and Blake, A. GrabCut: Interactive foreground extraction using iterated graph cut. SIGGRAPH 2004. ][Szeliski, R., Zabih, R., Scharstein, D., Veksler, O., Kolmogorov, V., Agarwala, A., Tappen, M., Rother, C.: A comparative study of energy minimization methods for markov random fields. In: ECCV. (2006)]

Page 33: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

• up to 60X speed up compared to min-cut.• with similar accuracy

[ Rother, C. Kolmogorov, V and Blake, A. GrabCut: Interactive foreground extraction using iterated graph cut. SIGGRAPH 2004. ]

Page 34: A. Criminisi, T. Sharp and K. Siddiqui. Properties of our algorithm efficient on high-res./nD images (~milliseconds) easy to edit and fix accurate (e.g

[ Bai, X. and Sapiro, G. A geodesic framework for fast interactive image and video segmentation and matting. ICCV 2007, Rio, Brasil. ]

• up to 30X speed up compared to Bai et al., while avoiding topology issues.• also, Bai et al. do not impose spatial smoothness