Editing
Projective Geometry
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
<div style="background-color: #4B0082; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> {{BloomIntro}} Projective Geometry is the study of geometric properties that stay the same when a shape is "projected" onto another surface. It is the geometry of vision—describing how 3D objects look to an eye or a camera. In projective geometry, there are no "Parallel Lines"; instead, all lines meet at a "Point at Infinity." This math was first developed by Renaissance artists trying to paint realistic perspectives and is now the hidden engine behind every 3D movie and video game you see today. </div> __TOC__ <div style="background-color: #000080; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> == <span style="color: #FFFFFF;">Remembering</span> == * '''Projective Geometry''' — The study of properties invariant under projection. * '''Central Projection''' — Mapping points to a surface through a single "Eye" point. * '''Point at Infinity''' — The place where parallel lines appear to meet on the horizon. * '''Line at Infinity''' — The "Horizon" itself in a 2D projection. * '''Projective Plane''' — A plane extended to include all points at infinity. * '''Cross-Ratio''' — A specific mathematical ratio that never changes, even if you stretch or tilt a shape. * '''Duality''' — The surprising principle that every theorem about "Points and Lines" is also true if you swap the words "Point" and "Line." * '''Homogeneous Coordinates''' — A 4D coordinate system used to represent 3D projective space. * '''Perspective''' — The art and science of representing 3D depth on a 2D surface. </div> <div style="background-color: #006400; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> == <span style="color: #FFFFFF;">Understanding</span> == Projective geometry is understood through '''Projection''' and '''Infinity'''. '''1. The Artist's Eye''': Imagine looking at a square tile on the floor from an angle. * It doesn't look like a square (the far side is shorter). * It doesn't look like a rectangle (the sides are not parallel). * It looks like a '''Trapezoid'''. Projective geometry asks: "What is still 'Square-like' about this trapezoid?" '''2. Vanishing Points''': In Euclidean geometry, parallel train tracks never touch. In Projective geometry: * We add a "Special Point" to the world. * We say the tracks *do* meet at that point (the Vanishing Point). * This makes the math of cameras much simpler and more powerful. '''3. Duality (The Mirror)''': Projective geometry is perfectly symmetrical. * For every two points, there is one line connecting them. * For every two lines, there is one point where they cross. In Euclidean math, this isn't true (parallel lines don't cross). By adding "Points at Infinity," the symmetry is restored. '''Invariant''': The most important thing in projective geometry is finding what stays the same. While length and angle change when you tilt a camera, the "Order" of points and the "Cross-Ratio" do not. </div> <div style="background-color: #8B0000; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> == <span style="color: #FFFFFF;">Applying</span> == '''Modeling 'The Projective Matrix' (How a 3D point becomes a 2D Pixel):''' <syntaxhighlight lang="python"> import numpy as np def project_point(point_3d, focal_length): """ Simplified Pin-hole camera projection. [x, y, z] -> [f*x/z, f*y/z] """ x, y, z = point_3d # Avoid division by zero if z == 0: return (0, 0) # Projection math screen_x = (focal_length * x) / z screen_y = (focal_length * y) / z return (round(screen_x, 2), round(screen_y, 2)) # A point 10 units away print(f"Point at distance 10: {project_point([2, 2, 10], 5)}") # A point 20 units away (appears smaller/closer to center) print(f"Point at distance 20: {project_point([2, 2, 20], 5)}") </syntaxhighlight> ; Projective Landmarks : '''The Renaissance''' → Brunelleschi and Alberti's discovery of linear perspective, which changed art from "flat" to "deep." : '''Desargues's Theorem''' → A fundamental proof about triangles that is only "visible" if you look at them from a 3D perspective. : '''Photogrammetry''' → The science of using 2D photos to reconstruct a 3D model of a building or a person. : '''Computer Vision''' → How a self-driving car "knows" how far away a stop sign is just by looking at a 2D image. </div> <div style="background-color: #8B4500; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> == <span style="color: #FFFFFF;">Analyzing</span> == {| class="wikitable" |+ Geometric Invariants ! Geometry Type !! What stays the same? |- | Euclidean || Length, Angle, Area |- | Affine || Parallelism, Ratio of Lengths |- | Projective || Straightness, Cross-Ratio |} '''The Concept of "Duality"''': Analyzing why points and lines are interchangeable in projective space led to a deeper understanding of mathematical symmetry. It suggests that our "Definitions" of objects are often just two sides of the same coin. </div> <div style="background-color: #483D8B; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> == <span style="color: #FFFFFF;">Evaluating</span> == Evaluating projective geometry: # '''Visual Truth''': Does it describe "How we see" better than Euclidean math? (Yes). # '''Simplicity''': Does adding "Infinity" as a real point make the math easier or harder? (Easier—it removes "special cases" like parallel lines). # '''Utility''': Could modern CGI or VR exist without it? (Absolutely not). # '''Abstraction''': Is the "Projective Plane" a real place, or just a trick of the mind? </div> <div style="background-color: #2F4F4F; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;"> == <span style="color: #FFFFFF;">Creating</span> == Future Frontiers: # '''Holographic Projection''': Using projective math to create 3D light-fields that don't require glasses. # '''Non-Visible Sensing''': Projective geometry for Lidar and Radar to map environments in total darkness. # '''Projective AI''': Teaching neural networks to understand 3D rotation without needing millions of examples. # '''Augmented Reality (AR)''': Perfecting the "Projection" of digital objects so they look locked into the real physical world. [[Category:Mathematics]] [[Category:Geometry]] [[Category:Computer Vision]] </div>
Summary:
Please note that all contributions to BloomWiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
BloomWiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Template used on this page:
Template:BloomIntro
(
edit
)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
View history
More
Search
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Tools
What links here
Related changes
Special pages
Page information