Python数字图像处理基础直方图详解
作者:未綄待續ξ 发布时间:2021-02-12 08:21:55
标签:数字图像,直方图,Python
直方图的定义
直方图的性质
只统计某个灰度级出现的次数,图像的大小不一样的话, 某灰度值的像素出现的次数是不一样的。
那如果我们在这基础上除以像素总个数的话,那就是某一灰度级出现的概率,那么这样的话不同大小的同一内容图像其灰度直方图是一样的。
直方图的应用
图像增强
图像分割
图像识别
Python直方图的计算
import cv2
import numpy as np
import matplotlib.pyplot as plt
img = cv2.imread('cameraman.tif',0)
img = img.flatten()
img = img.tolist()
myhist = []
for i in range(0,256):
myhist.append(img.count(i))
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来显示中文标签
# plt.rcParams['figure.dpi'] = 100 # 每英寸点数
plt.figure()
plt.bar(x=range(0,256),height=myhist,width=0.5)
plt.title('直方图')
plt.xlabel("灰度值")
plt.ylabel("像素个数")
plt.show()
运行结果图:
plt.rcParams参数设置:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来显示负号
plt.rcParams['figure.figsize'] = (16.0, 10.0) # 调整生成的图表最大尺寸
plt.rcParams['figure.dpi'] = 300 # 每英寸点数
调用plt.rcParams.keys()可获取rcParams的全部参数以及默认值。
例如:
'figure.dpi': 100.0 每英寸点数
'figure.figsize': [6.0, 4.0] 生成的图表最大尺寸
'font.size': 10.0 字体大小
'hist.bins': 10 直方图分箱个数
'lines.linewidth': 1.5 线宽
'lines.marker': 'None' 标记样式
'savefig.format': 'png' 保存图片的格式
'savefig.jpeg_quality': 95 图片质量
'text.color': 'black' 文本颜色
'timezone': 'UTC' 时区格式
以上就是Python数字图像处理基础直方图详解的详细内容,更多关于Python数字图像处理基础直方图的资料请关注脚本之家其它相关文章!
来源:https://blog.csdn.net/qq_47518233/article/details/120511107


猜你喜欢
- 引言:刚学python好几天了,从java到python,基础学起来确实比较容易,语法掌握,基本概念上都比较容易入脑。唯一比较郁闷的是老想着
- 复杂度可能高了点- - 也没太注意我想了好久 也找了好久 没看到什么能够用python解决n皇后问题而且不调用递归的 因为我不太能理解递归(
- 德州扑克简要介绍什么是德州扑克德州扑克不知道大家是否玩过,它是起源于美国的得克萨斯州的一种博弈类卡牌游戏,英文名叫做Texas Hold&a
- MySQL有多种存储引擎:MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、
- 1. set 的基本内容1.基本特点(1) 无序性(2) 确定性(3) 不重复性2.set() 实质内部进行 可迭代性的 for 循环例子:
- 此文刊登在《程序员》2009年5月期:SQL全名是结构化查询语言(Structured Query Language),一直是后台开发者用来
- 单线程+多任务异步协程协程在函数(特殊函数)定义的时候,使用async修饰,函数调用后,内部语句不会立即执行,而是会返回一个协程对象任务对象
- javascript中声明函数的方法有两种:函数声明式和函数表达式.区别如下:1).以函数声明的方法定义的函数,函数名是必须的,而函数表达式
- 最近需要做一个围棋识别的项目,首先要将棋盘位置定位出来,效果图如下:效果图原图中间处理效果最终结果思路分析我们利用python opencv
- 本文实例讲述了sql server实现分页的方法。分享给大家供大家参考,具体如下:declare @index int,@num intse
- 基本概述我们知道MySQL有2种方式指定复制同步的方式,分别为:基于binlog文件名及位点的指定方式 - 匿名事
- 本文给大家分享Python解释器安装以及PyCharm安装过程。很多朋友问小编要完整的安装教程,现分享给大家。一、Python解释器安装解释
- 之前在某本书上看到一个程序,可以通过 Python 记录下全局范围内的键盘事件,使用的是 ctypes 库。后来几经尝试,始终不能成功运行。
- 相关文章推荐:各种loading加载图标下载 gif格式loadinfo和ajaxload一样,也是一个在线Ajax载入动画生成工
- 前言来自 Google 的 Andrew Gerrand 曾经关于 Go 中的参数命名规范进行了分享,slides 为 https://ta
- vue页面的打印和下载PDF(加水印)vue项目页面的打印打印的不用说,调用 window.print() 的方法即可;注意点:如果用到背景
- 本文实例讲述了Python使用chardet判断字符编码的方法。分享给大家供大家参考。具体分析如下:Python中chardet 用来实现字
- preface:做着最近的任务,对数据处理,做些简单的提特征,用机器学习算法跑下程序得出结果,看看哪些特征的组合较好,这一系列流程必然要用到
- 前沿以前go工程都是在我mac上打包成镜像然后再推到我的docker hub上去,每次更新都要经过打包->推送到dockert仓库-&
- 废话不多说了,直接给大家分享java操作sql数据库常见的连接问题。1.连接,查询,更新,关闭这几个数据基础操作,所以放到一起,写成一个工具