matlab练习程序(模糊集图像增强)
算法有很多变种。不过主要就是以下三步。
1.设计隶属度函数将图像从空间域变换到模糊集域。
2.设计模糊增强算子,在模糊集域对图像进行处理。
3.根据第1步的隶属度函数重新将图像从模糊集域变换到空间域。
这和频域处理中的变换反变换不是很像么。
我使用的隶属度函数和模糊增强算子在这篇论文里,也算相关算法的经典论文了。
处理结果如下:
原图:
模糊集增强后:
matlab代码如下:
clear all; close all; clc; img=double(imread('lena.jpg')); imshow(img,[]) [m n]=size(img); Fe=1; %控制参数 Fd=128; xmax=max(max(img)); u=(1+(xmax-img)/Fd).^(-Fe); %空间域变换到模糊域 %也可以多次迭代 for i=1:m %模糊域增强算子 for j=1:n if u(i,j)<0.5 u(i,j)=2*u(i,j)^2; else u(i,j)=1-2*(1-u(i,j))^2; end end end img=xmax-Fd.*(u.^(-1/Fe)-1); %模糊域变换回空间域 figure; imshow(uint8(img));
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】博客园携手 AI 驱动开发工具商 Chat2DB 推出联合终身会员
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步