使用的函数为
cvtColor(编辑对象,新的对象,新对象格式) ;
imwrite(存储位置,存储对象)
注意事项:图片格式不能过大,图片位置应该填写绝对路径,尽量自己手敲,减少粘贴否则容易出错,注意路径用“”//“”而且需要将图片的后缀添加上。
2.源代码quickopencv.h
#pragma once #includeusing namespace cv; class QuickDemo { public: void colorSpace_Demo(Mat& image); };
main.cpp
#include#include "quickopencv.h" #include using namespace std; using namespace cv; int main(int argc, char** argv) { //Mat 矩阵 //imread() 读图片,参数1:图片位置(注意反斜线方向) 参数2:色域 Mat src = imread("D:\OpenCV\OpenCV_S02\text.jpg"); //RGB 只有颜色通道 //灰度图像 //Mat src = imread("D://PS_picture//picture//sample(27).jpg", IMREAD_GRAYSCALE); //透明通道 //Mat src = imread("D://PS_picture//picture//sample(27).jpg",IMREAD_ANYCOLOR); //判断是否找到图片位置,防止报错 if (src.empty()) { cout << "没找到图片" << endl; return -1; } //namedWindow("text", WINDOW_FREERATIO); imshow("text", src); QuickDemo qd; qd.colorSpace_Demo(src); waitKey(0); //因为阻塞就会一直停留 destroyAllWindows(); return 0; }
quickdemo.cpp
#include "quickopencv.h"
void QuickDemo::colorSpace_Demo(Mat& image)
{
Mat gray, hsv;
cvtColor(image, hsv, COLOR_BGR2HSV);
//HSV 三通道 H0~180 S0~255 V0~255 V是亮度
cvtColor(image, gray, COLOR_BGR2GRAY);
imshow("HSV", hsv);
imshow("hh", gray);
imwrite("D:\OpenCV\OpenCV_S02\hsv.jpg",hsv);
imwrite("D:\OpenCV\OpenCV_S02\gray.jpg",gray);
}
3.编译结果:
4.图片资源:



