A Human Eye Retinal Cone Synthesizer Michael F. Deering.

49

Transcript of A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Page 1: A Human Eye Retinal Cone Synthesizer Michael F. Deering.
Page 2: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

A Human Eye Retinal Cone Synthesizer

Michael F. Deering

Page 3: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Implementation Sketch For The SIGGRAPH 2005 Paper:Implementation Sketch For The SIGGRAPH 2005 Paper:

A Photon Accurate Model of the Human Eye

Michael F. Deering

Page 4: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Use Graphics Theory To Simulate VisionUse Graphics Theory To Simulate Vision

Page 5: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

GoalGoal

• Build a computer program to properly simulate the complex sampling pattern of the human eye retinal cone mosaic.

• Use this in a photon by photon simulation of display devices onto the human eye.

Page 6: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Why Eye Sampling Pattern MattersWhy Eye Sampling Pattern Matters

Page 7: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

OverviewOverview

• Background about human retinal cones

• Growth algorithm overview

• Cone force equation

• Re-forming cone cell borders

• Touch-up

• Results

Page 8: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Eye ModelEye Model

Page 9: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

What Does A What Does A ConeCone Look Like? Look Like?What Does A What Does A ConeCone Look Like? Look Like?

Page 10: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

What Do Cone Retinal Arrays Look Like?What Do Cone Retinal Arrays Look Like?

• For years all we had were photo micrographs of sliced and diced dead eyeballs.

• Now we can obtain images of living retinas.

Page 11: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Roorda And Williams ImageRoorda And Williams Image

Page 12: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Retinal Cone DistributionRetinal Cone Distribution

• Most data is from Curcio et. al. ’90

• Large variation in maximum density

• More recent data: Williams, Millar, Roorda

• Cone density varies primarily biased on eccentricity, but also by retinal meridian

Page 13: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Terminology: Cell BordersTerminology: Cell Borders

Plants have cell walls Animals don’t havecell walls; they have

cell borders(or cell membranes)

Page 14: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

High Resolution Foveas Are A Relatively Recent AdditionHigh Resolution Foveas Are A Relatively Recent Addition

-2 months birth +6 years

Page 15: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Synthetic Retina GenerationSynthetic Retina Generation

• Use rectangular lattice.

• Use triangular lattice.

• Use perturbed triangular lattice.

• Take real retinal images as representative patches then flip and repeat.

I want all 5 million cones:

A new computer model to generate parameterized retinas (not synthesizing rods yet).

Page 16: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Possible Retina Generation AlgorithmsPossible Retina Generation Algorithms

• Add one new cone at a time, placing each into its final position.

– Too simplistic to work

• Simulate the interactions of all 5 million cones simultaneously.

– Too computationally complex to work

Page 17: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Retina Generation AlgorithmRetina Generation Algorithm

• Add new cones in concentric rings, varying target cell density by Curcio data

• Merge new cones into existing mosaic

• Grow on curved spherical surface

• Keep only changing cones in memory

Page 18: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Two Phase Cone Growth AlgorithmTwo Phase Cone Growth Algorithm

• Phase I: update the center location of all still active cone cells using the cone force equation.

• Phase II: re-form all cone cell borders from updated cone centers using pattern matching algorithm.

Run paired phases for 21-41 cycles per ring of new cones added.

Page 19: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

DefinitionsDefinitions

• Normalized distance between cones p and n:

• Two cones p and n are neighbors if:

p-nD[p,n]

(p.r+n.r)

N[p,n] = D[p,n] 1.5

Page 20: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

The Cone Force EquationThe Cone Force Equation

N[p,n]

n

p = p

+ K1 pn

+ K2 r

n-p - K3 spline[D[p,n]]

n-p

��������������

Page 21: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

The Cone Force PictureThe Cone Force Picture

p

To center of fovea

p

p’

Page 22: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Definition Of Spline[ ] FunctionDefinition Of Spline[ ] Function

