matlab ³µÅƺÅÂëʶ±ð³ÌÐò´úÂë

while ((Y1(PY2,1)>=50)&&(PY2

IY=I(PY1:PY2,:,:); X1=zeros(1,x); for j=1:x

for i=PY1:PY2 if(I6(i,j,1)==1)

X1(1,j)= X1(1,j)+1; end end end

subplot(3,2,2),plot(0:x-1,X1),title('Áз½ÏòÏñËØµã»Ò¶ÈÖµÀۼƺÍ'),xlabel('ÁÐÖµ'),ylabel('ÏñÊý');

%%%%%%%ÇóµÄ³µÅƵÄÁÐÆðʼλÖúÍÖÕֹλÖÃ%%%%%%%%% PX1=1;

while ((X1(1,PX1)<3)&&(PX1

while ((X1(1,PX2)<3)&&(PX2>PX1)) PX2=PX2-1; end PX1=PX1-1; PX2=PX2+1; %·Ö¸î³ö³µÅÆÍ¼Ïñ% dw=I(PY1:PY2,PX1:PX2,:);

subplot(3,2,3),imshow(dw),title('¶¨Î»¼ôÇкóµÄ²ÊÉ«³µÅÆÍ¼Ïñ')

% 4.2 ³µÅÆ×Ö·û·Ö¸î

% È·¶¨³µÅÆÎ»ÖúóÏÂÒ»²½µÄÈÎÎñ¾ÍÊǽøÐÐ×Ö·ûÇзַÖÀë³ö³µÅƺÅÂëµÄÈ«²¿×Ö·ûͼÏñ¡£

if isrgb(dw)

I1 = rgb2gray(dw); %½«RGBͼÏñת»¯Îª»Ò¶ÈͼÏñ else I1=dw; end

g_max=double(max(max(I1))); g_min=double(min(min(I1)));

T=round(g_max-(g_max-g_min)/3); % T Ϊ¶þÖµ»¯µÄãÐÖµ [m,n]=size(I1);% d:¶þֵͼÏñ %h=graythresh(I1); I1=im2bw(I1,T/256); subplot(3,2,4);

imshow(I1),title('¶þÖµ»¯³µÅÆÍ¼Ïñ');

I2=bwareaopen(I1,20); subplot(3,2,5);

imshow(I2),title('ÐÎ̬ѧÂ˲¨ºóµÄ¶þÖµ»¯Í¼Ïñ');

[y1,x1,z1]=size(I2); I3=double(I2); TT=1;

%%%%%%%È¥³ýͼÏñ¶¥¶ËºÍµ×¶ËµÄ²»¸ÐÐËÈ¤ÇøÓò%%%%% Y1=zeros(y1,1); for i=1:y1 for j=1:x1

if(I3(i,j,1)==1) Y1(i,1)= Y1(i,1)+1 ; end end end Py1=1; Py0=1;

while ((Y1(Py0,1)<20)&&(Py0

while((Y1(Py1,1)>=20)&&(Py1

I2=I2(Py0:Py1,:,:); subplot(3,2,6);

imshow(I2),title('Ä¿±ê³µÅÆÇøÓò');

%%%%%% ·Ö¸î×Ö·û°´ÐлýÀÛÁ¿%%%%%%% X1=zeros(1,x1); for j=1:x1 for i=1:y1

if(I3(i,j,1)==1) X1(1,j)= X1(1,j)+1; end end end figure(5);

plot(0:x1-1,X1),title('Áз½ÏòÏñËØµã»Ò¶ÈÖµÀۼƺÍ'),xlabel('ÁÐÖµ'),ylabel('ÀÛ¼ÆÏñËØÁ¿');

Px0=1; Px1=1;

%%%%%%%%%%%%·Ö¸î×Ö·û%%%%%%%%%%%%%%%%%% for i=1:7

while ((X1(1,Px0)<3)&&(Px0

while (((X1(1,Px1)>=3)&&(Px1

Z=I2(:,Px0:Px1,:); switch strcat('Z',num2str(i)) case 'Z1' PIN0=Z; case 'Z2' PIN1=Z; case 'Z3' PIN2=Z; case 'Z4' PIN3=Z; case 'Z5' PIN4=Z; case 'Z6' PIN5=Z; otherwise PIN6=Z; end figure(3);

subplot(1,7,i); imshow(Z);

Px0=Px1; End

4.3 ³µÅÆ×Ö·ûʶ±ð

×Ö·ûʶ±ð·½·¨Ö÷ÒªÓлùÓÚÄ£°åÆ¥ÅäËã·¨ºÍ»ùÓÚÈ˹¤Éñ¾­ÍøÂçËã·¨¡£»ùÓÚÄ£°åÆ¥ÅäËã·¨ÊÇÊ×ÏȽ«·Ö¸îºóµÄ×Ö·û¶þÖµ»¯,²¢½«Æä³ß´çËõ·ÅΪ×Ö·ûÊý¾Ý¿âÖÐÄ£°åµÄ´óС£¬È»ºóÓëËùÓÐÄ£°å½øÐÐÆ¥Å䣬×îºóѡȡ×î¼ÑÆ¥Åä×÷Ϊ½á¹û¡£½¨Á¢Êý×Ö¿â¶Ô¸Ã·½·¨ÔÚ³µÅÆÊ¶±ð¹ý³ÌÖкÜÖØÒª, Êý×Ö¿â׼ȷ²ÅÄܱ£Ö¤¼ì²â³öµÄÊý¾ÝÕýÈ·¡£»ùÓÚÈ˹¤Éñ¾­ÔªÍøÂçµÄËã·¨ÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÏȶÔÌØÕ÷ÌáÈ¡´ýʶ±ð×Ö·û£¬È»ºóÓÃËù»ñµÃµÄÌØÕ÷ѵÁ·Éñ¾­ÍøÂç·ÖÅäÆ÷£»ÁíÒ»ÖÖÊÇÖ±½Ó½«´ý´¦ÀíͼÏñÊäÈëÍøÂçÓÉÍøÂç×Ô¶¯ÊµÏÖÌØÕ÷ÌáȡֱÖÁʶ±ð½á¹û¡£ÔÚ±¾³ÌÐòÖÐÓûùÓÚÈ˹¤Éñ¾­ÔªÍøÂçʶ±ð³µÅÆ×Ö·û¡£ÔÚ³µÅÆ×Ö·ûʶ±ð²¿·Ö, ×Ö·û¼¯Öаüº¬Ô¼50¸öºº×Ö, 26¸ö´óдӢÎÄ×Öĸ¼°10¸ö°¢À­²®Êý×Ö¡£×ܵÄ×Ö·ûÑù±¾²¢²»Ì«¶à¡£

4.3.1 ¹¹ÔìѵÁ·Ñù±¾ÈçÏÂͼËùʾµÄÊý×ÖºÍ×Öĸ£¬

½«Ñù±¾½øÐйéÒ»»¯Îª50X20´óС£¬ÔÙ½«Í¼Ïñ°´ÁÐת»»³ÉÒ»¸ö1000X1µÄÐÐÏòÁ¿£¬½«ÉÏÊö18¸öͼÏñµÄÑù±¾ÅÅÁÐÔÚÒ»Æð¹¹³É1000X18µÄ¾ØÕóÑù±¾£¬¾¡¿ÉÄܶàµÄ²É¼¯Æû³µÍ¼ÏñÌáÈ¡³µÅÆ£¬²¿·ÖÇзֳö³µÅÆ×Ö·û£¬¹¹Ôì³ö¸ü¶à1000X18µÄ¾ØÐÎÑù±¾£¬Óù¹ÔìºÃµÄÑù±¾¿â¶ÔÉñ¾­ÍøÂç½øÐÐѵÁ·¡£

function inpt = pretreatment(I)

%YUCHULI Summary of this function goes here % Detailed explanation goes here if isrgb(I)

I1 = rgb2gray(I); else

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ìæ»»Îª@) ËÕICP±¸20003344ºÅ-4