Vodoznačení video obsahu



Podobné dokumenty
Systémy digitálního vodotisku. Digital Watermarking Systems

Program pro zobrazení černobílých snímků v nepravých barvách

Kosinová transformace 36ACS

DUM 01 téma: Úvod do počítačové grafiky

Projekt: 1.5, Registrační číslo: CZ.1.07/1.5.00/ Komprese videa

POPIS PROSTŘEDÍ PROGRAMU GIMP 2. Barvy 2. Okno obrázku 4 ZÁKLADNÍ ÚPRAVA FOTOGRAFIÍ V GRAFICKÉM EDITORU 6. Změna velikosti fotografie 6

Analýza a zpracování digitálního obrazu

Barvy na počítači a grafické formáty

D E T E K C E P O H Y B U V E V I D E U A J E J I C H I D E N T I F I K A C E

MANUÁL K OBSLUZE REDAKČNÍHO SYSTÉMU / wordpress

ROZPOZNÁVÁNÍ AKUSTICKÉHO SIGNÁLU ŘEČI S PODPOROU VIZUÁLNÍ INFORMACE

Digitalizace signálu (obraz, zvuk)

DIGITÁLNÍ VODOZNAČENÍ OBRAZU

LBP, HoG Ing. Marek Hrúz Ph.D. Plzeň Katedra kybernetiky 29. října 2015

Úvod do počítačové grafiky

TouchGuard Online pochůzkový systém

Parametrizace, harmonogram

Okno Editoru nabízí v panelu nástrojů

VODOZNAČENÍ STATICKÝCH OBRAZŮ

Laserový skenovací systém LORS vývoj a testování přesnosti

Kompresní algoritmy grafiky. Jan Janoušek F11125

Teorie barev. 1. Barvený model. 2. Gamut. 3. Barevný prostor. Barevný prostor různých zařízení

Bayesovská klasifikace digitálních obrazů

Úprava barev. Otočení snímku o 90. Další snímek. Uložit snímek. Úprava světlosti snímku. Otevřít složku

Počítačová gramotnost II Mgr. Jiří Rozsypal aktualizace

Bezpečný JPEG Úvod 2. JPEG Vlastnosti JPEG /

Hardwarová akcelerace HD videa v návaznosti na architektury čipu grafických karet

Mikroskopická obrazová analýza

UZ modul VVISION poslední změna

Telekomunikační sítě Protokolové modely

ednáška a telefonní modemy Ing. Bc. Ivan Pravda

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA INFORMAČNÍCH TECHNOLOGIÍ. Uživatelská příručka k programu FloodFilling Art

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY 6

Vodoznaky. Jozef Mlích Pavel Zemčík Michal Španěl

Optické měřicí 3D metody

FTC08 instalační manuál k dotykovému panelu systému Foxys

SPM SPECTRUM NOVÁ UNIKÁTNÍ METODA PRO DIAGNOSTIKU LOŽISEK

Převody datových formátů

FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ

Naučit se, jak co nejsnadněji přejít od verze TopoLu pro Windows k verzi TopoL xt. Cílem není vysvětlení všech možností programu.

Makroskopická obrazová analýza pomocí digitální kamery

22/2003 Sb. NAŘÍZENÍ VLÁDY. kterým se stanoví technické požadavky na spotřebiče plynných paliv

DUM 14 téma: Barevné korekce fotografie

Počítačová grafika a vizualizace I

Filtrace snímků ve frekvenční oblasti. Rychlá fourierova transformace

Využití modální analýzy pro návrh, posouzení, opravy, kontrolu a monitorování mostů pozemních komunikací

1. Snímací část. Náčrtek CCD čipu.

Algoritmy komprese dat

KONTROLA PŘESNOSTI VÝROBY S VYUŽITÍM MATLABU

Obsah. 1.1 Úvod do práce s autorským nástrojem ProAuthor 4

Obsah. Kapitola 1 Stažení a instalace Kapitola 2 Orientace v programu a základní nastavení Úvod... 9

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011

Návod na použití prezentační techniky

NUMERICKÉ MODELOVÁNÍ ZDIVA. 1. Současný stav problematiky

Office podrobný průvodce. Tomáš Šimek

MRAR-L. Družicové navigační systémy. Č. úlohy 4 ZADÁNÍ ROZBOR

Multimediální formáty

Virtuální instrumentace v experimentech jaderné fyziky - Vzorové úlohy

Multimediální systémy. 08 Zvuk

Omezení barevného prostoru

Počítačové vidění vs. digitální zpracování obrazu Digitální obraz a jeho vlastnosti

Sada 1 CAD Zobrazování RGB


Rastrový obraz, grafické formáty

ÚVOD DO PROBLEMATIKY PIV

2011 Garmin Ltd. nebo dceřiné společnosti Všechna práva vyhrazena. Bez předchozího souhlasu společnosti Garmin nesmí být žádná část tohoto manuálu

UŽIVATELSKÁ PŘÍRUČKA PRO INTERNETBANKING PPF banky a.s.

Jako příklady typicky ch hrozeb pro IT lze uvést: Útok

Kapitola 11. Vzdálenost v grafech Matice sousednosti a počty sledů

H-Série. Termovizní kamery pro bezpečnostní a dohledové aplikace. Přenosné termovizní kamery pro bezpečnostní aplikace

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry.

Práce s velkými sestavami

napájecí zdroj I 1 zesilovač Obr. 1: Zesilovač jako čtyřpól

Využití volně dostupných simulátorů pole v elektromagnetické kompatibilitě

Výukový materiál zpracován v rámci projektu EU peníze školám

GRAFICKÉ ADAPTÉRY. Pracovní režimy grafické karty

Stravenky Exit. 1. Spuštění modulu Stravenky Exit

Fiery JobMaster-Fiery Impose-Fiery Compose

(Auto)korelační funkce Statistické vyhodnocování exp. dat M. Čada ~ cada

Seznámení Corel Draw. PDF vytvořeno zkušební verzí pdffactory Pro Panel Vlastnosti. panel základních kreslicích nástrojů

3. Matice a determinanty

(n, m) (n, p) (p, m) (n, m)

Zvyšování kvality výuky technických oborů

Přednáška kurzu MPOV. Barevné modely

