Download .robo file
Note that the order of the modules is relevant. If the Blob_Size module is moved above the RGB_Filter module the resulting
image will not be correct as the initial image has thousands of colors that define individual pixels as apposed to connected blobs. You can
explore these configurations by clicking on the
icon which will launch RoboRealm and allow you to change the configuration to see the effects.
If you want to see the actual image without any modules changing the image untoggle the Run button in the upper right corner which
will stop all modules from running and just show the image being captured from the imaging device.
You can continue exploring other robofile configurations by clicking on the "+Examples" branch in the Content tree view and double
clicking on one of the example configurations. Ensure that you have a webcam on to see how the modules can change the
image in realtime.
Working with modules
Most modules have an associated user interface that will popup once inserted into the pipeline. Changing values in those interfaces will immediately
be reflected in the processed image. You can experiment around with changing the values to view what changes do what to the current image. In this
way you can better understand what change in a value causes what change in the image.
You can move the modules using the right side yellow move buttons. Note that most modules will react differently depending on where they are placed
in the pipeline as the current image entering into that module will also be different.
Selecting a module will display the processing to that point in the pipeline. Using this technique you can understand what module is doing what to
an image. Selecting the module again will deselect the module and show the entire processing of the pipeline.
You can zoom into the image by selecting the zoom dropdown at the top of the main interface. When zoomed in you can click on the current image and drag
the image to move it to another area as you would Google maps.
The Save and Open buttons allow you to save and load processing pipelines also know as RoboFiles. The
same buttons serve to load and save images. You indicate which data you want to load and save by
specifying an extension i.e. .robo for robofiles and .gif, .jpg, etc. for images.
The Camera button switches the webcam on and off. The Snap button will save the current image being viewed into
a second window that can be further zoomed in or saved. This provides you a way to quickly snap an image for a more
in depth viewing in case the camera image is changing rapidly.
The New button removes all modules from within the pipeline and starts with a fresh empty configuration.
The Disable button will cause a specific module to be skipped for processing but remain in the pipeline. This is very
useful if you are experimenting with several modules that create similar results but you are not sure which one to use and
are comparing results.
Disabling a module simply prevents it from changing or reacting to an image. Note that disabled modules are also
saved as disabled in robofiles so be careful not to leave unintended modules disabled when saving.
The Delete button will remove the currently selected module from the processing pipeline.
The Edit button will cause a module's editable GUI to appear. This is the same action as double clicking
on a module within the pipeline. Note that not all modules have an editable interface. For example the
Negative module which inverts the current image does not have any parameters
to edit and thus does not have an editable interface.
The Comment button allows you to associate a line of text with the currently selected module to aid in
annotating the intended purpose of the module. Note that this can be used in conjunction with the
Comment module which allows for longer annotations to be added into the pipeline.
Processing Pipeline
The processing pipeline displays all the modules currently active within RoboRealm. To view the
original image without any processing unpress the Run button. When the Run button is activated the
source image is captured, fed through each of the modules and then displayed. Once this has been
accomplished the next image is captured and the process repeated. The processing pipeline can be
thought of as filters within a infinite loop of capturing and processing frames. Note that
as more and more modules are added this loop can slow down as shown by the FPS (Frames Per Second)
rate in the interface status bar.
Images
During the processing of images several new images can be created and kept in memory using the
Marker module. These saved images as well as other connected webcams
can be accessed in certain modules (like the Marker) to restore the current image to previously saved
images. In this way images can be moved into and out of the processing pipeline and saved for
further processing. If you want to process more than one image at a time you can first process one image
and then use the marker module to switch to another camera to process that image.
Variables
As modules are added into the processing pipeline several RoboRealm variables are added into the
variable table as needed. These variables are data units that are accessible from other modules
and function as an information pipeline between modules or your custom scripts. See the Variables
section of each module documentation page to see what variables are added by the module.
All variables currently within RoboRealm can be viewed using the Watch Variable module. Note that
the placement of this module will reflect all variable values to that point. Thus the position of
the Watch module may cause some variables to differ in values.
Several default variables are added once the pipeline begins execution.
CAMERA_NAME - the name of the usb/VFW/DirectX camera that you are currently connected to
CAMERA_PATH - the usb device path of the camera that you are currently connected to
IMAGE_PATH - the current path/name of the currently loaded image (assumes webcam is not active)
IMAGE_FILENAME - the current image filename loaded
IMAGE_COUNT - the captured image count or number of frames before being processed
IMAGE_WIDTH - the current image width (note some modules like Scale will change this)
IMAGE_HEIGHT - the current height of the image
IMAGE_PROCESSED - the captured image count or number of frames after being processed
IMAGE_TIME - the time that the image was captured
FPS - the current Frames Per Second being processed
POWER_DEVICE - either "AC" or "BATTERY" which indicates if your laptop is on AC or Battery
power
POWER_CHARGE - either "HIGH", "LOW", "CRITICAL", or "CHARGING"
POWER_LIFE_PERCENT - 0 to 100 value that indicates how charged your battery is
POWER_LIFE_TIME - estimated number of seconds of battery life left
PROCESS_TIME - number of milliseconds the last image frame took to be
processed (in increments of 16 milliseconds).
MOUSE_CLICK - "1" if the mouse is clicked otherwise "0"
MOUSE_CLICK_X - the X coordinate of where the user mouse last clicked on main image preview
MOUSE_CLICK_Y - the Y coordinate of where the user mouse last clicked on main image preview
MOUSE_CLICK_TIME - the time (seconds) of the last user click