OpenCV3.0下 cvCvtColor函数灰度化图像遇到问题及解决办法

灰度图像在1.0下我们可以这么写:

int main(int argc, char* argv[]){IplImage* src = cvLoadImage("lampard.jpg",1);IplImage* gimg =0; gimg =cvCreateImage(cvGetSize(src),src->depth,1);cvNamedWindow("showImage");cvCvtColor(src,gimg,11);cvSaveImage("1.jpg",gimg);cvShowImage("showImage",gimg);cvWaitKey(0);cvReleaseImage(&src);cvDestroyWindow("showImage");return 0;}但是在3.0下,你要是这样用cvCvtColor的话,就会出错:

3.0你干了什么。。。。

找到相应文件

哪位大神解释下啥意思?欢迎评论,解惑。

后来我在这里,发现有人也遇到这个问题,嗯,我翻遍了百度(请原谅我用百度),都没有人遇到这个问题。

就这样,,我照葫芦画瓢改了代码如下:

int main(int argc, char* argv[]){Mat m = imread("2.jpg", CV_LOAD_IMAGE_COLOR);IplImage src(m);cvNamedWindow("showImage");IplImage* gimg = cvCreateImage(cvGetSize(&src), 8, 1);cvCvtColor(&src, gimg, CV_BGR2GRAY);cvSaveImage("1.jpg", gimg);cvShowImage("showImage", gimg);cvWaitKey(0);cvReleaseImage(&gimg);cvDestroyWindow("showImage");return 0;}成功运行!

一天时间解决了问题,但是不知道原因是啥。。。。

另外,第一段代码要是,rgb转hsv的话,也能运行。。。。3.0你在逗我么?

生气是拿别人做错的事来惩罚自己

OpenCV3.0下 cvCvtColor函数灰度化图像遇到问题及解决办法

相关文章:

你感兴趣的文章:

标签云: