📄 fanyan.m
字号:
function [err,DestImage,Xlabel,Ylabel]=FanYan(FourFrame, Height, Width,LineNum)
fid = fopen(FourFrame);
Xlabel=[];
Ylabel=[];
if fid ~= -1
err=0;
file = textscan(fid, '%s', 'delimiter', '\n', 'whitespace', '');
fclose(fid);
Hang=file{1};
HangSize_t=size(Hang,1);
cnt=HangSize_t;
while cnt >= 1
if isequal(Hang{cnt}, '') == 1
cnt = cnt-1;
else
break;
end
end
HangSize = cnt;
SatNum_t=Hang{LineNum,:};
SatNum=str2num(strrep(SatNum_t,'SATEOBJ_NUM=',''));
DestImage=zeros(Height,Width);
if SatNum ~=0
xlabels=zeros(1,SatNum);
ylabels=zeros(1,SatNum);
for i=1:SatNum
Lines{i}=Hang{HangSize-i+1,:};
xlabels(i)=sscanf(Lines{i},'%*s %f',1);
ylabels(i)=sscanf(Lines{i},'%*s %*f %*s %f',1);
xlabel=round(xlabels(i));
ylabel=round(ylabels(i));
Xlabel=[Xlabel xlabel];
Ylabel=[Ylabel ylabel];
if xlabel>1 && ylabel>1 && xlabel<Height && ylabel<Width
for x=xlabel-1:xlabel+1
for y=ylabel-1:ylabel+1
DestImage(x,y)=1;
end
end
elseif xlabel==1 && ylabel>1 && ylabel<Width
for x=1:3
for y=ylabel-1:ylabel+1
DestImage(x,y)=1;
end
end
elseif ylabel==1 && xlabel>1 && xlabel<Height
for x=xlabel-1:xlabel+1
for y=1:3
DestImage(x,y)=1;
end
end
elseif xlabel==Height && ylabel>1 && ylabel<Width
for x=Height-2:Height
for y=ylabel-1:ylabel+1
DestImage(x,y)=1;
end
end
elseif ylabel==Width && xlabel>1 && xlabel<Height
for x=xlabel-1:xlabel+1
for y=Width-2:Width
DestImage(x,y)=1;
end
end
elseif xlabel==1 && ylabel==1
for x=1:3
for y=1:3
DestImage(x,y)=1;
end
end
elseif xlabel==1 && ylabel==Width
for x=1:3
for y=Width-2:Width
DestImage(x,y)=1;
end
end
elseif ylabel==1 && xlabel==Height
for x=Height-2:Height
for y=1:3
DestImage(x,y)=1;
end
end
elseif ylabel==Width && xlabel==Height
for x=Height-2:Height
for y=Width-2:Width
DestImage(x,y)=1;
end
end
end
end
else
DestImage=zeros(Height,Width);
Xlabel=[];
Ylabel=[];
end
else
err=1;
DestImage=zeros(Height,Width);
Xlabel=[];
Ylabel=[];
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -