资源简介
枝切法进行相位消跳变(解包裹),有示例图。
代码片段和文件信息
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% BranchCuts.m generates branch cuts based on the phase residues. This is
% done using the Goldstein method as described in “Two-dimensional phase
% unwrapping: theory algorithms and software“ by Dennis Ghiglia and
% Mark Pritt.
% “residue_charge“ is a matrix wherein positive residues are 1 and
% negative residues are 0. residue_charge是一个矩阵,用来保存残差值。
% “max_box_radius“ defines the maximum search radius for the balancing of
% residues. If this is too large areas will be isolated by the branch
% cuts.最大窗口半径
% “IM_mask“ is a binary matrix. This serves as an artificial border for the
% branch cuts to connect to.二进制矩阵
% Created by B.S. Spottiswoode on 15/10/2004
% Last modified on 18/10/2004
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function branch_cuts=BranchCuts(residue_charge max_box_radius IM_mask);
[rowdim coldim]=size(residue_charge);
branch_cuts=~IM_mask; %Define initial branch cuts borders as the mask.
residue_charge_masked=residue_charge;
residue_charge(logical(~IM_mask))=0; %将不在掩膜中的残差点去掉。Remove all residues except those in the mask
cluster_counter=1; %记录每个群中的残差点个数。Keep track of the number of residues in each cluster
satellite_residues=0; %记录卫星参差点个数?Keep track of the number of satellite residues accounted for
residue_binary=(residue_charge~=0); %逻辑矩阵标注了残差点的位置,即正残差点(+1标记)和负残差点(-1标记)的位置全部用1表明,非残差点不变是0。
residue_balanced=zeros(rowdim coldim); %初始时假定所有的残差点都是不平衡的。
[rowrescolres] = find(residue_binary); %找到残差点的坐标Find the coordinates of the residues
adjacent_residues=zeros(rowdim coldim); %定义搜寻窗口中找到的新残差点的位置Defines the positions of additional residues found in the search box
missed_residues=0; %记录有效的残差点的个数?Keep track of the effective number of residues left unbalanced because of
disp(‘Calculating branch cuts ...‘);
tic;%开始计时
temp=size(rowres);%rowres中保存了残差值的行号
fprintf(‘residues numbe %d‘temp(1));
for i=1:temp(1); %Loop through the residues
radius=1; %Set the initial box size
r_active=rowres(i); %当前活动残差点的行数和列数。Coordinates of the active residue
c_active=colres(i);
count_nearby_residues_flag=1; %用于说明是否跟踪周围残差点的标记。Flag to indicate whether or not to keep track of the nearby residues
cluster_counter=1; %重置残差点个数记录Reset the cluster counter
adjacent_residues=zeros(rowdim coldim); %重置邻近的Reset the adjacent residues indicator
charge_counter=residue_charge_masked(r_active c_active); %保存初始残差点电量Store the initial residue charge
if residue_balanced(r_active c_active)~=1 %Has this residue al
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 328758 2014-01-10 06:17 枝切法\100.bmp
文件 328758 2014-01-10 06:17 枝切法\101.bmp
文件 328758 2014-01-10 06:17 枝切法\102.bmp
文件 328758 2014-01-10 06:17 枝切法\103.bmp
文件 328758 2014-01-10 06:17 枝切法\104.bmp
文件 18100 2013-12-03 12:28 枝切法\BranchCuts.asv
文件 18137 2014-01-04 01:11 枝切法\BranchCuts.m
文件 12081 2013-12-04 07:58 枝切法\FloodFill.asv
文件 12081 2013-12-04 07:58 枝切法\FloodFill.m
文件 3709 2013-12-14 06:34 枝切法\GoldsteinUnwrap2D.m
文件 2086 2009-12-29 06:07 枝切法\PhaseResidues.m
文件 3698 2013-12-04 07:53 枝切法\xiugai.asv
文件 3894 2014-07-04 19:28 枝切法\xiugai.m
目录 0 2014-07-13 13:25 枝切法
----------- --------- ---------- ----- ----
1717576 14
相关资源
- 各向异性扩散方程并将其应用到了图
- 基于Matlab轮廓匹配的物体识别系统的
- matlab将dat数据转换成jpg图像并保存
- 图形图像matlab GUI 实现边缘检测
- MATLAB图像处理GUI(包括边缘检测、二
- MATLAB图像去雾程序.m
- dct图像压缩的matlab实现
- Matlab实现 通过检测QR二维码位置探测
- 图像的压缩感知之AMP算法 matlab程序
- Matlab图像文字区域分割
- 基于区域生长的彩色图像分割算法
- 基于自适应pcnn图像融合
- PCNN的医学图像融合MATLAB源程序
- NSCT 图像去噪 matlab
- NSSTPCNN 图像融合.zip
- 图像配准matlab源代码里面有说明文档
- 彩色含噪图像TV复原MATLAB程序
- matlab实现不同类型和大小卷积核处理
- matlab小波变换 边缘检测
- SIFT+RANSAC图像配准matlab代码,投影变换
- TV模型修复图像MATLAB代码
- 压缩感知 图像处理 MATLAB
- matlab读取并显示遥感dat图像
- 椭圆霍夫变换matlab代码检测二值图像
- matlab识别英文字母程序 附带图像处理
- 基于K-means聚类算法的图像分割及其
- 分形图像代码matlab
- 图像按倍数缩放 Matlab程序 Zoom
- 马尔科夫随机场的图像分割法 比较精
- Matlab实现二维傅里叶变换FFT2
评论
共有 条评论