matlab直方图均衡,使用向量优化
matlab自带有histeq函数对图像进行直方图均衡
自己写了一个,改成向量化形式,效率提高了一点,但是比自带的还是差很多,差不多9倍
function D = my_histeq(I)
[m,n] = size(I);
S = zeros(,,'double');
% 得到0-各个灰阶的计数
i = :m;j = :n;
S(I(i,j)+) = S(I(i,j)+) + ;
% 得到各灰度阶的概率
S = S./(m*n);
% 得到概率累计分布函数
P = zeros(,,'double');
P() = S();
k = :;
P(k) = P(k-) + S(k);
% 投影到灰度阶
D = zeros(m,n,'uint8');
D(i,j) = P(I(i,j)+)*+0.5;
原来使用for循环的
function D = my_histeq(I)
[m,n] = size(I);
S = zeros(,,'double');
% 得到0-各个灰阶的计数
for i = :m
for j = :n
S(I(i,j)+) = S(I(i,j)+) + ; % 注意下标
end
end
% 得到各灰度阶的概率
S = S./(m*n);
% 得到概率累计分布函数
P = zeros(,,'double');
for i = :
if i==
P(i) = S(i);
else
P(i) = P(i-) + S(i);
end
end
D = zeros(m,n,'uint8');
for i = :m
for j=:n
D(i,j) = P(I(i,j)+)*+0.5;
end
end
matlab直方图均衡,使用向量优化的更多相关文章
- Matlab、R向量与矩阵操作 z
已有 1849 次阅读 2012-8-2 15:15 |系统分类:科研笔记|关键词:矩阵 480 window border center Matlab.R向量与矩阵操作 描 述 Matla ...
- Matlab、R向量与矩阵操作
Matlab.R向量与矩阵操作 描 述 Matlab R 1 建立行向量v=[1 2 3 4] v=[1 2 3 4] v<-c(1,2,3,4)或v<-scan(),然后输入 ...
- 遗传算法MATLAB实现(2):一元函数优化举例
遗传算法提供了一种求解非线性.多模型.多目标等复杂系统优化问题的通用框架. 先从例子开始,慢慢再总结理论... [例]利用遗传算法计算函数f(x)=x*cos(5*pi*x)+3.5在区间[-1,2. ...
- [matlab] 6.粒子群优化算法
粒子群优化(PSO, particle swarm optimization)算法是计算智能领域,除了蚁群算法,鱼群算法之外的一种群体智能的优化算法,该算法最早由Kennedy和Eberhart在19 ...
- 遗传算法MATLAB实现(3):多元函数优化举例
多峰的Shubert为: 求f(x,y)在[-10,10]x[-10,10]上的最大值. MATLAB代码: fun_mutv函数为: function my=fun_mutv(x,y) t1=zer ...
- Matlab中的向量
1. 向量的创建 1)直接输入: 行向量:a=[1,2,3,4,5] 列向量:a=[1;2;3;4;5] 2)用“:”生成向量 a=J:K 生成的行向量是a=[J,J+1,…, ...
- matlab直方图均衡
clear all; i=imread('cameraman.tif'); figure; subplot(2,2,1); imshow(i); title('原始图像'); subplot(2,2, ...
- MATLAB粒子群优化算法(PSO)
MATLAB粒子群优化算法(PSO) 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.介绍 粒子群优化算法(Particle Swarm Optim ...
- Applying vector median filter on RGB image based on matlab
前言: 最近想看看矢量中值滤波(Vector median filter, VMF)在GRB图像上的滤波效果,意外的是找了一大圈却发现网上没有现成的code,所以通过matab亲自实现了一个,需要学习 ...
随机推荐
- php 总结第一篇(望大家补充!谢谢)
/* 数组的常用函数 * * 数组的排序函数 * sort() * rsort() * usort() * asort() * arsort() * uasort() * ...
- 分布式追踪系统dapper
http://www.cnblogs.com/LBSer/p/3390852.html 最近单位需要做自己的分布式监控系统,因此看了一些资料,其中就有google的分布式追踪系统dapper的论文:h ...
- Java正则表达式实现字符串的动态多替换
需求场景: 今天在处理SQL语句的时候,由于数据库中存的格式是VARCHAR2型的,这就需要对SQL语句中WHERE条件后边的带数字的字符串加上单引号,对于字符串的处理,首先想到的就是正则表达式,对正 ...
- WCF与Web API 的应用场景
Web api 主要功能: 支持基于Http verb (GET, POST, PUT, DELETE)的CRUD (create, retrieve, update, delete)操作 请求的回 ...
- Oracle监听的静态注册和动态注册
静态注册:通过解析listene.ora文件 动态注册:由PMON进程动态注册至监听中 在没有listener.ora配置文件的情况下,如果启动监听,则监听为动态注册.用图形化netca创建的监听,默 ...
- Using Script and Style Bundles【翻译】
遇到个MVC4中的bundles的问题,问了别人,由于不熟悉MVC4,始终问不到点子上,所以自己就翻译了下资料,搞明白了这个VS显示正常IIS显示异常的小问题,申明我翻译的很烂,不过共享出来或许会帮到 ...
- Can't find PHP headers in /usr/include/php
解决办法: yum install php-devel
- three.js材质
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- 玩转AR,联想将在2017年推出第二款Tango AR手机
今年6月份,联想与谷歌合作推出了全球首款消费级AR手机Phab2 Pro,并获得很大的关注.作为谷歌Project Tango的一部分,这款手机的最大亮点是它搭载了三颗后置摄像头和多个传感器,机身背面 ...
- react学习小结(生命周期- 实例化时期 - 存在期- 销毁时期)
react学习小结 本文是我学习react的阶段性小结,如果看官你是react资深玩家,那么还请就此打住移步他处,如果你想给一些建议和指导,那么还请轻拍~ 目前团队内对react的使用非常普遍,之 ...