【图像增强】基于量子遗传算法实现图像增强matlab源码

1、基本概念

(1)量子遗传算法是量子计算与遗传算法相结合的智能优化算法,由K.H.Han等人提出,其将量子态、量子门、量子状态特性、概率幅等量子概念引入到遗传算法当中。量子遗传算法也是一种概率搜素算法,它采用量子位来表示基因。遗传算法的基因所表达的是某一确定的信息,而量子遗传算法中,由于量子信息的叠加性使量子位所表达的基因包含所有可能的信息。

(2)在量子计算中,量子比特|0〉和|1〉表示微观粒子的两种基本状态,根据叠加原理,量子信息的叠加态可以表示为这两个基本态的线性组合,即|ψ〉=α|0〉+β|1〉,式中α和β为复数,表示量子位状态的概率幅,其中和分别表示量子态|ψ〉因测量导致坍缩到|0〉态和|1〉态的概率,且满足的归一化条件

(3)在量子遗传算法中,染色体采用量子位的概率幅进行编码,编码方案如下:

θ为量子比特的相位,n为染色体数目,k为量子位的位数即解空间的维数,rand是[0,1]范围内的随机数。每个量子位为分上下两行,分别对应两个量子基本态的概率幅,满足归一化条件,因此每个个体包含上下两条文化基因链,每条基因链是优化问题的一个候选解。由此可知,量子遗传算法在种群规模不变的情况下,候选解个数比遗传算法多一倍,增加了解空间的多样性,提高了寻优成功的概率。

(4)在量子遗传算法中,采用量子旋转门改变量子比特相位,以更新量子位的概率幅,从而达到基因变异的效果。

2、量子遗传算法的基本步骤:

step1:初始化父代染色体

step2:对每个染色体基因位即量子位进行测量,得到一个状态。对每个状态计算适应度,记录最佳个体及适应度。

step3:遗传进化设定的代数,其中采用量子旋转门对每一代染色体进行遗传变异。

step4:达到终止条件,输出最佳个体及适应度。

% 利用量子遗传算法进行图像增强
clc,clear all;close all;
%% read picture
img=rgb2gray(imread('test1.jpg'));
img=imresize(img,0.7);  
figure(1);
imhist(img);            % 原始图像直方图
figure(2);
imshow(img);            % 原始图像
img=double(img);
[row,colume]=size(img); % 图像大小
num_pixel=row*colume;   % 像素个数
%% 利用QGA求最优的alpha, beta
MAX_Geneic=20;          % 遗传代数
sizePopu=10;            % 初始种群数目
tic;
best=QGA_Sharpen(img,MAX_Geneic,sizePopu);
disp(['The total time is ' num2str(toc) 's']);
fprintf('The final alpha is %f\n',best.B(1));
fprintf('The final  beta is %f\n',best.B(2));
fprintf('The best fitness value is %f\n',best.fitnessVal);
%% 画出非线性函数(Beta函数)图像
x=0:0.01:1;
y=pdf('beta',x,best.B(1),best.B(2));
figure(4);
plot(x,y);
%% 处理之后的图像灰度值
img_sharp=best.sharpImg;
figure(5);
imhist(uint8(img_sharp));  % 锐化后图像直方图
figure(6);
imshow(uint8(img_sharp));  % 可视化处理后图像
%imwrite(uint8(cameraman),'test2_opt.jpg');

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab科研辅导帮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值