SlideShare a Scribd company logo
"The Perspective Transform in Embedded Vision," a Presentation from Cadence
"The Perspective Transform in Embedded Vision," a Presentation from Cadence
Perspective Transform
•
•
•
•
•
"The Perspective Transform in Embedded Vision," a Presentation from Cadence
Image Capture from Perspective of the Camera
Mathematical Model of Perspective Projection - 1
• Q : Point in physical plane L1
• (x, y) – coordinates of Q in physical plane
• P : Projection of Q on image plane L2
• (u, v) – coordinates of P in image plane
• f – camera focal length
• Projected (u,v) are related to Physical (x,y) as:
• u =
h11x+h12y+h13
h31x+h32y +h33
• =
h21x+h22y+h23
h31x+h32y+h33
• This is the Perspective Transform between
destination coordinates (u,v) and source
coordinates (x,y)
Mathematical Model of Perspective Projection -2
u=
𝑥1
𝑥3
*f v =
𝑥2
𝑥3
*f
hi1 = ෝ𝑒 𝑋 . ෝ𝑒𝑖
hi2 = ෝ𝑒 𝑌 . ෝ𝑒𝑖
hi3 = ഥ𝐯0 . ෝ𝑒𝑖
𝑥1 = ഥQ. ෝe1 = h11x+h12y+h13
ഥQ = ෝ𝑒 𝑋 .x + ෝ𝑒 𝑌 .y + ഥv0
𝑥2 = ഥQ. ෝe2 = h21x+h22y+h23
𝑥3 = ഥQ. ෝe3 = h31x+h32y+h33
Deriving the Perspective Transform Equations:
• 𝐯 𝟎
• ෝ𝑒 𝑋 ෞ𝑒 𝑌
• ෝ𝑒1 ෝ𝑒2 ෝ𝑒3
Mathematical Model of Perspective Transform - 3
• In camera 1 perspective:
– Coordinates (X, Y) of point Q related to coordinates (xs, ys) of
projected point, Ps, via Perspective transform with coefficients
H = {h11, h12, h13, h21, h22, h23, h31, h32, h33}
• In camera 2 perspective:
– Coordinates (X, Y) of point Q related to coordinates (xd, yd) of
projected point, Pd, via Perspective transform with coefficients:
H’ = {h′11, h′12, h′13, h′21, h′22, h′23, h′31, h′32, h′33}
• It can be also shown that coordinates of Ps = (xs, ys) are related to
coordinates of Pd = (xd, yd) via a Perspective Transform:
A={a11, a12, a13, a21, a22, a23, a31, a32, 1.0 }
𝑥𝑠 =
a11xd +a12yd+ a13
a31xd+a32yd + 1.0 ,
𝑦𝑠 =
a21xd +a22yd+ a23
a31xd+a32yd + 1.0
• This mapping of coordinates from one perspective (xs, ys) to another
perspective (xd, yd) is central to many imaging and vision applications.
"The Perspective Transform in Embedded Vision," a Presentation from Cadence
Application Example 1: Image Stitching
•
•
•
•
Image Stitching
Application Example 2: Sensor Noise Filtering
•
•
–
Application Example 3: Video Stabilization
•
Video Stabilization
"The Perspective Transform in Embedded Vision," a Presentation from Cadence
Estimating the Perspective Transform
•
• →
•
•
𝑎11
𝑎12
𝑎13
𝑎21
𝑎22
𝑎23
𝑎31
𝑎32
𝑥 𝑠1
𝑦 𝑠1
.
.
.
.
𝑥 𝑠𝑛
𝑦 𝑠𝑛
𝑥 𝑑1 𝑦 𝑑1
0 0
1 0
0 𝑥 𝑑1
0 0
𝑦 𝑑1 1
−𝑥 𝑠1 𝑥 𝑑1 −
𝑥 𝑠1 𝑦 𝑑1
−𝑦 𝑠1 𝑥 𝑑1 −𝑦 𝑠1 𝑦 𝑑1
.
.
.
𝑥 𝑑𝑛 𝑦 𝑑𝑛
0 0
1 0
0 𝑥 𝑑𝑛
0 0
𝑦 𝑑𝑛 1
−𝑥 𝑠𝑛 𝑥 𝑑𝑛 −𝑥 𝑠𝑛 𝑦 𝑑𝑛
−𝑦𝑠𝑛 𝑥 𝑑𝑛 −𝑦𝑠𝑛 𝑦 𝑑𝑛
=
Applying the Perspective Transform
•
–
–
ixs iys
ixs iys
α
α
ixs iys
xs ,ys
=
a21 +a22 + a23
xd, yd
x =
a11 +a12 + a13
ixs=floor(xs),
αx = xs – ixs,
iys=floor(ys),
αy = ys – iys,
"The Perspective Transform in Embedded Vision," a Presentation from Cadence
Implementation challenges on DSP
•
–
–
•
–
–
•
Compute efficient Perspective Transform -1
•
• ( )
•
•
• ( )
–
Compute efficient Perspective Transform - 2
•
– Use modest tile sizes : (8x8), (16x16), (32x32)
– Use full divide based Perspective equation to compute only the source
coordinates of four tile corner pixels
– For all other pixels in tile use bilinear interpolation of computed tile corner
source coordinates to estimate the source coordinates
– Dynamically determine the tile size based on the coefficient values (a31,a32) to
limit the coordinate estimation error < ErrMax
– ErrMax : maximum allowed coordinate error
– ErrMax range : 0.01 – 0.05 (depending on application architect specification)
Division Free Perspective Transform : Results
•
Summary
• Perspective transform accurately computes an image as seen from a different
camera position (perspective).
• Used in the imaging applications which involve joint processing of multiple
pictures (frames) taken from slightly different camera positions.
• Per-cycle-divide operation involved in a canonical implementation poses a
large computational complexity problem.
• We described a minimal division modification of Perspective transform -
achieves DSP cycles reduction by a factor of 3x for typical use cases
References
© 2018 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence, the Cadence logo and the other Cadence marks found at www.cadence.com/go/trademarks are trademarks or
registered trademarks of Cadence Design Systems, Inc. All other trademarks are the property of their respective holders.

