Merged
Merged
Conversation
ahojnnes marked this pull request as ready for review
February 25, 2026 18:17Summary of Changes
Hello @ahojnnes, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request refactors the view graph calibration process in COLMAP, making it a distinct and independent module. Previously integrated within the GlobalPipeline, calibration is now automatically executed by the AutomaticReconstructionController when initiating a global reconstruction. The GlobalPipeline itself has been streamlined to focus solely on mapping, with added checks to warn users if camera focal length priors are insufficient, guiding them to use the dedicated view_graph_calibrator if needed. This change improves modularity and clarifies the responsibilities of different components within the reconstruction pipeline.
Highlights
- Modularity: View graph calibration is now a standalone module, decoupled from the
GlobalPipeline. - Automatic Execution: The
AutomaticReconstructionControllernow automatically invokes view graph calibration when using the global mapper. - Global Pipeline Behavior: The
GlobalPipelineno longer performs calibration internally but instead checks for sufficient focal length priors and issues warnings if they are lacking. - Documentation and Options: Documentation and command-line options have been updated to reflect these changes and guide users on the new workflow.
- Camera Prior Flag: The
has_prior_focal_lengthflag inCameraobjects is now explicitly set by the view graph calibration process.
- doc/cli.rst
- Updated
global_mapperdescription to advise runningview_graph_calibratorif focal length priors are poor. - Clarified
view_graph_calibrator's role as a prerequisite forglobal_mapperwhen intrinsics are unknown.
- Updated
- src/colmap/controllers/automatic_reconstruction.cc
- Included
view_graph_calibration.h. - Added a call to
CalibrateViewGraphwithin theGLOBALmapping case, passing relevant options.
- Included
- src/colmap/controllers/global_pipeline.cc
- Introduced helper functions
HasInsufficientPriorFocalLengthsandWarnInsufficientPriorFocalLengths. - Removed the internal execution of view graph calibration from
GlobalPipeline::Run(). - Added checks and warnings for insufficient focal length priors at the start and end of
GlobalPipeline::Run().
- Introduced helper functions
- src/colmap/controllers/global_pipeline.h
- Removed the include for
view_graph_calibration.h. - Removed
skip_view_graph_calibrationandview_graph_calibrationoptions fromGlobalPipelineOptions.
- Removed the include for
- src/colmap/controllers/global_pipeline_test.cc
- Included
view_graph_calibration.h. - Modified
GlobalPipelinetests to explicitly callCalibrateViewGraphbefore pipeline execution.
- Included
- src/colmap/controllers/option_manager.cc
- Removed command-line options related to
skip_view_graph_calibrationandview_graph_calibrationfromGlobalMappersettings.
- Removed command-line options related to
- src/colmap/estimators/view_graph_calibration.cc
- Set
camera.has_prior_focal_lengthtotruefor cameras whose focal lengths are calibrated.
- Set
- src/colmap/estimators/view_graph_calibration_test.cc
- Set
camera.has_prior_focal_lengthtofalsebefore calibration in tests. - Added an assertion to verify
camera.has_prior_focal_lengthistrueafter successful calibration.
- Set
- src/colmap/scene/camera.h
- Updated the comment for
has_prior_focal_lengthto include view graph calibration as a source for good priors.
- Updated the comment for
- No specific review comments or activity have been recorded for this pull request yet.
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in pull request comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with ๐ and ๐ on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. โฉ
ahojnnes deleted the user/jsch/vgc-standalone branch
February 26, 2026 09:53Labels
None yet