OpenCV 颜色空间转换:cvtColor()函数
cvtColor()函数是OpenCV里的颜色空间转换函数,可以实现RGB颜色向HSV、HSI等颜色空间的转换,也可以转换为灰度图像。
原型如下:
c++:void cvtColor(InputArray src,outputArray dst,int code,int dstCn=0)
第一个参数为输入图像;
第二个参数为输出图像;
第三个参数为颜色空间转换的标识符(具体见表);
第四个参数为目标图像的通道数,若该参数是0,表示目标图像取源图像的通道数。
下面是一个调用示例:
//此句代码的OpenCV2版为:
cvtColor(sreImage,dstImage,CV_GRAY2BGR);//转换原始图为灰度图
//此句代码的OpenCV3版为:
cvtColor(srcImage,dstImage,COLOR_GRAY2BGR);//转换原始图为灰度图而随着OpenCV版本的升级,cvtColor()函数对于颜色空间种类的支持也是越来越多。其标识符列举如表所示。
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
using namespace std;
int main(int argc, char ** argv)
{
Mat srcImage = imread("1.jpg", 1), dstImage;
cvtColor(srcImage, dstImage, COLOR_BGR2Lab);
imshow("原图", srcImage);
imshow("效果图", dstImage);
waitKey(0);
return 0;
}
运行:
参考:
《OpenCV3 编程入门》 毛星云 P99
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库