0% found this document useful (0 votes)
4 views5 pages

Feature Extraction

feature extraction example for a persian alphabet for pattern recognition

Uploaded by

Elaheh Lotfi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views5 pages

Feature Extraction

feature extraction example for a persian alphabet for pattern recognition

Uploaded by

Elaheh Lotfi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

‫اﺳﺘﺨﺮاج وﯾﮋﮔﯽ‬

‫‪ -1‬ﺗﻬﯿﻪ دﯾﺘﺎ ﺳﺖ‪:‬‬

‫ﺑﺮاي ﻫﺮ ﻓﺮاﯾﻨﺪ ﺷﺎﻣﻞ ﭘﯿﺶ ﺑﯿﻨﯽ؛ ﺗﺨﻤﯿﻦ؛ ﻃﺒﻘﻪ ﺑﻨﺪي و ‪ ...‬ﻧﯿﺎز ﺑﻪ ﺗﻌﺪادي اﻟﮕﻮ ﯾﺎ ورودي ﺧﺮوﺟﯽ ﻫﺎي ﻣﺸﺨﺺ و در ﮐﻞ اﻃﻼﻋﺎﺗﯽ‬
‫ﻣﺒﺘﻨﯽ ﺑﺮ ﮔﺬﺷﺘﻪ ﺳﯿﺴﺘﻢ دارﯾﻢ ﮐﻪ ﺑﻪ اﯾﻦ ﺑﺴﺘﻪ اﻃﻼﻋﺎﺗﯽ دﯾﺘﺎ ﺳﺖ ﮔﻔﺘﻪ ﻣﯿﺸﻮد‪.‬‬

‫دﯾﺘﺎ ﺳﺖ ﻣﺮﺑﻮط ﺑﻪ ﺗﮑﺎﻟﯿﻒ اﯾﻦ دوره ﺷﺎﻣﻞ ‪ 11200‬ﺣﺮوف ﮔﺴﺴﺘﻪ ﻓﺎرﺳﯽ "ب" "پ" "ت" "ث" "ج" "چ" "ح" "خ" ﻣﯽ‪-‬‬
‫ﺑﺎﺷﺪ‪.‬‬

‫اﯾﻦ دﯾﺘﺎ ﺳﺖ داراي ﺗﻮزﯾﻊ ﯾﮑﻨﻮاﺧﺖ ﺑﻮده ﯾﻌﻨﯽ در واﻗﻊ ‪ 1400‬ﻧﻤﻮﻧﻪ ﺑﺮاي ﻫﺮ ﺣﺮف ﺑﺮاي ﺑﺨﺶ آﻣﻮزش و ‪ 400‬ﻧﻤﻮﻧﻪ ﺑﺮاي ﺑﺨﺶ‬
‫آزﻣﺎﯾﺶ‪.‬‬

‫ﺑﺮاي ﻧﻤﻮﻧﻪ؛ ﺗﺼﻮﯾﺮ ﭼﻨﺪ ﺣﺮف در ﺷﮑﻞ‪ 1‬ﻧﻤﺎﯾﺶ داده ﺷﺪه اﺳﺖ‪.‬‬
‫ﺷﮑﻞ ‪1‬‬

‫‪ -2‬اﺳﺘﺨﺮاج وﯾﮋﮔﯽ‪:‬‬

‫اﻏﻠﺒﺎ ﻧﯿﺎز اﺳﺖ ﮐﻪ ﺑﺮاي ﺗﺤﻠﯿﻞ و اﻧﺎﻟﯿﺰ ﯾﮏ ﭘﺪﯾﺪه ﻏﯿﺮ ﻋﺪدي ان را ﺑﺮ روي ﻓﻀﺎي ﺑﺮداري ﻧﮕﺎﺷﺖ دﻫﯿﻢ‪ .‬ﻧﮕﺎﺷﺖ ﯾﮏ ﺗﺼﻮﯾﺮ ﺑﺮ روي‬
‫ﻓﻀﺎي ﺑﺮداري ﮐﻪ از آن ﺑﻪ اﺳﺘﺨﺮاج وﯾﮋﮔﯽ از ﺗﺼﻮﯾﺮ ﯾﺎد ﻣﯽ ﺷﻮد را ﻣﯽﺗﻮان ﺑﻪ ﻃﺮق ﻣﺨﺘﻠﻒ اﻧﺠﺎم داد‪.‬ﺗﻌﺪادي از اﯾﻦ روﺷﻬﺎ ﻋﺒﺎرﺗﻨﺪ‬
‫از‪:‬‬

