Vizualizavimo sistemos
This presentation is the property of its rightful owner.
Sponsored Links
1 / 76

Vizualizavimo Sistemos PowerPoint PPT Presentation


  • 173 Views
  • Uploaded on
  • Presentation posted in: General

Duomenys. Vizualizavimo Sistemos. Paruošė: IG-08 grupės studentas Andrius Mikalajūnas. Temos. Modeliai: Koncepciniai modeliai, Duomenų modeliai, Duomenų modelių tipai. Atvaizdis ir vaizdiniai atributai. Duomenų struktūra. Interpoliacija. Duomenų formatai: HDF5.

Download Presentation

Vizualizavimo Sistemos

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Duomenys

Vizualizavimo Sistemos

Paruošė: IG-08 grupės studentas

Andrius Mikalajūnas


Temos

Modeliai:

  • Koncepciniai modeliai,

  • Duomenų modeliai,

  • Duomenų modelių tipai.

    Atvaizdis ir vaizdiniai atributai.

    Duomenų struktūra.

    Interpoliacija.

    Duomenų formatai:

  • HDF5.


Duomenų modeliai ir Koncepciniai modeliai

Duomenų modeliai nusako duomenis žemame lygyje:

  • Matematinės abstrakcijomis aprašytos duomenų aibės,

  • Pvz. sveiki skaičiai (ir operacijos su jais).

    Koncepciniai modeliai yra mentalinės konstrukcijos:

  • Semantika ir protavimas,

  • Pvz. navigacija erdvėje.

    Pavyzdžiai:

  • Erdvė – 3D vektoriai (real),

  • Laikas – 1D skaliarai (real).


Duomenų modelių tipai

Reliaciniai:

  • Fiksuoto ilgio įrašai,

  • Įrašą sudaro atributai (stulpeliai), turintys reikšmių sritį,

  • Įrašų lentelė ar schema nusako ryšius,

  • Iš įrašų suformuojama DB.

    Statistiniai:

  • Matavimai arba imtys,

  • Kategorijos / dimensijos / faktoriai,

  • Pastebėjimai, tikimybės.


Duomenų modelių tipai: reliacinis

  • Reliacinis:


Duomenų modelių tipai: statistinis

  • Statistinis:


Duomenų kubas: projekcijų pavyzdys


Duomenųtipai: taksonomija

  • Laikas

  • 1D (aibės, sekos)

  • 2D (žemėlapiai)

  • 3D (formos)

  • nD (reliaciniai, ryšiai)

  • Medžiai (hierarchijos)

  • Tinklai (grafai)

  • Tekstas ir dokumentai (data mining)


Duomenųtipų rūšys

Fiziniai duomenų tipai:

  • Charakterizuojami pagal saugojimo formatą,

  • Charakterizuojami pagal mašinines operacijas,

  • Pvz.: bool, short, integer, float, double.

    Abstraktūs:

  • Nusako duomenis,

  • Charakterizuojami pagal atributus ar metodus,

  • Gali būti hierarchiniai,

  • Pvz.: medžiai, gyvūnai.


Duomenųtipai: diskretumas

Ištisiniai:

  • Netiesiogiai apibrėžti,

  • Pvz. funkcijos, daugdaros.

    Diskretiniai:

  • Saugomi reikšmių rinkiniai,

  • Skaitmeninė reprezentacija,

  • Problemos: reprezentacija, “aliasingas”, rinkinių klaidos.


Duomenųtipai: diskretumas

  • Kompiuterinė duomenų reprezentacija visada diskreti,

  • Informacija saugoma taškų rinkiniuose,

  • Tarp taškų duomenys yra interpoliuojami.


Duomenųtipai: diskretumas

  • Bandinių atrinkimas (sampling).

  • Interpoliacija.


Duomenų tipai: struktūriškumas

DuomenųTopologija.