DUM 15 téma: Filtry v prostředí Gimp

Euklidovský prostor Stručnější verze

UŽIVATELSKÁ PŘÍRUČKA PRO SLUŽBU INTERNETBANKING PPF banky a.s.

Multimediální systémy. 02 Reprezentace barev v počítači

Metodická příručka pro učitele. InspIS SET modul školní testování

Určeno posluchačům Fakulty stavební ČVUT v Praze

Ostatní portálové aplikace

UŽIVATELSKÁ PŘÍRUČKA INSTRUKTORE

Nové metody stereofonního kódování pro FM pomocí digitální technologie. Pavel Straňák, Phobos Engineering s.r.o.

Digitální fotoaparáty, základy digitální fotografie

Počítačové zpracování obrazu Projekt Učíme se navzájem

INFORMAČNĚ TECHNOLOGICKÝ ZÁKLAD

Manuál k užívání aplikace Monitoringrejstriku.cz

Systém Bosch DCN Next Generation Dialog bez hranic...

Ostatní portálové aplikace

NĚKOLIK UTILIT PRO KOMFORTNĚJŠÍ OVLÁDÁNÍ INTERAKTIVNÍHO GRAFICKÉHO ROZHRANÍ

Transkript:

Vodoznačení video obsahu Bc. Jiří Hošek Email: hosek.j@seznam.cz Ústav Telekomunikací, FEKT, VUT v Brně Tento článek je zaměřen na problematiku vodoznačení a zejména pak na techniky vkládání vodoznaku do digitálního videa ve frekvenční oblasti. Blíže je popsána metoda vkládání vodoznaku ve frekvenční oblasti využívající diskrétní kosinovou transformaci, pro kterou byl vypracován návrh algoritmu vodoznačení. Tato technika vodoznačení byla zvolena mimo jiné pro její dobrou odolnost proti transformacím a kompresím označeného videa. Dále je uveden popis aplikace Watermark 2.0, která byla vytvořena na základě teoretického návrhu algoritmu. Aplikace byla realizována v jazyce JAVA a umožňuje vkládání a následnou detekci vodoznaku ve zvoleném video souboru. 1. Úvod S rozvojem internetu se velmi rychle začala objevovat tzv. digitální data. Pod tímto pojmem si lze představit audio signály, obrazové nebo video signály, ale také třeba elektronické texty a další data, která je možné v elektronické podobě ukládat a různými způsoby zpracovávat. Všechna tato digitální data se díky Internetu začala rychle rozšiřovat, což přineslo řadu výhod, jako například jejich snadné sdílení a dostupnost prakticky po celém světě. Zároveň se však objevil také nový dosud neznámý problém, kterým se stalo šíření nelegálních kopií těchto digitálních dat a nedodržování autorských práv. Každý, kdo měl přístup na Internet, si mohl prakticky zadarmo a bez jakýchkoli problémů či postihů digitální dílo zkopírovat a vydávat je za svoje vlastní. Toto samozřejmě poškozovalo pravé autory, kterým šíření nelegálních kopií způsobovalo duševní a materiální ztráty. Na ochranu digitálních dat se tedy začaly vyvíjet různé techniky. Velmi spolehlivou a v dnešní době často používanou metodou je metoda vkládání vodoznaku do digitálních dat vodoznačení (watermarking). Cílem této techniky je zabezpečit autentizaci digitálních dat a tím pádem také autorská práva [7]. Technika digitálních vodoznaků je definovaná jako vložení nadbytečné informace vodoznaku do multimediálních dat tak, aby změna těchto dat byla lidskými smysly nepostřehnutelná. [4] 2. Digitální vodoznak Digitální vodoznačení tedy znamená přidávání digitální informace do originálních dat takovým způsobem, že je to pro člověka nepostřehnutelné, ale zároveň snadno detekovatelné počítačovými algoritmy. Digitální vodoznak je většinou transparentní, neviditelný informační obrazec, který je vkládán do vhodných složek zdrojových dat užitím specifických algoritmů. Digitální vodoznaky jsou signály přidané do digitálních dat (audio, video, statický obraz, atd.), které mohou být kdykoli detekovány a vytaženy za účelem potvrzení pravosti zdrojových dat [3].

Základní princip většiny dnešních systémů s vodoznaky je podobný symetrickým kryptosystémům, neboť je založen na použití stejného klíče k vložení i detekci vodoznaku. Každý zabezpečovací systém využívající vodoznaky se skládá ze dvou hlavních bloků blok vkládání a blok detekce / vytažení vodoznaku. Obecně se dá tento systém popsat množinou (O, W, K, E K, D K, C τ ), kde O představuje originální data, W značí vodoznak, K je šifrovací klíč, E K značí proces vkládání, D K proces detekce a C τ je porovnávací funkce [1]. Šifrovací klíč může, ale nemusí být součástí bloku vkládání. Jeho použití však zvyšuje bezpečnost vloženého vodoznaku a tím se zároveň zvyšuje ochrana originálních dat před neautorizovanými operacemi. Následující dvě funkce [1] E D K K : O W K O : O K W (2.1) popisují vkládání a detekci vodoznaku. E K značí proces vkládání a D K značí proces vytažení vodoznaku. Porovnávací funkce [1] C τ : W 2 (2.2) porovnává pomocí prahu τ extrahovaný vodoznak s původně vloženým a tím je dosaženo výsledku porovnání. Práh je závislý na zvoleném algoritmu a měl by jednoznačně určit, zda se jedná o originální vodoznak nebo ne. Vstupní parametry procesu vkládání jsou originální data C 0, vodoznak W a tajný nebo veřejný klíč K. Následující funkce { 0,1} E K ( C0, W ) = CW, stejně jako Obr. 1 [3] ukazuje princip vložení vodoznaku. (2.3) Vodoznak Originální data C 0 W Blok vložení vodoznaku Označená data C w K Tajný klíč (volitelně) Obr. 1 Blok vložení vodoznaku 20-2

