Commit graph

94 commits

Author SHA1 Message Date
Candice Bentéjac
1f75ccaf5f [bin] meshroom_batch: Save graph once it has been all set up and resolved
If the "save" argument has been provided, the graph should be saved
outside of the `GraphModificatioǹ event, once it has been set up entirely
and resolved.

When it is saved within the `GraphModification`, UIDs are not yet
available.

This does not cause any issue for the rest of the execution if the graph
is to be computed locally, since the UIDs will be computed right
after (but the UIDs will still never be written in the project file).
However, when submitting the graph to a renderfarm, the project file is
loaded again. If it does not contain any UID:
 - all the nodes will present the `UidConflict` compatibility issue
 - key errors will be raised when trying to apply the links between nodes
since they contain direct references to UIDs, which cannot be resolved as
they are not present in the project file.
2023-06-30 18:59:32 +02:00
Candice Bentéjac
be4c02f515 [bin] Fix all the scripts that had errors
- `meshroom_submit`: the submission to the render farm is now effective
(the script did not work at all).
- `meshroom_status`: the `--toNode` option did not work and caused errors.
- `meshroom_statistics`: some adjustments needed to be made for the script
to run with Python3 instead of Python2, an issue in the core/stats.py file
led the `statistics` file to never being read correctly, and the calls
to the Matplotlib API were outdated.
2023-04-24 16:43:01 +02:00
Candice Bentéjac
99b82e601f Ignore "Publish" nodes when loading a template unless specified otherwise
This commit adds an option to the "load" method, "publishOutputs", that
determines whether "Publish" nodes in a template project file should be
ignored during the graph's creation.

If "publishOutputs=True", then the "Publish" nodes from the template will
be added to the graph. "Publish" nodes in a project file that is not
a template will not be affected by this and will always be added to the
graph, as any other node.

This allows to have templates that are compatible with meshroom_batch,
which requires a "Publish" node when the --output option is specified,
while not having unneeded nodes in the UI or unneeded operations:
when --output is specified in meshroom_batch, "publishOutputs=True",
otherwise it will be set to False so that the "Publish" nodes are not
executed needlessly.
2023-02-27 18:34:51 +01:00
Candice Bentéjac
8bef398bed Remove workarounds and backports for Python 2 support
In particular:
- In common/, remove the backport of weakref.WeakMethod
- In docs/ and ui/, use the standard FileNotFoundError class
- Use built-in open() instead of io.open(), and stop importing io
- In core/stats.py, use the standard implementation of xml.etree instead
of the C one
2022-12-05 17:16:21 +01:00
Candice Bentéjac
eac43c84c3 [submitters] Add an option to update the job title on submitters 2022-12-05 15:23:10 +01:00
Fabien Servant @ TCS
4f816ee850
update ion startup
Provides a shebang for ion run
Remove alicevision_root which is not usefull anymore
2022-11-04 13:54:32 +01:00
Fabien Servant @ TCS
84e6bdb869
Update startup script for ion
Add ALICEVISION_ROOT to env in startup script
2022-10-19 18:35:04 +02:00
Fabien Servant
06aa16243d [ION] wrong variable in script 2022-09-26 08:42:19 +01:00
Fabien Servant
595bf4aa1b [ION] adding qt plugin path 2022-09-26 08:39:59 +01:00
Fabien Servant
263c806bfe [bin] add ion script for launch 2022-09-16 12:30:35 +01:00
Matthieu Hog
f491b5a77b removed duplicated call to findnodes 2022-09-06 10:57:29 +02:00
Candice Bentéjac
659c8a05ed Add abstract InitNode
InitNode is an abstract class which is meant to be inherited
by all the initialization nodes (such as CameraInit), included
those that might be created by the user.

InitNode contains methods that can be reimplemented by the
children classes if necessary.

This abstract class allows to keep on using scripts such as
meshroom_batch without having to modify them specifically or
being limited to using a CameraInit node.
2022-08-05 10:42:59 +02:00
Candice Bentéjac
8fb0c778d1 Add support for external pipelines using project files
- Support loading external pipelines as templates with project files
- Add template files for some standard pipelines
- Remove the hard-coded generation of new pipelines
- Update multiviewPipeline test: the multiviewPipeline test relied on the hard-coded generation of
pipelines.
2022-07-12 14:56:24 +02:00
Fabien Castan
fd4851b7e9 [bin] batch: allow to set params inside groups 2022-04-06 10:46:08 +02:00
Fabien Castan
22a2bbdf2a [bin] newNodeType: update
- allow executable with multiple arguments
- force utf8 conversion
- fix typo in help
2022-02-22 15:35:37 +01:00
Fabien Castan
e5b82cb137 [bin] meshroom_batch: Add verbose option 2021-10-19 15:48:41 +02:00
Fabien Castan
ae0c65f563 [core] do not use the task manager in batch command line tools
Avoid usage of multi-threading to launch the computation in command line
tools without interactive needs
2021-10-19 15:48:07 +02:00
Remy Mellet
d30571ce7d Draft Reconstruction pipeline 2021-09-13 10:36:46 +02:00
Fabien Castan
0ddda9f982 [multiview] new experimental pipeline for camera tracking 2021-04-16 10:45:57 +02:00
Fabien Castan
3d5ec8b5e9
[bin] meshroom_batch: fix typo in pipeline names
Fix #1376
2021-04-13 16:47:30 +02:00
wolfgangp
43b3b5af98
[bin] Use sys.exit (#1312) 2021-04-09 13:47:33 +02:00
Fabien Castan
37ffd7f990 [bin] rename meshroom_photogrammetry as meshroom_batch 2021-02-24 22:38:25 +01:00
Fabien Castan
37d3008f9e [core] rename nodesOfType 2021-01-22 13:12:29 +01:00
Fabien Castan
1102ce84e0 Merge branch 'develop' of github.com:alicevision/meshroom into dev/nodesAndTaskManager
Conflicts:
	meshroom/core/graph.py
	meshroom/ui/qml/main.qml
2020-12-01 20:02:43 +01:00
Fabien Castan
589856ecdc Rename hdri into panoramaHdr 2020-09-05 01:16:51 +02:00
Fabien Castan
69e9495d63 [bin] compute: No warning if we are computing as EXTERN and the node is SUBMITTED 2020-09-04 19:53:06 +02:00
Julien-Haudegond
3f3a6c0e83 [core/bin] Submitting: remove a duplicate function and move another one 2020-09-03 18:23:55 +02:00
Julien-Haudegond
201ab0b5fb [bin] replace the executeGraph method by a task manager 2020-08-27 11:49:24 +02:00
Fabien Castan
e404fce7d1 [bin] meshroom_photogrammetry: add hdriFisheye 2020-06-01 16:10:38 +02:00
Fabien Castan
9775924df0 [bin] photogrammetry: reduce the number of updates with "GraphModification" group 2019-12-16 20:07:31 +01:00
Fabien Castan
b3653aaae2 [bin] meshroom_photogrammetry: add submit on renderfarm 2019-12-13 20:24:41 +01:00
Fabien Castan
180a2565e1 [bin] meshroom_photogrammetry: add hdri pipeline option 2019-12-13 20:24:25 +01:00
Fabien Castan
f03b52e415 [multiview] setup xml files to Panorama node, create KeyframeSelection for video files 2019-11-04 12:12:08 +01:00
Fabien Castan
8e6753ed4b
[bin] meshroom_photogrammetry: fix argument name 2019-10-23 00:18:09 +02:00
Fabien Castan
ab7b940060 [bin] meshroom_photogrammetry: add explicit check if no image found 2019-09-26 12:17:53 +02:00
Fabien Castan
9a473ad7c4 [bin] meshroom_photogrammetry: add --inputRecursive 2019-09-26 11:35:08 +02:00
Fabien Castan
49c57892f1 [bin] meshroom_photogrammetry: add command line paramOverrides 2019-09-25 22:11:43 +02:00
Fabien Castan
06543f89a9 [core] use more explicit argument name: setupFileRef 2019-09-21 18:19:17 +02:00
Fabien Castan
979ee4ba94 [bin] meshroom_photogrammetry: setup cache folder according to --save path
except if --cache is set explicitly
2019-09-12 21:36:36 +02:00
Fabien Castan
a4d7554c0b [bin] improve meshroom_photogrammetry command line: -i, -o, change --save, add --compute
- add short names for input/output
- change --save option which allow to save the graph used but now do not
replace the computation
- new option to disable the computation (makes sense only if you want to
only save the created project)
2019-09-12 21:06:41 +02:00
Fabien Castan
177d47f95f [bin] meshroom_photogrammetry: rebuild intrinsics only if we have new input images 2019-08-07 20:06:48 +02:00
Fabien Castan
ddc5b29094 [bin] meshroom_photogrammetry: args.input is optional 2019-08-07 20:05:38 +02:00
Simone Gasparini
ac5a509a11
[bin] raise exception if input format is not supported 2019-07-31 15:21:19 +02:00
Simone Gasparini
78d16df4a7
[bin] add views and intrinsic when loading custom pipeline 2019-07-31 15:20:45 +02:00
Simone Gasparini
c0507bf8e6
[bin] added parameter override for meshroom_photogrammetry
The user can specify a json file to override the default parameter of
each node.
2019-03-07 14:41:14 +01:00
Yann Lanthony
b147788e5c [bin] use sys.exit + build meshroom_compute executable
* cx_Freeze removes builtin 'exit' function, use sys.exit in executables instead
* build: generate an executable for "meshroom_compute"
2019-02-27 15:00:43 +01:00
Yann Lanthony
75cb5cb779 [bin][photogrammetry] allow no --output + improve help
Allow no --output parameter, explicitly print cache folder before computation start in that case.
2019-01-30 09:29:42 +01:00
Yann Lanthony
22a7e79830 [bin][photogrammetry] set downscale on all DepthMap nodes 2019-01-30 09:22:03 +01:00
Yann Lanthony
60dc02ea74 [bin][photogrammetry] enable to input a pre-configured pipeline graph 2019-01-29 16:04:39 +01:00
Yann Lanthony
6276dfcd30 [bin][photogrammetry] clean up parameters
* use choices for '--scale' parameter + fix doc + apply only if set
* fix metavars
2019-01-29 16:04:39 +01:00