Topologinės struktūros:

  • Struktūriniai:

    • Ryšiai tarp taškų apibrėžti iš anksto,

    • Patogu apdoroti, nereikia saugoti.

  • Nestruktūriniai:

    • Ryšiai tarp mazgų nurodomi tiesiogiai,

    • Lankstumas ir universalumas,

    • Ryšiai tarp mazgų iš vis nežinomi?!


Duomenųtipai: dimensija

n nepriklausomų kintamųjų,

Paprastai, n erdvės-laiko kintamųjų,

Paplitusios:

  • Laikas.

  • 1D:

    • Aibės,

    • Sekos.

  • 2D:

    • Žemėlapiai.

  • 3D:

    • Forma.

  • nD:

    • Reliaciniai (Ryšiai),

    • Pvz. žodžių pasikartojimas dokumentuose.


Duomenųtipai: kiekis

Atributų kiekis viename taške/pozicijoje:

  • Skaliaras (0D):

    • viena reikšmė,

    • Pvz. temperatūra, slėgis,

    • Tinkami vaizdiniai atributai: 2D aukščių laukas.

  • Keli skaliarai:

    • kelios tiesiogiai nesusijusios reikšmės,

    • Pvz. temperatūra ir aukštis,

    • Tinkami vaizdiniai atributai: linijų grafai, nuspalvinti paviršiai.

  • Vektorius (1D):

    • Turi kryptį ir dydį,

    • Pvz. vėjo kryptis ir greitis,

    • Tinkami vaizdiniai atributai: rodyklės, srauto linijos, dalelių trajektorijos.

  • Tenzorius (nD):

    • Paprasčiausiu 2D atveju gauname matricą,

    • Pvz. įtempimai, deformacijos,

    • Tinkami vaizdiniai atributai: specialios technikos.


Duomenųtipai: skalė

Atributų skalė:

  • Nominal

    • Išvardintos grupės nariai,

    • Pvz. medžiai: pušis, obelis, uosis ...

    • Tinkami vaizdiniai atributai: spalva, simbolis.

  • Ordinal:

    • Sutvarkyti į eilę,

    • Pvz. savaitės dienos: pirmadienis, antradienis ...

    • Pvz. abstraktus ūgis: žemas, vidutinis, aukštas,

    • Tinkami vaizdiniai atributai: ryškumas, dydis.

  • Quantitative:

    • Tiksli skaitinė reikšmė, nurodanti kiekybę,

    • Pvz. matavimų ar skaičiavimų rezultatai,

    • Tinkami vaizdiniai atributai: pozicija, ilgis.


Duomenųtipai: pavyzdžiai


Duomenųmodeliai <-> tipai

Koncepcinis modelis:

  • Temperatūra.

    Duomenų modelis:

  • Realūs skaičiai,

  • -3,2; 5,1; 20,3; 36,6.

    Duomenų tipas:

  • Užšalęs, neužšalęs (N),

  • Karštas, šiltas, šaltas (O),

  • Skaičių reikšmės (Q).


Atvaizdis: Vaizdiniai atributai

2 atributus galima atvaizduoti atvaizdžio taškais:

  • Žemėlapiai, išmėtyti taškai.

    3-as atributas privalo naudoti:

  • Dydį,

  • Spalvą,

  • Forma,

  • Ir t.t.


Atvaizdis: Vaizdiniai atributai

Bertin kintamieji (1983).

[x, y]:

  • Pozicija,

    [z]:

  • Dydis,

  • Reikšmė,

  • Tekstūra,

  • Spalva,

  • Orientacija,

  • Forma.

    Nevertinta 3D.

    Nevertintas laikas.


Atvaizdis: prioritetai


Atvaizdis: Pozicija

  • Taškus galima skirti pagal jų padėtį.

  • Įvertinti atstumus kiekybiškai.


