彩色图像直方图和灰度图像直方图的原理是一样的,不同的是彩色图像需要分别计算BGR三个通道。

Cerasus.JPG
import cv2
import numpy as np
import matplotlib.pyplot as pltimg = cv2.imread('Cerasus.JPG', 1)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]count_b = np.zeros(256, np.float)
count_g = np.zeros(256, np.float)
count_r = np.zeros(256, np.float)for i in range(height):for j in range(width):(b, g, r) = img[i, j]index_b = int(b)index_g = int(g)index_r = int(r)count_b[index_b] = count_b[index_b] + 1count_g[index_g] = count_g[index_g] + 1count_r[index_r] = count_r[index_r] + 1# 计算每一个通道的概率
total = height * width
count_b = count_b / total
count_g = count_g / total
count_r = count_r / total# 绘图
x = np.linspace(0, 256, 256)y1 = count_b
plt.figure()
plt.bar( x, y1, 0.9, alpha = 1, color = 'b' )y2 = count_g
plt.figure()
plt.bar( x, y2, 0.9, alpha = 1, color = 'g' )y3 = count_r
plt.figure()
plt.bar( x, y3, 0.9, alpha = 1, color = 'r' )plt.show()cv2.waitKey(0)

三个通道直方图如下:

OpenCV | OpenCV彩色图像直方图算法实现相关推荐

  1. opencv笔记(6):彩色图像直方图

    生活就像大海,我就像一条咸鱼,在浩瀚的海洋中边浪边学,这是opencv笔记系列中的「彩色图像直方图」.更多可参观[浪学]公众号~ 颜色直方图是在许多图像检索系统中被广泛采用的颜色特征.它所描述的是不同 ...

  2. Baumer工业相机堡盟工业相机如何联合BGAPISDK和OpenCV实现图像的直方图算法增强(C++)

    Baumer工业相机堡盟工业相机如何联合BGAPISDK和OpenCV实现图像的直方图算法增强(C++) Baumer工业相机 Baumer工业相机使用图像算法增加图像的技术背景 Baumer工业相机 ...

  3. 使用Python,OpenCV计算图像直方图(cv2.calcHist)

    使用Python,OpenCV计算图像直方图(cv2.calcHist 1. 效果图 2. 原理 2.1 什么是图像直方图? 2.2 计算直方图 2.3 可视化蒙版区域 3. 源码 参考 这篇博客将介 ...

  4. 目标跟踪之粒子滤波---Opencv实现粒子滤波算法

    目标跟踪学习笔记_2(particle filter初探1) 目标跟踪学习笔记_3(particle filter初探2) 前面2篇博客已经提到当粒子数增加时会内存报错,后面又仔细查了下程序,是代码方 ...

  5. 【opencv】20.直方图均衡化的数学原理

    本文只讲数字图像处理,即离散化后的公式,至于积分形式的分析,网上很多. 具体的数学推导可以参考这篇博客直方图均衡化. 如果想自己代码实现直方图均衡化,相关源代码可以参考(不使用api)使用C++实现彩 ...

  6. 【CV春季划】170分钟学习OpenCV与经典图像处理算法基础

    本次给大家带来的是有三AI-CV春季划组OpenCV与经典图像处理算法的直播回放,如果你还不知道有三AI-CV春季划是什么,可以看下面的视频和图文. 点击边框调出视频工具条 [CV春季划]言有三手把手 ...

  7. opencv python 直方图反向投影_python OpenCV学习笔记直方图反向投影的实现

    本文介绍了python OpenCV学习笔记直方图反向投影的实现,分享给大家,具体如下: 它用于图像分割或寻找图像中感兴趣的对象.简单地说,它创建一个与我们的输入图像相同大小(但单通道)的图像,其中每 ...

  8. opencv 绘制图像直方图,实现直方图均衡化

    直方图 直方图简单来说就是图像中每个像素值的个数统计,比如说一副灰度图中像素值为0的有多少个,1的有多少个--直方图是一种分析图像的手段: 直方图计算 opencv库计算直方图 使用 cv.calcH ...

  9. opencv中人脸识别算法的基本原理

    opencv中人脸识别算法的基本原理(一) 使用opencv中自带的三种人脸识别算法进行实验后,特意去了解学习了一下其基本原理,在这里记录下. opencv人脸识别 关于如何使用opencv实现人脸识 ...

最新文章

  1. 学习linux要会mysql吗_linux 学习 mysql安装到连接
  2. 安装MySQLdb for Python3.7
  3. 1-jQuery - AJAX load() 方法【基础篇】
  4. Centos 7.4 安装ipython和mysql-python遇到的问题
  5. [ARM-assembly]-ARM交叉编译器下编译的各个镜像的反汇编文件分析
  6. 只需0行代码 | 文科生也能画词云图!
  7. CodeForces - 965E Short Code (字典树上贪心)
  8. eclipse Plugin execution not covered by lifecycle configuration:maven.***.plugin
  9. assert 的理解
  10. html当前行突出显示,Pandas Dataframes to_html:突出显示表行
  11. win10计算机变成了英文,win10变成英文【处理方法】
  12. Pytorch 分布式训练
  13. 上市公司商誉减值损失数据(2007-2020年)
  14. matlab编写的程序输入参数怎么写,MATLAB|标准参数输入对话框创建
  15. [发布] QQGame 连连看辅助工具(限制功能版)
  16. 【苹果相册推送位置推送iMessage】软件安装TestFlight计划的信息
  17. 【Multisim仿真】运放电路:反相比例运算电路
  18. 递归算法中的时间复杂度分析
  19. dedecms后台报错“Notice: Use of undefined constant MYSQL_ASSOC - assumed ‘MYSQL_ASSOC‘ ”的解决方法
  20. cached in the local repository, resolution will not be reattempted until the update interval of RIIL

热门文章

  1. Redis 主库宕机如何快速恢复?面试必问!
  2. 免费的XShell替代品,同时支持Windows,macOS,Linux!又来一款国产良心工具....
  3. Twitter 广告平台实时计费系统的架构增强之道
  4. 聊聊算法在面试中的地位
  5. 大厂程序员回乡真风光?敲锣打鼓游街欢迎,横幅写着月薪和公司!
  6. 东汉末年,他们把「服务雪崩」玩到了极致(干货)
  7. 聊一聊ZooKeeper的顺序一致性
  8. 通俗易懂地讲解 Java 的注解
  9. 超级干货,一文看懂大数据的前世今生
  10. SnowFlake唯一ID生成器