RG7
Přidělená témata:
- #1 - Tile_storage etc. - Silvester Seredi
- #2 - Rozhraní na klasické rastry GRASSu - Michal Minář
- #4 - cmd_inputs - Lukáš Ježek
- #5 - Komprese - Pavel Mynar
- #6,7 - Metadata - Michal Šimara (xmalin19, xsimar01)
- #8 - blokove ops. v Rasphysfile - Tomáš Nožička
- #9 - řádkové dlaždice - Vojtěch Kalčík
- #13 - barevne palety - Jan Hamrský
SVN repozitář
svn co https://perchta.fit.vutbr.cz/svn/rg7_2
user: public (bez hesla)
Poznámky k testování
Export dat z GRASSu provedete programem r.out.ascii (zadá se rastrová vrstva a soubor pro textový export). Velikost rastru můžete ovlivnit nastavením zobrazovacího regionu g.region res=XXX.
Import z textového exportu GRASSu:
./ringrass TEXT-EXPORT-FILE RG7-file Tile-Size
kde Tile-Size je velikost strany čtvercové dlaždice (např. 32).
Vznikne tak místní soubor RG7-file s použitým interface SQLite3. Export RG7-file do obrázku:
./dmon RG7-file [ncols nrows]
Temata projektu
Okruhy obsahuji popis prace a seznam souboru, ktere smi autor modifikovat. Pokud bude nutne, smi se pridavat soubory.
Projekt je umisten na SVN. Plynou z toho submitovaci omezeni pro praci ve skupine. V kritickych pripadech lze modifikovat i jine soubory, pak je ovsem nutne odevzdavat mimo SVN a zasahy do originalu souboru se provedou rucne z "centralniho mista" (mh.).
Okruhy:
1) ADS Tile_storage, ADS Pool_of_phtile_buffers - 1 student
Tile_storage: Implementace pristupovych metod (exist, insert, erase, size, ...) tak, aby se provadely v konstantnim case.
Pool_of_phtile_buffers: predpokladejme dlazdice ruzne velikosti, dalsi viz header-file.
Soubory: tile_storage., pool_of_Phtile_buffers.
2) Interface pro klasicky GRASS - 1(2) studenti
Implementace Ras_grass6_interface pristupovych metod (minimalne open/close, load_metadata, swap/load/test).
Soubory: ras_grass6_interface.
3) Interface pro WMS - 1(2) studenti
Viz 2). Smysl davaji operace open(close), load_metadata, load/test.
Soubory: ras_wms_interface.
4) cmd_inputs - 1 student
Koncepcni navrh/implementace systemu zadavani parametru do programu (nazev parametru, implicitni hodnota, zadana hodnota, datovy typ, help text). Inspirace GRASS.
Soubory: cmd_inputs.
5) Realizace kompresniho algoritmu - 1 student
Implementace metod compress/decompress. Komprese bude volitelna. Udaj o zavedene kompresi by mel byt obsazen v metadatech vrstvy (pozdeji).
Soubory: compressed_ba.
6) Ras_metadata - seriozni implementace ADS - 1 student
Idealni je spojeni 6) a 7).
Soubory: Ras_metadata.
7) Reklasifikacni tabulka, tabulka kategorii - 1 student
Soubory: Ras_metadata.
8) Ras_phys_file - blokove R/W operace (alespon read)
Optimalizovane opakovane rcell(ICoord).
Prubeh:
- rychly vypocet dlazdic zahrnutych do operace (2 mody, dalsi konzultace)
- zajisteni dlazdic v pameti
- resampling a ulozeni v bufferu
Tato cast ma navaznost na implementaci Ras_window, coz je klicovy prvek RG7.
9) Experimentalni prace: realizace RG7 s formatem dlazdic:
- radek rastru (cely)
- pravidelne radkove useky (dlazdice rozmeru (x,1))
Reseni spociva v modifikaci tridy Ras_tiling (pripadne zavedeni nove+rozsireni Ras_phys_file o mody Ras_tiling).
Je treba zjistit experimenty unosnou velikost dlazdice - ma vliv na celkovy pocet dlazdic v rastru, pocet SQL operaci, objem dat v jeden SQL operaci apod.
10) Analyza RG7 a prizpusobeni pro Thread-safe cinnost
Nutno konzultovat.
Urceni zpusobu pruchodu rastrem a dopredne nacitani dlazdic ve vlastnim vlakne (vlakna: analyticky nastroj/algoritmus, dopredne nacitani dlazdic).
11) Optimalizace SQLite3
Velikosti bufferu. Asynchronni zapis.
12) Ras_postgres_interface
Implementace obdoby Ras_sqlite_interface a srovnani vykonnostnich rozdilu.
13) Barevne palety
Dva typy palet:
- pro rastry s kategoriemi
- pro rastry s intervalem hodnota
Zavedeni preddefinovanych palet a jejich registrace pod nejakym kodem.
Moznost pridani a odebrani palety.
Prevod hodnoty bunky na RGB (navratovy typ 4B unsigned int).
14) Ras_multilayer_window
Ras_window pro vice vrstev. Region okna je totozny pro vsechny vrstvy. Obecne jiny je resampling pro kazdou vrstvu. Kazda vrstva muze byt byt bud zapis/cteni/oboje.
Vyzvy (jenom pro nadsence):
- Vyreseni koncepce pyramid
- Napojeni na GDAL
Poznamky:
r.example
Link to this Page
- Projekty last edited on 16 March 2016 at 3:55 pm by dhcpz184.fit.vutbr.cz