Extrakce vodoznaku je proces vytažení vodoznaku z testovaných dat tak, aby ho bylo možné porovnat s vloženým vodoznakem. Shoda vodoznaků potvrzuje vložení vodoznaku do testovaných dat, tedy zajišťuje autenticitu dat [3]. Detekce vodoznaku je rozhodovací proces, jehož výsledkem je zjištění, zda zdrojová data byla nebo nebyla označena vodoznakem [3]. Proces vytažení (extrakce) vodoznaku (Obr. 2) [3] je inverzní operací k procesu vložení. Vstupními parametry jsou vodoznak, testovaná (vodoznačená) data, originální data a tajný klíč. Počet vstupních parametrů procesu detekce vodoznaku se může lišit podle použité metody vodoznačení. Výstupem je extrahovaný vodoznak a výsledek detekce tedy míra shody extrahovaného vodoznaku s vloženým vodoznakem [1]. Originální vodoznak Originální data C 0 Testovaná data C 0 Tajný klíč W Blok detekce / vytažení vodoznaku K Vytažený vodoznak W Výsledek detekce vodoznaku {0,1} Obr. 2 Blok detekce / vytažení vodoznaku Efektivní systémy vkládání vodoznaku by měly splňovat několik základních požadavků. Přesto, že si některé požadavky odporují a závisí na konečné aplikaci zabezpečovacího systému, je obecnou snahou jejich dodržování v co nejvyšší míře. Dále jsou tedy uvedeny požadavky na systémy vkládání vodoznaku [2]. Nevnímatelnost: Změny způsobené vložením vodoznaku by neměly přesáhnout práh citlivosti zraku nebo sluchu člověka. Je tedy důležité dobře zvolit práh, pod kterým vzorky vodoznaku nezpůsobí vnímatelné zvukové nebo optické změny. Vodoznak je tedy považován za nevnímatelný nebo neviditelný, pokud je nepostřehnutelný lidskými smysly. Toto rozhodování a volba prahu je založeno na vlastnostech lidského zraku (HVS) a sluchu (HAS). Odolnost: Nemělo by být možné bez znalosti použité metody a tajného klíče odstranit vodoznak nebo jej učinit nečitelným. Odolnost je myšlena také ve smyslu odolnosti proti různým modifikacím zdrojových dat. Modifikace mohou být úmyslné (útoky) nebo neúmyslné (komprese, filtrace šumu, změna velikosti, atd.). Odolnost proti kompresi je velmi důležitá zejména v oblasti statických obrazů a videa. Odolnost je jedna z velice důležitých vlastností vodoznaku. Bezpečnost: Bezpečnost většiny dnešních systémů s vodoznaky je založena na používání jednoho nebo několika kryptografických klíčů, což ztěžuje přístup a následné odstranění vodoznaku. 20-3

Složitost: Složitost popisuje úsilí vynaložené na odstranění vodoznaku. Používaným parametrem pro vyhodnocení složitosti je množství času. Obecně je doporučeno navrhovat algoritmy vkládání vodoznaku tak náročné, aby jejich prolomení trvalo útočníkovi takovou dobu, po které by se odstranění vodoznaku stalo již bezvýznamné. Spolehlivost detekce: Vodoznak by měl představovat dostatečný a spolehlivý důkaz o vlastnických právech k testovaným datům. Statistická nedetekovatelnost: Neautorizovaná osoba by neměla být schopna na základě statistických metod odstranit vodoznak. To znamená, že ani vlastnictví velkého počtu digitálních prací označených stejným vodoznakem, by nemělo umožnit jeho detekci. Možným řešením je použití obsahově nebo časově závislých vodoznaků. Kapacita: Kapacita udává množství informace, které může být uloženo do zdrojových dat. Obecně je množství informace, které je možné vložit do zdrojových dat omezené, proto se ve většině systémů s vodoznaky zvolí kompromis, který je závislý na typu zdrojových dat a konkrétní aplikaci. Kapacita vodoznaku je velmi důležitá vlastnost a úzce souvisí s odolností. Pokud totiž zdrojová data obsahují velké množství vložených informací, stává se vodoznak, v případě útoku, snáze detekovatelným. Naproti tomu při vložení minimálního počtu informačních bitů, která jsou obsažena jen ve velmi malé oblasti zdrojových dat, je vodoznak prakticky odstraněn jakoukoli modifikací zdrojových dat. Je tedy vždy důležité dobře rozhodnout jaké množství vložené informace je vhodné pro konkrétní případ. Žádná ze současných technik digitálních vodoznaků však zatím nedokázala naplno splnit všechny výše popsané požadavky. Tři nejdůležitější nevnímatelnost, odolnost a bezpečnost jsou zobrazeny na trojúhelníku požadavků (Obr. 3) [2], který ukazuje, že jestliže jeden požadavek převažuje, zbylé dva jsou oslabené. Například požadavek na vysokou odolnost vodoznaku způsobí viditelné změny ve výsledných datech a naopak. Odolnost Nevnímatelnost Bezpečnost Obr. 3 Trojúhelník požadavků na digitální vodoznak 20-4

3. Základní metody digitálního vodoznačení V 90. letech 20. století začal intenzivní vývoj v oblasti vodoznačení. Od té doby bylo navrženo a vyvinutu mnoho metod, které se dají použít na označení různých druhů digitálních médií. Bylo představeno velké množství metod a algoritmů s využitím znalostí z oblasti steganografie, zdrojového kódování a komunikací. [7] Mezi základní metody (techniky) vodoznačení patří například metoda LSB metoda nejméně významného bitu, která využívá existujícího digitálního šumu, obsaženého v různých digitálních zdrojových datech, jako nosný signál pro informaci vodoznaku. Jiné techniky generují pseudonáhodné posloupnosti k začlenění vypočtené bitové informace do různých oblastí digitálních dat. Další metody využívají fraktální, vektorové nebo časově proměnné techniky. Existují také metody, které využívají techniky rozprostření spektra. Další poměrně rozšířenou oblastí jsou metody založené na různých typech transformací, jako je například diskrétní kosinová (DCT), rychlá fourierova (FFT), waveletová (WT) nebo fraktálová transformace [1]. Současné metody digitálního vodoznačení se rozdělují podle oblasti vkládání vodoznaku do zdrojových dat. Podle tohoto kritéria lze techniky digitálního vodoznačení rozdělit do třech hlavních skupin, které jsou znázorněny na Obr. 4. Oblast vkládání vodoznaku Časová (obrazová) oblast Transformační oblast Parametrická oblast Obr. 4 Rozdělení metod digitálního vodoznačení podle oblasti vkládání vodoznaku Metody v časové (obrazové) oblasti Tyto metody realizují modifikaci vzorků řečových nebo obrazových signálů. Metody vložení vodoznaku v časové oblasti, které se aplikují na obrazové signály, se také někdy nazývají jako metody vložení vodoznaku v obrazové oblasti. U těchto metod se v případě nevnímatelných vodoznaků využívá nedokonalosti lidského zraku v tom smyslu, že člověk dokáže rozeznat maximálně 90 přechodů jasových úrovní [3]. Při vyšším počtu přechodů již není schopný zaregistrovat malé změny v těchto přechodech. Tohoto principu využívá také dobře známá a používaná technika vodoznačení v časové oblasti metoda modifikace LSB bitů, která se používá jak u statických obrazů, tak také u audio signálů. Metody v transformační (frekvenční) oblasti Metody v transformační oblasti jsou velmi často využívanými metodami vodoznačení a existuje velké množství jejich variant. Tyto metody realizují modifikaci transformačních 20-5

