opencv入门(3)图像色彩与空间转换


0 创建demo类

后续都会在这个类中进行处理
quickdemo.h

#pragma once

#include<opencv2/opencv.hpp>

using namespace cv;

class QuickDemo {
public:
	void colorSpace_Demo(Mat &image);

};

1 色彩空间转换函数 - cvtColor

在这里插入图片描述

第一个参数是原图片的地址,第二个参数是目标Mat地址,第三个参数是操作符

RGB 是 255x 255 x255
HSV通道 H 0 - 180 ,S 图像颜色,V图像亮度 0-255

2 保存图片 - imwrite

在这里插入图片描述
第一个参数是文件位置,第二个是保存对象
关于第三个参数,可以选择保存的选项
它针对特定的格式:对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95;对于png ,第三个参数表示的是压缩级别。默认为3.
注意:

cv2.IMWRITE_JPEG_QUALITY类型为 long ,必须转换成 int
cv2.IMWRITE_PNG_COMPRESSION, 从0到9 压缩级别越高图像越小。
cv2.imwrite(‘1.png’,img, [int( cv2.IMWRITE_JPEG_QUALITY), 95])
cv2.imwrite(‘1.png’,img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])

3 源码

quickopencv.cpp

#include"quickopencv.h"

void QuickDemo::colorSpace_Demo(Mat &image)
{
	Mat gray, hsv;
	cvtColor(image, hsv, COLOR_BGR2HSV); // BGR转hsv
	cvtColor(image, gray, COLOR_BGR2GRAY); // BGR转gray

	imshow("HSV", hsv); 
	imshow("GRAY", gray);

	imwrite("G:/test/hsv.png", hsv); // 保存图像
	imwrite("G:/test/gray.png", gray);


}

main函数里的测试

	QuickDemo qd;
	qd.colorSpace_Demo(src);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值