对RGB三个通道进行操作示例

#include <iostream>
#include <opencv2\opencv.hpp>using namespace std;
using namespace cv;int main(int, char *argv[])
{Mat OriginalImg;OriginalImg = imread("dst_pic51.jpg", IMREAD_COLOR);//读取原始彩色图像if (OriginalImg.empty())  //判断图像对否读取成功{cout << "错误!读取图像失败\n";return -1;}//    imshow("原图", OriginalImg); //显示原始图像cout << "Width:" << OriginalImg.rows << "\tHeight:" << OriginalImg.cols << endl;//打印长宽//Mat ResizeImg;//if (OriginalImg.cols > 640)//{//  resize(OriginalImg, ResizeImg, Size(640, 640 * OriginalImg.rows / OriginalImg.cols));//}//imshow("尺寸变换图", ResizeImg);unsigned char pixelB, pixelG, pixelR;  //记录各通道值unsigned char DifMax = 100;             //基于颜色区分的阈值设置
//  unsigned char B = 138, G = 63, R = 23; //各通道的阈值设定,针对与蓝色车牌
//  unsigned char B = 118, G = 63, R = 23; //各通道的阈值设定,针对与蓝色车牌Mat BinRGBImg = OriginalImg.clone();  //二值化之后的图像int i = 0, j = 0;for (i = 0; i < OriginalImg.rows; i++)   //通过颜色分量将图片进行二值化处理{for (j = 0; j < OriginalImg.cols; j++){pixelB = OriginalImg.at<Vec3b>(i, j)[0]; //获取图片各个通道的值pixelG = OriginalImg.at<Vec3b>(i, j)[1];pixelR = OriginalImg.at<Vec3b>(i, j)[2];if (pixelB-130>0){                                           //将各个通道的值和各个通道阈值进行比较BinRGBImg.at<Vec3b>(i, j)[0] = 255;     //符合颜色阈值范围内的设置成白色BinRGBImg.at<Vec3b>(i, j)[1] = 255;BinRGBImg.at<Vec3b>(i, j)[2] = 255;}else{BinRGBImg.at<Vec3b>(i, j)[0] = 0;        //不符合颜色阈值范围内的设置为黑色BinRGBImg.at<Vec3b>(i, j)[1] = 0;BinRGBImg.at<Vec3b>(i, j)[2] = 0;}}}imshow("基于颜色信息二值化", BinRGBImg);        //显示二值化处理之后的图像imwrite("BlueI.jpg", BinRGBImg);waitKey();return 0;}

对RGB三个通道进行操作示例相关推荐

  1. 将彩色图片分离为RGB三个通道的灰度图,并输出

    #将一张三通道图片转换为RGB三通道灰度图,并将每个通道的矩阵输出 import cv2 import matplotlib.pyplot as plt ''' 彩色图像转化为RGB三幅灰度图像 '' ...

  2. matlab灰色图像直方图和彩色图像RGB三个通道直方图

    之前文章说过灰度图像实现及彩色图像RGB分开. 1. 图像灰度直方图 灰度直方图是将数字图像中所有像素按灰度值的大小,统计每种像素值出现的频率.灰度直方图描述了一幅图像的绘图统计信息,主要应用于图像分 ...

  3. 彩色rgb图像拆分为rgb三个通道,并重新合并为彩色图像

    import numpy as np import imageio import matplotlib.pyplot as pltimg = imageio.imread(r'E:\Vaihingen ...

  4. 彩色图像RGB三通道问题探究

    之前做图像问题研究时经常会提到RGB通道,这次做一个小研究,对最底层的东西深究一二-- 直接上全部代码吧,一点点来: # -*- coding: utf-8 -*- import cv2 img=cv ...

  5. matlab读jpg有三个通道,图像为“灰度图像”

    最近用matlab读取"灰度图"(jpg格式),居然有三个通道,且灰度值还不一样,那么这是为什么呢? 1.灰度图 其实是"灰度图"概念的问题,并不是灰色的图片就 ...

  6. BMP位图转为RGB三通道图

    文章目录 读取BMP位图转为RGB三通道图 注意 相关/参考链接 本人机器开发环境 用到的图像 大小端模式介绍: 完整代码: 结果 读取BMP位图转为RGB三通道图 个人总结,目的是给自己日后参考,或 ...

  7. 【Opencv入门】RGB三通道直方图的计算与绘制

    文章目录 一. 直方图概述 Overview of histogram 二.直方图的建立 Establishment of histogram 三.直方图的作用 The function of his ...

  8. 提取图片RGB三通道数据+用RGB恢复原始图片

    提取图片的RGB三通道数据+用RGB恢复原始图片 提取图片的RGB三通道数据 用RGB恢复原始图片 功能实现: 提取出一张图片的R.G.B三个通道的值并且将其分别转换为十进制数据存储到R.txt.G. ...

  9. PIL将png的RGBA四通道改为jpg的RGB三通道方法

    将一张png图像使用PIL读入的时候,发现是一个四通道图像,即:RGBA,分别代表Red(红色)Green(绿色)Blue(蓝色)和Alpha的色彩空间.其中Alpha通道一般用做透明度参数,这就是为 ...

最新文章

  1. Linux访问Windows磁盘实现共享
  2. 边界框的回归策略搞不懂?算法太多分不清?看这篇就够了
  3. hibernate ORM related
  4. TCP/IP之大明内阁---协议的制定
  5. 云栖大会第二天:ACK Anywhere 来了
  6. android php mysql json 查询_使用json从PHP-MySql服务器到Android获取图像
  7. 浅谈Spring IOC和DI及Spring工厂类
  8. 我想说:工作没那么难找吧
  9. 软件测试 学习之路 MYSQL安装
  10. openssl、libosip2、libeXosip2三个库的编译过程
  11. IE8 新增的Javascript,css功能
  12. CBoard 0.4.2环境搭建
  13. ttest求pvalue_统计中t检验法中P值该怎样计算
  14. IOS开发进阶学习资料(提升必备)
  15. 简洁明了的深度优先遍历算法
  16. 刺激战场春节版年兽全网最详细位置,另附刺激战场更新内容
  17. 「项目管理」如何使用甘特图分解项目?
  18. 【微信小程序】微信小程序开发(一)
  19. mysql查询日期格式_mysql 日期格式化查询
  20. Flowable 6.6.0 BPMN用户指南 - (5)Spring Boot - 5.8 Flowable应用属性

热门文章

  1. Unity 控制物体移动的一些方法
  2. 用“闪电计算”弯道超车 费马图数据破解关联分析瓶颈
  3. 初识mac 之设置篇
  4. Java实现表格打印翻页_简单又实用的小文章来了----表格分页打印的那些小事(2)...
  5. VTK笔记-了解VTK
  6. 一条命令修复机械硬盘,提示需要格式化
  7. unity实现小地图和放大镜功能
  8. Chrome 插件下载、安装、加载正在开发的扩展程序和打包扩展程序
  9. DDL,DQL,DML,DCL全称
  10. Android self_adaption of screen