MCT 0.1 documentation

2. The mct command line utility

«  1. Preparing a computer   ::   Contents   ::   3. Random Synchronization Signal  »

2. The mct command line utility

The mct utility is a command line function which forms the basis for administering and running for the MCT system. This function is typically run from a shell on the master computer and includes commands for waking/shutting down the slave computers, starting and stopping the various applications which make up the MCT system - such as camera assignment, calibration, tracking_2d, etc.

The mct utility is called as follows:

mct [comand]

where is command is one of the mct commands listed below.

2.1. Help

help
Prints and abbreviated list of the commands most commonly used commands along with a short description of each.
list_all
Prints a comprehensive list of the commands available along with the brier description of each.

2.2. Basic administration

wakeup
Wakes up (powers up) the slave computers listed in the machine_def.yaml file in the current mct configuration. Note, slave computers must support wake-on-lan.
shutdown
Shuts down (powers down) the slave computers listed in the machine_def.yaml file in the current mct configuration.
update_machine_def
Updates the mct machine definition baseed on the values in the machine_def.yaml file in the current mct configuration. Note, this function should be run anytime the machine_def.yaml file is changed. Running this function will re generate ROS’s xml machine definition file (mct.machine).

2.3. Calibration (in order of application)

camera_assignment
Starts the camera assignment application. This application is a used to assign unique numeric identifiers to each camera in the system. Further documentation for this application can be found here. TO DO
zoom_calibration
Starts the camera zoom adjustment application. This application provides a preview window of each camera and enables the user to adjust the camera zoom setting prior preforming camera calibration. Further documentation for this application can be found here. TO DO
camera_calibration
Starts the camera calibration application. The purpose of this application is to generate the basic calibration for each individual camera which is part of a tracking region in MCT system. As part of the procedure used by this application the user presents a calibration chessboard to each camera until sufficient data has been collected to calculate the calibration parameters for that camera. Further documentation for this application can be found here. TO DO
homography_calibration
Starts the homography calibration application. The purpose of this application is generate the basic mapping (homography) from the camera image plane to the tracking plane. As part of the procedure for this application, for each camera, the user will place the active calibration target in the tracking plane and in view of the camera. The user will the initiate a calibration sequence which causes the IR LEDs on the active target to light in sequence. The software will attempt to find the LEDs and use this information to generate the homography between the camera image plane and the tracking plane. Further documentation for this application can be found here. TO DO
transform_2d_calibration
Starts the 2d transform calibration application. The purpose of this application is to generate the transformations between all user specified camera pairs in each tracking region. Note, in order to run this application, is it assumed that for each tracking region the user has specified a list of camera pairs such that the resulting graph - where the cameras in the region are nodes and each pair in the list is an edge - forms a spanning tree for the region. As part of the procedure for this application, for each camera pair, the user will place the active calibration target in the tracking plane and in the overlapping view of the current camera pair. The user then initiates a calibration procedure for that camera pair which causes the LEDs on the active target to light in sequence. The software will attempt to locate the LEDs in both camera views in order to find point correspondences. If sufficient data is collected during the procedure the 2d transformation for the camera pair will be calculated. This action must be performed for all camera pairs. Further documentation for this application can be found here. TO DO

2.4. Tracking

tracking_2d
Starts the tracking_2d application - this is the main 2D tracking application. Documentation for the this application can be found here. TO DO

2.5. Advanced administration

push_setup
Pushes the current mct setup to slave computers.
list_slaves
Prints a list of the slaves computers.
rospack_profile
Runs ‘rospack profile’ on all slave computers. This is required by ROS whenever a new ROS package is added to the MCT system.
pull
Pulls the latest version of MCT from bitbucket to slave computers.
pull_master
Pulls the lastest version of MCT from bitbucket to the mct master.
pull_all
Pulls the latest version of MCT from bitbucket to all computers in current machine - slaves + master.,
pull_from_master
Pulls the latest version of the MCT from the local repository on the master to the slaves
clone
Clones a new version of MCT from the repository of slave computers.
clean
Removes an old version of MCT.
rosmake
Runs rosmake in order to to build MCT on the slave computers. This is required when certain changes have been made to an existing ROS package or when a new package has been added.
rosmake_preclean
Runs preclean followed by rosmake in order to build MCT on slave. This is required when certain changes have been made to an existing ROS package or when a new package has been added. computers.
list_machine_def
Prints the contents of the current MCT machine definition.
list_cameras
Finds all cameras currently connected to the MCT master and slave computers and prints the camera information in a list.
list_camera_assignment
Prints a list of the current camera assignment.
rsync_camera_calibrations
Uses rsync to synchronize the camera calibrations on the slave computers with that on the MCT master.
clean_camera_calibrations
Cleans (deletes) the current camera calibrations on the slave computers. TO DO: on the master too??
show_camera_info
Launches camera_info viewers. Basically this runs ‘rostopic echo’ for each camera_info topic.
show_camera_info_header
Launches camera_info/header viewers. Basically this runs ‘rostopic echo’ for each camera_info/header topic.
show_camera_info_header_seq
Launches camera_info/header/seq viewers. Basically this runs ‘rostopic echo’ for eacht cmaera_info/header/seq_veiwer topic.
show_corrector_seq
Launches seq_and_image_corr/seq viewers. Basically this runs ‘rostopic echo’ for each seq_and_image_corr/seq topic.

2.6. Testing

frame_drop_test
Starts the IR LED frame drop test application. TO DO: add more details.
frames_dropped
Prints a report of the frames dropped so far. TO DO: add more details.
frames_dropped_no_seq
Prints a report of the frames dropped no seq lists. TO DO: add more details

«  1. Preparing a computer   ::   Contents   ::   3. Random Synchronization Signal  »