On this page |
New Nodes ¶
-
The
Attribute from Parameters TOP creates a new dictionary attribute named
parms
that contains the parameter name/value pairs from a target node. -
The
Attribute String Edit TOP edits string attributes based on the defined filters. It can be used to change file extensions in string attributes representing file paths, for example.
-
The
Attribute Classify TOP creates a
class
attribute on work items based on the number of unique value(s) for other attributes. -
The new
Preflight TOP copies a list of files into the working directory or temp file directory.
-
The
ML Train Style Transfer TOP trains a machine learning model for doing style transfer between two classes of images. The resulting model can be used with
ONNX Interface SOP or
ONNX Inference COP .
-
New
ML Train OIDN TOP is a wrapper around the OIDN training script used to train an OIDN denoising filter model on preprocessed training and validation datasets.
-
New
ML Preprocess OIDN TOP is a wrapper around the OIDN preprocessing script used to preprocess training and validation datasets compliant with the OIDN dataset naming scheme.
-
New ML Regression Kernel TOP trains a model using kernel ridge regression. This trains the same kind of model as
ML Regression Kernel SOP, but allows it to be exported as an ONNX model that can be used with the
ML Regression Inference SOP.
-
The new
ROP GLTF Output TOP wraps the GLTF ROP and a ROP Fetch into a single asset, which can be used to export .gltf files from a TOP network.
Updated Nodes ¶
-
The
TOP Geometry SOP can now be configured to import work items from an externally-defined TOP network.
-
The
Python Script TOP can now be configured to run script code defined in an external
.py
file, instead of using the script parameter on the node itself. -
Added a new batching option to the
Python Script TOP for creating batches with a per-frame dependency on input work items.
-
When cooking out of process, the
Python Script TOP now has parameters for adding extra PYTHONPATH entries used for importing modules.
-
The
Python Virtual Environment TOP now has an option for specifying the contents of its
requirements.txt
file directly in the node’s parameter interface. -
Added better options for handling empty geometry when loading files or SOP networks with the Geometry Import TOP .
-
Added support for importing key/value attribute pairs into a dictionary using the Attribute Dictionary TOP .
-
The
TOP Fetch Input now can now be configured to inherit the attributes from any work item that is currently active, in addition to loading from a .json file.
-
The
Attribute Copy TOP can now be configured so that it requires cooked input work items before applying the match rules. This allows the work items to be matched using attribute produced when the inputs cook.
-
The
Attribute Copy TOP now has an option to copy expected output files from source work items, in addition to copying regular files.
-
The
Attribute Copy TOP now has a parameter to explicitly control how name conflicts should be handled.
-
The
Wedge TOP now has an option to trigger parameter callbacks when using the push-style wedge workflow to set target parameter values.
-
The
Partition by Frame TOP now has an option to filter its input work items by their frame value.
-
The
FFmpeg Encode Video TOP can now encode .mov files with the ProRes codec on macOS.
-
ML Train Regression improvements:
-
Now supports user-defined neural network architectures, which can be declared succinctly using a python snippet. This includes support for convolutional layers, useful for training data consisting of images and volumes.
-
Various options to define custom networks for models and custom loss functions.
-
New options to control a model’s optimization and scheduling the training rate.
-
Various logging enhancements for that allow logs to be seen from TOP/PDG. Generate more useful and better formatted training logs. Include important diagnostics about the platform and environment.
-
APIs ¶
-
Added a new pdg.EventType.WorkItemFrame event type, which is emitted when a work item’s frame changes.
-
Exposed the pdg.EventType.WorkItemAddList and pdg.EventType.WorkItemRemoveList batch events, which are more efficient than handling multiple single events when work items are added or remove from a node.
-
Added a new pdg.FrameUtils class, which contains utility methods that operate on lists of pdg.WorkItem representing frames and frame ranges. The pdg.AttributeSplit.batchByFrame method is now deprecated, and has been replaced by the new pdg.FrameUtils.batchByFrame method which has the same signature.
-
The deprecated methods
pdg.AttributePattern.splitByAttribute
,pdg.AttributePattern.splitByFloat
,pdg.AttributePattern.splitByInt
, andpdg.AttributePattern.splitByString
have been removed. Methods with the same signatures can be found on the pdg.AttributeSplit class.
Schedulers ¶
-
Restored the pre-Houdini 20.5 scheduling mode in the
Deadline Scheduler TOP node such that work items are scheduled as tasks by default. There is a new Schedule Work Items as Jobs toggle parameter on the Deadline Scheduler TOP node that can be checked on to schedule work items as separate jobs instead. Scheduling work items as jobs is a workaround to a Deadline race condition that occasionally drops PDG tasks when there is high activity on the farm.
-
Added a new Create Container Job parameter on the HQueue scheduler TOP to control whether the scheduler creates node-level container jobs.
-
Added a parameter to control root job verbosity when using Submit as Job with the Deadline, HQueue and Tractor schedulers.
Tools ¶
-
Added the PDG ML Training Monitor Panel, which can be used to inspect the training progress and plots of the
ML Train Style Transfer TOP and
ML Train Regression TOP .