|
|
Řádek 1: |
Řádek 1: |
| ''Vstupní data:'' http://geo102.fsv.cvut.cz/~landa/vyuka/155GIT1/test2/data.txt
| | test 1.29 |
| | |
| ''Soubor k odevzdání'' - '''prijmeni_jmeno.zip''' - obsahující:
| |
| * '''data.txt''' (vstupní data)
| |
| * '''test2.m''' (makro, které načítá vstupní data a volá funkci <code>vyhlazeni()</code>)
| |
| * '''vyhlazeni.m''' (funkce provádějící vyhlazení hodnot matice)
| |
| | |
| == Zadání 1 ==
| |
| | |
| Napište '''funkci''' pro vyhlazení dat uložených v (celočíselné) matici s hodnotami 0 až 127.
| |
| | |
| Funkce pro každý prvek matice vypočte novou hodnotu jako vážený aritmetický průměr daného prvku matice s váhou ''p'' a všech sousedních prvků s váhou 1, kde váha ''p'' je dána počtem sousedů.
| |
| | |
| Například pro vstupní matici M dimenze 4x5 s prvky
| |
| | |
| <math>\begin{pmatrix}
| |
| 11 & 12 & 13 & 14 & 15 \\
| |
| 21 & 22 & 23 & 24 & 25 \\
| |
| 31 & 32 & 33 & 34 & 35 \\
| |
| 41 & 42 & 43 & 44 & 45 \\
| |
| \end{pmatrix} \Rightarrow
| |
| \begin{pmatrix}
| |
| 15 & 15 & 16 & 17 & 18 \\
| |
| 21 & 22 & 23 & 24 & 25 \\
| |
| 31 & 32 & 33 & 34 & 35 \\
| |
| 38 & 39 & 40 & 41 & 41 \\
| |
| \end{pmatrix}</math>
| |
| | |
| je vyhlazená hodnot prvku <math>n_{11}</math> (tři sousedi) rovna
| |
|
| |
| <math> n_{11} = ( 3\times11 + 12 + 21 + 22 ) / 6 = 15</math> (zaokrouhleno 14.667)
| |
| | |
| podobně
| |
| | |
| <math> n_{45} = ( 3\times45 + 34 + 35 + 44 ) / 6 = 41</math> (zaokrouhleno 41.333)
| |
| | |
| pro prvek <math>n_{22}</math> (osm sousedů)
| |
| | |
| <math>n_{22} = (8\times22 + 11+12+13 + 21+23 + 31+32+33) / 16 = 22</math>
| |
| | |
| == Zadání 2 ==
| |
| | |
| Napište '''funkci''' pro vyhlazení dat uložených v (celočíselné) matici s hodnotami 0 až 127.
| |
| | |
| Funkce pro každý prvek matice vypočte novou hodnotu jako aritmetický průměr daného prvku matice a všech sousedních prvků
| |
| | |
| Například pro vstupní matici M dimenze 4x5 s prvky
| |
| | |
| <math>\begin{pmatrix}
| |
| 11 & 12 & 13 & 14 & 15 \\
| |
| 21 & 22 & 23 & 24 & 25 \\
| |
| 31 & 32 & 33 & 34 & 35 \\
| |
| 41 & 42 & 43 & 44 & 45 \\
| |
| \end{pmatrix} \Rightarrow
| |
| \begin{pmatrix}
| |
| 17 & 17 & 18 & 19 & 20 \\
| |
| 22 & 22 & 23 & 24 & 25 \\
| |
| 32 & 32 & 33 & 34 & 35 \\
| |
| 37 & 37 & 38 & 39 & 40 \\
| |
| | |
| \end{pmatrix}</math>
| |
| | |
| je vyhlazená hodnot prvku <math>n_{11}</math> (tři sousedi) rovna
| |
|
| |
| <math> n_{11} = ( 11 + 12 + 21 + 22 ) / 4 = 17</math> (zaokrouhleno 16.5)
| |
| | |
| podobně
| |
| | |
| <math> n_{45} = ( 45 + 34 + 35 + 44 ) / 4 = 40</math> (zaokrouhleno 39.5)
| |
| | |
| pro prvek <math>n_{22}</math> (osm sousedů)
| |
| | |
| <math>n_{22} = (22 + 11+12+13 + 21+23 + 31+32+33) / 9 = 22</math>
| |
| | |
| == Zadání 3 ==
| |
| | |
| Napište '''funkci''' pro vyhlazení dat uložených v (celočíselné) matici s hodnotami 0 až 127.
| |
| | |
| Funkce pro každý prvek matice vypočte novou hodnotu jako vážený aritmetický průměr daného prvku matice s váhou ''2 <math>\times</math> p'' a všech sousedních prvků s váhou 1, kde váha ''p'' je dána počtem sousedů.
| |
| | |
| Například pro vstupní matici M dimenze 4x5 s prvky
| |
| | |
| <math>\begin{pmatrix}
| |
| 11 & 12 & 13 & 14 & 15 \\
| |
| 21 & 22 & 23 & 24 & 25 \\
| |
| 31 & 32 & 33 & 34 & 35 \\
| |
| 41 & 42 & 43 & 44 & 45 \\
| |
| \end{pmatrix} \Rightarrow
| |
| \begin{pmatrix}
| |
| 13 & 14 & 15 & 16 & 17 \\
| |
| 21 & 22 & 23 & 24 & 25 \\
| |
| 31 & 32 & 33 & 34 & 35 \\
| |
| 39 & 40 & 41 & 42 & 43 \\
| |
| \end{pmatrix}</math>
| |
| | |
| je vyhlazená hodnot prvku <math>n_{11}</math> (tři sousedi) rovna
| |
|
| |
| <math> n_{11} = ( 2\times3\times11 + 12 + 21 + 22 ) / 9 = 13</math> (zaokrouhleno 13.444)
| |
| | |
| podobně
| |
| | |
| <math> n_{45} = ( 2\times3\times45 + 34 + 35 + 44 ) / 9 = 43</math> (zaokrouhleno 42.555)
| |
| | |
| pro prvek <math>n_{22}</math> (osm sousedů)
| |
| | |
| <math>n_{22} = (16\times22 + 11+12+13 + 21+23 + 31+32+33) / 24 = 22</math>
| |