koeficientů zdrojových dat. Při vkládání vodoznaku se nejprve musí provést transformace zdrojových dat do prostoru transformačních koeficientů. Vhodnými a často používanými transformacemi jsou diskrétní kosinová a diskrétní waveletová transformace. Po provedení transformace jsou realizovány samotné modifikace transformačních koeficientů. Zpětnou transformací modifikovaných koeficientů se získávají původní data, v kterých je obsažen vodoznak [1]. Metody v transformační oblasti se většinou používají pro digitální vodoznačení obrazových signálů a videa a obecně mají všechny stejný postup vložení vodoznaku, který je zobrazen na Obr. 5 [3]. Tento algoritmus se liší pouze v použitých transformacích a ve výběru a způsobu modifikace transformačních koeficientů. Originální obraz Vodoznak Transformace Transformační oblast originálního obrazu Permutace Permutovaný vodoznak Vložení vodoznaku + Inverzní transformace Obraz s vodoznakem Obr. 5 Obecný postup vložení vodoznaku v transformační oblasti 20-6

Proces vytažení vodoznaku vyžaduje originální obraz, obraz s vodoznakem a tajný klíč (pokud byl použit při vkládání ). Proces extrakce vodoznaku je znázorněn na Obr. 6 [3]. Originální obraz Obraz s vodoznakem Transformace Transformace Transformační oblast originálního obrazu Transformační oblast obrazu s vodoznakem Vytažení permutovaného vodoznaku - Depermutace Extrahovaný vodoznak Obr. 6 Obecný postup vytažení vodoznaku v transformační oblasti Metody využívající diskrétní kosinové transformace Metody založené na diskrétní kosinové transformaci mají v oblasti vodoznačení velké zastoupení. Hlavní výhodou DCT je její využívání v kompresních standardech JPEG a MPEG a to je také důvod, proč je DCT často používaná při vodoznačení digitálního obrazu a videa. Vkládání vodoznaku podle principů založených na DCT často ve výsledku znamená, že vložený vodoznak je pak více odolný vůči JPEG a MPEG kompresím. Vodoznačení v DCT oblasti nabízí možnost přímého vkládání vodoznaku do komprimovaných dat a tím tedy snížení celkové doby potřebné k provedení všech operací [1, 7]. 20-7

Metoda s využitím DCT je založená na rozdělení zdrojového signálu do bloků, kdy je každý blok transformován samostatně. Používaná velikost bloků je 8 x 8 pixelů (obrazových bodů). Výpočet 2D-DCT koeficientů obrazu o velikosti N x N se provádí podle vztahu [3], N 1 N 1 (2m + 1) i (2n + 1) j y0( i, j) = c( i, j) π π i0 ( m, n)cos cos, n= 0 m= 0 2N 2N kde c(0,j) = 1/N, c(i,0) = 1/N, c(i,j) = 2/N pro i,j 0 (3.1) Aby mohl být získán obraz s vloženým vodoznakem, je třeba jako poslední krok procesu vložení vodoznaku provést zpětnou diskrétní kosinovou transformaci. Výpočet koeficientů IDCT se provádí podle vztahu [3] i ( m, n) 0 N 1 N 1 = i= 0 j= 0 c( i, j) y 0 ( i, π (2m + 1) i π (2n + 1) j j) cos cos. 2N 2N (3.2) Většina energie obrazu je soustředěna v nízkofrekvenční oblasti. Vysokofrekvenční složky reprezentují pouze malou část energie obrazu, obsahují pouze informace o detailech obrazu. Proto je tedy vždy důležité určit hlavní požadavky na vodoznak nebo na konkrétní aplikaci. Pokud by byl vodoznak vložen do nízkofrekvenční oblasti, dosáhlo by se vysoké odolnosti proti různým modifikacím, ale zároveň by tento postup mohl způsobit viditelné změny ve vodoznačeném obraze. Pokud je požadována vysoká nevnímatelnost, vodoznak se vkládá do vysokofrekvenční oblasti, tím je ale získán velice málo odolný vodoznak, který může být například snadno odfiltrován klasickou filtrací na potlačení šumu. Tyto vlastnosti vyplývají z charakteristiky citlivosti lidského oka. Na základě rozboru zmíněných podmínek je vhodnou oblastí pro vložení vodoznaku oblast středních frekvencí, tato oblast je kompromisem mezi odolností a viditelností vodoznaku [7]. Metody v parametrické oblasti Metody vložení vodoznaku v parametrické oblasti jsou založené na modifikaci některých parametrů originálního signálu. Aby bylo možné měnit vybrané parametry, je třeba původní signál nejprve přetransformovat do parametrické oblasti. Jednou z používaných technik je například metoda vkládání vodoznaku založená na fraktálovém popisu obrazu, kdy bývají upravovány parametry jasu nebo kontrastu. Další metodou vodoznačení v parametrické oblasti je metoda založená na změně matice barevné palety RGB, kde je upravován například parametr sytosti barvy. Výsledné vodoznaky, vložené metodou využívající fraktálové kódování, jsou odolné zejména proti kompresi nebo filtrování signálu. 20-8

