Classes and labels
A dataset class is not an Unreal class name. Keeping the two apart is what lets one taxonomy survive a change of assets.
Four separate things#
NameFrame keeps these distinct on purpose:
- The semantic dataset label —
person,forklift. What ends up indata.yamland in your training code. - The selection rule — how actors are matched to that label.
- The actor or source content — the meshes and blueprints that satisfy it.
- The annotation behaviour — what kind of ground truth this class produces.
The payoff: swap the vehicle asset pack and the taxonomy does not move. The label
car still means car; only what satisfies it changed.
Selecting actors#
Selectors used in the shipped example recipes include:
prefix match actors whose name starts with a string
actor_tag match actors carrying a tag
class_name match by Unreal class name
class_path match by full asset path
Prefix and tag are the two worth learning first. A tag is explicit and survives renaming; a prefix is convenient and depends on a naming convention holding.
Class ids are declaration order#
The order classes are declared in is the order their ids follow, and that order is
written into the exported data.yaml. It does not shuffle between runs because a
class happened to appear in a different frame first.
Note that COCO numbers categories from 1 while YOLO numbers classes from 0. The same export writes both; see outputs and formats.
Pose is opt-in, per class#
Keypoint and pose labels should only be enabled for classes whose native skeleton and bone evidence supports them. Enabling pose on a class that has no skeleton does not produce useful keypoints, it produces confidently wrong ones.
Objects that usually should not carry pose labels:
vehicles
props
food
tools
most animals
Identity can be withheld deliberately#
Some actors are meant to be in the picture but not in the labels: scenery, distractors, things that belong in the scene visually and would be noise as annotations.
Those render normally and carry no identity, so they never become instances. The report
counts them separately as identity_withheld, which is what lets you tell a
deliberate omission from a labelling bug.
Next#
The scene authoring tutorial walks through doing this in a real level. Quality explains what the verifier checks about the labels afterwards.