BallFollowingDemo
You need to use two Cortex computers for this demo. We will use Cortex1 and Cortex2 in the wiki. The CPU's of Cortex2 will be fully loaded running the tracker, while those of Cortex1 will have a ~60% load. This demo uses the left eye of the iCub, it needs it to run at a resolution of 320x240.
0 - Turn on the iCub: cameras, iCubInterface, etc.
1 - Run the image rectifier.
as demo@cortex1: cd 0.icub_3D_ball_tracker ./0.LEFT_320x240_image_rectifier.sh
2 - Set the color parameters of the left camera and run the tracker.
as demo@cortex2: cd 0.icub_3D_ball_tracker ./1.LEFT320x240.iCub_set_parameters_of_framegrabber_REALISTIC.sh ./2.execute_the_tracker.sh
3 - Run a viewer. When the likelihood is high, the contour is red, otherwise it's green.
on the computer you're using for visualization (e.g. chico2): yarpview /viewer
4 - Run the module that converts coordinates between reference frames (left eye to root).
as demo@cortex1: cd 0.icub_3D_ball_tracker ./4.execute_LeftEyeToRoot.sh
5 - Run the module that computes the inverse kinematics for the arm.
as demo@cortex1: cd iCub/bin ./iKinArmCtrl --onlyXYZ
6 - Connect all ports. CAREFUL: the robot should start moving after this step.
as demo@cortex1: cd 0.icub_3D_ball_tracker ./3.LEFT.iCub_connect_ports.sh ./5.connect_LeftEyeToRoot.sh
6 - OPTIONAL - Read the 3D position of the ball in the root reference frame
as anybody@anywhere yarp read ... /LeftEyeToRoot/ballPositionOut