More Related Content

PPT
Projection Matrices
PPT
3 d viewing
PPTX
Lec02 03 rasterization
PDF
Slides: Perspective click-and-drag area selections in pictures
PPTX
Computer Graphics - Hidden Line Removal Algorithm
Projection Matrices
3 d viewing
Lec02 03 rasterization
Slides: Perspective click-and-drag area selections in pictures
Computer Graphics - Hidden Line Removal Algorithm

What's hot (20)

PPS
A Tutorial On Ip 1
PPSX
point processing
PPTX
Neural Inverse Rendering for General Reflectance Photometric Stereo (ICML 2018)
PDF
Properties of-graphs-2.5
PDF
Edge linking hough transform
DOCX
Window to viewprt
PPTX
Digital Differential Analyzer Line Drawing Algorithm
PDF
PPTX
Histogram based Enhancement
PDF
Lect8 viewing in3d&transformation
PDF
Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
PDF
Visual Impression Localization of Autonomous Robots_#CASE2015
PDF
A Comparative Study of Histogram Equalization Based Image Enhancement Techniq...
PPT
05 histogram processing DIP
PPTX
3D Transformation
PDF
Histogram Operation in Image Processing
PPTX
Histogram based enhancement
PDF
Graph Regularised Hashing
PPT
Composite transformations
A Tutorial On Ip 1
point processing
Neural Inverse Rendering for General Reflectance Photometric Stereo (ICML 2018)
Properties of-graphs-2.5
Edge linking hough transform
Window to viewprt
Digital Differential Analyzer Line Drawing Algorithm
Histogram based Enhancement
Lect8 viewing in3d&transformation
Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
Visual Impression Localization of Autonomous Robots_#CASE2015
A Comparative Study of Histogram Equalization Based Image Enhancement Techniq...
05 histogram processing DIP
3D Transformation
Histogram Operation in Image Processing
Histogram based enhancement
Graph Regularised Hashing
Composite transformations
Ad