Atvaizdis: Spalva

  • Spalvų modeliai: RGB, HSV.

  • Intuityvus spalvų modelis, atitinkantis tapytojų sąvokas spalva, šešėlis ir tonas (tint, shade and tone):

    • Hue – spalva (raudona, žalia, purpurinė),

    • Saturation – sotis (kiek spalva skiriasi nuo pilkos). Rožinė mažiau prisotinta negu raudona, dangaus žydra mažiau prisotinta negu ryškiai mėlyna,

    • Value– ryškumas (kiek ryški objektą apšviečianti šviesa).

V

B

G

G

R

R

B

G

H

R

B


Atvaizdis: Spalva

Tinka daugeliui kintamųjų tipų:

  • Nominal,

  • Ordinal,

  • Quantitative,


Atvaizdis: Spalva


Atvaizdis: 1D pavyzdys


Atvaizdis: 2D pavyzdys


Atvaizdis: 3D spalva


Duomenų gavyba

  • Duomenų formatas.

  • Duomenų kompresija.

  • Matavimai.

  • Skaičiavimai.


Reikalavimai (vidiniams) duomenims

Kompaktiškumas:

  • Kuo mažiau vietos užimtų (Gbytes),

  • Išretintos matricos, nestruktūrinės schemos, bendri mazgai.

    Efektyvumas:

  • Efektyviai saugomi (RAM, cash),

  • Greitai nuskaitom i ir įrašomi.

    Vizualizavimas (mappable):

  • Tiesiogiai konvertuojami į vaizdinius primityvus,

  • Išoriniai duomenys lengvai konvertuojami į vidinius ir atvirkščiai.

    Nusakomumas:

  • Nusakomi minimalia grafine reprezentacija,

  • Kuo mažiau vaizdinių atributų.

    Paprastumas:

  • Lengvai suvokiami, tvarkomi ir optimizuojami.


Duomenų struktūra

Vizualizavimo duomenys kompiuteryje saugomi apibrėžtame duomenų rinkinyje (dataset).

Duomenų rinkinį sudaro:

  • Struktūra – tvarka, siejanti duomenis tarpusavyje,

  • Atributai – patys duomenys (jų rinkinys).


Duomenų struktūra: pavyzdys

  • Duomenys: (x1,y1), (x2,y2), (x3,y3), (x4,y4).

  • Struktūra: kuri pora eina po kurios.


Duomenų struktūra

Dažniausiai duomenys surenkami kokioje nors baigtinės dimensijos srityje (pvz. 1D, 2D, 3D).

Duomenų rinkinį sudaro:

  • Pozicijos – bandinių koordinatės (mazgai),

  • Jungtys – tvarka, jungianti mazgus į elementus arba celes,

  • Atributai – bandinių reikšmės mazguose (pozicijose).


Duomenų struktūra: 1D pavyzdys


Duomenų struktūra: 3Dpavyzdys

  • Arbatinuko pozicijos.

  • Arbatinuko jungtys (elementai).


Duomenų struktūra: elementai

  • Kaip mazgai sujungiami į elementus?


Duomenų struktūra: elementų tipai


Duomenų struktūra: tinklai

  • Erdvės dimensija nspace.

  • Srities (tinklo) dimensija ndim.


Duomenų struktūra: tinklų tipai

Nestruktūriniai:

  • Tiesiogiai apibrėžiama geometrija (mazgų koordinatės),

  • Tiesiogiai apibrėžiama topologija (jungtys arba elementai).

    Struktūriniai:

  • Uniform – tolygus tinklas iš vienodų elementų.

    • Tiesiogiai apibrėžiamos tik kampinių mazgų koordinatės,

    • Netiesiogiai apibrėžiamos jungtys (ortogonali topologija).

  • Rectilinear – tiesialinijinis tinklas iš skirtingo dydžio elementų.

    • Tiesiogiai apibrėžiamos eilučių/stulpelių mazgų koordinatės,

    • Netiesiogiai apibrėžiamos jungtys (ortogonali topologija).

  • Curvilinear – kreivalinijinis tinklas iš skirtingo dydžio elementų.

    • Tiesiogiai apibrėžiama geometrija (mazgų koordinatės),

    • Netiesiogiai apibrėžiamos jungtys (ortogonali topologija).


