XVision Bugs

The following is a list of known bugs for the current release, Version 1.2b. Each bug is followed by the date it was discovered and by the initials of its discoverer. Also, those bugs for which a fix is known (and given here) will be marked FIX AVAILABLE. Fixes already in release 1.2b will be noted FIXED1.2. No further fixes will actually be made to the release until we are ready for version 1.3. [For internal use only: if the fix has been made to version 1.3, it will be marked [FIXED1.3]]

     -Shared memory display under Linux-

When displaying odd-width images, the server seems to drop the first 100 or so pixels causing the image to skew.
(1/27/97 GH).

     -SSD display clearing-

When clearing displayed rectangles for the SSD tracker, the rectangles cleared are not the ones that were drawn last by the SSD algorithm. The effect is that the display shows a trail of rectangles showing all of the previous places the tracker has been. This has been fixed only for the K2T_V300_Color class with a hack that erases the last drawn rectangle. See below for the real fix.
(1/29/97 ZD)

     -Including mpeg_file.h and image_sequence.h in the-
     -site_config.h file-

The #include-ing mpeg_file.h and image_sequence.h in the site_config.h file when other device header files are also #include-d seems to cause some confusion with DEFAULT_COLOR_DECLARATION. This prevents compilation of ColorBlobtest, and anything else that might use DEFAULT_COLOR_DECLARATION.
(1/29/97 KT)

     -(MINOR) Permission settings of XVImage.*-

Should be without execute permission.

     -(MINOR) Permission settings in src/Geometry-

Should all be without execute permission.

     -(MINOR) Permission settings in src/Devices-

Should all be without execute permission.

     -(MINOR) Error message in Video class that says "Must supply-

Would be more helpful if it said, also, "in derived Device class." The fix is obvious.

Actually, this ought to be a pure-virtual function, since the error should occur compile time.

     -K2T_V300_* line drawing hack.-

Since the general line drawing algorithms (in Acquire.* and Drawing.*) are not being used by the K2T_V300_*.* classes, the member functions K2T_V300_*.cc contain their own line drawing code.
(1/27/97 ZD) [FIXED1.2]

However, there are two small errors, for which the fixes are:

Both of these lines,
  • dir = ( (sin(angle) >= 0) ? 1 : 0 );
  • dir = ( (cos(angle) >= 0) ? 1 : 0 );
Should be changed to
  • dir = ( (tan(angle) >= 0) ? 1 : 0 );

     -BasicFeature clear function.-

The clear() function defined in BasicFeature.h should not have the calls to back() and forward(). Remove them.

     -SSD clear function.-

See above. I think the same thing goes for the SSD class.

     -XConsole copy constructor XConsole::XConsole(XConsole& c);-

This constructor does not re-create all of the members of the XConsole class: as a result, when an XConsole created via this constructor gets destoyed (via the destructor), it will delete the information pointed to by pixels . Unfortunately, another XConsole is using that same information, and when that latter console is "destructed," the program will segmentation fault. The copy constructor needs to be rewritten (already done in release 1.3a) to include the appropriate memory allocation for a new pixels pointer, as well as the other pointers in the XConsole class.
(2/24/97 outside source) FIX AVAILABLE. [FIXED 1.3]

     -Matrix class-

Includes #define'd macros NO_BOUNDS_CHECK and CHECKSIZE, which should both be in Matrix.h, especially since Matrix.h differs depending on whether these macros are #define'd.
(3/17/97 ZD) FIX AVAILABLE. [FIXED 1.3]

     -The new SSD class-

Included since version 1.2 incorporates a new brightness and contrast compensation algorithm which works, but which seems to affect regular tracking. This should be rewritten so there is a run-time (or compile time) option that allows users to use SSD without illumination compensation.
(3/15/97 KT)

     -The enumerated constants WOVERLAY and NOOVERLAY-

In ktv_basic.h should be reversed, or specified so that WOVERLAY = 0, and NOOVERLAY = 1. These values are part of a hack that allows the K2T_V300 classes to act differently based on their mask argument. Since the default mask argument in Video.h is 0xff, the default case (NOOVERLAY) should be 1 to allow bit-masked flags. Also, all of the default mask settings in classes derived from Video should be 0xff, for consistency, and because of the way C++ compiles.

     -(MINOR) XConsole getpos function-

Leaves the prompt line drawn on the monitor. Should be easy to fix.
(5/13/97 KT)

     -(MINOR) The color definitions in Tracker.h-

Should be in Video.h . Easy to fix.
(5/14/97 KT)

     -(INDY systems)-

The example program cornertest.cc does not compile, reporting an error similar to

  • >Fatal error in: /usr/lib/DCC/edgcpfe child died due to signal 11.
  • >Fatal error in: /usr/lib/DCC/edgcpfe Signal 11 - core dumped
Apparently including GILine.h causes the problem, since we have tried removing everything from the program, and it comiled if GILine wasn't included. It also core dumps when trying to compile XVision/src/Edges/GILine.cc. All this was done with CC, as specified in the makefiles. On the other hand, using g++ GILine compiled immediately, but cornertest.cc returns a whole bunch of bizarre symbol referencing errors.

The fix for this is to patch the compiler. Details will be posted on this page as they become available.

Back to the XVision home page.
Comments to hager@cs.jhu.edu

     Other Links

     Back to Top