Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
VideoSource_DCAM_BumbleBee.hh
1 /*
2 This file is part of the BIAS library (Basic ImageAlgorithmS).
3 
4 Copyright (C) 2003-2009 (see file CONTACT for details)
5  Multimediale Systeme der Informationsverarbeitung
6  Institut fuer Informatik
7  Christian-Albrechts-Universitaet Kiel
8 
9 
10 BIAS is free software; you can redistribute it and/or modify
11 it under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation; either version 2.1 of the License, or
13 (at your option) any later version.
14 
15 BIAS is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU Lesser General Public License for more details.
19 
20 You should have received a copy of the GNU Lesser General Public License
21 along with BIAS; if not, write to the Free Software
22 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 */
24 
25 #ifndef __BIASVIDEOSOURCE_DCAM_BUMBLEBEE_HH__
26 #define __BIASVIDEOSOURCE_DCAM_BUMBLEBEE_HH__
27 
28 #include <VideoSource/VideoSource_Base.hh>
29 #include <VideoSource/VideoSource_DCAM.hh>
30 
31 namespace BIAS {
32 
33 /**
34  \class VideoSource_DCAM_BUMBLEBEE
35  \ingroup g_videosource
36  \author djung 08, fkellner 11
37  \brief VideoSource PtGrey Bumblebee cameras
38  */
39  class BIASVideoSource_EXPORT VideoSource_DCAM_BumbleBee : public VideoSource_DCAM{
40 
41 
42  public:
43  VideoSource_DCAM_BumbleBee(int Card = 0);
44 
45  /**
46  * @brief Set camera to stereo/tri mode. Call this before OpenDevice(). Else only one camera image is grabbed
47  * @author fkellner
48  */
49  int SetStereoDefaultMode(CameraInfo *camInfo = NULL);
50 
51  /**
52  * @brief Init image according to bumblebee type and stereo mode setting
53  * @author fkellner
54  */
55  virtual int InitImage(BIAS::ImageBase &Image);
56 
57  /**
58  * @brief Init single image according to bumblebee type (used for demultiplexing)
59  * @author fkellner
60  */
61  virtual int InitSingleImage(BIAS::ImageBase &Image);
62 
63  /**
64  * @brief Get number of images for this bumblebee (returns 2 for xb2, 3 for xb3)
65  * @author fkellner
66  */
67  virtual int GetNumImages();
68 
69  /**
70  @brief Grab single images. Calls 2 image version if xb2 cam is used.
71  @author Daniel Jung 08, fkellner 11
72  */
73  virtual int GrabSingle(BIAS::Camera <unsigned char> &allImages,
75  BIAS::Camera <unsigned char> &imageMiddle,
77  );
78 
79  /**
80  @brief Grab single images. Preferred method for xb2. XB2 ONLY!
81  @author fkellner
82  **/
83  virtual int GrabSingle(BIAS::Camera <unsigned char> &allImages,
86  );
87 
88  /**
89  @brief Grab single for grey value images for left and right cam. XB3 ONLY!
90  !!!Images have to initialized with 640x480-gray!!!
91  @author apetersen
92  **/
93  int GrabSingleLRGrey(BIAS::Camera <unsigned char> &allImages,
95  BIAS::Camera <unsigned char> &imageRight);
96 
97  /**
98  @brief XB3 ONLY! Grab single images as RGB. No interpolation on bayer pattern. 50% of green values are dropped. Left, middle and right images HAVE to be 640x480, 3 channels, interleaved, color model RGB and unsigned char or must be omitted (pass empty image)!
99  @author Daniel Jung
100  @date 08/2008
101  **/
102  virtual int GrabSingleAsSmallRGB(BIAS::Camera <unsigned char> &allImages,
103  BIAS::Camera <unsigned char> &imageLeft,
104  BIAS::Camera <unsigned char> &imageMiddle,
105  BIAS::Camera <unsigned char> &imageRight);
106 
107  private:
108  bool stereo_;
109  };
110 
111 
112 } // namespace BIAS
113 
114 #endif // __MIPVIDEOSOURCE_DCAM_BUMBLEBEE_HH__
Stores camera information such as model, vendor, framerates.
This class VideoSource_DCAM implements access to IEEE1394 (Firewire, iLink) cameras following the DCa...
The image template class for specific storage types.
Definition: Image.hh:78
This is the base class for images in BIAS.
Definition: ImageBase.hh:102