Duomenų struktūra: nestruktūriniai


Duomenų struktūra: nestruktūriniai


Duomenų struktūra: kreivalinijiniai


Duomenų struktūra: tiesialinijiniai


Duomenų struktūra: tolygūs


Duomenų struktūra: hierarchiniai


Duomenų struktūra: atributai

  • Kokie gali būti atributai?

  • Atributų gali ir nebūti!


Duomenų struktūra: atributai

  • Atributai gali būti priskirti kiekvienam tinklo mazgui.

  • Atributai gali būti priskirti kiekvienam tinklo elementui.


Duomenų struktūra: atributai

Populiarūs atributų tipai:

  • Spalva,

  • Skaliaras,

  • Vektorius,

  • Normalė,

  • Tenzorius.


Interpoliacija: problema

Situacija:

  • Duomenis turime tik tam tikruose mazguose,

  • Vizualizuoti reikia kituose mazguose,

  • Pvz. pjūviuose, apibrėžtuose izopaviršiuose.

    Klausimas:

  • Ką daryti?

    Atsakymas:

  • Interpoliuoti!


Interpoliacija: rezultatas

Prielaida:

  • Reikiama pozicija priklauso tam tikram elementui,

    Reikia žinoti:

  • Duomenis kiekviename elemento mazge,

  • Parametrines pozicijos koordinates,

  • Elemento tipą kartu su interpoliacinėmis funkcijomis.

    Interpoliacijos pagalba gauname:

  • Apytikslę duomenų reikšmę reikiamoje pozicijoje.


Interpoliacija: formulė

  • Universali interpoliacijos elemente formulė:


Duomenų struktūra: 1D pavyzdys


Interpoliacija: 2D pavyzdys

  • Trikampis (tiesinės interpoliacinės funkcijos):


Interpoliacija: 2D pavyzdys

  • Keturkampis (bitiesinės interpoliacinės funkcijos):


Interpoliacija: 2D pavyzdys

  • Daugiakampis (netiesinės interpoliacinės funkcijos):


Interpoliacija: 3D pavyzdys

  • Tetraedras (tiesinės interpoliacinės funkcijos):


Interpoliacija: 3D pavyzdys

  • Vokselis (tritiesinės interpoliacinės funkcijos):


Interpoliacija: 3D pavyzdys

  • Heksaedras (tritiesinės interpoliacinės funkcijos):


Duomenų formatai

Žemo lygio binarinis standartas:

  • XDR (External Data Representation, 1987),

  • Tinkamas visoms platformoms.

    Aukštesnio lygio specializuoti moksliniai duomenų formatai:

  • FITS (Flexible Image Transport System) - astronomija,

  • BUFR (Binary Universal Form for Representation) - meteorologija,

  • GRIB (Grid In Binary) - meteorologija.

    Bendri aukšto lygio duomenų formatai(standartai):

  • CDF (Common Data Format) – NASA produktas,

  • NetCDF(Network Common Data Format) – UnidataProgram Center,

  • HDF5 (Hierarchical Data Format) – National Center for Supercomputing Applications, University of Illinois,

  • XDMF (eXtensibleData Model and Format) –Naujausias HPC produktas.

  • Bibliotekos, nepriklausančios nuo platformos, ir API duomenų:

    • Rašymui, skaitymuiir tvarkymui.


Duomenų formatai: HDF5


Duomenų formatai: HDF5

