|
79 | 79 | // video/x-raw, fourcc:'Y800' -> 8bit, 1 channel
|
80 | 80 | // video/x-raw, fourcc:'Y12 ' -> 12bit, 1 channel
|
81 | 81 | // video/x-raw, fourcc:'Y16 ' -> 16bit, 1 channel
|
| 82 | +// video/x-raw, fourcc:'GRBG' -> 8bit, 1 channel |
82 | 83 | //
|
83 | 84 |
|
84 | 85 | #define MODE_GREY CV_FOURCC_MACRO('G','R','E','Y')
|
85 | 86 | #define MODE_Y800 CV_FOURCC_MACRO('Y','8','0','0')
|
86 | 87 | #define MODE_Y12 CV_FOURCC_MACRO('Y','1','2',' ')
|
87 | 88 | #define MODE_Y16 CV_FOURCC_MACRO('Y','1','6',' ')
|
| 89 | +#define MODE_GRBG CV_FOURCC_MACRO('G','R','B','G') |
88 | 90 |
|
89 | 91 | #define CLIP(a,b,c) (cv::max(cv::min((a),(c)),(b)))
|
90 | 92 |
|
@@ -315,6 +317,7 @@ IplImage* CvCaptureCAM_Aravis::retrieveFrame(int)
|
315 | 317 | int depth = 0, channels = 0;
|
316 | 318 | switch(pixelFormat) {
|
317 | 319 | case ARV_PIXEL_FORMAT_MONO_8:
|
| 320 | + case ARV_PIXEL_FORMAT_BAYER_GR_8: |
318 | 321 | depth = IPL_DEPTH_8U;
|
319 | 322 | channels = 1;
|
320 | 323 | break;
|
@@ -475,6 +478,8 @@ double CvCaptureCAM_Aravis::getProperty( int property_id ) const
|
475 | 478 | return MODE_Y12;
|
476 | 479 | case ARV_PIXEL_FORMAT_MONO_16:
|
477 | 480 | return MODE_Y16;
|
| 481 | + case ARV_PIXEL_FORMAT_BAYER_GR_8: |
| 482 | + return MODE_GRBG; |
478 | 483 | }
|
479 | 484 | }
|
480 | 485 | break;
|
@@ -547,6 +552,10 @@ bool CvCaptureCAM_Aravis::setProperty( int property_id, double value )
|
547 | 552 | newFormat = ARV_PIXEL_FORMAT_MONO_16;
|
548 | 553 | targetGrey = 32768;
|
549 | 554 | break;
|
| 555 | + case MODE_GRBG: |
| 556 | + newFormat = ARV_PIXEL_FORMAT_BAYER_GR_8; |
| 557 | + targetGrey = 128; |
| 558 | + break; |
550 | 559 | }
|
551 | 560 | if(newFormat != pixelFormat) {
|
552 | 561 | stopCapture();
|
|
0 commit comments