4. Návrh algoritmu vodoznačení videa Video je ve skutečnosti proud samostatných rychle po sobě jdoucích snímků, proto je k jeho vodoznačení možné použít téměř všechny částečně upravené metody vodoznačení statických obrazů. Pro vlastní softwarovou realizaci vodoznačení video obsahu byla vybrána metoda z frekvenční oblasti založená na diskrétní kosinové transformaci. Důvodem tohoto výběru bylo zejména to, že vodoznaky, jejichž základem je DCT, jsou dobře odolné proti ztrátové kompresi a v současné době jsou velice často používané. Jak již bylo uvedeno, metody vodoznační video obsahu vycházejí z metod pro vodoznační statických obrazů, proto i většina požadavků na proces vkládání a výsledný vodoznak je stejná jako u vodoznačení statických obrazů. Některé požadavky jsou však specifické pouze pro video, příkladem je požadavek na souvislé vodoznačení. Při návrhu algoritmu vodoznační videa byl tedy kladen důraz na tyto následující požadavky: Možnost souvislého vodoznačení (označení všech snímků) Náhodný výběr bloků pro vložení vodoznaku Vodoznak v podobě statického obrazu Snaha o co největší nevnímatelnost Zachování kvality videa Odolnost proti běžným úpravám videosignálu Algoritmus vložení vodoznaku Navržený algoritmus vložení vodoznaku ve frekvenční oblasti s využitím metody založené na DCT je rozdělen do těchto kroků: 1. Načtení video souboru Prvním krokem je načtení originálního video souboru. 2. Rozdělení videa na jednotlivé snímky a výběr snímků pro vodoznačení Aby bylo možné do videa vkládat a následně detekovat vodoznak, je třeba rozložit video na jednotlivé snímky. S tímto bodem také souvisí požadavek na souvislé vodoznačení. Existuje totiž několik možností, jak vybrat snímky, do kterých bude vložen vodoznak. Je možné zvolit jen některé, pokud jich však vybereme pouze malé množství, pak takto vzniklý vodoznak je možné odstranit vynecháním těchto snímků, aniž by to bylo patrné ve výsledném obraze. Výhodnější je tedy označovat všechny snímky, nebo alespoň jejich dostatečný počet. Tím totiž získáme souvislý vodoznak, který není tak snadné odstranit. 20-9

3. Převod vybraných snímků z formátu RGB do formátu YC B C R Data snímků originálního videa jsou načtena ve formátu RGB, tedy každý pixel je definován třemi hodnotami R (Red), G (Green), B (Blue). Z těchto tří složek se pak složí výsledná barva každého obrazového bodu. Hodnoty jednotlivých složek RGB bývají často uváděny v celočíselném rozsahu 0 255. Hodnota 0 znamená, že složka není zastoupena, maximální hodnota 255 značí, že složka nabývá své největší intenzity. Pro výpočet diskrétní kosinové transformace je však třeba převést data z formátu RGB do formátu YC B C R, jehož hlavní vlastností je oddělení jasové složky od barevných informací [5]. Důvodem převodu je také to, že je poté možné zvolit, zda bude vodoznak vložen do jasové nebo barevné složky. Převod z RGB do YC B C R se provádí podle následující rovnice [5] Y = 0.299R + 0.587G + 0.114B C C B R = 0.564( B Y) = 0.713( R Y ) (4.1) 4. Rozdělení vybraných snímků na bloky a výběr bloků pro vložení vodoznaku Následujícím krokem je rozdělení vybraných snímků na bloky 8 x 8 obrazových bodů, což je vhodná velikost pro následný výpočet DCT koeficientů. Metody vodoznačení využívající diskrétní kosinovou transformaci většinou do výsledného obrazu zanášejí určité zkreslení. Aby toto zkreslení nebylo příliš velké, nevkládá se vodoznak do všech bloků snímku, ale pouze do několika vybraných. Tento výběr bude v tomto konkrétním návrhu prováděn na základě pseudonáhodné posloupnosti, kdy se stanoví, kolik bloků z každého snímku bude použito pro vodoznačení a konkrétní bloky jsou vybrány podle vygenerované PN posloupnosti. Pro větší bezpečnost vodoznaku bude pro každý snímek videa vygenerována jiná PN posloupnost. 5. Stanovení oblasti pro vkládání vodoznaku Tím, že byl každý vybraný snímek videa převeden do formátu YC B C R, který má oddělenou jasovou složku od barevných, je možné zvolit, do které oblasti bude vodoznak vložen. Vodoznak vložený do jasové oblasti je více odolný vůči různým transformacím obrazu, ale zároveň je také v obraze více viditelný. Naproti tomu vodoznaky vložené do barevné oblasti jsou méně odolné vůči transformacím, ale nabízejí větší míru nevnímatelnosti. Aplikace bude koncipována tak, že si uživatel bude moci zvolit, do které oblasti požaduje vodoznak vložit. 6. Výpočet DCT pro vybraný blok Výpočet koeficientů DCT podle vztahu (3.1) je základním výpočtem celé metody. Výstupem je pak matice 8 x 8 DCT koeficientů pro vybraný blok obrazu. 7. Výběr DCT koeficientů pro vložení vodoznaku Mimo výběru bloků je třeba provést také výběr DCT koeficientů, které budou ovlivněny vodoznakem. Stejně jako u předchozího výběru bloků se vodoznak nevkládá do všech DCT koeficientů vybraného bloku. Výběr koeficientů v rámci 20-10