Pirminiai objektai:

  • Groups – direktorijos tipo struktūra, talpinanti groups, datasets, objects ...

  • Datasets – metadata + nD elementų masyvas.

    Antriniai objektai skirti duomenims aprašyti:

  • Datatypes – apibrėžia duomenų tipą,

  • Dataspaces – apibrėžia duomenų dimensijas (Rank, Dimensions).

    Papildomos priemonės:

  • Atributai paaiškina duomenų prasmę ir padeda juos automatiškai tvarkyti,

  • Bendri objektai,

  • Sudėtiniai duomenų tipai,

  • Duomenų pažymėjimo technologija Hyperslab (Start, Stride, Count,Block ),

  • Saugojimo ir pasiekimo savybės (Properties):

    • Chunked, Compressed, Extendable, Split.


Duomenų formatai: HDF5


Duomenų formatai: HDF5

  • Sudėtiniai duomenų tipai:


Duomenų formatai: HDF5

  • Savybės (Properties):


Duomenų formatai: HDF5

  • Pasirinkimas (Selection by Hyperslab):

    • Start, Stride, Count, Block.


Duomenų formatai: HDF5 APIs

Žemo lygio API:

  • Pagrindinis API programavimo kalba C,

  • Sąsajos programavimo kalbomis C++, FORTRAN90, Java,

  • Sąsaja interpretacinei kalbai Python.

    Aukšto lygio API :

  • HDF5 Lite (H5LT) – paprastas Cinterfeisas,

  • HDF5 Image (H5IM) – darbas su atvaizdžiais,

  • HDF5 Table (H5TB)– darbas su lentelėmis,

  • HDF5 Packet Table (H5PT)– efektyvus darbas su supakuotom lentelėm,

  • HDF5 Dimension Scale (H5DS) – darbas su kintančių dimensijų duomenimis.

    Pagalbinė programinė įranga:

  • Java parašytas interaktyvus HDF5 failų redaktorius HDFView.


Duomenų formatai: HDFView

  • HDFview– taiJava parašytasHDF5 formato Viewer’is:

    • Rodo failo hierarchinę struktūrą,

    • Kuria failus, dirba su groups, datasets ...

    • Rodo ir modifikuoja dataset turinį,

    • Keičia, prideda ar šalina atributus,

    • Turi I/O ar GUI komponentus:

      • table view,

      • image view,

      • metadata view.


Duomenų formatai: HDFView

HDFview– taiJava parašytasHDF5 formato Viewer’is:

  • Rodo failo hierarchinę struktūrą,

  • Kuria failus, dirba su groups, datasets ...

  • Rodo ir modifikuoja dataset turinį,


Duomenų formatai: HDFView

HDFview– taiJava parašytasHDF5 formato Viewer’is:

  • Keičia, prideda ar šalina atributus,

  • Turi I/O ar GUI komponentus:

    • table view.


Duomenų formatai: HDFView

HDFview– taiJava parašytasHDF5 formato Viewer’is:

  • Turi I/O ar GUI komponentus:

    • image view,


Duomenų formatai: NetCDF

NetCDF yra universalus nuo platformos nepriklausantis duomenų formatas, sukurtas 66 universitetų konsorciumo UCAR:

  • Pagrįstas CDM (Common Data Model) duomenų modeliu,

  • Aukšto lygio CDL kalba galima kurti netCDF failus ir be kitų API.

    CDM duomenų modelis turi tris lygius:

  • Duomenų priėjimo, koordinačių sistemos ir mokslinių duomenų tipo,

  • Skirtingi lygiai dislokuojami vienas ant kito, pateikdami naudotojui vis aukštesnio lygio semantiką.

    NetCDF-4 versijoje atsirado daug patrauklių savybių:

  • Neriboto dydžio dinamiškai plečiami daugiamačiai masyvai,

  • Duomenims struktūrizuoti naudojamos grupės,

  • Atsirado ir sudėtiniai duomenų tipai bei kintančio dydžio kintamieji (pvz. eilutės),

  • Palaikomi HDF5 failai, kurie atitinkantys CDM duomenų modelį.


