Comments (8)
Really thanks for your help
from 3dreconstruction.
Oops. Thanks for reporting.
I've added it to the repo and modified example.py
to read the images from img
folder.
from 3dreconstruction.
At first,i'm new to study 3d reconstruction,in cube_reconstruction.py,and your project is really good,and here i have a question about what's the differences between reconstruct_points and linear_triangulation?i don't know what the algorithm of reconstruct_points. @alyssaq
from 3dreconstruction.
and you use 'p1 = m1 * X and p2 = m2 * X. Solve AX = 0' this formula to get 3D points,but i found a different formula in triangulation, https://www.cs.auckland.ac.nz/courses/compsci773s1c/lectures/CS773S1C-3DReconstruction.pdf
from 3dreconstruction.
Both linear_triangulation
and reconstruct_points
produce the same resultant matrix using different equations. They are both based on the expansion of the cross product and utilising the fact that vectors p
and m * X
are parallel.
The slides you linked utilises the fact that the ray through the 3D point is orthogonal to the ray from the 3D points to the 2D image points and origin. Different set of equations but it will produce similar results since the underlying constraints are exactly the same. If you're up for it, seems like a good exercise to implement and verify.
Please see image below for explanation of the 2 equations.
Eq A is linear_triangulation
, which is in Hartley and Zisserman's book. Ive written the derivation.
Eq B is reconstruct_points
, which is the skew-symmetric matrix of 2D pt
, dot product with m
the camera matrix.
from 3dreconstruction.
@alyssaq i express my appreciation of your help!i feel suddenly enlightened! i've taken a note already.And recently i get a new problem,after i reconstructed the 3d points,i've found that they might not in the same coordinate system. The reason i guess is the Essential Matrix which is got by 8 points Algorithm are different,if i change all the E to the same value,it has no meaning at all,so how could i solve this problem?
from 3dreconstruction.
Every pair of 2D images will have their own essential matrix. Camera 1 is always at the origin and then camera 2 is calculated based on the essential matrix. You'll have to apply additional transformations to get all 3D reconstructed set of points into the same view space.
from 3dreconstruction.
well, sounds kind of difficult.anyway ,i'll have a try.
from 3dreconstruction.
Related Issues (13)
- How to perform triangulation without intrinsic matrix? HOT 3
- sample image HOT 1
- Is it possible to get the real coordinates of the dino?
- is bundle adjustment unavailable now?
- What data i will need to get real world cordinates of object in a new image ? HOT 2
- more images HOT 1
- [BUG] A path bug concerning the image folder HOT 1
- Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
- alueError: shapes (3,3) and (1,1) not aligned: 3 (dim 1) != 1 (dim 0) HOT 7
- Links in doc are broken HOT 1
- Current OpenCV version do not support SIFT HOT 1
- NO it(a difference in data points normalization) HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from 3dreconstruction.