SlideShare una empresa de Scribd logo
1 de 10
DIGITAL IMAGE
MORPHING THROUGH
“FIELD MORPHING”

Ankur Sakhuja
Example
Block Diagram for Algorithm Workflow
Generating an intermediate frame

  Image IS                     Image I1
                 Fs → F warp
  Feature Spec                 Feature
  Fs                           Spec F




                                                           Morph
                                  Color interpolate
                                                           Image




                               Image I2                            Image IT
                                                  FT → F warp
                               Feature                             Feature
                               Spec F                              Spec FT
Algorithm overview

 Basic motivation: specification of feature points as lines – more expressive and
  intuitive
 Line features specified in both source and target images and correspondence
  established
 For every intermediate position in morph sequence, a line feature set is
  generated by interpolating the two sets
 Between source and intermediate line feature sets:-
 Every pair of line features represents a coordinate transformation for a point
  from source to target image – results in some spatial displacement
 A weighted sum of displacements due to all line pairs gives net displacement
  of a point – the total warp function
 Warp both source and target images to get two intermediate images
 Color interpolate to obtain the morph image
 Repeat for every position in the sequence to obtain the morph sequence
The Math:
Pixel transformation
specified by single
pair of line segments
The Math (contd):
Pixel transformation specified by two pairs of line segments
The Math (contd):
weighting factor for combining transformations of multiple line segment pairs




                                                                                           b

Weighting factor for combining displacements:                                   length p
                                                                    Weight
                                                                                a dist
