资源简介
TV模型图像修复 ;matlab语言;去除人脸上的杂字;运算不断迭代就可以了,迭代次数可自定义,或是不断迭代直到某条件成立都是可以的。
代码片段和文件信息
clc;clear;close all;
img=double(imread(‘lena.jpg‘));
mask=rgb2gray(imread(‘ma.jpg‘))>160;
[m n]=size(img);
for i=1:m
for j=1:n
if mask(ij)==0
img(ij)=0;
end
end
end
imshow(img[]); %合成的需要修复的图像
lambda=0.2;
a=0.5;
imgn=img;
for l=1:300 %迭代次数
for i=2:m-1
for j=2:n-1
if mask(ij)==0 %如果当前像素是被污染的像素,则进行处理
Un=sqrt((img(ij)-img(i-1j))^2+((img(i-1j-1)-img(i-1j+1))/2)^2);
Ue=sqrt((img(ij)-img(ij+1))^2+((img(i-1j+1)-img(i+1j+1))/2)^2);
Uw=sqrt((img(ij)-img(ij-1))^2+((img(i-1j-1)-img(i+1j-1))/2)^2);
Us=sqrt((img(ij)-img(i+1j))^2+((img(i+1j-1)-img(i+1j+1))/2)^2);
Wn=1/sqrt(Un^2+a^2);
We=1/sqrt(Ue^2+a^2);
Ww=1/sqrt(Uw^2+a^2);
Ws=1/sqrt(Us^2+a^2);
Hon=Wn/((Wn+We+Ww+Ws)+lambda);
Hoe=We/((Wn+We+Ww+Ws)+lambda);
How=Ww/((Wn+We+Ww+Ws)+lambda);
Hos=Ws/((Wn+We+Ww+Ws)+lambda);
Hoo=lambda/((Wn+We+Ww+Ws)+lambda);
imgn(ij)=Hon*img(i-1j)+Hoe*img(ij+1)+How*img(ij-1)+Hos*img(i+1j)+Hoo*img(ij);
end
end
end
img=imgn;
end
figure;
imshow(img[])
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1430 2018-10-21 09:21 tuxiangxiufu1\Unti
文件 10555 2018-10-21 09:23 tuxiangxiufu1\lena.jpg
文件 38118 2018-10-21 09:27 tuxiangxiufu1\ma.jpg
目录 0 2018-10-21 09:27 tuxiangxiufu1\
- 上一篇:multisim 四路抢答器
- 下一篇:数值计算方法 基于 MATLAB实现
相关资源
- 数值计算方法 基于 MATLAB实现
- 基于GS算法的数字水印
- 熵权法matlab编程
- boost电路模型
- Floyd最短路径算法
- 风力机叶片设计MATLAB程序
- MatlabR2019a安装破解教程.zip
- 基于模型的DMC控制算法
- 线路纵差保护仿真图
- matlab在GUI下语音播放
- 连续投影算法SAP-matlab程序
- matlab灰色系统理论多变量模型-MGM(
- 基于牛拉法的电力系统潮流计算程序
- GRNN神经网络.zip
- PM,MUSIC四阶累积量等几种DOA估计算法
- 基于matlab的双向A*算法
- 基于MATLAB的指纹定位算法 NN KNN WK
- matlab的mpt工具箱含voronoi函数
- 风电场电力系统可靠性评估matlab程序
- 基于MATLAB的卷积演示系统gui
- matlab激光光束
- vrp+matlab+模拟退火
- 2016matlab破解版笔记本内置摄像头配置
- EWT经验小波matlab应用实现信号处理
- 基于MATLAB鲁棒控制工具箱的计算机硬
- 电机直接起动matlab仿真
- MATLAB——将数组文件写入到dat文件中
- MATLAB——创建变量对话输入对话框
- MATLAB——三角波的实现
- MATLAB——求指定区域上泊松方程的数
评论
共有 条评论