ViSP
 All Classes Functions Variables Enumerations Enumerator Friends Groups Pages
tutorial-blob-tracker.cpp
1 
4 #include <visp/vp1394CMUGrabber.h>
5 #include <visp/vp1394TwoGrabber.h>
6 #include <visp/vpDisplayGDI.h>
7 #include <visp/vpDisplayX.h>
8 #include <visp/vpDot2.h>
9 
10 int main()
11 {
12 #if (defined(VISP_HAVE_DC1394_2) || defined(VISP_HAVE_CMU1394))
13  vpImage<unsigned char> I; // Create a gray level image container
14 
15 #if defined(VISP_HAVE_DC1394_2)
16  vp1394TwoGrabber g(false);
17 #elif defined(VISP_HAVE_CMU1394)
19 #endif
20  g.open(I);
21  g.acquire(I);
22 
23 #if defined(VISP_HAVE_X11)
24  vpDisplayX d(I, 0, 0, "Camera view");
25 #elif defined(VISP_HAVE_GDI)
26  vpDisplayGDI d(I, 0, 0, "Camera view");
27 #else
28  std::cout << "No image viewer is available..." << std::endl;
29 #endif
32 
33  vpDot2 blob;
34  blob.setGraphics(true);
35  blob.setGraphicsThickness(2);
36  blob.initTracking(I);
37 
38  while(1) {
39  g.acquire(I); // Acquire an image
41  blob.track(I);
43  if (vpDisplay::getClick(I, false))
44  break;
45  }
46 #endif
47 }