LabCourseWS04Minutes0912

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

THIS WEBPAGE IS DEPRECATED - please visit our new website

Attendants: Marco Feuerstein, Petar Banov, Sukhbansbir Kaur, Tobias Lasser

Minute Taker: Tobias Lasser

Organizational

  • Next meeting: Thursday, 16 December 2004, 11am

Topics

  • Marco told us to switch to another CVS version of CAMPAR, called module "src" (all other parameters are the same).
    Attention: this is the CVS directory on which all people of the chair are working on, i.e. we are allowed to do commits ONLY after talking with Marco about it!

  • Discussion about the PointingDevice class and how to implement it.

  • After the meeting: Petar and Tobias implemented a preliminary working version of the PointingDevice and corresponding XML file. Petar will mail around the current version of these files to all. Some notes on the implementation:
    • to actually use the PointingDevice in CAMPAR you need to add PointingDevice to Doc.cpp and use the correct XML file.
    • PointingDevice is derived of OpenGLDevice - which is not making much sense, we don't want to output graphics. Marco will look for a way to get around that necessity.
    • the XML file (read on initialization in xmlConfigure) should have an entry like the following:
              <Device type="PointingDevice">
                      <ID>Point</ID>
                      <TrackerDevice>ART</TrackerDevice>
                      <ProbeID>Strange</ProbeID>
              </Device>
    • in stateUpdate() we are currently reading the tracking data and pushing it in two vectors (positions and rotations). Every 100 entries (not the most sensible thing) we do the calculation (via doCalculation() ) and call doOutput() to display results on cout. We need a way to reset the vectors (e.g. when pressing a key to start the calibration process), else the results will be trash.
    • the calculation is a straightforward implementation of the one done by Tobias using TNT/Jama (see calib.m and calib.cpp on the main praktikum page) - note: the TNT library needs to be updated to 1.2.4 to work correctly.

  • Tobias: I will be in Englang next week, you can contact me anytime via email.

  • update: the class is now called HotSpotCalibration and derived directly from OutputDevice. It is already checked in to CVS.

Action Items

  • add a useful output (to a file or XML file) to PointingDevice.
  • add a possibility of a button/keypress to start the calculations (and clearing the buffer of tracking data), else the results will be crap.
  • add a more intelligent way of starting/repeating calculations based on how accurate the results are.
  • rework the calculation of the residual error (I think it's not quite correct right now - Tobias).
  • derive PointingDevice from another base class (Marco) - done.
  • create a nice calibration application, preferably with GUI, to calibrate several points (far goal).


-- TobiasLasser - 09 Dec 2004


Edit | Attach | Refresh | Diffs | More | Revision r1.2 - 12 Dec 2004 - 13:41 - TobiasLasser