Adding workflows and support for usage on MacOS, Windows and Ubuntu#126
Open
YonatanSimson wants to merge 14 commits intolaurentkneip:masterfrom
Open
Adding workflows and support for usage on MacOS, Windows and Ubuntu#126YonatanSimson wants to merge 14 commits intolaurentkneip:masterfrom
YonatanSimson wants to merge 14 commits intolaurentkneip:masterfrom
Conversation
Co-authored-by: YonatanSimson <6965874+YonatanSimson@users.noreply.github.com>
Co-authored-by: YonatanSimson <6965874+YonatanSimson@users.noreply.github.com>
…ability Co-authored-by: YonatanSimson <6965874+YonatanSimson@users.noreply.github.com>
Co-authored-by: YonatanSimson <6965874+YonatanSimson@users.noreply.github.com>
Co-authored-by: YonatanSimson <6965874+YonatanSimson@users.noreply.github.com>
…or SQPnP and enhance .gitignore to include .venv. Introduce MANIFEST.in for packaging and add README files for Python bindings.
…eel file for macOS.
* Fixing workflows to work on standard OS paltforms * Fixing MacOS and windows workflows * Fixed bugs in SQPnP and added tests * Fixed compilation errors * Fix CMake get_filename_component calls on Windows Quote PYTHON_EXECUTABLE and _PYTHON_DIR variables to handle paths with spaces. Windows Python paths often contain spaces which caused CMake to interpret them as multiple arguments, resulting in 'incorrect number of arguments' error. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * Add Eigen diagnostics and fix vcpkg configuration - Remove manual EIGEN_INCLUDE_DIR override to let vcpkg toolchain handle it - Add CMake diagnostics to verify Eigen unsupported modules are found - Add workflow step to verify Eigen installation before building Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * Fixing windows workflow * Fixed problems in workflow, added pyproject.toml, fixed problems in SQPnP test * Adding support for clang + ninja compilation in git bash * Adding UPnP to tests and exposing to python by adding wrapper * Fixing ninja-clang workflow * TGesting backward vectors and fixing failing tests * Fixing windows workflow * Fixing python build and test failures in windows and ubuntu * Add P3P backward vector test and comprehensive benchmark - Added test_p3p_backward_vectors.cpp to validate P3P Kneip and Gao work with mixed forward/backward bearing vectors - Added lambda_twist_p3p.py: Pure Python reference implementation of Lambda Twist P3P solver (ECCV 2018) - Added benchmark_p3p_solvers.py: Comprehensive benchmark comparing P3P Kneip, Gao, and Lambda Twist Key findings: - All three P3P minimal solvers (Kneip, Gao, Lambda Twist) correctly handle backward-facing bearing vectors - Kneip: ~0.005ms, 100% success, 1.7e-15m accuracy (fastest) - Gao: ~0.009ms, 100% success, 2.2e-10m accuracy (fast) - Lambda Twist: ~0.5ms, 100% success, 5.3e-14m accuracy (Python, slower but excellent accuracy) All three solvers are suitable for omnidirectional/panoramic camera RANSAC. Fixed coordinate convention conversion between Lambda Twist (camera-to-world) and OpenGV (world-to-camera). * Fixed wheel build Fixed segmentation faults in relative tests * Segmentation fault due to setting std=0 in gaussian norm * Removed superflous testing * Moving benchmarks out of tests * Hunting down segmentation faults in MSVC build. Fixing python build failures in workflow * Changing way of installing windows dependencies --------- Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
* Fixing wheel build + python311.lib errors * Increasing stack memory for windows build - try to fix segmentation faults * Removing conda build
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The main purpose is to make UPnP easily accessible on most operating systems with python bindings.
I found UPnP to be better than EpnP and SQPnP. Also UPnP natively supports 360 images. UPnP is currently not supported in opencv.