数字图像处理--直方图均衡化

2024-03-25 10:08

本文主要是介绍数字图像处理--直方图均衡化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

数字图像处理课,老师布置了7道实验题,要求是语言不限,但不能调用现成算法,这些题目有点难度,但题目本身基本涵盖了这门课中所有重要的内容。为了方便学弟和同道中人完成练习,也为了记录下方便以后回顾经典的算法,所以我将一题一题分析。

 

Histogram Equalization (test images: fig1.jpg, fig2.jpg)

(a) Write a computer program for computing the histogram of an image.

(b) Implement the histogram equalization technique.

(c) Your program must be general to allow any gray-level image as its input.

As a minimum, your report should include the original image, a plot of its histogram, a plot of the histogram-equalization, transformation function, the enhanced image, and a plot of its histogram. 


背景

直方图均衡化通常用来增加许多图像的全局对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。

 

这种方法对于背景和前景都太亮或者太暗的图像非常有用,这种方法尤其是可以带来X光图像中更好的骨骼结构显示以及曝光过度或者曝光不足照片中更好的细节。这种方法的一个主要优势是它是一个相当直观的技术并且是可逆操作,如果已知均衡化函数,那么就可以恢复原始的直方图,并且计算量也不大。这种方法的一个缺点是它对处理的数据不加选择,它可能会增加背景噪声的对比度并且降低有用信号的对比度。

 

书本中的原理


Matlab实现

 

 

 

效果与演示

fig1.jpg原图,直方图均衡化后效果

fig2.jpg原图,直方图均衡化后效果

 

体会

直方图均衡化主要是利用统计的思想建立原图像与新图像灰度值的关系,最终让图像的灰度变的均衡。从最终的结果来看第二张图的效果比较好,而第一张图虽然对比度增加了,但与此同时引出了很多椒盐噪声。

 


这篇关于数字图像处理--直方图均衡化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/844672

相关文章

《计算机视觉工程师养成计划》 ·数字图像处理·数字图像处理特征·概述~

1 定义         从哲学角度看:特征是从事物当中抽象出来用于区别其他类别事物的属性集合,图像特征则是从图像中抽取出来用于区别其他类别图像的属性集合。         从获取方式看:图像特征是通过对图像进行测量或借助算法计算得到的一组表达特性集合的向量。 2 认识         有些特征是视觉直观感受到的自然特征,例如亮度、边缘轮廓、纹理、色彩等。         有些特征需要通

《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》P98

更改为 差分的数学表达式从泰勒级数展开式可得: 后悔没听廖老师的。 禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》 禹晶、肖创柏、廖庆敏《数字图像处理》资源二维码

有无直方图,性能的差距

################################# ###有无直方图,性能的差距### ################################# 实验的环境在redhat平台下的11gr2单实例环境 1、在自己定义的用户下创建表及索引 CREATE TABLE customers AS SELECT * FROM sh.customers; CREATE INDEX cu

CUDA:用并行计算的方法对图像进行直方图均衡处理

(一)目的 将所学算法运用于图像处理中。 (二)内容 用并行计算的方法对图像进行直方图均衡处理。 要求: 利用直方图均衡算法处理lena_salt图像 版本1:CPU实现 版本2:GPU实现  实验步骤一 软件设计分析: 数据类型: 根据实验要求,本实验的数据类型为一个256*256*8的整型矩阵,其中元素的值为256*256个0-255的灰度值。 存储方式: 图像在内存中

图像处理:基于直方图矫正的图像色彩均衡

from itertools import chainimport cv2import osimport numpy as npimport datetimeclass BrightnessBalance:def __init__(self):passdef arrayToHist(self,gray):'''计算灰度直方图,并归一化:param gray_path::return:'''

python画图|并列直方图绘制

前述学习过程中,已经知晓普通直方图绘制和堆叠直方图绘制,参考链接如下: 西猫雷婶-CSDN博客 有时候,我们还会遇到并列直方图绘制的需求,今天就探索一下。 【1】官网教程 按照惯例,我们先来到官网: https://matplotlib.org/stable/gallery/lines_bars_and_markers/barchart.html#sphx-glr-gallery-lin

《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》出版1周年

去年为廖老师的甲子而出书,时光荏苒如白驹过隙,转眼出版一周年了。这本书能有这样的品质,与廖老师的指导密不可分,尤其是在他擅长的统计学领域。巩固了统计学基础,对我深入理解当前最热门的生成模型(如VAE、扩散模型)起到了至关重要的作用。 最让我感动的是,最初他给我指出问题,我不认为我有问题,我认为是他不懂,他坚持不懈地找我讨论。我作为老师我做不到,如果学生觉得自己什么都知道,我肯定就不理他了。感谢廖

庞峰Opencv学习(三)--灰度直方图

灰度直方图是一个帮助分析图像很有力的工具吧,今天学习了下,一天不敲代码就生疏啊- -   灰度直方图这个程序主要有几个函数和结构体先说一下:   1.  CreateHIst          CvHistogram* cvCreateHist( int dims, int* sizes, int type,  float** ranges=NULL, int uniform=1 );

5.9灰度直方图

目录 实验原理 实验代码 运行结果 实验原理 calcHist 函数通常是指在计算机视觉和图像处理中用于计算图像直方图的一个函数。 cv:calcHist () 用于计算一个或多个数组的直方图。它可以处理图像数据并返回一个表示像素强度分布的向量(对于灰度图像)或颜色分布(对于彩色图像)。用于计算一个或多个数组的直方图。它可以处理图像数据并返回一个表示像素强度分布的向量(对于灰度

[OpenCV] 数字图像处理 C++ 学习——13Canny边缘检测 附完整代码

文章目录 前言1.理论基础(1)高斯模糊平滑图像(GaussianBlur)(2)计算图像梯度(Sobel/Scharr)(3)非极大值抑制 (Non-maximum Suppression)(4)双阈值检测 (Double Threshold)(5)边缘跟踪(通过滞后处理) 2.代码实现3.完整代码 前言 Canny 边缘检测(高斯滤波、梯度计算、非极大值抑制、双阈值检测、边缘