Similar to "The Perspective Transform in Embedded Vision," a Presentation from Cadence (20)

PDF
TAO Fayan_X-Ray and MIP volume rendering
PPT
Transformations Matrix Representations-2.ppt
PPTX
07 cie552 image_mosaicing
PPTX
chapter-2 SPACIAL DOMAIN.pptx
PDF
bstract Point processing uses only the information in individual pixels to pr...
PPTX
Computer Graphics Unit 1
PPTX
IMAGE ENHANCEMENT IN THE SPATIAL DOMAIN.pptx
PPTX
Part 3- Manipulation and Representation of Curves.pptx
PPT
2D-Transformations-Transformations are the operations applied to geometrical ...
PPT
Trytten computergraphics(1)
PPTX
Part 2- Transformation.pptx
PPTX
Part 2- Geometric Transformation.pptx
PDF
CD504 CGM_Lab Manual_004e08d3838702ed11fc6d03cc82f7be.pdf
PPTX
An Efficient Convex Hull Algorithm for a Planer Set of Points
PPTX
Output primitives in Computer Graphics
PPT
Unit I-cg.ppt Introduction to Computer Graphics elements
PPT
Introduction to Computer Graphics elements
PPT
Introduction to Computer Graphics computer
TAO Fayan_X-Ray and MIP volume rendering
Transformations Matrix Representations-2.ppt
07 cie552 image_mosaicing
chapter-2 SPACIAL DOMAIN.pptx
bstract Point processing uses only the information in individual pixels to pr...
Computer Graphics Unit 1
IMAGE ENHANCEMENT IN THE SPATIAL DOMAIN.pptx
Part 3- Manipulation and Representation of Curves.pptx
2D-Transformations-Transformations are the operations applied to geometrical ...
Trytten computergraphics(1)
Part 2- Transformation.pptx
Part 2- Geometric Transformation.pptx
CD504 CGM_Lab Manual_004e08d3838702ed11fc6d03cc82f7be.pdf
An Efficient Convex Hull Algorithm for a Planer Set of Points
Output primitives in Computer Graphics
Unit I-cg.ppt Introduction to Computer Graphics elements
Introduction to Computer Graphics elements
Introduction to Computer Graphics computer
Ad

More from Edge AI and Vision Alliance (20)

PDF
“An Introduction to the MIPI CSI-2 Image Sensor Standard and Its Latest Advan...
PDF
“Visual Search: Fine-grained Recognition with Embedding Models for the Edge,”...
PDF
“Optimizing Real-time SLAM Performance for Autonomous Robots with GPU Acceler...
PDF
“LLMs and VLMs for Regulatory Compliance, Quality Control and Safety Applicat...
PDF
“Simplifying Portable Computer Vision with OpenVX 2.0,” a Presentation from AMD
PDF
“Quantization Techniques for Efficient Deployment of Large Language Models: A...
PDF
“Introduction to Data Types for AI: Trade-offs and Trends,” a Presentation fr...
PDF
“Introduction to Radar and Its Use for Machine Perception,” a Presentation fr...
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
PDF
“Computer Vision at Sea: Automated Fish Tracking for Sustainable Fishing,” a ...
PDF
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
PDF
“ONNX and Python to C++: State-of-the-art Graph Compilation,” a Presentation ...
PDF
“Beyond the Demo: Turning Computer Vision Prototypes into Scalable, Cost-effe...
PDF
“Running Accelerated CNNs on Low-power Microcontrollers Using Arm Ethos-U55, ...
PDF
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
PDF
“A Re-imagination of Embedded Vision System Design,” a Presentation from Imag...
PDF
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
PDF
“Evolving Inference Processor Software Stacks to Support LLMs,” a Presentatio...
PDF
“Efficiently Registering Depth and RGB Images,” a Presentation from eInfochips
“An Introduction to the MIPI CSI-2 Image Sensor Standard and Its Latest Advan...
“Visual Search: Fine-grained Recognition with Embedding Models for the Edge,”...
“Optimizing Real-time SLAM Performance for Autonomous Robots with GPU Acceler...
“LLMs and VLMs for Regulatory Compliance, Quality Control and Safety Applicat...
“Simplifying Portable Computer Vision with OpenVX 2.0,” a Presentation from AMD
“Quantization Techniques for Efficient Deployment of Large Language Models: A...
“Introduction to Data Types for AI: Trade-offs and Trends,” a Presentation fr...
“Introduction to Radar and Its Use for Machine Perception,” a Presentation fr...
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
“Computer Vision at Sea: Automated Fish Tracking for Sustainable Fishing,” a ...
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
“ONNX and Python to C++: State-of-the-art Graph Compilation,” a Presentation ...
“Beyond the Demo: Turning Computer Vision Prototypes into Scalable, Cost-effe...
“Running Accelerated CNNs on Low-power Microcontrollers Using Arm Ethos-U55, ...
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
“A Re-imagination of Embedded Vision System Design,” a Presentation from Imag...
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
“Evolving Inference Processor Software Stacks to Support LLMs,” a Presentatio...
“Efficiently Registering Depth and RGB Images,” a Presentation from eInfochips

