来自文档:

im.histogram() => list

Returns a histogram for the image. The histogram is returned as a list

of pixel counts, one for each pixel value in the source image. If the

image has more than one band, the histograms for all bands are

concatenated (for example, the histogram for an “RGB” image contains

768 values).

据我所知,红色有256个值,绿色有256个,蓝色有256个(256 * 3 = 768).

for i, value in enumerate(im.histogram()):

print i, value

生产:

0 329

1 145

... (skipping some)

256 460

... (skipping some)

767 3953

我的问题是:这是否意味着有:

329像素的值为R = 0,G = 0,B = 0和

145像素的值为R = 1,G = 0,B = 0和

460像素的值为R = 256,G = 1,B = 0和

3953像素的值为R = 256,G = 256,B = 256等?这是我应该如何阅读输出?

解决方法:

我没有测试过,但是从文档中,措辞似乎表明直方图仅适用于每个通道(例如红色,绿色,蓝色).

If the image has more than one band, the histograms for all bands are

concatenated (for example, the histogram for an “RGB” image contains

768 values).

所以,不,你给出的例子并不正确. 768个值仅为256 * 3,这是可能的红色值的数量,加上可能的绿色值的数量,加上可能的蓝色值的数量.它并不代表红色,绿色和蓝色的所有可能组合,而是256 ^ 3 == 16777216.

从我所看到的,您的示例直方图值的解释应该是:

329 pixels with value of R = 0, G = ?, B = ? and

145 pixels with value of R = 1, G = ?, B = ? and

...

460 pixels with value of R = ?, G = 1, B = ? and

...

3953 pixels with value of R = ?, G = ?, B = 256

标签:python,histogram,pillow

python中histogram_python – 了解Pillow中的histogram()相关推荐

  1. 【Python标准库】pillow中Image模块学习

    我是一个甜甜的大橙子

  2. Python 绘图问题:Matplotlib中plt.rcParams[]使用方法 rcsetup.py matplotlibrc

    文章目录 from `__init__.py` from matplotlibrc from rcsetup.py from __init__.py # this is the instance us ...

  3. Python 基础 之 jupyter notebook 中机器学习的简单入门书写数字识别 demo 操作学习

    Python 基础 之 jupyter notebook 中机器学习的简单入门书写数字识别 demo 操作学习 目录 Python 基础 之 jupyter notebook 中机器学习的简单入门书写 ...

  4. 使用Python和OpenCV检测图像中的条形码

    使用Python和OpenCV检测图像中的条形码 1. 效果图 2. 算法的步骤 3. 源码 参考 这篇博客将介绍使用计算机视觉和图像处理技术进行条形码检测的必要步骤,并演示使用Python编程语言和 ...

  5. 使用Python,OpenCV查找图像中的最亮点

    Python,OpenCV找出图像中的最亮点 1. 原理 2. 优化 3. 效果图 4. 源码 参考 这篇博客将向您展示如何使用Python和OpenCV查找图像中的最亮点,以及应用单行预处理代码-- ...

  6. 使用Python,OpenCV从图像中删除轮廓

    使用Python,OpenCV从图像中删除轮廓 1. 效果图 2. 步骤 3. 源码 4. 参考 1. 使用Python.OpenCV计算轮廓的中心并标记 2. 使用Python.OpenCV检测轮廓 ...

  7. 使用Python,OpenCV寻找图像中的轮廓

    使用Python和OpenCV查找图像中的形状 1. 效果图 2. 步骤 3. 源码 参考 这篇博客将讨论使用Python和OpenCV查找图像中的形状,具体是 cv2.inRange在图像中查找形状 ...

  8. 【python】使用python脚本将LFW数据中1672组同一个人多张照片拷贝出来

    使用python脚本将LFW数据中1672组同一个人多张照片拷贝出来 dataCleaning4multiple.py 源码如下: import os, random, shutil import s ...

  9. python中读取文件过程中seek()函数的使用

    python中读取文件过程中seek()函数的使用 目录 概述: 语法: 参数: 返回值: 实例: 概述: seek() 方法用于移动文件读取指针到指定位置. 语法: seek() 方法语法如下: 文 ...

  10. python使用pandas计算dataframe中每个分组的分位数极差、分组数据的分位数极差(range)、使用groupby函数和agg函数计算分组的两个分位数

    python使用pandas计算dataframe中每个分组的分位数极差.分组数据的分位数极差(range).使用groupby函数和agg函数计算分组的两个分位数 目录

最新文章

  1. 用Ajax请求服务器的图片,并显示在浏览器中(转)
  2. OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
  3. linux boost 卸载,Ubuntu下boost库的编译安装步骤及卸载方法详解
  4. SAP Fiori element框架smart control运行时的生成原理
  5. pat 乙级 1004 成绩排名(C++)
  6. 伤疤好了有黑印怎么办_春藤家长圈|家有二孩,老大老二一起抢东西,家长该怎么办?...
  7. JFrog Artifactory 7.27 上传应用到私服和从maven私服下载制品
  8. Java ObjectOutputStream writeDouble()方法与示例
  9. 【FZU2178】礼物分配
  10. 你应该知道的 CSS 基础知识
  11. python代码中函有中文报错的解决方法
  12. sas编程技术教程 人大经济论坛sas培训
  13. access是用来干什么的_access数据库都能干什么
  14. 数据库DevOps:我们如何提供安全、稳定、高效的研发全自助数据库服务-iDB/DMS企业版
  15. 【报错记录】TypeError: __init__() takes 1 positional argument but 4 were given
  16. (转)中科院理论物理所考研…
  17. 【算法设计与分析】1.主定理
  18. Mongo与robomongo
  19. 今天遇到新的骗术!网购的大家一定要小心啊 !
  20. 外企9年,我最终选择放弃 zz

热门文章

  1. 计算机专业教师的简历模板,教师简历模板
  2. javacpp-opencv图像处理系列:国内车辆牌照检测识别系统(万份测试准确率79.7%以上)...
  3. 报错:Exception opening socket
  4. [文献阅读]Detecting Spacecraft Anomalies Using LSTMs and Nonparametric Dynamic Thresholding
  5. HR 必知的 360 度评估的优缺点
  6. 安装完Fedora 18后需要做的事情
  7. ARM裸机篇(三)——i.MX6ULL第一个裸机程序
  8. beamer制作学术slide
  9. Couch的MapReduce查询
  10. 乔纳森 刘易斯 oracle,阿泰刘易斯都是幻想 专家点火箭引援之真命天子