Skip to content

task03: Structure from Motion#143

Closed
NikonFlex wants to merge 6 commits into
PhotogrammetryCourse:task03from
NikonFlex:task03
Closed

task03: Structure from Motion#143
NikonFlex wants to merge 6 commits into
PhotogrammetryCourse:task03from
NikonFlex:task03

Conversation

@NikonFlex
Copy link
Copy Markdown

Summary

  • Implemented full SfM pipeline: epipolar geometry, F/E matrix estimation, triangulation, resection
  • RANSAC F-matrix estimation with ~211k iterations (formula: log(1e-6) / log(1 - 0.3^8)) for robust filtering
  • DLT-based triangulation and camera matrix (PnP) resection

Test results

All 9 tests pass:

  • EpipolarDist
  • FmatrixSimple
  • EmatrixSimple
  • EmatrixDecomposeSimple
  • TriangulationSimple
  • FmatrixMatchFiltering
  • RelativePosition2View
  • Resection
  • ReconstructNViews

🤖 Generated with Claude Code

simiyutin and others added 6 commits March 10, 2026 22:48
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
All 9 tests pass: EpipolarDist, FmatrixSimple, EmatrixSimple,
EmatrixDecomposeSimple, TriangulationSimple, FmatrixMatchFiltering,
RelativePosition2View, Resection, ReconstructNViews.

- sfm_utils: epipolar distance test via F*x0 line
- fmatrix: DLT 8-point + normalization + RANSAC (~211k iterations)
- triangulation: DLT triangulation from multiple cameras
- ematrix: F→E conversion, spectral property, E decomposition (4 candidates)
- resection: camera matrix PnP via DLT RANSAC

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@NikonFlex NikonFlex closed this May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants