图像增强基于量子遗传算法实现图像增强matlab源码
Posted Matlab走起
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像增强基于量子遗传算法实现图像增强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');
完整代码或者仿真咨询添加QQ1575304183
以上是关于图像增强基于量子遗传算法实现图像增强matlab源码的主要内容,如果未能解决你的问题,请参考以下文章
图像增强基于matlab量子遗传算法优化beta自适应图像增强含Matlab源码 2259期
遗传雾天图像基于遗传算法阈值分割的雾天图像增强算法matlab仿真
图像增强基于粒子群算法优化gabor滤波器实现图像增强matlab源码
图像增强基于matlab萤火虫算法图像对比度增强含Matlab源码 2142期