SlideShare uma empresa Scribd logo
1 de 14
Silhouettes and Outlines
Jesse Harrison
Objective
●

To obtain outlines and silhouettes from each
individual object in real time using various
techniques.
Outlines in Image Space
●

●

A simple way to generate outlines would be to
render the scene from a desired point of view,
detect the edges in the image and then display
them.
However, the edges of a photograph do not
typically correspond to the silhouettes that we
want to illustrate. For instance highly textured
surfaces will generate edges irrelevant to the
objects shape and further more no edge would
be detected between two overlapping objects
with the same color
Depth Map
●

●

●

A better way to generate silhouettes is to render
the image, extract the depth map and apply an
edge detection to that map.
The idea is that the variation in depth between
adjacent pixels is usually small while the
variation between objects is large.
The problem is that the depth map does not
detect boundaries between objects that are at
the same depth, nor does it detect creases
Normal Map
●

●

●

We can augment the silhouette edges
computed with the depth map by using surface
normals as well.
The surface normals will detect changes in
surface orientation i.e. give us what depth can't
So we apply an edge detection algorithm to our
normal map and combine it with our depth map
to produce our silhouette edge.
Depth and Normal Map

Depth

Normal

Depth+
Normal
What is a Silhouette
●

●

Concerning polygonal meshes, the silhouette
consists of all edges that connect back-facing
polygons to front-facing polygons.
For smooth surfaces it can be defined as the
surface points with a surface normal
perpendicular to the view vector.
Smooth Surfaces
●

●

The first step in finding the silhouette of a
smooth surface, in our case one that is
defined by a triangular mesh, it to compute the
normalized dot product of the normal
of the
mesh at every vertex with the view vector.

We are also interested in the sign of the dot
product.
Smooth Surfaces
●

●

Recalling our goal is to find
and noting
that since both the view vector and surface
normal are continuous over the surface their
dot product must be as well. We can
determine the point where a silhouette lies by
observing a change in signs over a vertex.
I.E. between points and
if
We can approximate the silhouette point by
linearly interpolating between the two
vertecies:
Smooth Surfaces
●

●

●

Finally we can connect the silhouette points into a
silhouette curve.
We do this by observing sign changes between a
triangles vertecies. If one of the three vertecies has a
different sign then the others we can compute the
silhouette point on the two sides with opposites signs
and connect those points with a line segment.
We do this for every triangle with a sign change and
connect the line segments that share an endpoint and
this produces a piecewise linear approximation of the
silhouettes of a smooth surface.
Smooth Surfaces
Visibility
●

●

Now we just need to determine which portions of our
curve is visible.
There are three situations where the visibility of a
surface curve can change.
1) It passes under a silhouette, boundary or crease
in the image plane.
2) It intersects a silhouette, crease, or self
intersection curve on the surface.
3) It is a silhouette or boundary and has a cusp.
Visibility
●

●

The basic algorithm is to break all curves at
potential changes in visibility, producing a new
set of curves.
We then determine which of these new sets of
curves are visible are not by casting a ray from
the view vector. If the ray intersects any
surfaces before the curve, then the curve is
invisible.
The End

Mais conteúdo relacionado

Mais procurados

2 point perspective lesson
2 point perspective lesson2 point perspective lesson
2 point perspective lessontnicholem11
 
Linear Perspective
Linear PerspectiveLinear Perspective
Linear Perspectivemrsbauerart
 
2.1.a isometric obliquepictorials
2.1.a  isometric obliquepictorials2.1.a  isometric obliquepictorials
2.1.a isometric obliquepictorialsjoeyrsl
 
Perspective
PerspectivePerspective
Perspectivej Nourry
 
Lesson revolve
Lesson revolveLesson revolve
Lesson revolveMr_Burns
 
3-Point Perspective
3-Point Perspective 3-Point Perspective
3-Point Perspective sfast08
 
3D Display Method
3D Display Method3D Display Method
3D Display MethodKhaled Sany
 
Two point perspective
Two point perspectiveTwo point perspective
Two point perspectivemarsha devine
 
2D art for real time 3D web game
2D art for real time 3D web game2D art for real time 3D web game
2D art for real time 3D web gameaction.vn
 
Abstraction through reorganization
Abstraction through reorganizationAbstraction through reorganization
Abstraction through reorganizationcjoyce104
 
Three point
Three pointThree point
Three pointKeriC325
 

Mais procurados (20)

2 point perspective lesson
2 point perspective lesson2 point perspective lesson
2 point perspective lesson
 
Linear Perspective
Linear PerspectiveLinear Perspective
Linear Perspective
 
3D Display
3D Display3D Display
3D Display
 
Oblique drawing
Oblique drawingOblique drawing
Oblique drawing
 
2.1.a isometric obliquepictorials
2.1.a  isometric obliquepictorials2.1.a  isometric obliquepictorials
2.1.a isometric obliquepictorials
 
