Add arrows

Adds an overlay to the specified input image with each object represented by an arrow.

Description

Adds an overlay to the specified input image with each object represented by an arrow. The size, colour and orientation of each arrow can be fixed or based on a measurement value.

Parameters

ParameterDescription
Colour modeMethod for assigning colour of each object:
  • "Child count" Colour is determined by the number of children each object has. Colour range runs across the first half of the visible spectrum (i.e. red to cyan) and is maximised, so the object with the fewest children is shown in red and the object with the most, in cyan. Objects without any children are always shown in red. Child objects used for counting are selected with the "Child objects for colour" parameter.
  • "ID" Colour is quasi-randomly selected based on the ID number of the object. The colour used for a specific ID number will always be the same and is calculated using the equation hue = (ID * 1048576 % 255) / 255.
  • "Measurement value" Colour is determined by a measurement value. Colour range runs across the first half of the visible spectrum (i.e. red to cyan) and is maximised, so the object with the smallest measurement is shown in red and the object with the largest, in cyan. Objects missing the relevant measurement are always shown in red. The measurement value is selected with the "Measurement for colour" parameter.
  • "Parent ID" Colour is quasi-randomly selected based on the ID number of a parent of this object. The colour used for a specific ID number will always be the same and is calculated using the equation hue = (ID * 1048576 % 255) / 255. The parent object is selected with the "Parent object for colour" parameter.
  • "Parent measurement value" Colour is determined by a measurement value of a parent of this object. Colour range runs across the first half of the visible spectrum (i.e. red to cyan) and is maximised, so the object with the smallest measurement is shown in red and the object with the largest, in cyan. Objects either missing the relevant measurement or without the relevant parent are always shown in red. The parent object is selected with the "Parent object for colour" parameter and the measurement value is selected with the "Measurement for colour" parameter.
  • "Partner count" Colour is determined by the number of partners each object has. Colour range runs across the first half of the visible spectrum (i.e. red to cyan) and is maximised, so the object with the fewest partners is shown in red and the object with the most, in cyan. Objects without any partners are always shown in red. Partner objects used for counting are selected with the "Partner objects for colour" parameter.
  • "Random colour" Colour is randomly selected for each object. Unlike the "ID" option, the colours generated here will be different for each evaluation of the module.
  • "Single colour" (default option) Colour is fixed to one of a predetermined list of colours. All objects will be assigned the same overlay colour. The colour is chosen using the "Single colour" parameter.
Colour mapColourmap used for colour gradients. This parameter is used if "Colour mode" is set to any mode which yields a range of colours (e.g. measurements or IDs). Choices are: Black fire, Ice, Jet, Physics, Random, Random (vibrant), Spectrum, Thermal.
Single colourColour for all object overlays to be rendered using. This parameter is used if "Colour mode" is set to "Single colour". Choices are: White, Black, Red, Orange, Yellow, Green, Cyan, Blue, Violet, Magenta.
Child objects for colourObject collection used to determine the colour based on number of children per object when "Colour mode" is set to "Child count". These objects will be children of the input objects.
Measurement for colourMeasurement used to determine the colour when "Colour mode" is set to either "Measurement value" or "Parent measurement value".
Parent object for colourObject collection used to determine the colour based on either the ID or measurement value of a parent object when "Colour mode" is set to either "Parent ID" or "Parent measurement value". These objects will be parents of the input objects.
Partner objects for colourObject collection used to determine the colour based on number of partners per object when "Colour mode" is set to "Partner count". These objects will be partners of the input objects.
Opacity (%)Opacity of the overlay to be rendered. This is a value between 0 (totally transparent) and 100 (totally opaque).
Range minimum modeControls whether the minimum range for displayed colours is set automatically to the minimum available value (e.g. the smallest measurement being rendered), or whether it is defined manually by the "Minimum value" parameter.
Minimum valueWhen "Range minimum mode" is set to "Manual", this is the minimum value that will be displayed as a unique colour. All values smaller than this will be displayed with the same colour.
Range maximum modeControls whether the maximum range for displayed colours is set automatically to the maximum available value (e.g. the largest measurement being rendered), or whether it is defined manually by the "Maximum value" parameter.
Maximum valueWhen "Range maximum mode" is set to "Manual", this is the maximum value that will be displayed as a unique colour. All values larger than this will be displayed with the same colour.
Input imageImage onto which overlay will be rendered. Input image will only be updated if "Apply to input image" is enabled, otherwise the image containing the overlay will be stored as a new image with name specified by "Output image".
Input objectsObjects to represent as overlays.
Apply to input imageDetermines if the modifications made to the input image (added overlay elements) will be applied to that image or directed to a new image. When selected, the input image will be updated.
Add output image to workspaceIf the modifications (overlay) aren't being applied directly to the input image, this control will determine if a separate image containing the overlay should be saved to the workspace.
Output imageThe name of the new image to be saved to the workspace (if not applying the changes directly to the input image).
Arrow orientation modeSource for arrow orientation values:
  • "Measurement" Orientation of arrows will be based on the measurement specified by the parameter "Measurement for orientation" for each object.
  • "Parent measurement" Orientation of arrows will be based on the measurement specified by the parameter "Measurement for orientation" taken from a parent of each object. The parent object providing this measurement is specified by the parameter "Parent object for orientation".
Parent object for orientationParent objects providing the measurements on which the orientation of the arrows are based.
Measurement for orientationMeasurement that defines the orientation of each arrow. Measurements should be supplied in degree units.
Arrow length modeMethod for determining the length of arrows:
  • "Fixed value" All arrows are the same length. Length is controlled by the "Length value (px)" parameter.
  • "Measurement" Arrow length is proportional to the measurement value specified by the "Measurement for length" parameter. Absolute arrow lengths are adjusted by the "Arrow length scale" multiplication factor.
  • "Parent measurement" Arrow length is proportional to a parent object measurement value. The parent is specified by the "Parent object for length" parameter and the measurement value by "Measurement for length". Absolute arrow lengths are adjusted by the "Arrow length scale" multiplication factor.
Length value (px)Fixed value specifying the length of all arrows in pixel units.
Parent object for lengthParent objects from which the arrow length measurements will be taken.
Measurement for lengthMeasurement value that will be used to control the arrow length. This value is adjusted using the "Arrow length scale" muliplication factor.
Arrow length scaleMeasurement values will be multiplied by this value prior to being used to control the arrow length. Each arrow will be MeasurementValue*LengthScale pixels long.
Head sizeSize of the arrow head. This should be an integer between 0 and 30, where 0 is the smallest possible head and 30 is the largest.
Line widthWidth of the rendered lines. Specified in pixel units.
Render in all framesDisplay overlay elements in all frames, irrespective of whether each object is present in that frame.
Enable multithreadingProcess multiple overlay elements simultaneously. This can provide a speed improvement when working on a computer with a multi-core CPU.