附件四复原图:
19
附录3
附件五复原图a:
20
附件五复原图b:
21
22
附录4
附录4.1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 读取目录下所有图像 % 参数:
% filePath 图像所在路径 % 返回值:
% data 所有图像的值,存储在cell中 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function data = readSubImage(docPath)
%遍历目录下所有文件
tempPath = sprintf( '%s\\\\*.bmp',docPath); fileName = dir(tempPath);
%依次读入所有图像
for i=1:length(fileName)
filePath = sprintf( '%s\\\\%s',docPath,fileName(i).name); data{i} = imread(filePath); end
附录4.2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 拼接图像,显示图像,试用于1*n的碎片 % 参数:
% data 图像RGB数据 % 返回值:
% array 拼接出的序号,此程序序号从0开始,即0为000 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function array = judge(data)
%计算有多少个子图 temp = size(data); dataNum = temp(2);
%根据子图左页边距的像素遍历,计算最大空白像素的列的序号 maxPix = 0; leftIndex = 0; for i = 1:dataNum
temp = judgeLeft(data,i); if maxPix < temp maxPix = temp; leftIndex = i; end end
%记录拼接后的第一个子图序号 array(1) = leftIndex;
%拼接
23