您的位置:首页 > 移动开发 > IOS开发

ios--OpenCV--提取图片(或者视频)的R,G,B颜色分量

2014-04-04 10:09 615 查看
原文摘自:http://blog.csdn.net/leixiaohua1020/article/details/19020903

使用OpenCV可以提分别提取显示一张图片(或者视频)的R,G,B颜色分量。效果如下。

原图:



R:



G:



B:



示例代码如下,貌似很久以前网上找的的,逻辑很清晰,就是把R,G,B三个分量分开,然后显示出来,就不注释了。
-(void) TakeColorFromImage
{
UIImage *mImage =  [UIImage imageNamed:@"防伪标签001.jpg"];
self.imageView.image = mImage;

IplImage *srcImg = [self convertToIplImage:mImage];
IplImage *channel_r = cvCreateImage(cvGetSize(srcImg), IPL_DEPTH_8U, 1);
IplImage *channel_g = cvCreateImage(cvGetSize(srcImg), IPL_DEPTH_8U, 1);
IplImage *channel_b = cvCreateImage(cvGetSize(srcImg), IPL_DEPTH_8U, 1);
IplImage *img_r = cvCreateImage(cvGetSize(srcImg), IPL_DEPTH_8U, 3);
IplImage *img_g = cvCreateImage(cvGetSize(srcImg), IPL_DEPTH_8U, 3);
IplImage *img_b = cvCreateImage(cvGetSize(srcImg), IPL_DEPTH_8U, 3);

cvSplit(srcImg, channel_b, channel_g, channel_r, NULL);
cvMerge(channel_b, 0, 0, 0, img_b);
cvMerge(0, channel_g, 0, 0, img_g);
cvMerge(0, 0, channel_r, 0, img_r);

self.imageView1.image = [self convertToUIImage:img_b];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: