cvCvtColor only works with CV_8U images (Bug #686)
Description
This is for version 2.1 of OpenCV. File cvcolor.cpp at line 2466 in function cvCvtColor checks for the bit depth to be CV_8U. This check is correct for the code, but not for the documentation. In document opencv.pdf (v2.1, March 18, 2010) on page 265, it states that the cvCvtColor function works with 8u, 16u or 32f data types. Some of the color conversion types state that they only work for 8u images, or some other subset, but not the Bayer conversions (page 270).
I would like to have the Bayer conversion work for 16u data, as a lot of newer cameras are 9-16 bits. For the short term, correcting the documentation would be a help.
Thanks,
Charles Fischer
Related issues
duplicated by Bug #929: Bayer color conversion dosen't support any other type tha... | Done |
Associated revisions
added 16-bit support to Bayer2RGB & Bayer2Gray (ticket #686)
Merge pull request #686 from taka-no-me/stereobm_sobel
Fixed wrong index in prefilterXSobel function
History
Updated by Jack O'Quin about 14 years ago
This is needed for ROS support of 16-bit Bayer images.
https://code.ros.org/trac/ros-pkg/ticket/4713
https://code.ros.org/trac/ros-pkg/ticket/4738
I think the priority should be higher than "minor".
Updated by Patrick Mihelich almost 14 years ago
Bumping this to major. We have camera drivers in ROS that can produce 16-bit Bayer data, and I want to support that in Electric.
Updated by Vadim Pisarevsky almost 14 years ago
In r5346 support for 16-bit images has been added to Bayer2RGB and Bayer2Gray. Only the simplest linear interpolation method can handle 16-bit images for now. VNG is difficult to extend, because C implementation is very slow and SIMD implementation is using 16-bit accumulators.
- Status changed from Open to Done
- (deleted custom field) set to fixed