function
Vision.Matching.RGBDPatchTracking.TrackSet
Public declarations
Explicit source declarations; dimensions, modifications and defaults are shown as written, without evaluation.
| Role | Name | Type | Dimensions / attributes / default | Description |
|---|---|---|---|---|
| input | gray | Real | [:,:] | |
| input | referenceDescriptor | Real | [:,patchSize] | |
| input | seeds | Real | [size(referenceDescriptor,1),pixelDimension] | |
| input | enabled | Boolean | [size(referenceDescriptor,1)] | |
| input | settings | Settings | = Settings() | |
| output | accepted | Boolean | [size(referenceDescriptor,1)] | |
| output | pixels | Real | [size(referenceDescriptor,1),pixelDimension] | |
| output | reasons | Integer | [size(referenceDescriptor,1)] | |
| output | iterations | Integer | [size(referenceDescriptor,1)] | |
| output | ssd | Real | [size(referenceDescriptor,1)] | |
| output | minimumEigenvalue | Real | [size(referenceDescriptor,1)] |
Modelica declarations and implementation
Show parameters, interfaces and source
Parameters, inputs, outputs, defaults and equations from the source file.
function TrackSet
input Real gray[:,:]; input Real referenceDescriptor[:,patchSize];
input Real seeds[size(referenceDescriptor,1),pixelDimension];
input Boolean enabled[size(referenceDescriptor,1)];
input Settings settings = Settings();
output Boolean accepted[size(referenceDescriptor,1)];
output Real pixels[size(referenceDescriptor,1),pixelDimension];
output Integer reasons[size(referenceDescriptor,1)];
output Integer iterations[size(referenceDescriptor,1)];
output Real ssd[size(referenceDescriptor,1)];
output Real minimumEigenvalue[size(referenceDescriptor,1)];
protected
Boolean slotAccepted; Real slotPixel[pixelDimension]; Integer slotReason;
Integer slotIterations; Real slotSsd; Real slotEigenvalue;
algorithm
// Slot identity and sparse enabled mask are retained across the entire extent.
for slot in 1:size(referenceDescriptor,1) loop
(slotAccepted,slotPixel,slotReason,slotIterations,slotSsd,slotEigenvalue)
:= Track(gray,referenceDescriptor[slot,:],seeds[slot,:],enabled[slot],settings);
accepted[slot] := slotAccepted; pixels[slot,:] := slotPixel; reasons[slot] := slotReason;
iterations[slot] := slotIterations; ssd[slot] := slotSsd; minimumEigenvalue[slot] := slotEigenvalue;
end for;
end TrackSet;