každého bloku se provádí buď podle pseudonáhodného klíče nebo se určí napevno, což bude použito i v tomto konkrétním algoritmu. 8. Výběr vodoznaku a jeho úprava Jako vodoznak lze použít různá data. Jedna z možností je použití statického obrazu, který je postupně vkládán do vybraných video snímků. Takovýto obraz se však musí nejprve transformovat do podoby vhodné pro vložení. Další možností je pseudonáhodná posloupnost čísel se stejnou délkou, jako je celkový počet vybraných koeficientů pro vložení vodoznaku [2]. V takovém případě pak odpadá nutnost jakékoli dodatečné úpravy koeficientů vodoznaku. V tomto konkrétním algoritmu však bude jako vodoznak použit statický obraz. Tento obraz je před jeho použitím třeba nejprve převést do binární podoby, tedy aby jeho pixely nabývaly pouze hodnot 0 nebo 255. 9. Vložení vodoznaku Samotné vložení vodoznaku je možné provést několika způsoby. Jeden z nich je pouhé sečtení hodnot vybraných koeficientů s příslušnou hodnotou vodoznaku. Dalším možností, která bude použita i v navrhované aplikaci, je záměna vybraných DCT koeficientů v závislosti na vodoznaku. Z každého vybraného bloku jsou vybrány dva koeficienty, jejichž hodnoty jsou x a y. Poté se načte hodnota vodoznaku w, která se vždy musí rovnat 0 nebo 255, což je možné brát také jako vyjádření bitů 0 a 1. Pokud je tedy hodnota vodoznaku w rovna 0 a hodnota prvního pixelu x je menší než hodnota druhého pixelu y, neprovede se nic. Pokud je tomu naopak, provede se prohození hodnot koeficientů obrazu. Pokud je hodnota vodoznaku w rovna 255 a hodnota prvního pixelu x je větší než hodnota druhého pixelu y, neprovede se nic. Pokud je tomu však naopak, provede se opět prohození hodnot DCT koeficientů obrazu. Výše popsaný postup lze shrnout tak, že hodnota vodoznaku w = 255 znamená, že první koeficient musí být větší nebo roven druhému a naopak hodnota vodoznaku w = 0 určuje, že první koeficient musí být menší než druhý. Tento postup se opakuje pro všechny zvolené bloky videa. Následující rovnice w = 0 x >= y prohození x < y ponechání w = 255 x >= y ponechání x < y prohození (4.2) vyjadřují výše popsaný postup vložení vodoznaku. 10. Nastavení odolnosti vodoznaku Aby byl vložený vodoznak dostatečně odolný proti úpravám a transformacím označených dat nebo proti případným útokům, je třeba, aby změna způsobená vodoznakem v originálních datech byla dostatečná. To zajistíme tak, že nejprve určíme rozdíl hodnot vybraných DCT koeficientů. Poté se stanoví požadovaná hodnota odolnosti O. Pokud je hodnota odolnosti menší nebo rovna hodnotě rozdílu koeficientů, pak se nic neděje. Pokud je však hodnota odolnosti větší, pak se provede úprava hodnot DCT koeficientů tak, aby výsledná hodnota rozdílu byla rovna nastavené hodnotě odolnosti. Úprava koeficientů však nesmí změnit povahu koeficientů, tedy pokud byl první koeficient po vložení vodoznaku větší než druhý, musí to tak zůstat i po nastavení odolnosti. Rovnice 20-11

x y < O úprava x y >= O ponechání (4.3) vyjadřuje výše popsaný princip nastavení odolnosti vodoznaku. Je třeba zdůraznit, že čím je zadaná hodnota rezistence vyšší, tím jsou ve výsledném vodoznačeném videu viditelnější změny v obraze. 11. Zpětná diskrétní kosinová transformace Aby bylo možné získat z označených koeficientů opět video, je potřeba nejprve provést podle vztahu (3.2) zpětnou diskrétní kosinovou transformaci, která z pozměněných transformačních koeficientů vytvoří nazpět matici hodnot ve formátu YC B C R [6]. 12. Zpětný převod z formátu YC B C R do RGB Aby bylo možné znovu sestavit jednotlivé snímky, je třeba získat množinu RGB hodnot. Podobně jako byl v třetím kroku proveden převod z formátu RGB do formátu YC B C R, tak nyní je třeba provést inverzní převod z YC B C R do RGB, který je definován následujícími rovnicemi R = Y + 1.402C G = Y 0.344C B = Y + 1.772C R B B 0.714C R. (4.4) 13. Sestavení označeného videa Posledním krokem algoritmu vkládání je vytvoření výsledného videa opětovným sestavením snímků z RGB dat. Zrekonstruované snímky se pak spojí do výsledné video sekvence a ta se uloží do výstupního souboru. Algoritmus detekce vodoznaku Celý algoritmus vodoznačení byl navrhován tak, aby se jednalo o soukromý systém s vodoznaky, konkrétně typ II. Tento typ systému vyžaduje pro detekci vodoznaku kromě originálních dat i kopii vloženého vodoznaku. Výsledkem detekce je pak míra shody vytaženého vodoznaku s kopií vodoznaku. Proces vytažení vodoznaku je v základu inverzní operací k vložení. V algoritmu detekce však nebude snahou vytažení celého vodoznaku z video souboru, ale pouze zjištění jeho existence ve zvolené video sekvenci. Jak již bylo zmíněno, realizovaný systém vodoznačení je soukromý systém typu II. Tyto systémy vodoznačení jsou nejvíce odolné proti různým modifikacím zdrojových dat, na druhou stranu však potřebují k detekci vodoznaku zadat nejvíce vstupních parametrů. U procesu detekce je tedy třeba zadat kromě vstupního videa a vodoznaku také všechny parametry a tajné klíče, které byly použity v procesu vodoznačení. Těmito parametry je počet snímků pro vložení vodoznaku, počet bloků, náhodný klíč pro výběr bloků, oblast vkládání a pozice DCT koeficientů. Některé kroky postupu detekce jsou stejné jako u vkládání vodoznaku, proto budou blíže popsány pouze odlišné body. Algoritmus detekce vodoznaku se tedy skládá z těchto kroků: 20-12

