💥1 概述
图像分辨率是评价图像成像系统的---项重要技术指标.图像分辨率又分为图像的空间分辨率、灰度分辨率和频谱分辨率等.在实际应用中,受到各种因素的限制,通过现有条件要达到所需求的分辨率往往是个难题.在我国,即便是计划发射的实时传输型侦察卫星,图像的地面分辨率与之相比,不仅远远低于美俄的发展水平,同时也达不到法国、日本以及以色列等国的技术水平.可见,如何利用采用低分辨率技术的像机来获取高分辨率图像已成为目前发展我国航天、军事等---项必不可少的关键技术.早在20世纪60年代就有人提出了超分辨率的概念,最初的方法包括频谐外推法、能量连续降减法、长椭球函数法、线性均方外推法以及叠加正弦模板法等.直到今天,它仍然是图像处理领域有待进-一步研究的热点课题之一.
📚2 运行结果
部分代码:
clear clc close all fileName = 'IMG1.jpg' IMG_REF_BINARY = PreparePhoto(fileName); %% controling paramters of the GA algortihm Problem.obj = @FitnessFunction; Problem.nVar = size(IMG_REF_BINARY,1) * size(IMG_REF_BINARY,2); M = 30; % number of chromosomes (cadinate solutions) N = Problem.nVar; % number of genes (variables) MaxGen = 1000; Pc = 0.95 Pm = 0.001; Er = 0.2; visualization = 1; % set to 0 if you do not want the convergence curve figure subplot(1,2,1) imshow(IMG_REF_BINARY) title('Original image') [BestChrom] = GeneticAlgorithm (M , N, MaxGen , Pc, Pm , Er , Problem.obj , visualization ) disp('The best chromosome found: ') BestChrom.Gene disp('The best fitness value: ') BestChrom.Fitness function [ newPopulation2 ] = elitism(population , newPopulation, Er) M = length(population.Chromosomes); % number of individuals Elite_no = round(M * Er); [max_val , indx] = sort([ population.Chromosomes(:).fitness ] , 'descend'); % The elites from the previous population for k = 1 : Elite_no newPopulation2.Chromosomes(k).Gene = population.Chromosomes(indx(k)).Gene; newPopulation2.Chromosomes(k).fitness = population.Chromosomes(indx(k)).fitness; end % The rest from the new population for k = Elite_no + 1 : M newPopulation2.Chromosomes(k).Gene = newPopulation.Chromosomes(k).Gene; newPopulation2.Chromosomes(k).fitness = newPopulation.Chromosomes(k).fitness; end end