文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python matplotlib怎么绘制灰度和彩色直方图

2023-06-22 05:35

关注


一、Matplotlib.Pyplot简介

1、Matplotlib

Matplotlib 是 Python 的绘图库,它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。

Matplotlib 可以用来绘制各种静态,动态,交互式的图表。

Matplotlib 是一个非常强大的 Python 画图工具,我们可以使用该工具将很多数据通过图表的形式更直观的呈现出来。

Matplotlib 可以绘制线图、散点图、等高线图、条形图、柱状图、3D 图形、甚至是图形动画等等。

2、Pyplot

Pyplot 是 Matplotlib 的子库,提供了和 MATLAB 类似的绘图 API。

Pyplot 是常用的绘图模块,能很方便让用户绘制 2D 图表。

Pyplot 包含一系列绘图函数的相关函数,每个函数会对当前的图像进行一些修改,例如:给图像加上标记,生新的图像,在图像中产生新的绘图区域等等。

使用的时候,我们可以使用 import 导入 pyplot 库,并设置一个别名 plt:

import matplotlib.pyplot as plt

然后我们就可以使用它来绘制图形了

二、灰度直方图

1、主要函数

主要用到两个函数

(1) calcHist()

Python matplotlib怎么绘制灰度和彩色直方图

(2) hist()

Python matplotlib怎么绘制灰度和彩色直方图

具体用法我就不做过多介绍了,可以自行参考文档,或者找一找网上大神们的解释说明。

2、实现代码

import cv2 as cvimport numpy as npimport matplotlib.pyplot as pltimg = cv.imread('Photos/1.bmp')cv.imshow('Img', img)gray_img = cv.cvtColor(img, cv.COLOR_BGR2GRAY)cv.imshow('GrayImg', gray_img)# Gray Histogramgray_hist = cv.calcHist([gray_img], [0], None, [256], [0,256], False)# cv.calcHist(images, channels, mask, histSize, ranges, accumulate)plt.figure(1)plt.title('Gray Histogram Contour')plt.xlabel('gray level')plt.ylabel('number of pixels')plt.plot(gray_hist)plt.xlim([0,256])plt.figure(2)plt.title('Gray Histogram')plt.xlabel('gray level')plt.ylabel('number of pixels')plt.hist(gray_img.ravel(),256)plt.show()cv.waitKey(0)

3、效果示例

Python matplotlib怎么绘制灰度和彩色直方图

Python matplotlib怎么绘制灰度和彩色直方图

Python matplotlib怎么绘制灰度和彩色直方图

Python matplotlib怎么绘制灰度和彩色直方图

三、彩色直方图

跟灰度直方图的原理差不多,需要对三种颜色进行一个简单的遍历,循环输出图形。

1、实现代码

import cv2 as cvimport matplotlib.pyplot as pltimport numpy as npimg = cv.imread('Photos/1.bmp')cv.imshow('Img', img)plt.figure()plt.title('Color Histogram')plt.xlabel('level')plt.ylabel('number of pixels')colors = ('b', 'g', 'r')for i,item in enumerate(colors):    hist = cv.calcHist([img], [i], None, [256], [0,256])    plt.plot(hist, color=item)    plt.xlim([0,256])plt.show()cv.waitKey(0)

2、效果示例

Python matplotlib怎么绘制灰度和彩色直方图

由此图我们可以直观地看出三种颜色不同阈值所出现的频率的大小。 


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