0 1

1

x

Spline[x]

Page 23: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Re-form Cone Cell Borders From Updated Cone CentersRe-form Cone Cell Borders From Updated Cone Centers

Page 24: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Why Vornoi Cell Construction Is InappropriateWhy Vornoi Cell Construction Is Inappropriate

No way to enforcecell size or shapeconstraints

Page 25: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Why Vornoi Cell Construction Is InappropriateWhy Vornoi Cell Construction Is Inappropriate

Always looking atthree vertices ata time.

Correct answerhere is just asingle newborder vertexfor all 4 cones.

Page 26: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

My Cell Border Construction AlgorithmMy Cell Border Construction Algorithm

• Sequentially visit each cell.

• Using spatially indexed data structure, find all the neighbors of the cell and sort them into clockwise order.

• Apply cell border construction pattern rules to successive sequences of neighbors.

• Result is new set of border edges for that cell.

Page 27: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Sort Neighbors Into Clockwise OrderSort Neighbors Into Clockwise Order

p

n0

n1

n2

njnmax

ii N[p, n ]

Page 28: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Try Pattern Rules From Most Complex To Least ComplexTry Pattern Rules From Most Complex To Least Complex

• Only try a simpler pattern rule after all the more complex ones have failed.

• (The following slides will present the rules in the opposite order.)

Page 29: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Three Cone Centers Share Edge VertexThree Cone Centers Share Edge Vertex

p

nini+1

ej

N[ni, ni+1]

Page 30: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Three Cone Centers Don’t Share Edge VertexThree Cone Centers Don’t Share Edge Vertex

p

ni ni+1

ejej+1

i+1iN[n , n ]

Page 31: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Four Cone Centers Share Edge VertexFour Cone Centers Share Edge Vertex

p

ni ni+2ej

ni+1N[ni, ni+1]

N[ni+1, ni+2]

N[ni, ni+2]

D[p, ni] < D[p, ni+1] orD[p, ni+2] < D[p, ni+1]

Page 32: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Complex 5 Vertex CaseComplex 5 Vertex Case

p

ni

ni+2

ej

ni+1

q

N[p, q]

Page 33: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

New Completed Cell BorderNew Completed Cell Border

pe0

e1 e2

e3

e4e5

Page 34: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Touch-upsTouch-ups

• Check re-formed cell borders for voids as large or larger than the local cone size; if they persist seed them with new cones.

• Check re-formed cell borders for cones too much smaller than their birth target size; if they persist delete them.

Page 35: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Extreme Cone Density Change Test CaseExtreme Cone Density Change Test Case

• Change the density control knob by a factor of 8 in area within a small distance.

Page 36: A Human Eye Retinal Cone Synthesizer Michael F. Deering.
Page 37: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Growth Sequence MovieGrowth Sequence Movie

Page 38: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Growth Movie ZoomGrowth Movie Zoom

Page 39: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Retinal Zoom Out MovieRetinal Zoom Out Movie

Page 40: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

3D Fly By Movie3D Fly By Movie

Page 41: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Larger View Of My Synthetic RetinaLarger View Of My Synthetic Retina

Page 42: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Roorda Blood VesselRoorda Blood Vessel

Page 43: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Roorda vs. SyntheticRoorda vs. Synthetic

Page 44: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

30x30 Pixel Face Input30x30 Pixel Face Input

Page 45: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Retinal Image ResultsRetinal Image Results

Page 46: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

30x30 Pixel Movie30x30 Pixel Movie

Page 47: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

Result MovieResult Movie

Page 48: A Human Eye Retinal Cone Synthesizer Michael F. Deering.

AcknowledgementsAcknowledgements

• Michael Wahrman for the RenderMan™ rendering of the cone data.

• Julian Gómez and the anonymous SIGGRAPH reviewers for their comments on the paper.

Page 49: A Human Eye Retinal Cone Synthesizer Michael F. Deering.