Twopoint
TwopointTwopoint
Twopoint
 
Pictorial Drawing
Pictorial DrawingPictorial Drawing
Pictorial Drawing
 
Perspective
PerspectivePerspective
Perspective
 
Perspective
PerspectivePerspective
Perspective
 
Disegnare un anello con Illustrator
Disegnare un anello con IllustratorDisegnare un anello con Illustrator
Disegnare un anello con Illustrator
 
Lesson revolve
Lesson revolveLesson revolve
Lesson revolve
 
3-Point Perspective
3-Point Perspective 3-Point Perspective
3-Point Perspective
 
Pictorial Drawing
Pictorial Drawing Pictorial Drawing
Pictorial Drawing
 
3D Display Method
3D Display Method3D Display Method
3D Display Method
 
3 d modeling part 1
3 d modeling part 13 d modeling part 1
3 d modeling part 1
 
Two point perspective
Two point perspectiveTwo point perspective
Two point perspective
 
2D art for real time 3D web game
2D art for real time 3D web game2D art for real time 3D web game
2D art for real time 3D web game
 
3 d modeling part 2
3 d modeling part 23 d modeling part 2
3 d modeling part 2
 
Abstraction through reorganization
Abstraction through reorganizationAbstraction through reorganization
Abstraction through reorganization
 
Three point
Three pointThree point
Three point
 

Semelhante a Silhouettes and Outlines

visual realism Unit iii
 visual realism Unit iii visual realism Unit iii
visual realism Unit iiiArun Prakash
 
Unit 3 visual realism
Unit 3 visual realismUnit 3 visual realism
Unit 3 visual realismJavith Saleem
 
First and third angle projection
First and third angle projectionFirst and third angle projection
First and third angle projectionSafiullah Khan
 
Hidden Surface Removal methods.pptx
Hidden Surface Removal methods.pptxHidden Surface Removal methods.pptx
Hidden Surface Removal methods.pptxbcanawakadalcollege
 
EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE
EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE
EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE sipij
 
3 d display-methods-in-computer-graphics(For DIU)
3 d display-methods-in-computer-graphics(For DIU)3 d display-methods-in-computer-graphics(For DIU)
3 d display-methods-in-computer-graphics(For DIU)Rajon rdx
 
Google sketchup8
Google sketchup8Google sketchup8
Google sketchup8Trianz King
 
Google sketchup8
Google sketchup8Google sketchup8
Google sketchup8Trianz King
 
Week 3 Polygonal Modelling
Week 3   Polygonal ModellingWeek 3   Polygonal Modelling
Week 3 Polygonal ModellingScottRoberts37
 
Estimating the Crest Lines on Polygonal Mesh Models by an Automatic Threshold
Estimating the Crest Lines on Polygonal Mesh Models by an Automatic ThresholdEstimating the Crest Lines on Polygonal Mesh Models by an Automatic Threshold
Estimating the Crest Lines on Polygonal Mesh Models by an Automatic ThresholdAIRCC Publishing Corporation
 
IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...
IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...
IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...sipij
 
ESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLD
ESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLDESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLD
ESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLDijcsit
 
06 image features
06 image features06 image features
06 image featuresankit_ppt
 
Effective mapping techniques for environmental assessments
Effective mapping techniques for environmental assessmentsEffective mapping techniques for environmental assessments
Effective mapping techniques for environmental assessmentsVictor Spooner
 
Contour lines - Survey & Levelling
Contour lines - Survey & LevellingContour lines - Survey & Levelling
Contour lines - Survey & LevellingAr. Avitesh
 
Dimensioning, scales, lines and multiple projections
Dimensioning, scales, lines and multiple projectionsDimensioning, scales, lines and multiple projections
Dimensioning, scales, lines and multiple projectionsAkash Patel
 

Semelhante a Silhouettes and Outlines (20)

visual realism Unit iii
 visual realism Unit iii visual realism Unit iii
visual realism Unit iii
 
Unit 3 visual realism
Unit 3 visual realismUnit 3 visual realism
Unit 3 visual realism
 
First and third angle projection
First and third angle projectionFirst and third angle projection
First and third angle projection
 
Lessonrevolve
Lessonrevolve Lessonrevolve
Lessonrevolve
 
3 d display methods
3 d display methods3 d display methods
3 d display methods
 
Hidden Surface Removal methods.pptx
Hidden Surface Removal methods.pptxHidden Surface Removal methods.pptx
Hidden Surface Removal methods.pptx
 
Hidden Surface Removal.pptx
Hidden Surface Removal.pptxHidden Surface Removal.pptx
Hidden Surface Removal.pptx
 
EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE
EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE
EFFECTIVE INTEREST REGION ESTIMATION MODEL TO REPRESENT CORNERS FOR IMAGE
 
