图像直方图

简介: 以下是内容摘要:本文介绍了直方图在图像处理中的应用,包括图像增强和图像分割。直方图均衡化用于改善图像的亮度分布,而根据直方图可获取分割阈值以实现图像分割。此外,直方图对比有助于图像分类。直方图是表示图像亮度分布的图表,通过分析直方图的峰值可判断图像属于低调、中间调还是高调。直方图均衡化则能将图像转换为灰度分布更均匀的新图像。

image.png

image.png

image.png

image.png

直方图应用—图像增强 -> 直方图均衡

image.png image.png

直方图应用 –图像分割 ->  根据直方图获取分割阈值

直方图应用 – 图像分类 -> 直方图对比 image.png

直方图简单来讲就是亮度分布图。照片亮度分为0到255共256个数值,数值越大,代表的亮度越高。  其中0代表纯黑色的最暗区域,255表示最亮的纯白色,中间的数字就是不同亮度的灰色。 人们还进一步把这些亮度分为了5个区域,分别是黑色,阴影,中间调,高光和白色  

image.png image.png

横轴代表0-255的亮度数值(灰度级),竖轴代表照片中对应亮度的像素数量  这个函数图像就被称为直方图    直方图中柱子的高度代表画面中有多少像素是那个亮度(也就是可以看出画面中亮度分布和比例)

1>它描述每个灰度级具有的像元个数,但不包含这些像元在图像中的位置信息。

2>任何一幅特定的图像都有唯一的直方图与之对应,但不同的图像可以有相同的直方图。

3>如果一幅图像有两个不相连的区域组成,并且每个区域的直方图已知,则整幅图像的直方图是该两个区域的直方图之和

直方图是根据灰度图进行绘制的,而不是彩色图像

图片分低调,中间调,高调风格 从直方图上看,像素波峰主要堆积在哪个亮度区域,就可以知道一张图片是低调还高调。

低调照片 像素波峰堆积在阴影和黑色区域,而高光和白色区域只要有很少的像素。高调照片则相反。中间调的照片则是最常见的,大部分像素分布在直方图中间。

以及长调 短调 中调 硬调(csdn 基础知识—直方图)

直方图均衡化是将原图像的直方图通过变换函数变为均匀的直方图,然后按均匀直方图修改原图像,从而获得一副灰度分布均匀的新图像

 

image.png

直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。

相关文章
|
机器学习/深度学习 监控 算法
基于YOLOv8的人体多姿态行为识别系统(站立、摔倒、坐姿、深蹲与跑步)|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
本项目基于YOLOv8深度学习模型,实现了一个多姿态行为识别系统,能够精准地识别站立、摔倒、坐姿、深蹲和跑步等行为。项目的核心内容包括完整的YOLOv8训练代码、标注数据集、预训练权重文件、部署教程和PyQt5界面,提供了一套从数据收集到最终部署的完整解决方案。
基于YOLOv8的人体多姿态行为识别系统(站立、摔倒、坐姿、深蹲与跑步)|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
|
机器学习/深度学习 人工智能 自然语言处理
自监督学习:引领机器学习的新革命
自监督学习的思想可以追溯到几年前,最早是在图像处理领域被提出。随着深度学习的快速发展,研究者们逐渐认识到未标注数据的巨大潜力。尤其是在大规模数据集的爆炸式增长下,获取标注数据的成本越来越高,而利用自监督学习的方法来减少对标注数据的依赖变得越来越重要。
|
Java
Java获取字符串最后一位
【5月更文挑战第9天】Java获取字符串最后一位
1562 5
|
存储 关系型数据库 MySQL
【免费动手教程上线】阿里云RDS MySQL推出大容量高性能存储:高性能本地盘(最高16TB存储空间)、高性能云盘(最高64TB存储空间)
阿里云RDS MySQL提供高性能本地盘与高性能云盘等存储方案,满足用户大容量、低延迟需求。高性能本地盘单盘最大16TB,IO延时微秒级;高性能云盘兼容ESSD特性,支持IO性能突发、BPE及16K原子写等能力。此外,阿里云还提供免费动手体验教程,帮助用户直观感受云数据库 RDS 存储性能表现。
|
人工智能 搜索推荐 量子技术
AI联网搜索时的prompt小技巧
本文详细介绍了如何利用AI工具,特别是那些具有深度联网搜索能力的大模型,来提高信息检索的效率和准确性。
AI联网搜索时的prompt小技巧
|
JSON API UED
快递查询 API 对接指南(Python示例)
在电商与物流快速发展背景下,实时快递查询成为系统开发常见需求。本文介绍如何通过快递查询API快速集成物流信息,提升自动化水平与用户体验,并提供Python调用示例及问题解决方案。
1142 0
|
安全 Java 测试技术
单元测试一篇汇总
本文详细介绍了软件开发中的单元测试,包括其重要性和好处。单元测试主要用于确保程序模块代码的正确性,常使用的测试框架有JUnit和TestNG。文章重点讲解了JUnit框架,包括其注解、断言方法及JUnit 3.x和4.x的区别。此外,还列举了八大常用的单元测试框架,如Arquillian、JTest、The Grinder、TestNG、JUnit、JWalk、Mockito和PowerMock,帮助读者更好地理解和应用单元测试。
单元测试一篇汇总
|
数据采集 运维 DataWorks
DataWorks on EMR StarRocks,打造标准湖仓新范式
本文整理自阿里云计算平台产品专家周硕(簌篱)在阿里云DataWorks on EMR StarRocks解决方案介绍中的分享。介绍了阿里云DataWorks与EMR Serverless StarRocks的结合使用,详细阐述了在数据同步、数据消费、数据治理三大场景中的核心能力。DataWorks作为大数据开发治理平台,提供了从数据建模、数据集成、数据开发到数据治理的全链路解决方案,结合StarRocks的高性能分析能力,帮助企业实现OLAP分析、湖仓一体开发及数据综合治理,满足复杂业务场景下的需求,提升数据处理和分析效率。
|
算法 计算机视觉
图像处理之K-Means算法演示
图像处理之K-Means算法演示
343 2
|
存储 算法 固态存储
IO调度算法
【10月更文挑战第5天】IO调度算法
476 2

热门文章

最新文章