Recently uploaded (20)

PPTX
Big Data Technologies - Introduction.pptx
PDF
Machine learning based COVID-19 study performance prediction
PPTX
A Presentation on Artificial Intelligence
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Cloud computing and distributed systems.
PPT
Teaching material agriculture food technology
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
cuic standard and advanced reporting.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Chapter 3 Spatial Domain Image Processing.pdf
Big Data Technologies - Introduction.pptx
Machine learning based COVID-19 study performance prediction
A Presentation on Artificial Intelligence
Programs and apps: productivity, graphics, security and other tools
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Spectral efficient network and resource selection model in 5G networks
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Cloud computing and distributed systems.
Teaching material agriculture food technology
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
cuic standard and advanced reporting.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Spectroscopy.pptx food analysis technology
Review of recent advances in non-invasive hemoglobin estimation
Unlocking AI with Model Context Protocol (MCP)
Digital-Transformation-Roadmap-for-Companies.pptx
20250228 LYD VKU AI Blended-Learning.pptx
sap open course for s4hana steps from ECC to s4
Chapter 3 Spatial Domain Image Processing.pdf

"The Perspective Transform in Embedded Vision," a Presentation from Cadence

  • 5. Image Capture from Perspective of the Camera
  • 6. Mathematical Model of Perspective Projection - 1 • Q : Point in physical plane L1 • (x, y) – coordinates of Q in physical plane • P : Projection of Q on image plane L2 • (u, v) – coordinates of P in image plane • f – camera focal length • Projected (u,v) are related to Physical (x,y) as: • u = h11x+h12y+h13 h31x+h32y +h33 • = h21x+h22y+h23 h31x+h32y+h33 • This is the Perspective Transform between destination coordinates (u,v) and source coordinates (x,y)
  • 7. Mathematical Model of Perspective Projection -2 u= 𝑥1 𝑥3 *f v = 𝑥2 𝑥3 *f hi1 = ෝ𝑒 𝑋 . ෝ𝑒𝑖 hi2 = ෝ𝑒 𝑌 . ෝ𝑒𝑖 hi3 = ഥ𝐯0 . ෝ𝑒𝑖 𝑥1 = ഥQ. ෝe1 = h11x+h12y+h13 ഥQ = ෝ𝑒 𝑋 .x + ෝ𝑒 𝑌 .y + ഥv0 𝑥2 = ഥQ. ෝe2 = h21x+h22y+h23 𝑥3 = ഥQ. ෝe3 = h31x+h32y+h33 Deriving the Perspective Transform Equations: • 𝐯 𝟎 • ෝ𝑒 𝑋 ෞ𝑒 𝑌 • ෝ𝑒1 ෝ𝑒2 ෝ𝑒3
  • 8. Mathematical Model of Perspective Transform - 3 • In camera 1 perspective: – Coordinates (X, Y) of point Q related to coordinates (xs, ys) of projected point, Ps, via Perspective transform with coefficients H = {h11, h12, h13, h21, h22, h23, h31, h32, h33} • In camera 2 perspective: – Coordinates (X, Y) of point Q related to coordinates (xd, yd) of projected point, Pd, via Perspective transform with coefficients: H’ = {h′11, h′12, h′13, h′21, h′22, h′23, h′31, h′32, h′33} • It can be also shown that coordinates of Ps = (xs, ys) are related to coordinates of Pd = (xd, yd) via a Perspective Transform: A={a11, a12, a13, a21, a22, a23, a31, a32, 1.0 } 𝑥𝑠 = a11xd +a12yd+ a13 a31xd+a32yd + 1.0 , 𝑦𝑠 = a21xd +a22yd+ a23 a31xd+a32yd + 1.0 • This mapping of coordinates from one perspective (xs, ys) to another perspective (xd, yd) is central to many imaging and vision applications.
  • 10. Application Example 1: Image Stitching • • • •
  • 12. Application Example 2: Sensor Noise Filtering • • –
  • 13. Application Example 3: Video Stabilization •
  • 16. Estimating the Perspective Transform • • → • • 𝑎11 𝑎12 𝑎13 𝑎21 𝑎22 𝑎23 𝑎31 𝑎32 𝑥 𝑠1 𝑦 𝑠1 . . . . 𝑥 𝑠𝑛 𝑦 𝑠𝑛 𝑥 𝑑1 𝑦 𝑑1 0 0 1 0 0 𝑥 𝑑1 0 0 𝑦 𝑑1 1 −𝑥 𝑠1 𝑥 𝑑1 − 𝑥 𝑠1 𝑦 𝑑1 −𝑦 𝑠1 𝑥 𝑑1 −𝑦 𝑠1 𝑦 𝑑1 . . . 𝑥 𝑑𝑛 𝑦 𝑑𝑛 0 0 1 0 0 𝑥 𝑑𝑛 0 0 𝑦 𝑑𝑛 1 −𝑥 𝑠𝑛 𝑥 𝑑𝑛 −𝑥 𝑠𝑛 𝑦 𝑑𝑛 −𝑦𝑠𝑛 𝑥 𝑑𝑛 −𝑦𝑠𝑛 𝑦 𝑑𝑛 =
  • 17. Applying the Perspective Transform • – – ixs iys ixs iys α α ixs iys xs ,ys = a21 +a22 + a23 xd, yd x = a11 +a12 + a13 ixs=floor(xs), αx = xs – ixs, iys=floor(ys), αy = ys – iys,
  • 19. Implementation challenges on DSP • – – • – – •
  • 20. Compute efficient Perspective Transform -1 • • ( ) • • • ( ) –
  • 21. Compute efficient Perspective Transform - 2 • – Use modest tile sizes : (8x8), (16x16), (32x32) – Use full divide based Perspective equation to compute only the source coordinates of four tile corner pixels – For all other pixels in tile use bilinear interpolation of computed tile corner source coordinates to estimate the source coordinates – Dynamically determine the tile size based on the coefficient values (a31,a32) to limit the coordinate estimation error < ErrMax – ErrMax : maximum allowed coordinate error – ErrMax range : 0.01 – 0.05 (depending on application architect specification)
  • 22. Division Free Perspective Transform : Results •
  • 23. Summary • Perspective transform accurately computes an image as seen from a different camera position (perspective). • Used in the imaging applications which involve joint processing of multiple pictures (frames) taken from slightly different camera positions. • Per-cycle-divide operation involved in a canonical implementation poses a large computational complexity problem. • We described a minimal division modification of Perspective transform - achieves DSP cycles reduction by a factor of 3x for typical use cases
  • 25. © 2018 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence, the Cadence logo and the other Cadence marks found at www.cadence.com/go/trademarks are trademarks or registered trademarks of Cadence Design Systems, Inc. All other trademarks are the property of their respective holders.