‫‪ -1‬ﮔﺮادﯾﺎن‬

‫‪ -2‬ﮔﺸﺘﺎور‬

‫‪ -3‬ﻣﯿﺎﻧﮕﯿﻦ و اﻧﺤﺮاف ﻣﻌﯿﺎر‬

‫‪ -3‬ﺗﺒﺪﯾﻞ ﻓﻮرﯾﻪ‬

‫‪ -4‬ﺗﺒﺪﯾﻞ ﻣﻮﺟﮏ و ‪...‬‬

‫روﺷﯽ ﮐﻪ در اﯾﻦ دﺳﺖ ﭘﺮوژﻫﺎ ﺑﮑﺎر ﺑﺴﺘﻪ ﻣﯽ ﺷﻮد ﺑﺮ ﻣﺒﻨﺎي ﺗﻮازﻧﯽ اﺳﺖ ﮐﻪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺲ ﻣﯿﺎن دﻗﺖ ﺷﻨﺎﺳﺎﯾﯽ ﺣﺮوف و ﭘﯿﭽﯿﺪﮔﯽ‬
‫ﺑﺮﻧﺎﻣﻪ ﺑﺮﻗﺮار ﻣﯽﮐﻨﺪ ﮐﻪ اﻟﺒﺘﻪ ﺳﻠﯿﻘﻪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺲ در اﯾﻦ ﻣﯿﺎن ﺑﯽ ﺗﺎﺛﯿﺮ ﻧﯿﺴﺖ‪.‬‬

