bool Rgb2Gray(const char * szFilePah)
{
if(NULL == szFilePath || '\0' == *szFilePath)
{
return false;
}
std::string strTemp = szFilePath;
//找出后缀名
std::string::size_type iPos = strTemp.find_last_of(".");
if(iPos == std::string::npos)
{
return false;
}
std::string strFileName = strTemp.substr(0,iPos);
std::string strSuffix = strTemp.substr(iPos+1,strTemp.length());
std::string strNewName = strFileName + "2." + strSuffix;
IplImage * pRgb = cvLoadImage(szFilePath,CV_LOAD_IMAGE_UNCHANGED);
IplImage * pGray = cvCreateImage(cvGetSize(pRgb),IPL_DEPTH_8U,1);
//转换成单通道
cvCvtColor(pRgb,pGray,CV_RGB2GRAY);
cvSaveImage(strNewName.c_str(),pGray);
cvReleaseImage(&pGray);
cvReleaseImage(&pRgb);
}
转载于:https://my.oschina.net/u/229425/blog/782855
分享到:
相关推荐
本资源是紫光同创 RGB 转灰度图的工程源代码,使用 Verilog 硬件描述语言进行设计,开发平台为 ALINX PGL22G 开发板。工程实现了以下功能:(1)与电脑的串口通信,波特率为 256000 Bd/s,用于接收图像;(2)RGB 转...
描述"使用常用的RGB颜色转灰度的算法来实现图像的灰度效果"提示我们,这个资源可能涵盖了至少一种常见的算法,用于将RGB三通道图像转换为单通道的灰度图像。常见的算法包括直方图均衡化、加权平均法和YCbCr色彩空间...
在图像处理领域,RGB转灰度图和均值模糊处理是两种常见的操作,它们在计算机视觉、图像分析和机器学习等应用中起着至关重要的作用。CUDA(Compute Unified Device Architecture)是NVIDIA推出的一种并行计算平台,...
Matlab程序,自己手动实现rgb图像转灰度图像。
轻松将真彩色图像转换为灰度图,为你图像处理打通第一道口
在图像处理领域,色彩模型是至关重要的概念,其中最常见的是灰度图像和RGB(Red, Green, Blue)图像。灰度图像仅包含一个亮度通道,而RGB图像由红、绿、蓝三个颜色通道组成,可以展示丰富的色彩。本篇文章将深入探讨...
24位RGB位图转24位灰度图源码,支持任意分辨率的图片,可以Linux下编译直接运行
总的来说,RGB图像转换成灰度图像是一项基础的图像处理任务,它在机器学习、计算机视觉、图像分析等领域都有广泛应用。通过掌握这种转换,我们可以更好地理解和处理图像数据,进一步进行图像分析、特征提取、图像...
首先,我们需要理解RGB到灰度转换的基本原理。一个简单的转换方法是根据人眼对颜色感知的权重来加权平均红、绿、蓝三个通道的值。这个公式如下: `Gray = 0.299 * R + 0.587 * G + 0.114 * B` 在这个C++项目中,`...
总的来说,批量将RGB图像转换为灰度图像是一种常见的图像处理操作,它简化了多图处理,特别是在研究和自动化场景中。"Opbmp.exe"这样的工具使得这一过程更加便捷,但理解转换的原理和背后的方法同样重要,以便在需要...
用于处理labview二值化图像的颜色,是二值化的图像从红黑变为黑白
转换灰度图到RGB图的核心函数是`ind2rgb`。假设我们有一个名为`grayImage`的灰度图像矩阵,我们可以使用以下代码将其转换为RGB图像: ```matlab rgbImage = ind2rgb(grayImage, 'gray'); ``` 这里的`'gray'`参数...
本压缩包包含的文件涉及RGB到灰度图的转换、灰度图直方图的处理以及RGB到YUV色彩空间的转换。以下是对这些知识点的详细解释: 1. RGB到灰度图转换: RGB色彩模型是一种加性颜色模型,由红(Red)、绿(Green)和蓝...
在这个特定的项目中,我们关注的是如何使用FPGA来实现565RGB到8位灰度图像的转换。RGB是一种颜色模式,代表红色(Red)、绿色(Green)和蓝色(Blue),而565则表示每个颜色通道使用5、6、5位二进制来表示红、绿、蓝...
本话题主要关注RGB图像与灰度图、二值图之间的转换,以及如何实现图像的缩放。以下是对这些知识点的详细阐述: 1. RGB图像到灰度图的转换: RGB图像由红色(Red)、绿色(Green)和蓝色(Blue)三个通道组成,每个...
对于RGB转灰度,我们使用`CV_BGR2GRAY`代码。 以下是一个简单的C++程序示例,展示了如何使用OpenCV实现这个功能: ```cpp #include #include int main() { cv::VideoCapture cap("viplanedeparture.avi"); // ...
利用Matlab软件将RGB图像转化为灰度图像
把彩色图RGB转换为灰度图,适合labview8.0以下版本,
在给定的标题“gray2rgb_灰度图转彩色图_”中,我们可以理解这是一个关于如何将单通道的灰度图像转化为三通道的RGB彩色图像的程序或算法。描述中提到“需要提供一个参考彩色图”,这表明该方法可能涉及使用一个已有...
在图像处理领域,灰度图像和RGB图像都是非常常见的两种类型。灰度图像只包含单一的亮度通道,而RGB图像则由红色、绿色和蓝色三个颜色通道组成,可以呈现出丰富的色彩。本篇将深入探讨如何使用Matlab进行灰度图像到...