3 d display-methods-in-computer-graphics(For DIU)
3 d display-methods-in-computer-graphics(For DIU)3 d display-methods-in-computer-graphics(For DIU)
3 d display-methods-in-computer-graphics(For DIU)
 
Google sketchup8
Google sketchup8Google sketchup8
Google sketchup8
 
Google sketchup8
Google sketchup8Google sketchup8
Google sketchup8
 
Week 3 Polygonal Modelling
Week 3   Polygonal ModellingWeek 3   Polygonal Modelling
Week 3 Polygonal Modelling
 
Estimating the Crest Lines on Polygonal Mesh Models by an Automatic Threshold
Estimating the Crest Lines on Polygonal Mesh Models by an Automatic ThresholdEstimating the Crest Lines on Polygonal Mesh Models by an Automatic Threshold
Estimating the Crest Lines on Polygonal Mesh Models by an Automatic Threshold
 
IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...
IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...
IMPROVEMENTS OF THE ANALYSIS OF HUMAN ACTIVITY USING ACCELERATION RECORD OF E...
 
ESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLD
ESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLDESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLD
ESTIMATING THE CREST LINES ON POLYGONAL MESH MODELS BY AN AUTOMATIC THRESHOLD
 
06 image features
06 image features06 image features
06 image features
 
Effective mapping techniques for environmental assessments
Effective mapping techniques for environmental assessmentsEffective mapping techniques for environmental assessments
Effective mapping techniques for environmental assessments
 
Contour lines - Survey & Levelling
Contour lines - Survey & LevellingContour lines - Survey & Levelling
Contour lines - Survey & Levelling
 
3 d display-methods
3 d display-methods3 d display-methods
3 d display-methods
 
Dimensioning, scales, lines and multiple projections
Dimensioning, scales, lines and multiple projectionsDimensioning, scales, lines and multiple projections
Dimensioning, scales, lines and multiple projections
 

Último

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Último (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Silhouettes and Outlines

  • 2. Objective ● To obtain outlines and silhouettes from each individual object in real time using various techniques.
  • 3. Outlines in Image Space ● ● A simple way to generate outlines would be to render the scene from a desired point of view, detect the edges in the image and then display them. However, the edges of a photograph do not typically correspond to the silhouettes that we want to illustrate. For instance highly textured surfaces will generate edges irrelevant to the objects shape and further more no edge would be detected between two overlapping objects with the same color
  • 4. Depth Map ● ● ● A better way to generate silhouettes is to render the image, extract the depth map and apply an edge detection to that map. The idea is that the variation in depth between adjacent pixels is usually small while the variation between objects is large. The problem is that the depth map does not detect boundaries between objects that are at the same depth, nor does it detect creases
  • 5. Normal Map ● ● ● We can augment the silhouette edges computed with the depth map by using surface normals as well. The surface normals will detect changes in surface orientation i.e. give us what depth can't So we apply an edge detection algorithm to our normal map and combine it with our depth map to produce our silhouette edge.
  • 6. Depth and Normal Map Depth Normal Depth+ Normal
  • 7. What is a Silhouette ● ● Concerning polygonal meshes, the silhouette consists of all edges that connect back-facing polygons to front-facing polygons. For smooth surfaces it can be defined as the surface points with a surface normal perpendicular to the view vector.
  • 8. Smooth Surfaces ● ● The first step in finding the silhouette of a smooth surface, in our case one that is defined by a triangular mesh, it to compute the normalized dot product of the normal of the mesh at every vertex with the view vector. We are also interested in the sign of the dot product.
  • 9. Smooth Surfaces ● ● Recalling our goal is to find and noting that since both the view vector and surface normal are continuous over the surface their dot product must be as well. We can determine the point where a silhouette lies by observing a change in signs over a vertex. I.E. between points and if We can approximate the silhouette point by linearly interpolating between the two vertecies:
  • 10. Smooth Surfaces ● ● ● Finally we can connect the silhouette points into a silhouette curve. We do this by observing sign changes between a triangles vertecies. If one of the three vertecies has a different sign then the others we can compute the silhouette point on the two sides with opposites signs and connect those points with a line segment. We do this for every triangle with a sign change and connect the line segments that share an endpoint and this produces a piecewise linear approximation of the silhouettes of a smooth surface.
  • 12. Visibility ● ● Now we just need to determine which portions of our curve is visible. There are three situations where the visibility of a surface curve can change. 1) It passes under a silhouette, boundary or crease in the image plane. 2) It intersects a silhouette, crease, or self intersection curve on the surface. 3) It is a silhouette or boundary and has a cusp.
  • 13. Visibility ● ● The basic algorithm is to break all curves at potential changes in visibility, producing a new set of curves. We then determine which of these new sets of curves are visible are not by casting a ray from the view vector. If the ray intersects any surfaces before the curve, then the curve is invisible.

Notas do Editor

  1. {}