1. Načtení originálního a vodoznačeného videa a jejich rozložení na jednotlivé snímky Tento bod je stejný jako u procesu vkládání. 2. Výběr stejných snímků, které byly použity pro vodoznačení Aby bylo možné získat správný výsledek detekce, je třeba hledat vodoznak ve stejných snímcích, do kterých byl vložen. 3. Převod vybraných snímků z formátu RGB do formátu YC B C R Obdobně jako u procesu vodoznačení je třeba, aby byla data pomocí rovnice 4.1 převedena do formátu YC B C R. 4. Rozdělení snímků na bloky a výběr stejných bloků jako u vkládání Stejně jako u vkládání je třeba snímky rozdělit na bloky 8 x 8 pixelů. Je tedy třeba zadat počet bloků a tajný klíč pro výběr počtu bloků v rámci snímku. 5. Stanovení oblasti detekce Pro správnou detekci musí být zvolena stejná oblast, která byla použita pro vložení vodoznaku tedy jasová složka (Y) nebo barevné složky C B nebo C R. 6. DCT u vybraných snímků originálního i vodoznačeného videa Podle rovnice 3.1 se provede výpočet DCT pro každý vybraný blok snímku. 7. Výběr stejných DCT koeficientů z každého bloku jako u vkládání vodoznaku Stejně jako u předešlých kroků algoritmu detekce je třeba zadat stejné pozice DCT koeficientů, jaké byly ovlivněny vodoznakem při vkládání. 8. Načtení vodoznaku Stejné jako u vkládání. 9. Nastavená hodnota odolnosti Změna odolnosti při vodoznačení nezpůsobí změnu koeficientů v tom smyslu, že by změnila výsledek nerovnosti mezi koeficienty. Při detekci tedy není třeba zadávat parametr odolnosti. 10. Detekce vodoznaku Samotná detekce je velmi jednoduchá. Vždy se vezmou vybrané dva koeficienty z každého vybraného bloku a porovnají se. Pokud je první koeficient větší nebo roven druhému, do výstupního pole se zapíše hodnota 255, pokud je tomu naopak, do výsledného pole se zapíše hodnota 0. Rovnice x >= y 255 x < y 0 (4.5) popisuje detekci vodoznaku. 11. Porovnání vytaženého vodoznaku s originálním Po dokončení detekce ve všech snímcích se provede porovnání hodnot výstupního pole detekce s hodnotami vodoznaku. Výsledkem je pak míra shody uvedená v procentech. Je tedy třeba stanovit prahovou hodnotu, která bude určovat, zda originální data byla podepsána vodoznakem nebo ne. Při 20-13

stanovování prahu je nutné počítat s tím, že pokud jsou s označenými daty prováděny nějaké operace, může dojít ke změně hodnot označených dat a tím se také změní výsledek detekce. 5. Aplikace Watermark 2.0 Jako nástroj pro realizaci popsaného návrhu vodoznačení videa byl vybrán programovací jazyk JAVA. Hlavní výhodou tohoto moderního objektově orientovaného programovacího jazyku je nezávislost na platformě. Pro zpracování videa v jazyce JAVA je třeba použít aplikační programové prostředí s názvem Java Media Framework, které je všestranným nástrojem pro začlenění časově závislých multimediálních dat do JAVA aplikací. Od verze JMF 2.0 je již podporován také přímý přístup do multimediálních dat a jejich následné zpracovávání, což je při procesu vodoznačení velmi důležité. Aktuální verze JMF 2.1.1e zatím nenabízí dostatečnou podporu všech formátů pro zpracovávání videa, to tedy ve výsledku způsobuje určitá omezení v použitelnosti vytvořené aplikace. Proto bylo snahou vytvořit aplikaci do určité míry nezávislou na vstupních datech. Vodoznačení dalších video formátů (např. MPEG), stejně tak jako možnost ukládat výstupní soubor do více video formátů, by pak mělo být především otázkou podpory ze strany programovacího prostředí JMF. Vytvořená aplikace je rozdělena do tří částí (záložek). První částí (Obr. 7) je výběr vstupního video souboru, kde je možné zvolit vstupní video sekvenci a také provést její přehrání. V druhé záložce (Obr. 8) se provádí nastavení parametrů pro vložení vodoznaku a samotného vkládání. Před samotným vložením vodoznaku je nutné nadefinovat kromě výstupního souboru také potřebné parametry vodoznačení (Obr. 9), kterými jsou: Vodoznak Je nutné zvolit soubor obsahující vodoznak. Realizovaná metoda používá jako vodoznak statický černobílý obraz, jehož hodnoty musí být pouze 0 nebo 255. Praktickým testováním bylo zjištěno, že jako vodoznak je vhodný černobílý obraz ve formátu GIF. Převod obrazu do binární podoby lze provést v běžném editoru obrázků. Počet vodoznačených snímků Tento parametr udává, do kolika snímků videa se bude vkládat vodoznak. Je možné zvolit některou z následujících možností: o Každý snímek o Každý druhý snímek o Každý 10. snímek o Každý 100. snímek o Jeden náhodný snímek o Jeden konkrétní snímek je třeba zadat číslo snímku Počet vodoznačených bloků Zde je třeba zvolit do kolika bloků v rámci snímku se bude vodoznak vkládat. Na výběr jsou hodnoty: 4, 8, 16, 32, 64, 128, 256, 512 a 1024. Tajný klíč 20-14

Tajný klíč je kombinace číslic sloužící pro inicializaci pseudonáhodného generátoru, podle jehož výstupní posloupnosti jsou vybírány konkrétní bloky snímku. Odolnost Parametr Odolnost definuje schopnost vloženého vodoznaku zůstat detekovatelným i po provedení neoprávněných modifikací. Čím je tedy hodnota odolnosti větší, tím je vodoznak odolnější, ale zároveň také viditelnější v obraze. Odolnost lze nastavit v rozmezí 0 100. Oblast vodoznačení Aplikace umožňuje vkládat vodoznak jak do jasové složky Y, tak do barevných složek C R nebo C B. DCT koeficienty Posledním krokem nastavení je volba DCT koeficientů. Vodoznakem jsou ovlivňovány vždy 2 koeficienty, je tedy třeba zadat jejich pozici v rámci bloku 8 x 8 DCT koeficientů. V levém horním rohu jsou umístěny nízkofrekvenční složky, které zajišťují vysokou odolnost vodoznaku, ale zároveň také jejich modifikace způsobuje vyšší vnímatelnost vodoznaku. Naproti tomu v pravém dolním rohu jsou umístěny vysokofrekvenční složky, které zajišťují nevnímatelnost vodoznaku, ale takovýto vodoznak je pak také málo odolný. Kompromisem je tedy volba koeficientů středních frekvencí. Obr. 7: Watermark 2.0 Načtení originálního video souboru 20-15

