SlideShare a Scribd company logo
1 of 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

More Related Content

What's hot

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
 

What's hot (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
 

Similar to 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
 

Similar to 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
 

Recently uploaded

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 

Recently uploaded (20)

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

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.

Editor's Notes

  1. {}