mirror of
https://github.com/opencv/opencv.git
synced 2025-08-06 06:26:29 +08:00
Aravis: support Bayer GR 8 raw format.
This commit is contained in:
parent
03aa69da99
commit
7faf8cd06e
@ -79,12 +79,14 @@
|
|||||||
// video/x-raw, fourcc:'Y800' -> 8bit, 1 channel
|
// video/x-raw, fourcc:'Y800' -> 8bit, 1 channel
|
||||||
// video/x-raw, fourcc:'Y12 ' -> 12bit, 1 channel
|
// video/x-raw, fourcc:'Y12 ' -> 12bit, 1 channel
|
||||||
// video/x-raw, fourcc:'Y16 ' -> 16bit, 1 channel
|
// video/x-raw, fourcc:'Y16 ' -> 16bit, 1 channel
|
||||||
|
// video/x-raw, fourcc:'GRBG' -> 8bit, 1 channel
|
||||||
//
|
//
|
||||||
|
|
||||||
#define MODE_GREY CV_FOURCC_MACRO('G','R','E','Y')
|
#define MODE_GREY CV_FOURCC_MACRO('G','R','E','Y')
|
||||||
#define MODE_Y800 CV_FOURCC_MACRO('Y','8','0','0')
|
#define MODE_Y800 CV_FOURCC_MACRO('Y','8','0','0')
|
||||||
#define MODE_Y12 CV_FOURCC_MACRO('Y','1','2',' ')
|
#define MODE_Y12 CV_FOURCC_MACRO('Y','1','2',' ')
|
||||||
#define MODE_Y16 CV_FOURCC_MACRO('Y','1','6',' ')
|
#define MODE_Y16 CV_FOURCC_MACRO('Y','1','6',' ')
|
||||||
|
#define MODE_GRBG CV_FOURCC_MACRO('G','R','B','G')
|
||||||
|
|
||||||
#define CLIP(a,b,c) (cv::max(cv::min((a),(c)),(b)))
|
#define CLIP(a,b,c) (cv::max(cv::min((a),(c)),(b)))
|
||||||
|
|
||||||
@ -315,6 +317,7 @@ IplImage* CvCaptureCAM_Aravis::retrieveFrame(int)
|
|||||||
int depth = 0, channels = 0;
|
int depth = 0, channels = 0;
|
||||||
switch(pixelFormat) {
|
switch(pixelFormat) {
|
||||||
case ARV_PIXEL_FORMAT_MONO_8:
|
case ARV_PIXEL_FORMAT_MONO_8:
|
||||||
|
case ARV_PIXEL_FORMAT_BAYER_GR_8:
|
||||||
depth = IPL_DEPTH_8U;
|
depth = IPL_DEPTH_8U;
|
||||||
channels = 1;
|
channels = 1;
|
||||||
break;
|
break;
|
||||||
@ -475,6 +478,8 @@ double CvCaptureCAM_Aravis::getProperty( int property_id ) const
|
|||||||
return MODE_Y12;
|
return MODE_Y12;
|
||||||
case ARV_PIXEL_FORMAT_MONO_16:
|
case ARV_PIXEL_FORMAT_MONO_16:
|
||||||
return MODE_Y16;
|
return MODE_Y16;
|
||||||
|
case ARV_PIXEL_FORMAT_BAYER_GR_8:
|
||||||
|
return MODE_GRBG;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -547,6 +552,10 @@ bool CvCaptureCAM_Aravis::setProperty( int property_id, double value )
|
|||||||
newFormat = ARV_PIXEL_FORMAT_MONO_16;
|
newFormat = ARV_PIXEL_FORMAT_MONO_16;
|
||||||
targetGrey = 32768;
|
targetGrey = 32768;
|
||||||
break;
|
break;
|
||||||
|
case MODE_GRBG:
|
||||||
|
newFormat = ARV_PIXEL_FORMAT_BAYER_GR_8;
|
||||||
|
targetGrey = 128;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if(newFormat != pixelFormat) {
|
if(newFormat != pixelFormat) {
|
||||||
stopCapture();
|
stopCapture();
|
||||||
|
Loading…
Reference in New Issue
Block a user