Dátová konverzia je konverzia počítačových dát z jedného formátu do druhého. V počítačovom prostredí sú dáta kódované mnohými spôsobmi. Napríklad počítačový hardvér je postavený na základe určitých štandardov, ktoré vyžadujú, aby dáta obsahovali napríklad kontrolu pomocou paritných bitov. Podobne aj operačný systém je postavený na určitých štandardoch pre spracovanie dát a súborov. Okrem toho každý počítačový program spracúva dáta iným spôsobom. Kedykoľvek sa zmení ktorákoľvek z týchto premenných, dáta musí byť pred použitím v inom počítači, operačnom systéme alebo programe určitým spôsobom skonvertované. Aj rôzne verzie týchto prvkov zvyčajne používajú odlišné dátové štruktúry. Zmena bitov z jedného formátu do druhého, zvyčajne s cieľom zabezpečiť interoperabilitu aplikácií alebo umožniť použitie nových funkcií, je jednoducho dátová konverzia. Dátové konverzie môžu byť také jednoduché, ako konverzia textového súboru z jedného systému kódovania znakov do druhého; alebo zložitejšie, ako konverzia kancelárskych formátov súborov, alebo konverzia obrazových a zvukových formátov.
Dáta sa v počítačovom prostredí konvertujú mnohými spôsobmi. Môže ísť o bezproblémový proces, napríklad pri prechode na novšiu verziu počítačového programu. Konverzia si inokedy môže vyžadovať spracovanie pomocou špeciálneho konverzného programu, prípadne môže zahŕňať zložitý proces cez medzikroky, respektíve zložité postupy "exportu" a "importu", ktoré môžu zahŕňať konverziu do a z textového súboru oddeleného tabulátormi alebo čiarkami. V niektorých prípadoch dokáže program pri vstupe rozpoznať niekoľko formátov dátových súborov a zároveň je schopný ukladať výstupné dáta v niekoľkých rôznych formátoch. Takýto program možno použiť na konverziu formátu súboru. Ak zdrojový alebo cieľový formát nie je rozpoznaný, niekedy je k dispozícii tretí program, ktorý umožňuje konverziu do medziformátu, ktorý potom možno preformátovať pomocou prvého programu. Základy práce s informáciami Pred vykonaním akejkoľvek dátovej konverzie by si mal používateľ alebo programátor aplikácie uvedomiť niekoľko základov informatiky a teórie informácie:
Informáciu počítač ľahko zahodí, no jej pridanie si vyžaduje úsilie. Počítač dokáže pridať informáciu iba na základe pravidiel. Zvýšenie vzorkovacej frekvencie dát alebo konverzia do bohatšieho formátu neprináša novú informáciu; iba pripravuje priestor na jej prípadné doplnenie, ktoré zvyčajne musí urobiť človek. Dáta uložené v elektronickej forme možno rýchlo upravovať a analyzovať.
Napríklad plnofarebný obrázok možno ľahko previesť na odtiene sivej, zatiaľ čo opačná konverzia je zdĺhavý proces. Konverzia textového súboru vo formáte Unix na formát spoločnosti Microsoft (DOS/Windows) zahŕňa pridávanie znakov, čo však nezvyšuje entropiu, keďže ide o postup založený na pevných pravidlách; naproti tomu pridanie farebnej informácie k čiernobielemu obrázku nemožno spoľahlivo vykonať programovo, keďže si to vyžaduje pridanie novej informácie, takže akýkoľvek pokus o pridanie farby by si vyžadoval odhad zo strany počítača na základe predchádzajúcich znalostí. Konverzia 24-bitového obrázku PNG na 48-bitový nepridáva obrázku žiadnu novú informáciu — iba rozširuje existujúce hodnoty RGB pixelov na väčší bitový rozsah spôsobom, ktorý je podľa špecifikácie formátu PNG plne reverzibilný a nestráca sa pri ňom žiadna dátová hodnota. Táto konverzia umožňuje následne zmeniť hodnotu pixelu na jemnejšiu úroveň, samotná konverzia to však ešte nerobí — to dokáže až ďalšia manipulácia s obrázkom. Konverzia obrazového alebo zvukového súboru zo stratového formátu (napríklad JPEG alebo Vorbis) na bezstratový (napríklad PNG alebo FLAC) alebo nekomprimovaný (napríklad BMP alebo WAV) formát iba zbytočne zaberá miesto, keďže výsledkom je ten istý obrázok so stratou pôvodnej informácie (artefaktmi stratovej kompresie), aká bola v zdroji. Obrázok vo formáte JPEG sa nikdy nedá obnoviť do kvality pôvodného obrázku, z ktorého vznikol, bez ohľadu na to, koľko úsilia používateľ vynaloží na funkciu odstránenia artefaktov JPEG vo svojom programe na úpravu obrázkov.
Automatická obnova informácie stratenej v procese stratovej kompresie by si pravdepodobne vyžadovala výrazný pokrok v oblasti umelej inteligencie — hoci moderné nástroje na báze umelej inteligencie už dokážu vytvoriť vizuálne presvedčivú, aj keď nie bitovo totožnú, rekonštrukciu detailov. Pivotná konverzia Dátová konverzia môže prebiehať priamo z jedného formátu do druhého, no mnohé aplikácie, ktoré konvertujú medzi viacerými formátmi, používajú medziľahlú reprezentáciu (tzv. pivotný formát), cez ktorý sa akýkoľvek zdrojový formát konvertuje do cieľového. Napríklad cyrilský text možno konvertovať z kódovania KOI8-R do Windows-1251 pomocou prevodovej tabuľky medzi oboma kódovaniami, moderný prístup je však najprv konvertovať súbor z KOI8-R do Unicode a z neho potom do Windows-1251. Ide o lepšie zvládnuteľný prístup — namiesto prevodových tabuliek pre všetky možné dvojice kódovaní znakov potrebuje aplikácia iba jednu prevodovú tabuľku pre každú znakovú sadu, ktorú používa na konverziu do a z Unicode, čím sa počet potrebných tabuliek zníži zo stoviek na desiatky.
Pivotná konverzia sa podobným spôsobom používa aj v iných oblastiach. Kancelárske aplikácie pri vzájomnej konverzii formátov súborov spravidla používajú svoj vlastný interný, predvolený formát ako pivotný. Program na konverziu obrázkov nekonvertuje obrázok vo formáte PCX priamo do PNG — namiesto toho ho pri načítaní dekóduje do jednoduchého bitmapového formátu určeného na interné použitie v pamäti, a keď dostane príkaz na konverziu do PNG, práve tento pamäťový obraz sa prevedie do cieľového formátu. Zvukový konvertor, ktorý prevádza z formátu FLAC do AAC, najprv dekóduje zdrojový súbor do surových dát PCM v pamäti, a až následne na tomto pamäťovom obraze vykoná stratovú kompresiu AAC, čím vytvorí cieľový súbor.
Strata dát a nepresná konverzia Cieľom dátovej konverzie je zachovať všetky dáta a čo najviac vloženej informácie. To je možné iba vtedy, ak cieľový formát podporuje tie isté vlastnosti a dátové štruktúry, aké boli prítomné v zdrojovom súbore. Konverzia dokumentu z textového procesora do súboru vo formáte prostého textu nevyhnutne zahŕňa stratu formátovacích informácií, pretože formát prostého textu nepodporuje konštrukcie textového procesora, ako napríklad označenie slova tučným písmom. Z tohto dôvodu sa konverzia z jedného formátu do druhého, ktorý nepodporuje pre používateľa dôležitú funkciu, vykonáva len zriedka — hoci môže byť nevyhnutná v záujme interoperability, napríklad pri konverzii súboru z novšej verzie Microsoft Word do staršej verzie, aby ho mohli preniesť a použiť aj používatelia, ktorí nemajú v počítači nainštalovanú rovnakú, novšiu verziu Wordu.
Stratu informácie možno zmierniť aproximáciou v cieľovom formáte. Znak ako ä sa do kódovania ASCII nedá previesť priamo, keďže štandard ASCII ho neobsahuje, informáciu je však možné zachovať aproximáciou znaku ako ae. Toto samozrejme nie je optimálne riešenie a môže ovplyvniť operácie ako vyhľadávanie a kopírovanie; a ak daný jazyk rozlišuje medzi ä a ae, táto aproximácia znamená stratu informácie.
Dátová konverzia môže trpieť aj nepresnosťou, ktorá je výsledkom konverzie medzi koncepčne odlišnými formátmi. Príkladom je paradigma WYSIWYG, typická pre textové procesory a aplikácie na počítačovú sadzbu (DTP), oproti štrukturálno-deskriptívnej paradigme, ktorá sa nachádza v SGML, XML a mnohých od nich odvodených jazykoch, ako sú HTML a MathML. Použitie WYSIWYG editora pre HTML tieto dve paradigmy zlučuje, čoho výsledkom sú súbory HTML s neoptimálnym, ak nie priamo neštandardným kódom. V paradigme WYSIWYG dvojitý zalomenie riadku signalizuje nový odsek, keďže ide o vizuálny signál pre takúto konštrukciu, WYSIWYG editor HTML však takúto sekvenciu zvyčajne konvertuje na <BR><BR>, čo štrukturálne vôbec nepredstavuje nový odsek. Ako ďalší príklad, konverzia z formátu PDF do editovateľného formátu textového procesora je náročná úloha, keďže PDF zaznamenáva textovú informáciu podobne ako rytinu do kameňa — každému znaku priraďuje pevnú pozíciu a zalomenia riadkov sú pevne zakódované, zatiaľ čo formáty textových procesorov umožňujú preskupovanie (reflow) textu. PDF nepozná znak medzery medzi slovami — medzera medzi dvomi písmenami a medzera medzi dvomi slovami sa líšia iba veľkosťou, nie typom. Preto sa nadpis s výrazným prestupovaním písmen kvôli vizuálnemu efektu v súbore textového procesora zvyčajne skonvertuje s medzerami, napríklad slovo NADPIS s medzerou 1 em medzi písmenami sa zobrazí ako N A D P I S. Práve z týchto dôvodov sa na spracovanie a konverziu zložitejších formátov dokumentov využívajú špecializované softvérové nástroje a konvertory, ktoré sa snažia tieto štrukturálne rozdiely algoritmicky kompenzovať.
Otvorené oproti utajeným špecifikáciám Úspešná dátová konverzia si vyžaduje dôkladnú znalosť fungovania zdrojového aj cieľového formátu. V prípade, že špecifikácia formátu nie je známa, na vykonanie konverzie bude potrebné spätné inžinierstvo. Spätným inžinierstvom možno dosiahnuť blízku aproximáciu pôvodnej špecifikácie, no naďalej môžu vzniknúť chyby a chýbajúce funkcie.
Elektronika Ku konverzii formátu dát môže dochádzať aj na fyzickej vrstve elektronického komunikačného systému. Konverzia medzi linkovými kódmi, akými sú NRZ a RZ, sa v prípade potreby dá vykonať.
Referencie
Kategória:Informatika