Practice:

1.Try it,and display it on the screen.

实现方式:

RGB = imread('night.jpg');
I = rgb2gray(RGB);
Hist = imhist(I);
Min = min(Hist);
Max = max(Hist);
E = I .* 1.5;
subplot(2,2,1);
imshow(I);
subplot(2,2,2);
imshow(E);
subplot(2,2,3);
imhist(I);
subplot(2,2,4);
imhist(E);

接下来,用histeq函数做一下对比:

实现方式:

RGB = imread('night.jpg');
I = rgb2gray(RGB);
E = histeq(I);
subplot(2,2,1);
imshow(I);
subplot(2,2,2);
imshow(E);
subplot(2,2,3);
imhist(I);
subplot(2,2,4);
imhist(E);

咦?原来这才是均衡化,修改一下实现方式:

具体代码如下:

RGB = imread('night.jpg');
II = rgb2gray(RGB);[m,n]=size(II);
f1 = im2uint8(ones(m,n));
% matlab读入图像的数据是uint8,
% 而matlab中数值一般采用double型(64位)存储和运算。
% 把图像数据类型转换为无符号八位整型
% 得到输入图像的直方图h
h = imhist(II);
% 获取直方图的横坐标和纵坐标,即各个像素级,以及每个像素级上的像素出现的次数
I = length(h);
% 最大数组维度的长度PDF = h/numel(II);
% 数组元素的数目
%概率密度PDF
CDF = cumsum(PDF);
% 累积和
%分布函数CDF
j = CDF .* 256;
%取整扩展,得到均衡化之后的灰度分布直方图
J = round(j);
% 灰度级数取整
%将扩展后的灰度级数对应映射到图片中
for i = 1 : Inn = find(J == i);%找出扩展后的灰度级数对应的扩展前的灰度级数%find返回的是位置L = length(nn);for k = 1: Lnn1 = find(II ==(nn(k)- 1));%再找到扩展前的灰度级数对应的像素点f1(nn1) = i;%并将像素点对应灰度值值置为扩展后的灰度值end
endsubplot(2,2,1);
imshow(II);
subplot(2,2,2);
imshow(f1);
subplot(2,2,3);
imhist(II);
subplot(2,2,4);
imhist(f1);

参考:羽化成麟没有小白龙的博客

网址连接:histeq从用法到原理——Matlab直方图均衡化函数_羽化成麟没有小白龙_新浪博客

MATLAB Write your own equalization function相关推荐

  1. Matlab:成功解决Undefined function or variable B

    Matlab:成功解决Undefined function or variable "B" 目录 解决问题 解决方法 解决问题 Undefined function or vari ...

  2. matlab子函数调用变量,matlab中,怎么样用function自定义函数调用另一个函数名为输入?...

    点击查看matlab中,怎么样用function自定义函数调用另一个函数名为输入?具体信息 答:test定义两个参数,一个是函数,一个是函数的变量. function [z]=test11(funna ...

  3. matlab 缺少awgn,MATLAB运行时出现Undefined function 'awgn' for input arguments of type 'double'....

    MATLAB运行时出现Undefined function 'awgn' for input arguments of type 'double'.0 pp11992016.05.08浏览236次分享 ...

  4. matlab .m 返回值,MATLAB一个M文件的function返回值怎么在另一个M文件中的函数调用这个返回值?...

    答:1.首先要在笔记本电脑上安装好指定版本的matlab软件并双击打开. 2.然后双击matlab图标打开其主页面,可以看到这个软件的按钮都是全英文单词的. 3.那么创建m文件的方法就是鼠标移动到Ne ...

  5. 王梦君 matlab,那是每个matlab程序都要有function么 “#”这个符号是什么意...

    还有就是""" Set up the plot figures, axes, and items to be done for each frame. This modu ...

  6. 台湾国立大学郭彦甫Matlab教程笔记(6)user define function

    台湾国立大学郭彦甫Matlab教程笔记(6)user define function 这一部分是function的讲解 scripts vs. functions 1.scripts and func ...

  7. matlab中rastrigin图形绘制,matlab函数function

    x?6 x?6 (1) 利用MATLAB语言编写S函数.程序如下: function [sys,x0,str,ts]=sfunction(t,x,u,flag) switch flag, case 0 ...

  8. matlab中function c=li,matlab 函数表

    Matlab库函数命令大全 附录 MATLAB函数参考 附录1 常用命令 附录1.1 管理用命令 函数名 功能描述 函数名 功能描述 addpath 增加一条搜索路径 rmpath 删除一条搜索路径 ...

  9. Matlab实现直方图均衡化(基于自定义函数)

    Matlalb实现直方图均衡化 直方图均衡化 Matlab代码实现 直方图均衡化 直方图均衡化是一种使输出图像直方图近似服从均匀分布的变换算法,其计算步骤如下: 列出原始图像的灰度级fjf_jfj​, ...

最新文章

  1. 阿里云查看mysql版本_查看mysql版本的四种方法及常用命令
  2. WiFi安全之WPA介绍
  3. 解决yarn build时报错:内存溢出FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed
  4. java如何获得当前文件路径
  5. 浅谈C++类(5)--友元
  6. IBM服务器,SQLEXPRESS 服务问题
  7. dcmtk在PACS开发中的应用(基础篇) 作者:冷家锋 第四章 工作列表(Work List)(二)...
  8. Silverlight/Windows8/WPF/WP7/HTML5周学习导读(9月17日-9月23日)
  9. 14-1 获得初始页面内容
  10. 阿里启动“Buy+”计划,正式成立 VR 实验室
  11. niceScroll 的使用
  12. 前端页面实现时间显示
  13. Google产品设计师:从二维界面到虚拟现实
  14. 有一根27厘米的细木杆java_百度笔试题 蚂蚁爬杆
  15. matlab怎么看输出电压纹波,Boost变换器的能量传输模式和输出纹波电压分析.pdf
  16. 小米air2se耳机只有一边有声音怎么办_169元,性价比超高,小米蓝牙耳机Air2 SE,C位出道...
  17. android 7.0关机动画,Android 修改系统关机动画的实现
  18. CPU频率是什么?主频、睿频和超频哪个更重要?
  19. Array.slice 的常用用法
  20. IOS 应用内打开三方地图app直接导航(高德坐标)

热门文章

  1. 远离烈日 盘点中国10大避暑胜地
  2. 树莓派中文支持(中文显示和中文输入法)
  3. mac电脑无法读取移动硬盘
  4. 具有民族风采的韩国绒超纤皮绳
  5. FCN全卷积网络理解及代码实现(来自pytorch官方实现)
  6. 面对微服务的N种坑,我们需要构建综合的微服务治理能力
  7. pytorch错误记录:TypeError: Cannot handle this data type: (1, 1, 64), |u1
  8. matlab scope 设置,Simulink中示波器[scope]设置.pdf
  9. linux mrtg 进程名称,linux mrtg
  10. transform: perspective 和 perspective 的区别