Algorithm Pseudocode
• For each pixel X in the destination
•     DSUM = (0,0)
•     weightsum = 0
•     For each line Pi Qi
•          calculate u,v based on Pi Qi
•          calculate X'i based on u,v     and Pi'Qi'
•          calculate displacement Di = Xi' - Xi for this line
•          dist = shortest distance from X to Pi Qi
•          weight = (lengthp / (a + dist))b
•          DSUM += Di * weight
•          weightsum += weight
•     X' = X + DSUM / weightsum
•     destinationImage(X) = sourceImage(X')
MATLAB Implementation and Results
Reference


  1.   Beier, T. and Neely, S. 1992. Feature-based image metamorphosis. In
       Proceedings of the 19th Annual Conference on Computer Graphics and
       interactive Techniques

Más contenido relacionado

La actualidad más candente

5 ray casting computer graphics
5 ray casting computer graphics5 ray casting computer graphics
5 ray casting computer graphicscairo university
 
Texture Snakes
Texture SnakesTexture Snakes
Texture Snakeschensagiv
 
Relief Clipping Planes (SIGGRAPH ASIA 2008)
Relief Clipping Planes (SIGGRAPH ASIA 2008)Relief Clipping Planes (SIGGRAPH ASIA 2008)
Relief Clipping Planes (SIGGRAPH ASIA 2008)Matthias Trapp
 
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Matthias Trapp
 
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S..."Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...Edge AI and Vision Alliance
 
Pre-Cal 40S Slides November 12, 2007
Pre-Cal 40S Slides November 12, 2007Pre-Cal 40S Slides November 12, 2007
Pre-Cal 40S Slides November 12, 2007Darren Kuropatwa
 
Metropolis Light Transport
Metropolis Light TransportMetropolis Light Transport
Metropolis Light TransportYimin Li
 
"Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present...
"Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present..."Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present...
"Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present...Edge AI and Vision Alliance
 
Hue preservation and color correction
Hue preservation and color correctionHue preservation and color correction
Hue preservation and color correctionShih-yi Wei
 
Spatial Enhancement for Immersive Stereo Audio Applications
Spatial Enhancement for Immersive Stereo Audio ApplicationsSpatial Enhancement for Immersive Stereo Audio Applications
Spatial Enhancement for Immersive Stereo Audio ApplicationsAndreas Floros
 
Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Philip Hammer
 
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
Lecture 02   yasutaka furukawa - 3 d reconstruction with priorsLecture 02   yasutaka furukawa - 3 d reconstruction with priors
Lecture 02 yasutaka furukawa - 3 d reconstruction with priorsmustafa sarac
 

La actualidad más candente (16)

5 ray casting computer graphics
5 ray casting computer graphics5 ray casting computer graphics
5 ray casting computer graphics
 
Texture Snakes
Texture SnakesTexture Snakes
Texture Snakes
 
D1150740001
D1150740001D1150740001
D1150740001
 
Relief Clipping Planes (SIGGRAPH ASIA 2008)
Relief Clipping Planes (SIGGRAPH ASIA 2008)Relief Clipping Planes (SIGGRAPH ASIA 2008)
Relief Clipping Planes (SIGGRAPH ASIA 2008)
 
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
 
Presentation visapp
Presentation visappPresentation visapp
Presentation visapp
 
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S..."Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
 
Pre-Cal 40S Slides November 12, 2007
Pre-Cal 40S Slides November 12, 2007Pre-Cal 40S Slides November 12, 2007
Pre-Cal 40S Slides November 12, 2007
 
Metropolis Light Transport
Metropolis Light TransportMetropolis Light Transport
Metropolis Light Transport
 
"Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present...
"Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present..."Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present...
"Introduction to Feature Descriptors in Vision: From Haar to SIFT," A Present...
 
Hue preservation and color correction
Hue preservation and color correctionHue preservation and color correction
Hue preservation and color correction
 
Spatial Enhancement for Immersive Stereo Audio Applications
Spatial Enhancement for Immersive Stereo Audio ApplicationsSpatial Enhancement for Immersive Stereo Audio Applications
Spatial Enhancement for Immersive Stereo Audio Applications
 
www.ijerd.com
www.ijerd.comwww.ijerd.com
www.ijerd.com
 
Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2
 
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
Lecture 02   yasutaka furukawa - 3 d reconstruction with priorsLecture 02   yasutaka furukawa - 3 d reconstruction with priors
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
 
Thesis Presentation
Thesis PresentationThesis Presentation
Thesis Presentation
 

Destacado

Image Morphing: A Literature Study
Image Morphing: A Literature StudyImage Morphing: A Literature Study
Image Morphing: A Literature StudyEditor IJCATR
 
Image parts and segmentation
Image parts and segmentation Image parts and segmentation
Image parts and segmentation Rappy Saha
 
MCS Project - Enhanced Watershed
MCS Project - Enhanced WatershedMCS Project - Enhanced Watershed
MCS Project - Enhanced Watershedasakpke
 
Threshold Selection for Image segmentation
Threshold Selection for Image segmentationThreshold Selection for Image segmentation
Threshold Selection for Image segmentationParijat Sinha
 
Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...
Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...
Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...Webanalisten .nl
 
COM2304: Morphological Image Processing
COM2304: Morphological Image ProcessingCOM2304: Morphological Image Processing
COM2304: Morphological Image ProcessingHemantha Kulathilake
 
morphological image processing
morphological image processingmorphological image processing
morphological image processingAnubhav Kumar
 
morphological image processing
morphological image processingmorphological image processing
morphological image processingJohn Williams
 
Morphological image processing
Morphological image processingMorphological image processing
Morphological image processingRaghu Kumar
 
Neural Network Based Brain Tumor Detection using MR Images
Neural Network Based Brain Tumor Detection using MR ImagesNeural Network Based Brain Tumor Detection using MR Images
Neural Network Based Brain Tumor Detection using MR ImagesAisha Kalsoom
 

Destacado (12)

Image Morphing: A Literature Study
Image Morphing: A Literature StudyImage Morphing: A Literature Study
Image Morphing: A Literature Study
 
Morphing Image
Morphing Image Morphing Image
Morphing Image
 
Image parts and segmentation
Image parts and segmentation Image parts and segmentation
Image parts and segmentation
 
MCS Project - Enhanced Watershed
MCS Project - Enhanced WatershedMCS Project - Enhanced Watershed
MCS Project - Enhanced Watershed
 
Threshold Selection for Image segmentation
Threshold Selection for Image segmentationThreshold Selection for Image segmentation
Threshold Selection for Image segmentation
 
Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...
Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...
Gui Liberali, Morphing Websites - Digital Data Tips Tuesday #4 - Growth throu...
 
COM2304: Morphological Image Processing
COM2304: Morphological Image ProcessingCOM2304: Morphological Image Processing
COM2304: Morphological Image Processing
 
morphological image processing
morphological image processingmorphological image processing
morphological image processing
 
Face morphing
Face morphingFace morphing
Face morphing
 
morphological image processing
morphological image processingmorphological image processing
morphological image processing
 
Morphological image processing
Morphological image processingMorphological image processing
Morphological image processing
 
Neural Network Based Brain Tumor Detection using MR Images
Neural Network Based Brain Tumor Detection using MR ImagesNeural Network Based Brain Tumor Detection using MR Images
Neural Network Based Brain Tumor Detection using MR Images
 

Último

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
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
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
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
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
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
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
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Último (20)

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...
 
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...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 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)
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
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
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
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
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
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 ...
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Digital Image Morphing Through "Field Morphing

  • 1. DIGITAL IMAGE MORPHING THROUGH “FIELD MORPHING” Ankur Sakhuja
  • 3. Block Diagram for Algorithm Workflow Generating an intermediate frame Image IS Image I1 Fs → F warp Feature Spec Feature Fs Spec F Morph Color interpolate Image Image I2 Image IT FT → F warp Feature Feature Spec F Spec FT
  • 4. Algorithm overview  Basic motivation: specification of feature points as lines – more expressive and intuitive  Line features specified in both source and target images and correspondence established  For every intermediate position in morph sequence, a line feature set is generated by interpolating the two sets  Between source and intermediate line feature sets:-  Every pair of line features represents a coordinate transformation for a point from source to target image – results in some spatial displacement  A weighted sum of displacements due to all line pairs gives net displacement of a point – the total warp function  Warp both source and target images to get two intermediate images  Color interpolate to obtain the morph image  Repeat for every position in the sequence to obtain the morph sequence
  • 5. The Math: Pixel transformation specified by single pair of line segments
  • 6. The Math (contd): Pixel transformation specified by two pairs of line segments
  • 7. The Math (contd): weighting factor for combining transformations of multiple line segment pairs b Weighting factor for combining displacements: length p Weight a dist
  • 8. Algorithm Pseudocode • For each pixel X in the destination • DSUM = (0,0) • weightsum = 0 • For each line Pi Qi • calculate u,v based on Pi Qi • calculate X'i based on u,v and Pi'Qi' • calculate displacement Di = Xi' - Xi for this line • dist = shortest distance from X to Pi Qi • weight = (lengthp / (a + dist))b • DSUM += Di * weight • weightsum += weight • X' = X + DSUM / weightsum • destinationImage(X) = sourceImage(X')
  • 10. Reference 1. Beier, T. and Neely, S. 1992. Feature-based image metamorphosis. In Proceedings of the 19th Annual Conference on Computer Graphics and interactive Techniques