libgphoto2 photo camera library (libgphoto2) API
2.4.13
|
00001 00024 #ifndef __BAYER_H__ 00025 #define __BAYER_H__ 00026 00032 typedef enum { 00033 BAYER_TILE_RGGB = 0, 00034 BAYER_TILE_GRBG = 1, 00035 BAYER_TILE_BGGR = 2, 00036 BAYER_TILE_GBRG = 3, 00037 BAYER_TILE_RGGB_INTERLACED = 4, 00038 BAYER_TILE_GRBG_INTERLACED = 5, 00039 BAYER_TILE_BGGR_INTERLACED = 6, 00040 BAYER_TILE_GBRG_INTERLACED = 7, 00041 } BayerTile; 00042 00043 int gp_bayer_expand (unsigned char *input, int w, int h, unsigned char *output, 00044 BayerTile tile); 00045 int gp_bayer_decode (unsigned char *input, int w, int h, unsigned char *output, 00046 BayerTile tile); 00047 int gp_bayer_interpolate (unsigned char *image, int w, int h, BayerTile tile); 00048 /* 00049 * The following two functions use an alternative procedure called Adaptive 00050 * Homogeneity-directed demosaicing instead of the standard bilinear 00051 * interpolation with basic edge-detection method used in the previous two 00052 * functions. To use or test this method of Bayer interpolation, just use 00053 * gp_ahd_decode() in the same way and in the same place as gp_bayer_decode() 00054 * is used. 00055 */ 00056 00057 int gp_ahd_decode (unsigned char *input, int w, int h, unsigned char *output, 00058 BayerTile tile); 00059 int gp_ahd_interpolate (unsigned char *image, int w, int h, BayerTile tile); 00060 00061 #endif /* __BAYER_H__ */