多个图像直方图合并matlab,MATLAB图像处理之直方图匹配(图像合理增强)

MATLAB图像处理之直方图匹配(图像合理增强)

MATLAB图像处理之直方图匹配(图像合理增强)

多个图像直方图合并matlab,MATLAB图像处理之直方图匹配(图像合理增强)_第1张图片

先拿结果来看,第一幅是原图  第二幅是直方图均衡化后的图像增强 第三幅是直方图匹配后的处理结果

第二幅  第三幅来看    直接均衡化 会大大增加对比对  但是  有时不符合美观

%直方图匹配

%直方图均衡有时并不能总取得想要的图像增强结果

%特别的 能够在图片指定位置处进行图像增强是很有用的

%上述这种需求的方法  就是直方图匹配或者 直方图规定化

%通俗讲   直方图匹配是将原图的灰度分布均匀化

%如果想体现某一灰度直方图的图像处理,这就需要直方图匹配

%具体算法例子如下

%首先直方图均衡

%假设64*64像素的3Bit图像灰度分布如下

%rk                 nk              pk=nk/n

%r0=0             790               0.19

%r1=1             1023              0.25

%r2=2             850               0.21

%r3=3             656               0.16

%r4=4             329               0.08

%r5=5             245               0.06

%r6=6             122               0.03

%r7=7             81                0.02

%sk=(L-1)*SUM(pk)直方图均衡化公式 得到映射的下表

%s0=1.33->1 s1=3.08->3 s2=4.55->5 s3=5.67->6

%s4=6.23->6 s5=6.65->7 s6=6.86->7 s7=7.00->7

%均衡化后有5个灰度级了

%r0的790个像素 映射成 s0 取1

%r1的1023个像素 映射成 s1 取3

%r2的850个像素 映射成 s2 取5

%r3的656个像素 映射成 s3 取6

%r4的656个像素 映射成 s4 取6

%r5的245个像素 映射成 s5 取7

%r6的122个像素 映射成 s6 取7

%r7的81个像素  映射成 s7 取7

%其次按章自己规定的直方图分布进行如下计算

%例如自己规定的直方图分布

%z0=0   pz(z0)=0

%z1=1   pz(z1)=0

%z2=2   pz(z2)=0

%z3=3   pz(z3)=0.15

%z4=4   pz(z4)=0.20

%z5=5   pz(z5)=0.30

%z6=6   pz(z6)=0.20

%z7=7   pz(z7)=0.15

%计算变换函数G(zq)=(L-1)SUM(pz(i))  i从1到q

%G(z0)=7*pz(z0)=0 G(z1)=7*(pz(z0)+pz(z1))=0  依次类推

%得到如下变换函数表

%z0=0     G(z0)=0

%z1=1     G(z1)=0

%z2=2     G(z2)=0

%z3=3     G(z3)=1

%z4=4     G(z4)=2

%z5=5     G(z5)=5

%z6=6     G(z6)=6

%z7=7     G(z7)=7

%发现G不是严格单调的  也就是   他有值相等的部分  需要做如下处理

%在G函数中找到最小的值来接近s表中的数  上面所算s表中s0=1 在G表中G(z3)=1

%这是完美的匹配,因此  s到z的映射表如下

%s0=1 对应G(z3) 此时  z=3

%最后得到

%S        Z

%1        3

%3        4

%5        5

%6        6

%7        7

%也就是均衡化8bit图像中, 1的值映射成了3  一次类推

%MATLAB工具箱函数  g=histeq(f,hspec)

%hspec为指定的直方图的分布   g为输出图像   其直方图近似于指定的直方图hspec hspec是一个行向量构成的

%length(hspec)远小于图像f中的灰度级时,图像g的直方图通常会较好的匹配hspec

%https://blog.csdn.net/superjunenaruto/article/details/80037777

clc

clear

f=imread('D:亮度调节与空间滤波\6.jpg');

subplot(3,3,1)

imshow(f);

subplot(3,3,2)

imhist(f);

xlim('auto')

ylim('auto')

subplot(3,3,4)

[g0 t]=histeq(f,64);%直方图均衡化

