Draw Result On Image

This function block overlays a textual result on an input image based on a boolean condition. It is useful for annotating pass/fail states, status messages, or any binary result directly onto the image before further processing or display.

πŸ“₯ Inputs (sockets)

Image (Input socket) The image that will receive the overlaid text. Condition (Input socket) A boolean value that determines which text and color will be drawn. Success Condition Text (Input socket) Text to display when the condition is true. Fail Condition Text (Input socket) Text to display when the condition is false.

πŸ“€ Outputs (sockets)

Image (Output socket) The resulting image with the overlaid text.

πŸ•ΉοΈ Controls

Font Scale Adjusts the relative font size of the overlaid text to fit different image resolutions. Horizontal Position Moves the text left/right using a simple 0..10 scale for quick placement. Vertical Position Moves the text up/down using a simple 0..10 scale for quick placement.

🎨 Features

  • Visual pass/fail feedback: when the Condition is true the block draws the Success Condition Text in green; otherwise it draws the Fail Condition Text in blue.

  • Resolution-aware sizing: font sizing adapts to image dimensions so text remains readable on different resolutions.

  • Quick placement: horizontal and vertical sliders provide fast, UI-friendly positioning without manual coordinates.

πŸ“ Usage Instructions

  1. Provide an image to the Image socket.

  2. Feed a boolean signal into the Condition socket to indicate success or failure. You can produce this signal using logic blocks such as Logic Input, Equals, And, or Greater.

  3. Optionally provide custom strings to Success Condition Text and Fail Condition Text to control the displayed messages.

  4. Adjust Font Scale, Horizontal Position, and Vertical Position controls until the text is placed and sized as desired.

  5. Use the output Image to continue processing, display with the Show Image block, or save with Image Write / Image Logger.

πŸ“Š Evaluation

When evaluated, the block copies the input image, chooses which text to draw based on the Condition socket, renders the text using the selected font scale and position settings, and returns the annotated image through the Image output socket.

πŸ’‘ Tips and Tricks

  • Combine with detection blocks such as Object Detection, Object Detection - Custom, or Mask Detection to show per-frame OK/NOK results (for example, show "OK" when an object is detected or "Fail" when not).

  • Use Draw Detections in tandem to display bounding boxes and then use this block to add an overall pass/fail label.

  • Use Image ROI or Image ROI Select before this block to crop to a region of interest and place text relative to that region.

  • If you want to log or save annotated frames, connect the output to Image Logger, Image Write, or Record Video.

  • Build complex conditions with logic blocks like And, Or, Not, or comparisons (Greater, Equals) and feed the final boolean into the Condition socket.

πŸ› οΈ Troubleshooting

  • No text appears: ensure the Success Condition Text or Fail Condition Text sockets are set (they can be left empty but then nothing will draw).

  • Text placement off-image: adjust Horizontal Position and Vertical Position sliders; increase or decrease Font Scale for better fit on large or small images.

  • Text too small or too large: tweak Font Scale and preview results with the Show Image block to find the right balance.

Last updated

Was this helpful?