Obr. 8: Watermark 2.0 Vkládání vodoznaku Obr. 9: Watermark 2.0 Nastavení parametrů Poslední část aplikace Watermark 2.0 (Obr. 10) zajišťuje detekci vodoznaku v zadaném video souboru. Před provedením detekce je třeba nejprve zvolit testovaný video soubor a také stejně jako při vkládání zadat parametry detekce. Aby bylo možné ověřit pravost označených dat, je třeba zadat naprosto stejné parametry, které byly nastavené při vkládání vodoznaku tedy soubor s vodoznakem, počet vodoznačených snímků, počet vodoznačených bloků, tajný klíč, oblast vodoznačení a DCT koeficienty. Hodnota odolnosti není třeba zadávat, protože na 20-16

samotnou detekci nemá vliv. Hodnota výsledku je zobrazená v procentech a udává shodu detekovaného vodoznaku s originálním vodoznakem. Obr. 10: Watermark 2.0 Detekce vodoznaku Hodnocení kvality výsledného videa v aplikaci Watermark 2.0 Ve vytvořené aplikaci Watermark 2.0 se provádí hodnocení kvality videa obsahujícího vodoznak pomocí objektivní metody. Po vložení vodoznaku jsou vždy vypočítány a zobrazeny hodnota střední absolutní chyby MAE a hodnota špičkového odstupu signál / šum PSNR. Použitá metoda vkládání vodoznaku založena na DCT vnáší do výsledného obrazu různé artefakty, jejichž míra nevnímatelnosti je závislá na parametrech vodoznaku, zejména pak na jeho odolnosti. Na následujících obrázcích jsou uvedeny příklady neviditelnosti vloženého vodoznaku, kterým byl statický obraz (Obr. 11). V následujících dvou případech byly použity téměř stejné parametry vodoznačení, rozdílná byla pouze hodnota odolnosti a počet bloků, do kterých byl vodoznak vkládán. U prvního video snímku (Obr. 12) byla zadaná odolnost 30 a počet bloků 32, na druhém snímku byla odolnost 90 a počet bloků 512. Porovnáním obou dvou snímků je na první pohled patrný rozdíl. U druhého snímku (Obr. 13) s vyšší odolností jsou změny více viditelné a díky většímu počtu vodoznačených bloků je těchto změn podstatně více než u prvního snímku. 20-17

Obr. 11: Vodoznak logo FEKT Obr. 12: Watermark 2.0 Vodoznak s odolností 30 20-18

Obr. 13: Watermark 2.0 Vodoznak s odolností 90 Ze subjektivního hlediska je nevnímatelnost vodoznaku také závislá na poloze vzniklé změny. Pokud ke změně obrazu dojde v členité části obrazu (hrany, textury), pak je tato změna téměř nepostřehnutelná. Naopak, pokud dojde ke změně v homogenní oblasti, pak je deformace obrazu více viditelná. To je dobře patrné na následujícím snímku (Obr. 14), kde v levém horním rohu je homogenní černá oblast, ve které jsou změny způsobené vodoznakem více vidět než v ostatních částech snímku. Stejně tak, pokud je vodoznakem ovlivňována jasová složka, je vodoznak méně viditelný v částech snímku, jejichž barva je blízká šedé barvě, naproti tomu v částech snímku s výraznými barvami je vodoznak více postřehnutelný. Obr. 14: Watermark 2.0 Vodoznak v homogenní oblasti 20-19

6. Závěr V tomto článku byl proveden rozbor problematiky vodoznačení videa, dále pak popis jednotlivých metod vkládání vodoznaku a na závěr byla také představena aplikace umožňující vkládání vodoznaku do zadaných video sekvencí. Aplikace byla vytvořena v prostředí JAVA s využitím nadstavby Java Media Framework určené pro zpracovávání multimediálních dat v prostředí JAVA. Vytvořená aplikace umožňuje vkládání vodoznaku do videa ve formátech M-JPEG, MOV nebo RGB. Vodoznakem je statický binární obraz a výstupní video data obsahující vodoznak jsou ukládána do nekomprimovaného formátu RGB. Bezpečnost vloženého vodoznaku je založena na tom, že nikdo jiný, kromě vlastníka videa, nezná vstupní parametry a náhodné klíče použité při vkládání a není tedy schopen vodoznak správně detekovat. Výhodou vytvořeného programu je velká možnost nastavení parametrů procesu vkládání vodoznaku, čímž je možné ovlivnit výslednou odolnost a viditelnost vodoznaku. Další výhodou aplikace je její přehlednost a také to, že je uživatel díky informacím z textové oblasti neustále informován o právě prováděných operacích. Nevýhodou aplikace je její časová náročnost, vysoké požadavky na výkon procesoru a kapacitu úložného prostoru. Popsané nevýhody jsou však z velké části způsobeny zatím nedostatečnou podporou všech video formátů v aplikačním programovacím prostředí JMF a také tím, že výsledné video je ukládané ve formátu RGB bez použití komprese. Použitá literatura [1] ARNOLD, M., SCHMUCKER, M., WOLTHUSEN, D. S. Techniques and Applications of Digital Watermarking and Content Protection. Boston: Artech House Publishers, 2003. ISBN: 1-58053-111-3 [2] CHUN-SHIEN, L. Multimedia Security: Steganography and Digital Watermarking Techniques for Protection of Intellectual Property. Hershey: Idea Group Publishing, 2004. ISBN: 1-59140-275-1 [3] ČANDÍK, M. Bezpečnosť informačných systémov, steganografia a digitálna vodotlač. Ostrava: s. n., 2005. ISBN: 80-239-5662-X [4] LEVICKÝ, D. Multimediálne telekomunikácie. Košice: Elfa, 2002. ISBN: 80-89066-58-5 [5] RICHARDSON, I. E. G. H.264 and MPEG-4 Video Compression. West Sussex: John Wiley & Sons Ltd., 2003. ISBN: 0-470-84837-5 [6] ŘÍČNÝ, V., KRATOCHVÍL, T. Základy televizní techniky. Brno: Vysoké učení technické v Brně, 2004. ISBN: 80-214-2686-1 [7] SEITZ, J. Digital Watermarking for Digital Media. Hershey: Information Science Publishing, 2005. ISBN: 1-59140-518-1 20-20