MarkerDetection

Chair for Computer Aided Medical Procedures & Augmented Reality
Lehrstuhl für Informatikanwendungen in der Medizin & Augmented Reality

-- FelixLoew - 13 Jan 2004

MarkerDetection

The MarkerDetection uses the ARToolkit functionality of detecting markers in a single video frame. Therefore it has to be configured with a current set of markers as a first step. This is done by the MarkerConfiguration, it is responsible for the current configuration. Then it gets video frame out of the shared memory block by the VideoGrabber and looks for markers (that have been configured before) in it. If a marker has been detected an event is sent to the StateMachine. The StateMachine triggers a context change and the MarkerDetection gets configured according to the new context. Please have a look at my thesis, theres a sequences diagram showing the certain temporary dependencies between these services.

Needs & Abilities

As stated in the MarkerDetection.xml file, the service has the following Needs and Abilities.
  • Ability: pushPatternString type="PatternData"
This ability allows that a connection service is able to supply pattern data for the MarkerDetection. As I have mentioned the MarkerDetection has to be configured first. This is done by the MarkerConfiguration.

  • Ability: detectMarker type="MarkerID"
Any service connected to this ability receives an event when a marker has been detected.

  • Need: readHeadCameraData type="CameraData"
Of course a video frame is needed to look after markers. The service gets the image via shared memory provided by the VideoGrabber.

Interaction with other Services

The video frame is provided by the VideoGrabber via shared memory. The configuration with a set of current markers is done by the MarkerConfiguration. If a marker has been detected an event is sent to the StateMachine.

More Documentation

How-To

Usage

Start the MarkerDetection. You will see if it connects to the VideoGrabber.

Example: MarkerDetection

Attention: Note that the MarkerDetection has to be configured first. In order not to have a complex set up just alter the sources code and load markers form a certain file.

Testing

Start the VideoGrabber, alter the MarkerDetection that it is configured first. Then try to detect markers with a camera. You will see if the marker has been detected.

-- FelixLoew - 11 Dec 2003


Edit | Attach | Refresh | Diffs | More | Revision r1.5 - 15 Jul 2005 - 13:11 - MarcusToennis

Lehrstuhl für Computer Aided Medical Procedures & Augmented Reality    rss.gif