Integrate a Java Algorithm

This guide will show you how to setup your workspace to integrate your own Java motion segmentation algorithm using the Java PLI. It is assumed that you either followed the quickstart guide or you compiled the MSeg Core Module and the Java PLI from source.

Install the Skeleton Project

We will use the mseg generate terminal tool to install a skeleton project.

# Define the base directory where the project directory should be located
$ export $PROJECT_BASE_DIR=~/projects
# Run the generation tool to create the skeleton.
# If your algorithm requires training, add the --train flag
$ mseg generate --java $PROJECT_BASE_DIR ExampleAlgorithm

Compiling the Algorithm

Your project should now look similar to this (If you changed the algorithm name the paths will be slightly altered):

$PROJECT_BASE_DIR/
`--- examplealgorithm
    |--- build/
    |--- lib/
    |--- src/
    |    `--- ExampleAlgorithm.java
    `--- build.xml

To compile the skeleton, we change into the project root folder and run ant:

# Change into the build folder
$ cd $PROJECT_BASE_DIR/examplealgorithm
# Run ant
$ ant

Run the Algorithm

To run the algorithm, both ArmarX and the MSeg core module must be running. You can then start the algorithm like this:

# Change into the build folder
$ cd $PROJECT_BASE_DIR/examplealgorithm/build
# Run the algorithm
$ java -jar examplealgorithm.jar

You should now see an output like this:

user@machine:~/projects/examplealgorithm/build$ java -jar examplealgorithm.jar
Connecting to MSeg core module...
Connection established
ExampleAlgorithm ready

You can stop the algorithm with Ctrl + C at any time.

How to Proceed

You can now start implementing your algorithm. You may also want to get more familiar with the SegmentationAlgorithm API reference, the MSeg GUI and the mseg terminal tool.