function [Ps,Pd,Pv,Ph,Pod,Pcd,Pmd] = sevenSD(t11,t12,t13,t22,t23,t33)
% 7成分目标分解
[lines,pixels] = size(t11);
TP = t11+t22+t33;
%% 计算初始的各散射分量
Ph = 2*abs(imag(t23)); % 螺旋散射
Pod = 2*abs(real(t13)); % 定向偶极子散射
Pmd = 2*abs(real(t23)); % 混合偶极子散射
Pcd = 2*abs(imag(t13)); % 耦合偶极子散射
Pv = 2*t33-Ph-Pmd-Pod-Pcd; % 基本体散射
%% 计算条件C1
C1 = t11-t22-(7/8)*t33+(1/16)*(Pmd+Ph)-(15/16)*(Pcd+Pod);
Ph(C1>0) = NaN;
Pv(C1>0) = NaN;
%% 计算不同分支条件下的各散射模型分量
Ps = zeros(lines,pixels); Pd = zeros(lines,pixels);
Pmw = zeros(lines,pixels); Pcw = zeros(lines,pixels);
S = zeros(lines,pixels); D = zeros(lines,pixels);
C = zeros(lines,pixels);
for i = 1 : lines
for j = 1 : pixels
if C1(i,j)>0
% 判断Pv是否大于0
if (Pv(i,j)>0)
else
Ph(i,j) = 0;
Pod(i,j) = 0;
Pcd(i,j) = 0;
Pmd(i,j) = 0;
Pv(i,j) = 2*t33(i,j);
end
% 计算条件ratio
ratio = 10*log10((t11(i,j)+t22(i,j)-2*real(t12(i,j)))/(t11(i,j)+t22(i,j)+2*real(t12(i,j))));
% 根据ratio选择不同的体散射模型
if (ratio<=-2)
Pv(i,j) = (15/8)*Pv(i,j);
S(i,j) = t11(i,j)-Pv(i,j)/2-Pod(i,j)/2-Pcd(i,j)/2;
D(i,j) = t22(i,j)-(7/30)*Pv(i,j)-Ph(i,j)/2-Pmd(i,j)/2;
C(i,j) = t12(i,j)-Pv(i,j)/6;
elseif (ratio>-2)&&(ratio<2)
Pv(i,j) = (2)*Pv(i,j);
S(i,j) = t11(i,j)-Pv(i,j)/2-Pod(i,j)/2-Pcd(i,j)/2;
D(i,j) = t22(i,j)-(1/4)*Pv(i,j)-Ph(i,j)/2-Pmd(i,j)/2;
C(i,j) = t12(i,j);
elseif (ratio>2)
Pv(i,j) = (15/8)*Pv(i,j);
S(i,j) = t11(i,j)-Pv(i,j)/2-Pod(i,j)/2-Pcd(i,j)/2;
D(i,j) = t22(i,j)-(7/30)*Pv(i,j)-Ph(i,j)/2-Pmd(i,j)/2;
C(i,j) = t12(i,j)+Pv(i,j)/6;
end
% 判断是否超过总能量
if (Pv(i,j)+Pmd(i,j)+Ph(i,j)+Pcd(i,j)+Pod(i,j))>TP(i,j)
Ps(i,j) = 0;
Pd(i,j) = 0;
Pv(i,j) = TP(i,j)-Ph(i,j)-Pmd(i,j)-Pod(i,j)-Pcd(i,j);
else
% 计算条件C0
C0 = 2*t11(i,j)+Ph(i,j)+Pmd(i,j)-TP(i,j);
% 根据C0判断
if (C0>0)
Ps(i,j) = S(i,j) + (abs(C(i,j))^2)/S(i,j);
Pd(i,j) = D(i,j) - (abs(C(i,j))^2)/S(i,j);
else
Pd(i,j) = S(i,j) - (abs(C(i,j))^2)/D(i,j);
Ps(i,j) = D(i,j) + (abs(C(i,j))^2)/D(i,j);
end
% 判断能量是否小于0
if (Ps(i,j)>0)&&(Pd(i,j)<0)
Pd(i,j) = 0;
Ps(i,j) = TP(i,j)-Pv(i,j)-Ph(i,j)-Pmd(i,j)-Pod(i,j)-Pcd(i,j);
elseif (Pd(i,j)>0)&&(Ps(i,j)<0)
Ps(i,j) = 0;
Pd(i,j) = TP(i,j)-Pv(i,j)-Ph(i,j)-Pmd(i,j)-Pod(i,j)-Pcd(i,j);
else
end
end
else
% C1<=0
% 判断Pv是否大于0
if (Pv(i,j)>0)
else
Pv(i,j) = 0;
Pmw(i,j) = Pmd(i,j) + Ph(i,j);
Pcw(i,j) = Pcd(i,j) + Pod(i,j);
% 判断Pmw与Pcw两者的关系
if (Pmw(i,j)>Pcw(i,j))
Pcw(i,j) = 2*t33(i,j)-Pmw(i,j);
if (Pcw(i,j)<0)
Pcw(i,j) = 0;
else
end
% 判断Pod与Pcd之间的关系
if (Pod(i,j)>Pcd(i,j))
Pcd(i,j) = Pcw(i,j)-Pod(i,j);
if (Pcd(i,j)<0)
Pcd(i,j) = 0;
else
end
else
Pod(i,j) = Pcw(i,j)-Pcd(i,j);
if (Pod(i,j)<0)
Pod(i,j) = 0;
else
end
end
else
Pmw(i,j) = 2*t33(i,j)-Pcw(i,j);
if (Pmw(i,j)<0)
Pmw(i,j) = 0;
else
end
% 判断Pmd与Ph之间的关系
if (Pmd(i,j)>Ph(i,j))
Ph(i,j) = Pmw(i,j)-Pmd(i,j);
if (Ph(i,j)<0)
Ph(i,j) = 0;
else
end
else
Pmd(i,j) = Pmw(i,j)-Ph(i,j);
if (Pmd(i,j)<0)
Pmd(i,j) = 0;
else
end
end
end
end
% 计算各散射分量
Pv(i,j) = (15/16)*Pv(i,j);
S(i,j) = t11(i,j)-Pod(i,j)/2-Pcd(i,j)/2;
D(i,j) = t22(i,j)-(7/15)*Pv(i,j)-Ph(i,j)/2-Pmd(i,j)/2;
C(i,j) = t12(i,j);
Ps(i,j) = S(i,j)-(abs(C(i,j)))^2/D(i,j);
Pd(i,j) = D(i,j)+(abs(C(i,j)))^2/D(i,j);
% 判断能量是否小于0
if (Ps(i,j)>0)&&(Pd(i,j)<0)
Pd(i,j) = 0;
Ps(i,j) = TP(i,j)-Pv(i,j)-Ph(i,j)-Pmd(i,j)-Pod(i,j)-Pcd(i,j);
elseif (Pd(i,j)>0)&&(Ps(i,j)<0)
Ps(i,j) = 0;
Pd(i,j) = TP(i,j)-Pv(i,j)-Ph(i,j)-Pmd(i,j)-Pod(i,j)-Pcd(i,j);
else
end
end
end
end
% 将所有负能量置零
Ps(Ps<0) = 0;
Pd(Pd<0) = 0;
Pv(Pv<0) = 0;
Ph(Ph<0) = 0;
Pod(Pod<0) = 0;
Pcd(Pcd<0) = 0;
Pmd(Pmd<0) = 0;
end
没有合适的资源?快使用搜索试试~ 我知道了~
Singh七分量散射功率分解附matlab代码.zip
共3个文件
m:2个
mat:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 6 浏览量
2024-01-23
09:58:18
上传
评论
收藏 6.08MB ZIP 举报
温馨提示
1.版本:matlab2014/2019a/2021a,内含运行结果,不会运行可私信 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
资源推荐
资源详情
资源评论
收起资源包目录
Singh七分量散射功率分解附matlab代码.zip (3个子文件)
Singh七分量散射功率分解附matlab代码
Seven-Component-Scattering-Power-Decomposition-of-POLSAR-Coherency-Matrix-main
main.m 699B
sevenSD.m 6KB
t11.mat 6.11MB
共 3 条
- 1
资源评论
Matlab科研辅导帮
- 粉丝: 1w+
- 资源: 7490
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Picasso_v3.1 2.ipa
- chromedriver-mac-arm64.zip
- 蓝zapro.apk
- chromedriver-linux64.zip
- UCAS研一深度学习实验-MNIST手写数字识别python源码+详细注释(高分项目)
- 基于Python和PyTorch框架完成的一个手写数字识别实验源码(带MINIST手写数字数据集)+详细注释(高分项目)
- 基于Matlab在MNIST数据集上利用CNN完成手写体数字识别任务,并实现单层CNN反向传播算法+源代码+文档说明(高分项目)
- NVIDIA驱动、CUDA和Pytorch及其依赖
- 基于SVM多特征融合的微表情识别python源码+项目说明+详细注释(高分课程设计)
- html动态爱心代码一(附源码)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功