Commit graph

40 commits

Author SHA1 Message Date
Candice Bentéjac
41a1b47c43 [nodes] Remove invalidate=True from descriptions 2024-09-12 10:54:18 +02:00
Candice Bentéjac
045c26cc46 [nodes] Change uid= into invalidate= for all nodes 2024-09-12 10:41:55 +02:00
Candice Bentéjac
4d15e418ae [nodes] KeyframeSelection: Update default minimum number of keyframes 2024-03-28 16:28:31 +01:00
Candice Bentéjac
61a8dcd4e2 [nodes] Harmonize the use of trailing commas across all the nodes 2024-02-08 18:02:19 +01:00
Candice Bentéjac
0f6ad22d11 [nodes] Use utilitary constants for most common ChoiceParams 2024-02-08 18:02:18 +01:00
Loïc Vital
2bea35d00d
Merge pull request #2163 from alicevision/dev/keyframeVideoOutput
KeyframeSelection: Flag `outputExtension` attribute when it is set to "none" for video inputs
2023-08-28 14:13:06 +02:00
Candice Bentéjac
b50a2fb81e [nodes] KeyframeSelection: Add param to use masks for the smart selection
Segmentation masks may be provided to exclude some parts of the frame
from the score computations if the smart method is selected.
2023-08-25 16:05:48 +02:00
Candice Bentéjac
42868e7e54 [nodes] KeyframeSelection: Add minBlockSize param for multi-threading 2023-08-25 15:52:03 +02:00
Candice Bentéjac
76d2e8680e [nodes] KeyframeSelection: Flag outputExtension for video inputs
If at least one of the inputs is a video, then the `outputExtension`
attribute should never be set to "none": if it is, no frame will ever be
written on disk, and as a consequence, no SfMData file will be written,
meaning that the whole score computation and keyframe selection process
will have been done for nothing.
2023-08-22 11:22:11 +02:00
Candice Bentéjac
3146dcface [nodes] I-L: Harmonize and improve labels and descriptions
Use CamelCase for all labels, always end descriptions with periods, and
replace the mixed use of single and double quotes with double quotes
only.
2023-06-16 10:31:18 +02:00
Loïc Vital
349f488fbd
Merge pull request #2036 from alicevision/dev/noKeyframeExport
KeyframeSelection: Add new parameter value to disable the export of keyframes
2023-06-09 12:27:04 +02:00
Candice Bentéjac
b6fc017db1 [nodes] KeyframeSelection: Set a dynamic size for the node
The size is set with the minimum between the input frames (when available)
and the set maximum number of output keyframes. This allows the nodes
following the KeyframeSelection one to be chunked if applicable.
2023-06-07 17:38:53 +02:00
Candice Bentéjac
360514fe59 [nodes] KeyframeSelection: Add parameter value to avoid exporting keyframes
The `outputExtension` parameter now supports a new value, `none`, that
disables the export of the keyframes, and becomes the new default value.