Duomenų formatai: NetCDF APIs

NetCDF laisvai platinamas su 4 kalbų APIs:

  • C, C++, Fortran77, Fortran90,

  • V4 C programinės kalbos API apima ankstesniosios versijos C API ir HDF5,

  • Aukštesniame lygyje pateikiami C++ API ir Fortan F77 API.

    Java API yra pilnai nepriklausomas nuo C API ir turi daug patrauklių nuotolinio naudojimo savybių.

    Kartu platinami ir komandinės eilutės įrankiai: ncgen ir ncdump.

    NetCDF daugybė programinės įrangos skirtos vartotojui.


Duomenų formatai: NetCDF CMD

Duomenų modelis CMD:

  • Pagrindiniai duomenys saugomi Variable,

  • Tvarkymas atliekamas Group.

    Kintamieji turi:

  • Savo Dimension,

  • Bendrą Dimension.

    Atribute yra 1D masyvas:

  • Dažniausiai simbolinės eilutės,

  • Kiti tipai taip pat palaikomi.


Duomenų formatai: NetCDF datatype

NetCDF-4 duomenų tipų įvairovė neprilygsta HDF5:

  • Palaiko sudėtinius ar kintamo dydžio duomenų tipus,

  • Turi labiausiai paplitusius tipus.


Duomenų formatai: palyginimas

XDMF (eXtensible Data Model and Format) naujas ir perspektyvus:

  • Metaduomenys (duomenų modelis, atributai) saugomi XML formatu,

  • Dideli duomenų kiekiai saugomi HDF5 formatu (lankstumas ir efektyvumas),

  • Informacija apie duomenis nuskaitoma atskirai (lengvai persiunčiama),

  • Dideli duomenų kiekiai efektyviai apdorojami vėliau, kai žinoma informacija.

    XDMF duomenys turi formatą (Items) ir modelį (Elements).

    Elements turi viena ar kelias Domain, o pastarieji Grid elementus:

  • Grid sudaro topologija (Topology) ir geometrija (Geometry),

  • Grid elementai sudaro duomenų modelio pagrindą,

  • Atribute (scalar ...), Time, Information elementai.

    Items skirti formatui apibrėžti ir turi 6 pagrindinius tipus:

  • Uniform, Collection, Tree, HyperSlab, Coordinates, Function.

    Turi tik C++ API:

  • Sąsajas su Python, Tcl, Java (enwrapping),

  • API nėra būtinas, nes XML sudaro ASCII tekstas, o HDF5 turi savo APIs.


Duomenų formatai: palyginimas

Visų formatų duomenys gali būti labai įvairių dimensijų ar tipų:

  • n-mačiai realių skaičių masyvai,

  • Atvaizdžiai ar eilutės <-> integer.

    CDF pasenęs ir retai naudojamas, nelabai patogus.

    Hierarchinė HDF5 struktūra daro jį universaliausiu ir lanksčiausiu.

    NetCFD yra ne toks galingas, bet jo API paprastesnis ir lengvesnis.

    Abu turi ne tik bazines bibliotekas, bet ir neblogus APIs, palengvinančius vartotojo darbą.

    Tiek NetCDF, tiek HDF5 turi lygiagrečias I/O versijas.

    Nauja NetCDF versija suderinta su HDF5:

  • PatogusNetCDFAPI galidirbtisuHDF5 hierarchinės struktūrosfailais,

  • Ne visas HDF5 funkcionalumas palaikomas (bendri duomenys, cikliškumas).

    XDMF yra pernelyg naujas, kad jį galima būtų vertinti:

  • Labai perspektyvus HPC ir didelių duomenų kiekių vizualizavimo srityse.

  • Silpnokai atrodantis API,

  • Universalus, bet neaiškiai apibrėžtas (neiškristalizuotas) duomenų modelis,

  • Palaikomas ParaView ir EnSight.


  • Login