1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| #include "OpenCLUtil.h"
|
| cv::Mat OpenCLUtil::grayImg(OpenCLExcuter* openCLExcuter, cv::Mat& oimg)
| {
| cv::Mat img = cv::Mat::zeros(oimg.rows, oimg.cols, CV_8UC1);
|
| if (oimg.channels() == 1) {
| //ºÚ°×ͼƬ
| img.data = oimg.data;
| }
| else {
| try {
| if (oimg.channels() == 3)
| {
| openCLExcuter->rgb2Gray(oimg, img.data);
| }
| else {
| openCLExcuter->rgba2Gray(oimg, img.data);
| }
| oimg.release();
| }
| catch (...) {
| img.release();
| img = NULL;
| throw string("»Ò¶È³ö´í");
| }
| }
| return img;
| }
|
|