‫در اﯾﻦ ﻗﺴﻤﺖ ﻣﺎ از روش ﻣﯿﺎﻧﮕﯿﻦ ﮔﯿﺮي و اﻧﺤﺮاف ﻣﻌﯿﺎر ﺟﻬﺖ اﺳﺘﺨﺮاج وﯾﮋﮔﯽ اﺳﺘﻔﺎده ﮐﺮده اﯾﻢ ‪ .‬ﺑﺮاي درك ﺑﻬﺘﺮ؛ در اداﻣﻪ؛‬
‫ﺑﺮﻧﺎﻣﻪي اﺳﺘﺨﺮاج وﯾﮋﮔﯽ از ﺗﺼﻮﯾﺮ آورده ﺷﺪه و ﺗﻮﺿﯿﺤﺎت ﻻزم داده ﺷﺪه‪.‬‬
1- A=importdata(q);
2- [bm]=A.cdata;
3- k=0;s=0;a=0;b=0;
4- [a,b]=size(bm);
5- l=floor(a/5); %L=linspace(0,a); floor(L(1'4));
6- w=floor(b/5); %L=linspace(0,b);
7- for r=0:3
8- for z=0:3
a. s=0;
b. for m=(r*l+1):(r+1)*l
i. for n=(z*w+1):(z+1)*w
1. k=bm(m,n);
2. s=s+k;
ii. end
c. end
d. d=l*w;
e. av=s/d;
f. var=(s*(1-av)^2+(d-s)*av^2)/d;
g. fprintf('%f,%f,',av,var)
9- end
10- end
11- r=0;m=0;z=0;s=0;n=0;k=0;s=0;av=0;d=0;
12- for z=0:3
13- s=0;d=0;
a. for n=(z*w+1):(z+1)*w
i. for m=(4*l+1):a
1. k=bm(m,n);
2. s=s+k;
ii. end
b. end
c. d=(a-4*l)*w;
d. av=s/d;
e. var=(s*(1-av)^2+(d-s)*av^2)/d;
f. fprintf('%f,%f,',av,var)
14- end
15- r=0;m=0;z=0;s=0;n=0;k=0;s=0;av=0;d=0;
16- for r=0:3
17- s=0;
a. for m=(r*l+1):(r+1)*l
i. for n=(4*w+1):b
1. k=bm(m,n);
2. s=s+k;
ii. end
b. end
c. d=(b-4*w)*l;
d. av=s/d;
e. var=(s*(1-av)^2+(d-s)*av^2)/d;
‫)‪f. fprintf('%f,%f,',av,var‬‬
‫‪18-‬‬ ‫‪end‬‬
‫‪19-‬‬ ‫;‪r=0;m=0;z=0;s=0;n=0;k=0;s=0;av=0;d=0‬‬
‫‪20-‬‬ ‫‪for m=(4*l+1):a‬‬
‫‪21-‬‬ ‫‪for n=(4*w+1):b‬‬
‫;)‪a. k=bm(m,n‬‬
‫;‪b. s=s+k‬‬
‫‪22-‬‬ ‫‪end‬‬
‫‪23-‬‬ ‫‪end‬‬
‫‪24-‬‬ ‫;)‪d=(b-4*w)*(a-4*l‬‬
‫‪25-‬‬ ‫;‪av=s/d‬‬
‫‪26-‬‬ ‫;‪var=(s*(1-av)^2+(d-s)*av^2)/d‬‬
‫‪27-‬‬ ‫)‪fprintf('%f,%f,',av,var‬‬

‫در ﺧﻂ اول ﺑﺎ دﺳﺘﻮر ‪ importdata‬اﻃﻼﻋﺎت ﻣﺮﺑﻮط ﺑﻪ ﻋﮑﺲ ﻣﻮرد ﻧﻈﺮ را ﻣﺸﺎﻫﺪه ﻣﯽﮐﻨﯿﻢ ﮐﻪ اﯾﻦ اﻃﻼﻋﺎت ﺷﺎﻣﻞ ﻣﺎﺗﺮﯾﺲ رﻧﮕﻬﺎ‬
‫و ﻣﺎﺗﺮﯾﺲ ﮐﺪﻫﺎ ﻣﯽﺑﺎﺷﺪ‪.‬ﻣﺎﺗﺮﯾﺲ ﻣﺮﺑﻮط ﺑﻪ ﮐﺪﻫﺎ را در ﻣﺘﻐﯿﺮدﯾﮕﺮي رﯾﺨﺘﻪ و ﺑﺎ دﺳﺘﻮر ‪ ،size‬اﻃﻼﻋﺎت ﻣﺮﺑﻮط ﺑﻪ ﺗﻌﺪاد ﺳﻄﺮﻫﺎ و‬
‫ﺳﺘﻮنﻫﺎ را ﻣﺸﺎﻫﺪه ﻣﯽﮐﻨﯿﻢ‪.‬‬

‫ﺑﺮاي ﻣﯿﺎﻧﮕﯿﻦ ﮔﯿﺮي و اﻧﺤﺮاف ﻣﻌﯿﺎر ﻣﺎ ﻋﮑﺲ را ﺑﻪ ‪ 25‬ﺧﺎﻧﻪ ﺗﻘﺴﯿﻢ ﻣﯽﮐﻨﯿﻢ درواﻗﻊ ﻃﻮل را ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 5‬و ﻋﺮض را ﺗﻘﺴﯿﻢ ﺑﺮ ‪5‬‬
‫ﻣﯽﮐﻨﯿﻢ‪،‬ﻣﻨﺘﻬﯽ ﭼﻮن ﻣﻤﮑﻦ اﺳﺖ ﺗﻌﺪاد ﭘﯿﮑﺴﻞﻫﺎي ﻃﻮل و ﻋﺮض اﻟﺰاﻣﺎً ﺑﺮ ‪ 5‬ﺑﺨﺶ ﭘﺬﯾﺮ ﻧﺒﺎﺷﻨﺪ ﻣﺎ از دﺳﺘﻮر ‪ floor‬اﺳﺘﻔﺎده ﮐﺮدﯾﻢ‬
‫ﮐﻪ ﺟﺰ ﺻﺤﯿﺢ را ﺑﻪ ﻣﺎ ﻣﯿﺪﻫﺪ‪ .‬ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل اﮔﺮ ﻋﮑﺲ ﻣﻮرد ﻧﻈﺮ ﻣﺎ ‪ 16*27‬ﺑﺎﺷﺪ ‪ 16‬ﺧﺎﻧﻪ ‪ 3،4*5‬ﺧﺎﻧﻪ ‪4،4*5‬ﺧﺎﻧﻪ ‪ 3*7‬و ﯾﮏ‬
‫ﺧﺎﻧﻪ ‪ 4*7‬ﺧﻮاﻫﯿﻢ داﺷﺖ‪.‬ﺑﺮاي درك ﺑﻬﺘﺮ ﯾﮏ ﻧﻤﻮﻧﻪ ﺗﺼﻮﯾﺮ ﺗﻘﺴﯿﻢ ﺑﻨﺪي ﺷﺪه در اداﻣﻪ آورده ﺷﺪه اﺳﺖ‪.‬‬

‫ﺑﺮاي ﻣﺤﺎﺳﺒﻪ ﻣﯿﺎﻧﮕﯿﻦ و وارﯾﺎﻧﺲ ﺧﺎﻧﻪ ﻫﺎ ﺑﺮاي ﻫﻤﯿﻦ ﺗﺼﻮﯾﺮ ‪ 16*27‬دارﯾﻢ‪:‬‬

‫ﺑﺮاي ﺧﺎﻧﻪﻫﺎي ‪ 3*5‬ﻣﺠﻤﻮع درﯾﻬﯽ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 15‬و ﺟﺬر ﻣﺠﻤﻮع ﺗﻮان دوم ﺗﻔﺎﺿﻞ از ﻣﯿﺎﻧﮕﯿﻦ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 15‬ﻣﯽﮐﻨﯿﻢ‪.‬‬
‫ﺑﺮاي ﺧﺎﻧﻪﻫﺎي ‪ 4*5‬ﻣﺠﻤﻮع درﯾﻬﯽ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 20‬و ﺟﺬر ﻣﺠﻤﻮع ﺗﻮان دوم ﺗﻔﺎﺿﻞ از ﻣﯿﺎﻧﮕﯿﻦ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 20‬ﻣﯽﮐﻨﯿﻢ‪.‬‬
‫ﺑﺮاي ﺧﺎﻧﻪﻫﺎي ‪ 3*7‬ﻣﺠﻤﻮع درﯾﻬﯽ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 21‬و ﺟﺬر ﻣﺠﻤﻮع ﺗﻮان دوم ﺗﻔﺎﺿﻞ از ﻣﯿﺎﻧﮕﯿﻦ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 21‬ﻣﯽﮐﻨﯿﻢ‪.‬‬
‫ﺑﺮاي ﺧﺎﻧﻪﻫﺎي ‪ 4*7‬ﻣﺠﻤﻮع درﯾﻬﯽ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 28‬و ﺟﺬر ﻣﺠﻤﻮع ﺗﻮان دوم ﺗﻔﺎﺿﻞ از ﻣﯿﺎﻧﮕﯿﻦ آﻧﻬﺎرا ﺗﻘﺴﯿﻢ ﺑﺮ ‪ 28‬ﻣﯽﮐﻨﯿﻢ‪.‬‬

‫در ﺻﻔﺤﻪ ﺑﻌﺪ ﺣﺮف "ب" ﺑﻌﻨﻮان ﻧﻤﻮﻧﻪ ﺑﻪ ﻫﻤﺮاه ﻣﺎﺗﺮﯾﺲ وﯾﮋﮔﯽ اﻧﻬﺎ اورده ﺷﺪه اﺳﺖ‪.‬‬
‫ﺷﮑﻞ ‪2‬‬

‫‪0.500000,0.250000,1.000000,0.000000,1.000000,0.000000,1.000000,0.000000,0.375000,0.2343‬‬
‫‪75,1.000000,0.000000,1.000000,0.000000,0.975000,0.024375,0.800000,0.160000,0.475000,0.24‬‬
‫‪9375,0.400000,0.240000,0.450000,0.247500,1.000000,0.000000,1.000000,0.000000,1.000000,0.‬‬
‫‪000000,1.000000,0.000000,1.000000,0.000000,1.000000,0.000000,1.000000,0.000000,0.700000‬‬
‫‪,0.210000,0.725000,0.199375,0.400000,0.240000,0.875000,0.109375,1.000000,0.000000,1.0000‬‬
‫‪00,0.000000,‬‬

You might also like