next up previous contents
Next: The Gandalf line detector Up: Feature detection Previous: Line segment detection   Contents

Displaying a line map

      #include <gandalf/vision/line_disp.h>
There are functions to display both whole line maps and individual lines, the latter being used, for instance, to highlight lines in a different colour. The functions invoke OpenGL routines, and the OpenGL display window must be set up beforehand. Also you will need to set up some colours as single precision floating point RGB pixel structures. We can use the colour structures set up for the edge detector in Section 5.7.3. Then an example call to display an line map is
      /* display a whole line map using OpenGL */
      gan_line_feature_map_display ( &LineMap,
                                     NULL, /* affine transformation of coordinates */
                                     &green, /* line colour */
                                     &blue, /* colour of start of line */
                                     &yellow, /* colour of end of line */
                                     &blue, /* colour to display points */
                                     &green ); /* colour of bounding box */
The second argument is an affine transformation of coordinates that allows additional freedom in positioning and scaling the line map on the display window.vision_test.c has some example code using this routine.

To highlight a single line, use instead

      Gan_LineFeature *pLine;

      /* ... set pLine to point to a Gan_LineFeature structure ... */

      /* display a single line using OpenGL */
      gan_line_feature_display ( pLine,
                                 NULL, /* affine transformation of coordinates */
                                 &yellow, /* colour to highlight line */
                                 &yellow, /* colour of start of line */
                                 &yellow, /* colour of end of line */
                                 &blue ); /* colour to display points */
Note that the NULL passed for the affine coordinate transformation indicates an identity transformation.



2006-03-17