人人范文网 范文大全

全国大学生数学建模B题源程序

发布时间:2020-03-02 15:39:14 来源:范文大全 收藏本文 下载本文 手机版

运行前,请将附件所在的目录加入到MATLAB的路径中!!!!

都是自己编的,还望大神指教!!

附件1和2的源程序:

Clear all

I=cell(1,19);%存放二值图片

A=cell(1,19);%存放原始图片

for j=1:19

if j-1

imageName=strcat(\'00\',num2str(j-1),\'.bmp\');

else

imageName=strcat(\'01\',num2str(j-11),\'.bmp\');

end

I{j} = imread(imageName);

end

A=I;

%读取图片

for j=1:19

for k=1:1980

for h=1:72

if I{j}(k,h)~=255

I{j}(k,h)=1;

else

I{j}(k,h)=0;

end

end

end

end

%将图片二值化

b=zeros(1,19);

for i=1:19

sum=0;

for j=1:1980

sum=sum+I{i}(j);

end

b(i)=sum;

end

for i=1:19

if b(i)==0

q=i;

end

%找出原图最左边的碎纸片的编号,并存放在变量q中

for i=0:18

I{i+1}(1)=i;

A{i+1}(1)=i;

end

%对每张图片做标记(即在二值化后的矩阵和原始图片的矩阵的第一个元素处做标记) t=I{q};

I{q}=I{1};

I{1}=t;

%交换二值化后的第q张和第一张图片

t=A{q};

A{q}=A{1};

A{1}=t;

%交换原始图片的第q张和第一张

for k=1:18

d=zeros(18,1);

for i=k+1:19

t=0;

for j=1:1980

ifI{k}(j,72)==I{i}(j,1)

t=t+1;

end

end

d(i-1)=t;

end

[w,v]=max(d);

t=I{v+1};

I{v+1}=I{k+1};

I{k+1}=t;

end

%对二值图片进行拼接

for k=1:19

for s=1:19

if I{k}(1)==A{s}(1)

t=A{s};

A{s}=A{k};

A{k}=t;

end

end

end

%根据拼接好的而二值图片的标记信息交换对应的原始图片以便显示

r=[A{1:19}];

%对图片做最后的处理,显示图片

for i=1:19

y(i)=A{i}(1);

end

%将碎片序号按复原后顺序填入1×19的矩阵

附件2的源程序:

I=cell(11,19);%存放二值图片

A=cell(11,19);%存放原始图片

c=zeros(11,19);

for j=1:209

if j-1

imageName=strcat(\'00\',num2str(j-1),\'.bmp\');

else if j-1=10

imageName=strcat(\'0\',num2str(j-1),\'.bmp\');

else if j-1>=100 && j-1

imageName=strcat(num2str(j-1),\'.bmp\');

end

end

end

I{j} = imread(imageName);

end

A=I;

%读取图片

for j=1:209

for k=1:180

for h=1:72

if I{j}(k,h)~=255

I{j}(k,h)=1;

else

I{j}(k,h)=0;

end

end

end

end

%将图片二值化

for i=0:208

I{i+1}(1)=i;

A{i+1}(1)=i;

end

%对每张图片做标记(即在二值化后的矩阵和原始图片的矩阵的第一个元素处做标记) a1=zeros(1,209);

a2=zeros(1,209);

a3=zeros(1,209);

for j=1:209

sum1=0;

for i=1:180

sum1=sum1+I{j}(i,1);

end

a1(j)=sum1;

end

for j=1:209

sum2=0;

for i=1:72

sum2=sum2+I{j}(1,i);

end

a2(j)=sum2;

end

for i=1:209

a3(i)=a1(i)+a2(i);

end

q=50;

c(1,1)=q-1;

%找出原图左上角的碎纸片的编号,并存放在变量q中

%在找的过程中发现一共有10张碎纸片符合要求,此时需要涉入人工干预

%经过人工分析比较,发现,最符合要求的碎纸片的编号为049,因此直接给q赋值为50 %对每张图片做标记(即在二值化后的矩阵和原始图片的矩阵的第一个元素处做标记) j=1;

for i=1:208

if c(i)==0

C{j}=I{i+1};

j=j+1;

end

end

%找出可能是最左边边缘的的碎纸片,并存放在元胞数组C中,共有16个符合要求 t=I{q};

I{q}=I{1};

I{1}=t;

%交换二值化后的第q张和第一张图片

r=cell2mat(A);

for i=1:16

t=0;

for j=1:72

if I{1}(180,j)==C{i}(1,j)

t=t+1;

end

d(i)=t;

end

[w,v]=max(d);

y=C{v}(1);

t=I{2};

I{2}=I{y+1};

I{y+1}=t;

%************************上面的代码不要修改*************************%

a=[2038 148 2462 1485 770 361 7610 2396 9429 12918 2112 501 230 818 1157 2110 5465 5111 10242

6066 4233 4988 4250 720 10392 2985 1974 9016 3827 409 11833 817 489 1081 3089 90 6100 270

1031 7561 1444 2117 4252 709 6368 428 134 1219 4248 129 1007 406 2994 163 181 3782 10404

2389 1489 4964 5653 299 232 3008 9612 8409 4251 1177 12995 1247 5477 58 1441 1107 5587 160

1104 823 1028 5998 6544 1158 158 3650 2070 5999 5066 7453 4264 3660 2469 8729 11413 3004 1376753 5067 541 81 149 1014 3830 143 7451 4302 3849 6349 1511 1846 2986 11965 2520 2802 4373

2386 2689 348 417 14010 162 2210 492 4372 1092 159 1677 350 2044 233 126 10924 4230 1011

483 69 70 2481 1453 3083 6781 4308 10244 1221 3781 5637 1090 8339 1490 403 4781 1038 1246

1024 4315 10379 1082 164 3954 717 2062 6083 5049 4981 86 712 1801 1667 340 6954 2333 2106

1261 738 1108 1182 1487 161 2329 5046 9587 1 4998 128 3142 2277 4304 4018 1630 5121 6343

85 10192 2458 2045 300 6942 1688 301 1870 6074 1680 2111 5473 721 2519 11905 6245 1450 1835];

for i=1:209

aa(i)=r(a(i));

end

s1=reshape(aa,11,19);

for k=1:209

for s=1:209

if I{k}(1)==A{s}(1)

t=A{s};

A{s}=A{k};

A{k}=t;

end

end

end

for k=1:19

for i=1:11

for j=1:19

if s1(l,k)==A{i,j}(1)t=A{i,j};A{i,j}=A{l,k};A{l,k}=t;break;end

end

end

end

end

for i=1:11

for j=1:19

I{1}=A{i,j};

end

end

r=cell2mat(A);

imshow(r);

%%对图片做最后的处理,显示图片

全国大学生数学建模B题思路

全国大学生数学建模大赛B题

数学建模B题

数学建模B题

数学建模A,B题

全国大学生数学建B题

全国大学生数学建模竞赛A题参考答案

全国大学生数学建模竞赛题目(A题)

数学建模大赛试题B题

南开大学暑假数学建模B题

全国大学生数学建模B题源程序
《全国大学生数学建模B题源程序.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档