The `renameKeyframes` parameter, which changes the way keyframes are named
when they are written, is automatically disabled when `outputExtension` is
set to `none`.
2023-06-06 18:19:52 +02:00
Candice Bentéjac
903134f952 [nodes] KeyframeSelection: Update node's version 2023-04-12 15:01:28 +02:00
Candice Bentéjac
b9649193b1 [nodes] KeyframeSelection: Update label for "sensorDbPath" 2023-04-12 12:40:18 +02:00
Candice Bentéjac
ffa3d9f6d1 [nodes] KeyframeSelection: Update description of "outputSfmDataFrames"
Indicate that this file is not written as an output if the input is a
video or a list of videos.
2023-04-12 12:40:12 +02:00
Candice Bentéjac
a5b578a5c0 [nodes] KeyframeSelection: Add SfMData files as outputs
This commit updates the name of the input parameter (from "mediaPaths" to
"inputPaths") as it now also supports SfMData files, and adds two SfMData
files as output parameters: one that contains the selected keyframes, and
one that contains the frames that were not selected as keyframes.
2023-04-12 12:39:24 +02:00
Candice Bentéjac
1227704b5a [nodes] KeyframeSelection: Update "pxDisplacement" default value to 10% 2023-03-13 11:53:17 +01:00
Candice Bentéjac
fa86cde7c2 [nodes] KeyframeSelection: Add debug option to skip sharpness computations
Add a debug option that will, during the scores' computation, skip all the
calculations regarding sharpness. A fixed sharpness score of 1.0 will be
applied to all the frames.
2023-02-23 18:13:18 +01:00
Candice Bentéjac
808509fd7b [nodes] KeyframeSelection: Add option to name the keyframes consecutively
By default, the keyframes' name is their index within the input sequence /
video. A new option is added to name them as consecutive frames, starting
from 0, instead.
2023-02-07 11:34:50 +01:00
Candice Bentéjac
bdf13251a2 [nodes] KeyframeSelection: Split rescaling parameter in two new ones
Split the existing "rescaledWidth" parameter into "rescaledWidthSharpness"
and "rescaledWidthFlow" to allow independent rescaling of the frames used
to compute the sharpness and motion scores.
2023-02-06 16:58:40 +01:00
Candice Bentéjac
2ea3229375 [nodes] KeyframeSelection: Add support for several output file formats
Keyframes will be written as JPG, PNG or EXR files (by default, JPG).
If EXR is the selected output extension, the storage data type can also
be chosen.
2023-02-06 16:58:40 +01:00
Candice Bentéjac
d001ac638d [nodes] KeyframeSelection: Update node's version 2023-02-06 16:58:40 +01:00
Candice Bentéjac
cee293d254 [nodes] KeyframeSelection: Add options to visualise computed motion vectors
Add two debug options to export the computed motion vectors in HSV as PNG
images.
2023-02-06 16:58:39 +01:00
Candice Bentéjac
a30cc5a0c8 [nodes] KeyframeSelection: Add debug option to skip the keyframe selection
If enabled, the scores are computed and, if requested, exported to a CSV
file, but the keyframe selection itself is not performed.
2023-02-06 16:58:39 +01:00
Candice Bentéjac
0e621d2c79 [nodes] KeyframeSelection: Add debug options to export scores as a CSV 2023-02-06 16:58:39 +01:00
Candice Bentéjac
30ea556c26 [nodes] KeyframeSelection: Add smart keyframe selection method
Group the keyframe selection parameters together depending on the method
(regular or smart) they belong to.

Parameters for a method are only shown if that method is the currently
selected one.
2023-02-06 16:58:38 +01:00
Candice Bentéjac
e09554c410 [nodes] KeyframeSelection: Remove old parameters and add new method
This commit removes most of the existing parameters for the keyframe
selection and adds new ones to enable the regular keyframe selection.

Since the regular method is the only one available for now, the parameter
that allows the user to enable it or not is disabled.
2023-02-06 16:58:38 +01:00
Fabien Castan
14f299e323 [nodes] rename: remove "utils" from executables names 2022-12-13 17:21:34 +01:00
fabien servant
ae0ca71c1c [nodes] replace CommandLineNode with AVCommandLineNode for alicevision nodes 2022-12-06 15:07:01 +01:00
Loïc Vital
a5fbbe7d82 [node] output labels renaming without 'Output' prefix 2022-10-19 09:50:21 +01:00
Candice Bentéjac
e7290313bf [nodes] Align FloatParams' and IntParams' ranges with their params' type 2022-09-28 10:41:39 +02:00
Candice Bentéjac
7ec65d828c Do not evaluate variables of string parameters in the nodes' description
Set the value of the string parameters in the nodes' description as
the unevaluated variable instead of the evaluated variable. The
evaluation will be made later, when the nodes with such parameters
will be computed.
2022-07-12 11:22:57 +02:00
Fabien Castan
2f18e89a9d [nodes] KeyframeSelection: extract all frames by default 2021-04-16 10:44:41 +02:00
ChemicalXandco
e18f815af9 [nodes] add node categories 2021-02-14 17:03:42 +00:00
Fabien Castan
64a4c9426a [nodes] add some nodes documentation 2020-03-26 11:20:44 +01:00
Grégoire De Lillo
f07628e5bd [nodes] KeyframeSelection Add / update options
KeyframeSelection node is now 2.0
2018-10-01 15:36:20 +02:00
Yann Lanthony
2a410d07ea [nodes][aliceVision] add initial version on nodes 2018-07-19 13:50:45 +02:00
Yann Lanthony
346277629a [nodes] use 'desc.Node.internalFolder' in outputs values
* avoid duplicating the same string everywhere
* don't override 'internalFolder' with the same value default value in subclasses
2018-07-19 13:50:45 +02:00
Fabien Castan
5049a9b36e [nodes] New node KeyframeSelection 2018-01-01 20:28:54 +01:00