imshow(g0)

subplot(3,3,5)

imhist(g0)

xlim('auto')%自动适应x轴的长度

ylim('auto')%自动适应y轴的长度

subplot(3,3,6)

plot(t)

n=0:255;

b=60;

c=70;

nn=exp(-(n-b).^2./(2*c^2));

nn=nn/5;

subplot(3,3,3)

plot(nn)

hspec=nn;

[g1,t]=histeq(f,hspec);%直方图匹配

subplot(3,3,7)

imshow(g1)

subplot(3,3,8)

imhist(g1)

xlim('auto')%自动适应x轴的长度

ylim('auto')%自动适应y轴的长度

subplot(3,3,9)

plot(t)%横坐标代表输入亮度值  纵坐标代表输出灰度值的归一化

结果如下

MATLAB图像处理之直方图匹配(图像合理增强)相关教程

matplotlib柱状图面积图直方图散点图极坐标图箱型图

matplotlib柱状图、面积图、直方图、散点图、极坐标图、箱型图 一、柱状图 1.通过obj.plot() 柱状图用bar表示,可通过obj.plot(kind='bar')或者obj.plot.bar()生成;在柱状图中添加参数stacked=True,会形成堆叠图。 fig,axes = plt.subplots(2,2,figsize=(1

Matlab幂律变换及直方图均衡化

Matlab幂律变换及直方图均衡化 一、目标: 1、实现幂律变换,可以尝试调整gamma数值,观察图像变换。分析Lena图像(灰度)在不同gamma数值下,图像灰度变换的特点。 2、观察Lena图像的直方图。实现Lena图像的直方图均衡,观察效果。 二、函数分析: 1、幂律变

数据分析-matlab入门-用电分析和音频频率分析

数据分析-matlab入门-用电分析和音频频率分析 数据分析-matlab入门-用电分析和音频频率分析 0 序 1、matlab 2、数据分析 1、入门实战1-用电分析 1.1 用电量分析 1.1.1 实操 1.1.2 据图分析 2 、入门实战2-音频频率分析 2.1 音频频率 2.1.1实操 3 总结 3.1 音

imutils图像处理工具包学习笔记_Translation;Rotation;resize

imutils图像处理工具包学习笔记_Translation;Rotation;resize ```python**# 图像处理工具包**```python# 在opencv基础上对一些方法进行了再次加工,使这些方法更加简单易用import imutilsimport cv2# print(dir(imutils))image = cv2.imread('image0.jpg')*

MATLAB画矩形和圆

MATLAB画矩形和圆 以前的博文中已经讲解过如何画立方体以及画圆的方法。这里将如何画矩形和圆的方法写成函数形式,直接提供出来,方便大家使用。 % Example% cx = 1;% cy = 1;% radius = 1;% alpha = 0.8;% face_color = rand(1,3);% edge_color = rand(1,3);

VS2019与MATLAB 2019a 混合编程

VS2019与MATLAB 2019a 混合编程 以下是在VS2019与MATLAB 2019a 混合编程的配置中可能会出现的问题及解决方法。 在matlab中输入mex -setup会出现未找到SDK的报错,可以输入mex -setup -v 来详细查看缺少什么配件。发现没有编译器Microsoft visual 2019。其实M

使用MATLAB 2019 App Design 工具设计一个 电子日记App

使用MATLAB 2019 App Design 工具设计一个 电子日记App 使用MATLAB 2019 App Design 工具设计一个 电子日记App 1.1 前言 :由于信号与系统课程需要,因此下载了MATLAB软件,加之对新款的执着追求,通过一些渠道,下载了MATLAB 2019专业版。在使用过程中我发现

图像处理算法 之 直方图均衡化

图像处理算法 之 直方图均衡化 对于一幅图像的每个灰度级的像素个数进行统计,得到每个灰度级占整张图像的比例: n_k为灰度等级k的像素数量,N为整幅图像的像素数总和。 将各个灰度级的像素数量绘制为条形图就是直方图了 一幅对比度较小的图像其直方图分布一

你可能感兴趣的:(多个图像直方图合并matlab)