基于脊波字典的多目标遗传优化压缩感知图像重构方法_2

文档序号:9811347阅读:来源:国知局
];
[0048] (4b)初始化种群P = {(si,gi),(S2,g2),· · ·,(sk,gk),· · ·(SN,gN)},k=l,2, · · ·,N, 其中,Sk对应种群每个个体的第一个目标,gk对应种群每个个体的第二个目标;
[0049] (4bl)在稀疏度范围内随机产生N个正整数{S1,S2, . . .,sk,. . .,sN},用这N个正整 数初始化种群每个个体的第一个目标Sk;
[0050] (4b2)根据种每个个体的第一个目标值Sk,初始化种群每个个体的第二个目标gk:
[0051] 对于光滑块,取出脊波字典36个方向中每个方向前5个尺度的原子,按方向组成方 向子字典,每次随机取出Sk个方向子字典,随机在这Sk个方向子字典中取出Sk个原子组成原 子组合,初始化种群个体的第二个目标gk;
[0052] 对于单方向块,从脊波字典中取出第m个方向及与第m个方向左右相邻的4个方向 的子字典作为该单方向类图像块的子字典Ψ8, Ψ8= { ΨΜΛ Ψ' ΨΜ+1,ΨΜ+2},其中,m 表示该单方向类图像块的方向,随机在子字典$8中取出sk个原子组成原子组合,初始化种 群个体的第二个目标gk;
[0053] 对于多方向类图像块,按方向取出脊波字典36个方向的原子,组成方向字典 Ψ2, . . .,Wk,. . . Ψ36,对第k个种群个体,随机在第k个方向子字典上找到%个原子组成原子 组合,初始化第k个种群个体的第二个目标g k;
[0054] (4d)对初始种群的所有个体,按如下适应度函数,计算每个个体的适应度值:
[0056] 其中,f(gk)是要重构的某一类观测向量对应的图像块的在第k个种群个体上的适 应度值,η是要重构的某一类的观测向量中的包含的测量个数,j是某一类中测量的编号,j =1,2, ...,n,Y聚类之后的某一类测量向量,L是要重构的某一类的观测向量中第j个测量 向量,D」是重构的某一类图像块的第j个图像块的脊波字典原子组合,、是要重构的某一类 的观测向量中第j个观测向量对应的图像块的稀疏表示系数,Ι?是向量二范数的平方。
[0057] 步骤5,对当前种群个体执行基于不同基因位置变长编码的交叉操作,并更新相应 种群个体的第一个目标,得到交叉后的种群。
[0058]以往的交叉操作,通常随机选定一个整数作为交叉点,然后将交叉点之后的原子 进行互换,得到两个的两个新个体和原来的个体长度一样,在本实例中执行不同交叉点的 交叉操作,得到两个和原来的个体长度不一样的新个体,其具体实现如下:
[0059] (5a)根据交叉概率C随机选择出Τ对种群个体T = NXC,每次选择一对种群个体进 行交叉;
[0060] (5b)交叉时,随机生成小于选定的种群个体第一个目标的两个正整数,作为两个 交叉点;再将两个种群个体的第二个目标,即原子组合,交叉点后的原子进行互换,形成两 个新的种群个体;
[0061] (5c)计算两个新种群个体第二个目标中原子的个数,分别作为两个新种群个体的 第一个目标;
[0062] (5d)对新种群个体的第一个目标大于设定的稀疏度范围上界的个体,将稀疏度范 围的上界作为它的第一个目标,再按照第二个目标中原子的方向,选择原子组合作为它的 第二个目标;
[0063] (5dl)首先统计个体第二个目标中原子的方向;
[0064] (5d2)从每个方向上先各选一个原子;
[0065] (5d3)判断选出的原子个数是否达到要求,如果达到要求就停止,否则继续(5d2) 步骤,最终选出的原子组合作为新个体的第二个目标。
[0066] 步骤6,对当前交叉后的种群执行基于先验信息的新个体的插入操作,得到新种群 并计算新种群个体的适应度值。
[0067] (6a)首先设置新稀疏度值集合E为空集,取出所有的种群个体的第一个目标保存 到集合G中;
[0068] (6b)将G中的所有元素从小到大排列,计算两个邻近元素之间的间隔值;
[0069] (6c)判断有没有两个邻近元素之间的间隔值大于2,如果有就从中选出间隔值最 大的两个元素,计算出这两个元素的中间值加入到新的稀疏度集合E中,并且把该值也加入 到原有的稀疏度值集合G中;
[0070] (6d)继续步骤(6b)直到没有两个邻近的稀疏度之间间隔值大于2。
[0071] (6e)将新的稀疏度集合E中的值,作为新插入种群个体的第一个目标,然后再根据 图像块被标记的类别随机从相应的子字典中挑选原子组成原子组合作为它们的第二个目 标;
[0072]如果要重构的图像块被标记的是光滑块,则从整个脊波字典中拿出各个方向前5 个尺度的原子组成一个尺度字典,在尺度字典中随机选出个体第一个目标所对应的整数个 原子组成原子组合,作为个体的第二个目标;
[0073] 如果要重构的图像块被标记的是单方向块,则从相应的方向子字典中随机选出个 体第一个目标所对应的整数个原子组成原子组合,作为个体的第二个目标;
[0074] 如果要重构的图像块被标记的是多方向块,则从整个脊波字典中随机选出个体第 一个目标所对应的整数个原子组成原子组合,作为个体的第二个目标;
[0075] (6d)根据新种群个体的第二个目标计算每个新种群个体的适应度值。
[0076] 步骤7,对当前种群个体的第二个目标执行多点变异操作。
[0077] (7a)根据变异概率C随机选择B个种群个体Β = ΝΧ(^ ;
[0078] (7b)变异时,对于每一个选定的种群个体的第二个目标,即原子组合中任意个位 置的原子用脊波字典中随机挑选出的原子进行替换,产生一个新的种群个体;
[0079] (7c)计算变异产生的新种群个体的适应度;
[0080] (7d)比较父代与子代的适应度,如果子代的适应度小于父代,就用子代替换父代, 否则不替换。
[0081] 步骤8,根据新种群每个个体的第一个目标和对应的适应度值,计算非支配解集F。
[0082] (8a)设非支配解F为空集,支配解集D为空集;
[0083] (8b)对每一个种群个体?*4 = 1,2,...,1找到第一个目标小于它的种群个体,记 录到集合Η中;
[0084] (8c)比较种群个体pt与集合Η中种群个体的适应度值,如果集合Η中存在一个种群 个体Ph,h = l,2, . . .,N,h矣t,它的适应度小于pt的适应度,则种群个体pt被种群个体ph所支 配,即将种群个体Pt加入到支配解集Q中;否则,Pt没有被任何个体所支配,把它加入到非支 配解F中;
[0085] (8d)依此判断种群中每一个个体,最终得到非支配解F和支配解集Q。
[0086] 步骤9,根据非支配解集F中种群个体的数目,均匀的选择下一代种群个体。
[0087] 如果非支配解集F中种群个体的数目刚好等于种群大小,则直接选择非支配解集F 中的种群个体作为下一代种群;
[0088] 如果非支配解集F中种群个体的数目小于种群大小,则先选择所有的非支配解集F 中的种群个体,再从支配解集Q中选择剩余的种群个体,得到下一代种群;
[0089] 如果非支配解集F中种群个体的数目大于种群大小,则在非支配解集F中按照以下 步骤,选择种群个体进入下一代种群:
[0090] 第一步:将非支配解集F中的第一个目标最小的种群个体pa和第一个目标最大的 种群个体Pb加入到下一代种群f中,并设v = 2,v是下一代种群/中种群个体的总数,w减小 2,w是非支配解集F中的种群个体总数;
[0091] 第二步:计算非支配解集F中剩余的种群个体到种群f中个体的最小欧式距离h, b2,. . .,be,. . .,bw-v,Θ -1,2,..., W-V ;
[0092] 第三步:在欧式距离b^bs,. . .,be,. . .,bw-v中找到最大值所对应的种群个体pc,将 其加入到下一代种群f中,V增加1,即v=v+l ;w减少1,即W=W-1;
[0093] 第四步:判断加入到下一代种群f中个体的总数是否达到要求,如果达到要求就 停止,否则继续第二步。
[0094] 步骤10,根据种群的非支配解集F,找到拐点所在的种群个体。
[0095] (10a)按照非支配解集F中的每个种群个体的第一个目标和第二个目标,建立一个 二维坐标系:种群个体的第一个目标作为横坐标;种群个体的第二个目标所对应的适应度 值作为纵坐标;
[0096] (10b)找到第一个目标最小的种群个体pJP第一个目标最大的种群个体pb;<
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1