我有一个图像,我想转换从RGB到HSV,然后返回到RGB。
我就是这样做的:
Mat frame1, frame2, frame3;
cvtColor(frame1, frame2, CV_RGB2HSV);
cvtColor(frame2, frame3, CV_HSV2BGR);
namedWindow("origin", CV_WINDOW_AUTOSIZE);
namedWindow("rgb2hsv", CV_WINDOW_AUTOSIZE);
namedWindow("hsv2rgb", CV_WINDOW_AUTOSIZE);
imshow("origin", frame1);
imshow("rgb2hsv", frame2);
imshow("hsv2rgb", frame3);我相信当我从RGB转换到HSV时,我得到了正确的结果。但是,当我将转换后的图像转换回RGB时,它会给出一个不正确的结果。
知道为什么吗?谢谢!
发布于 2016-03-08 19:20:16
cvtColor(frame1, frame2, CV_RGB2HSV);
cvtColor(frame2, frame3, CV_HSV2BGR);应该是(注意它是BGR2HSV而不是RGB2HSV)
cvtColor(frame1, frame2, CV_BGR2HSV);
cvtColor(frame2, frame3, CV_HSV2BGR);https://stackoverflow.com/questions/35876016
复制相似问题