function pred_sar = generate_predicted_sar(scatter_3d, proj_params, target_angle)
% 生成预测的SAR图像
% 找到最接近目标角度的投影参数
[~, idx] = min(abs([proj_params.angle] - target_angle));
P = proj_params(idx).P;
% 投影三维散射中心到二维平面
proj_2d = (P * scatter_3d')';
proj_2d = proj_2d(:, 1:2);
% 创建空白图像
img_size = [256, 256]; % 假设图像大小为256x256,可以根据需要调整
pred_sar = zeros(img_size);
% 将散射中心绘制到图像上
for i = 1:size(proj_2d, 1)
x = round(proj_2d(i,1));
y = round(proj_2d(i,2));
if x >= 1 && x <= img_size(2) && y >= 1 && y <= img_size(1)
pred_sar(y, x) = 1; % 简单地将散射中心标记为1
end
end
% 应用高斯滤波使散射点更像真实SAR图像
pred_sar = imgaussfilt(pred_sar, 1);
% 归一化图像
pred_sar = pred_sar / max(pred_sar(:));
end
08-15
386
08-15
219