dir='D:\m\pic\s1\';
picname=importdata(strcat(dir,'c.txt'));

[m,n]=size(picname);
p=0;
q=0;

for i=1:m
  ml=mleft(strcat(dir,picname{i}));
  mr=mright(strcat(dir,picname{i}));
  q=mcombine(q,ml');
  %除去第一项零向量
  p=mcombine(p,mr');
end

q=q(:,2:size(q,2));
p=p(:,2:size(p,2));
%除去第一项零向量

per=0.6;
while per<1&per>0.3
  g=mcomp(p,q,per);
  %理论上要减去1，即size(q,2)-1，但是g本身多了一个额外的0向量，因此不用减去1
  if size(g,2)>(size(q,2))
    per=per+0.01;
  elseif size(g,2)<(size(q,2))
    per=per-0.01;
  else
    per=per+1;
  end
end

%以上是通过调整匹配度来生成连接组。

e=size(g,2);
g=g(:,2:e);
%删除g的第一个零向量

pics=mfind(g,1);
%picture sequence.

pic=imread(strcat(dir,picname{pics(1)+1}));
% 地址必须加1，因为数组对应的是真实名称，而真实名称从0开始，importdata的计数从1开始，两者不同
sizepics=size(pics,2);

i=2;
while i<=sizepics
pic1=imread(strcat(dir,picname{pics(i)+1}));
pic=[pic pic1];
i=i+1;
end

imshow(pic)
imwrite(pic, strcat(dir,'hecheng.jpg'), 'Quality', 75); 