用c++怎样从彩色图像中分解出R,G,B分量,并且分别保存用c++语言编程,怎样从一幅彩色图像中提取R,G,B三个分量并且分别保存?

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 04:46:25

用c++怎样从彩色图像中分解出R,G,B分量,并且分别保存用c++语言编程,怎样从一幅彩色图像中提取R,G,B三个分量并且分别保存?
用c++怎样从彩色图像中分解出R,G,B分量,并且分别保存
用c++语言编程,怎样从一幅彩色图像中提取R,G,B三个分量并且分别保存?

用c++怎样从彩色图像中分解出R,G,B分量,并且分别保存用c++语言编程,怎样从一幅彩色图像中提取R,G,B三个分量并且分别保存?
单单是图像的加载不是一两句代码就能搞定的.
如果你做图像方面的,不妨看看《Visual C++ 数字图像处理典型算法及实现》
推荐 opencv库,简单易学
例如使用opencv分离R,G,B三个分量有很多方法,如下:而且保存只需一个cvSave()函数.
#include
#include
int main(int argc,char** argv)
{
IplImage* src = cvLoadImage( argv[1],1 );
IplImage * RedChannel = cvCreateImage( cvGetSize(src),8,1);
IplImage * GreenChannel = cvCreateImage( cvGetSize(src),8,1);
IplImage * BlueChannel = cvCreateImage( cvGetSize(src),8,1);
IplImage * alphaChannel = cvCreateImage( cvGetSize(src),8,1);
cvSetImageCOI(src,1);
cvCopy(src,BlueChannel); //提取蓝色
cvSetImageCOI(src,2);
cvCopy(src,GreenChannel); //提取绿色
cvSetImageCOI(src,3);
cvCopy(src,RedChannel); //提取红色
cvNamedWindow( "RedChannel",1 );
cvNamedWindow( "GreenChannel",1 );
cvNamedWindow( "BlueChannel",1 );
cvNamedWindow( "lphaChannel",1 );
cvShowImage( "RedChannel",RedChannel );
cvShowImage( "GreenChannel",GreenChannel );
cvShowImage( "BlueChannel",BlueChannel );
cvShowImage( "lphaChannel",alphaChannel );
cvWaitKey(0);
cvReleaseImage( &RedChannel );
cvReleaseImage( &GreenChannel );
cvReleaseImage( & BlueChannel );
cvReleaseImage( & alphaChannel );
return 0;
}
/*#include
#include
int main(int argc,char** argv)
{
IplImage* src = cvLoadImage( argv[1],1 );
IplImage * RedChannel = cvCreateImage( cvGetSize(src),8,1);
IplImage * GreenChannel = cvCreateImage( cvGetSize(src),8,1);
IplImage * BlueChannel = cvCreateImage( cvGetSize(src),8,1);
IplImage * alphaChannel = cvCreateImage( cvGetSize(src),8,1);
cvCvtPixToPlane(src,BlueChannel,GreenChannel,RedChannel,NULL);
cvNamedWindow( "RedChannel",1 );
cvNamedWindow( "GreenChannel",1 );
cvNamedWindow( "BlueChannel",1 );
cvNamedWindow( "lphaChannel",1 );
cvShowImage( "RedChannel",RedChannel );
cvShowImage( "GreenChannel",GreenChannel );
cvShowImage( "BlueChannel",BlueChannel );
cvShowImage( "lphaChannel",alphaChannel );
cvWaitKey(0);
cvReleaseImage( &RedChannel );
cvReleaseImage( &GreenChannel );
cvReleaseImage( & BlueChannel );
cvReleaseImage( & alphaChannel );
return 0;
}
*/

用c++怎样从彩色图像中分解出R,G,B分量,并且分别保存用c++语言编程,怎样从一幅彩色图像中提取R,G,B三个分量并且分别保存? 用MATLAB语言,将一幅彩色数字水印图像的R、G、B 分量分别进行提取后,怎样利用最低有效位( LSB) 算法,将R 分量置 嵌入到载体图像的第1 位中,将G 分量信息嵌入到载体图像的第2 位中,将B 分量信 提取彩色图像R、G、B三基色分量,在同一图像窗口内显示三基色图像及其直方图 用MATLAB怎么写程序? 怎样从物质中分解出氯化钠 怎样将氧气从空气中分解出? 一副分辨率512X512彩色图像,R、G、B三个分量分别用8个二进制位表示,则未进行压缩图像数据量是多少KB答案是768KB 从射电望远镜观察的图像和光学望远镜观察出的图像是一样的吗?都是彩色的吗? 关于彩色图像RGB分量的疑问.在 RGB 模式下,在 RGB 模式下,每种 RGB 成分都可使用从 0(黑色)到 255(白色)的值.例如,亮红色使用 R 值 255、G 值 0 和 B 值 0.当所有三种成分值相等时,产生灰色阴 如何使用MATLAB计算彩色图像的颜色直方图?我现在能画出灰度图像的颜色直方图,和R,G,B三个颜色通道独自的直方图,可是我想要的是一幅彩色图像的一个二维颜色直方图,要RGB合成的,就是一个坐 在matlab中,二为图像常用设置选项,r,g,b,w,k表示什么? 彩色图像RGB分量所代表的信息,有人能解释这幅图像的RGB分量为什么是这样的?我想问一下,R,G,B分量分别表示一幅图像的红绿蓝信息的吧.上面分别是R,G,B三图,谁能分析一下. 1. 计算机中彩色图像的每一种颜色均可用红、蓝、绿三种原色调配出来,如果每种原色从浅到深分为256个等级,一个原色就需要用______来表示.A. 8位二进制数 B. 16位二进制数 C. 24位二进制数 彩色陶瓷溶出重金属有些颜色艳丽的彩色陶瓷餐具遇热或在酸碱中浸泡时容易有重金属溶出,他们是:A、铅B、铅、汞C、铅、镉 matlab 图像矩阵条件提取方法用matlab如何实现: 已知一个图像矩阵A和某一点的颜色(R0,G0,B0) 怎样把A中 R,G,B分量均在R0,G0,B0的 0.80~1.20倍之间的像素提取到矩阵B中? 我不知道C是怎样的出的,某结晶水合物的化学式为R·xH2O,其相对分子质量为Mr,在25℃时a g晶体溶于b g水中,即达饱和,形成V mL溶液,则下列表达式中不正确的是( )A.饱和溶液的物质的量浓度100a opencv如何将一个一副彩色图像,分解成三个单通道图像,再组合成彩色图像,试举一例 彩色显示器的彩色由三个基色R、G、B合成而得到,如果R、G、B三色分别用8位表示,则显示器可显示的颜色数大约 一定温度下,某无水盐R在水中溶解度为23g,向R的饱和溶液中加入Bg该无水盐,保持温度不变,析出R的结晶水合物Wg,从饱和溶液中析出溶质R的质量为?A.(W-B)23/123g B.(W-B)23/77g C.(W-B)23/100g D.(W-77/23 B)g