Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Programování grafických aplikací
základní operace s obrazem
Radek Richtr
Institute of Information Theory and Automation
Academy of Sciences of the Czech Republic
Prague, Czech Republic
August 14, 2026
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 1 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Outline I
1 Rovinná grafika
Obraz
2D objekty
2 Transformace
Barvy
Geometrie
3 Konvoluce
Definice
Okrajový jev
Konvoluční filtry
4 Doplnění: diskrétní obraz a filtrace
Od spojité scény k pixelům
Konvoluce jako lokální lineární operace
5 Doporučené zdroje . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 2 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Cíle přednášky
Po absolvování přednášky by měl student umět:
• rozlišit spojitou scénu, vzorkovaný obraz a kvantované
hodnoty pixelů;
• vysvětlit rasterizaci základních 2D objektů a geometrickou
spojitost křivek;
• zapsat diskrétní 2D konvoluci a zvolit vhodnou okrajovou
podmínku;
• odlišit vyhlazení, detekci hran a ostření podle vlastností jádra.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 3 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Intro
• teoretická přednáška
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 4 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Intro
• teoretická přednáška
• přehled algoritmických podkladů
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 5 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Intro
• teoretická přednáška
• přehled algoritmických podkladů
• ... a matematických podkladů pro grafické algoritmy
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 6 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Intro
• teoretická přednáška
• přehled algoritmických podkladů
• ... a matematických podkladů pro grafické algoritmy
• matematika je základ, bez kterého to nejde (alespoň její
intuitivní pochopení)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 7 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Matematické minimum
• rovnice, parametrické rovnice
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 8 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Matematické minimum
• rovnice, parametrické rovnice
• sumy, integrály
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 9 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Matematické minimum
• rovnice, parametrické rovnice
• sumy, integrály
• matice, násobení matic
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 10 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Matematické minimum
• rovnice, parametrické rovnice
• sumy, integrály
• matice, násobení matic
• transformace
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 11 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Matematické minimum
• rovnice, parametrické rovnice
• sumy, integrály
• matice, násobení matic
• transformace
• determinant
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 12 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Obraz
• Nejzákladnějí pojmy bývají nejobtížněji definovatelné:
• obraz,
• textura, atd.
• Objekty jsou popsány matematicky (vektor) - usečky, křivky,
text, ...
• co nejpřesnější vykreslení spojitých útvarů na diskrátní mřížce
• ořezávání objektů na výřez daný plochou obrazovky
• nízkoúrovňové operace
• K vykreslení ale chceme matici pixelů (frame) v rastru
• Tedy nějaké X, Y a hodnotu
• Jaká je programová reprezentace restru?
• int[X][Y]?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 13 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Reprezentace obrazu
• X, Y - pozice v rastru
• S - Spektrum
• Spektrum je dáno barevým modelem zvoleným k reprezentaci
• Barevné modely - RGB (BGR), YUV, HSV, L*A*B, ...
• Rozsah obvykle 0-255 => 2563 = 16777216 odstínů
• Kousek historie
• High color - 5-6-5 (2B na RGB)
• True color - 8-8-8 (3B na RGB)
• kvantování, vzorkování - historie, nebo současnost?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 14 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Reprezentace obrazu
• Reprezentace obrazu pomocí např. RGB hodnot
je tzv. přímá (direct color)
• Alternativou je indexový mod
Každá barva má svůj index, neuvádní se u každého pixelu
složení kažé barvy, ale jen index (ukazatel) dané barvy
• Který je výhodnější a kdy?
• při ztmavení barev
• v obrazu zapadajícího slunce
• při kompresi obrazu
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 15 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Reprezentace obrazu
• Formáty
• bmp
• gif
• jpg
• png
• atd.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 16 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Reprezentace obrazu
• A co video?
• Sekvece framů?
• Jaký datový typ a rozsah, organizace v paměti?
• Programová reprezentace?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 17 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Úsečky
• Kružnice a elipsa (Bresenham)
• Vyplňování (semínkové vyplňování)
• Polygon
• 4-okolí a 8-okolí
• Ořezávání (Cohen-Sutherland)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 18 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Objekty mohu být vektorové…
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 19 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Objekty mohu být vektorové…
• ale jsou vykreslené v rastru!
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 20 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Objekty mohu být vektorové…
• ale jsou vykreslené v rastru!
• Které z pixelů ’rosvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 21 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 22 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 23 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 24 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 25 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 26 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 27 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 28 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 29 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Které pixely v rastru ’rozsvítit’?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 30 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Bresenhamův algoritmus
• To, který pixel rastru vykreslit je potřeba vyřešit efektivně!
• A efektivně nejen na úrovni logiky:
• dělení je náročná operace
• a co teprve dělení neceločíselné
• a co přesnost?
• Rychlý algoritmus, který je navíc celočíselný!
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 31 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Bresenhamův algoritmus
• Nachází body nejbíže kreslené přimce a to pomocí celočíselné
aritmetiky
• Funguje symetricky k určité řídící ose
• Rozhoduje, jestli je další pixel na stejné, nebo vyšší úrovni
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 32 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Bresenhamův algoritmus
var d = 2*dy - dx
var dy = y2-y1; var dx = x2-x1
var x = x1 ; var y = y1
while (x <= x2)
{
Draw pixel at (x,y)
x++
if( d<0 )
d += dy + dy
else
{
d += 2*(dy-dx)
y++
}
} . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 33 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Kružnice a elipsy
- obdobný problém jako u přímek
- výhody ve větší symetrii
• Křivky
- i křivky mohou být 3D!
- rozdíl mezi ’křivkou’ a ’náhodnou čarou’
• Polynomiální křivky
• Spline křivky
• Beziérovy křivky
• NURBS
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 34 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitost
• Spojitost
- očekávaný tvar ’budoucí’ křivky na základě ’minulé’
- stejný tečný vektor i jeho velikost
- Cm parametricá spojitost stupně m
- Gm geometrická spojitost stupně m
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 35 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitost
• C0: Spojité napojení. Koncový bod první křivky a počáteční
bod druhé křivky jsou totožné.
Animace pohybu: animovaný objekt nezmění skokem polohu.
• C1: Tečné vektory (první derivace) jsou si v bodě spojení
rovny.
Animace pohybu: animovaný objekt nezmění skokem směr.
• C2: Druhé derivace v bodě spojení jsou si rovny.
Animace pohybu: animovaný objekt nezmění skokem rychlost.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 36 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitost
• C0: Spojité napojení. Koncový bod první křivky a počáteční
bod druhé křivky jsou totožné.
Animace pohybu: animovaný objekt nezmění skokem polohu.
• C1: Tečné vektory (první derivace) jsou si v bodě spojení
rovny.
Animace pohybu: animovaný objekt nezmění skokem směr.
• C2: Druhé derivace v bodě spojení jsou si rovny.
Animace pohybu: animovaný objekt nezmění skokem rychlost.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 37 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitost
• C0: Spojité napojení. Koncový bod první křivky a počáteční
bod druhé křivky jsou totožné.
Animace pohybu: animovaný objekt nezmění skokem polohu.
• C1: Tečné vektory (první derivace) jsou si v bodě spojení
rovny.
Animace pohybu: animovaný objekt nezmění skokem směr.
• C2: Druhé derivace v bodě spojení jsou si rovny.
Animace pohybu: animovaný objekt nezmění skokem rychlost.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 38 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitost
• C0: Spojité napojení. Koncový bod první křivky a počáteční
bod druhé křivky jsou totožné.
Animace pohybu: animovaný objekt nezmění skokem polohu.
• C1: Tečné vektory (první derivace) jsou si v bodě spojení
rovny.
Animace pohybu: animovaný objekt nezmění skokem směr.
• C2: Druhé derivace v bodě spojení jsou si rovny.
Animace pohybu: animovaný objekt nezmění skokem rychlost.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 39 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitost
• C0: Spojité napojení. Koncový bod první křivky a počáteční
bod druhé křivky jsou totožné.
Animace pohybu: animovaný objekt nezmění skokem polohu.
• C1: Tečné vektory (první derivace) jsou si v bodě spojení
rovny.
Animace pohybu: animovaný objekt nezmění skokem směr.
• C2: Druhé derivace v bodě spojení jsou si rovny.
Animace pohybu: animovaný objekt nezmění skokem rychlost.
• G0 - počáteční a koncový bod je totožný
• G1 - tečné vektory jsou lineárně závislé . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 40 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Vyplňování hranice
• řádkové se seznamem hran
• semínkový algoritmus
• Pozor na spojitost v rastru
• 4-okolí (návaznost při posunu v ose x nebo y)
• 8-okolí (návazost i diagonálně)
• Hranice × vnitřek
• Obojí 4-okolí?
• Obojí 8-okolí?
• Hranice 8-okolí a vnitřek 4-okolí?
• Hranice 4-okolí a vnitřek 8-okolí?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 41 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
2D objekty
• Ořezávání useček
- Cohen-Sutherland
• Koncové body p1 a p0 mají bitový kód - p1 or p0 = 0 ⇒
úsečka v okně
- p1 and p0̸ = 0 ⇒úsečka celá mimo
- jinak ⇒úsečka prochází několika oblastmi
• jinak: Zkrácení úsečky
- podle bitového kódu zvolíma další přímku, spočteme průsečík
- opakovat dokud úsečka není celá v okně
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 42 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Změna barevné charakteristiky
- jas, kontrast, gama
- úprava k tisku nebo zobrazení
• Konstantní prah
- informace jen o hodnote barvy
• Náhodné rozptýlení
- informace jen o hodnote barvy
• Pravidelné (maticové) rozptýlení
- vyžaduje i souřadnice vstupního pixelu
• Distribuce zaokrouhlovací chyby
- pixely je nutno navíc zpracovat v určitem pořadí (řádky, ...)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 43 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev - motivace
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 44 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Konstantní prah
- pevný převod do (obvykle značně) omezené palety barev
- paleta buď rovnoměrně rozdělená, nebo optimalizovaná
- často například u tisku posterů, plakátů
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 45 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Konstantní prah
- pevný převod do (obvykle značně) omezené palety barev
- paleta buď rovnoměrně rozdělená, nebo optimalizovaná
- často například u tisku posterů, plakátů
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 46 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Konstantní prah
- pevný převod do (obvykle značně) omezené palety barev
- paleta buď rovnoměrně rozdělená, nebo optimalizovaná
- často například u tisku posterů, plakátů
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 47 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Náhodné rozptýlení
- intenzita zdrojové černé ⇒pravděpodobnost
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 48 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Náhodné rozptýlení
- intenzita zdrojové černé ⇒pravděpodobnost
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 49 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Maticové rozptýlení
- pixel nestojí sám o sobě, převádí se malé oblasti
- konkrétních rozptylovacích matic je mnoho
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 50 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Maticové rozptýlení
- pixel nestojí sám o sobě, převádí se malé oblasti
- konkrétních rozptylovacích matic je mnoho
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 51 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Maticové rozptýlení
- pixel nestojí sám o sobě, převádí se malé oblasti
- konkrétních rozptylovacích matic je mnoho
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 52 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Maticové rozptýlení
- pixel nestojí sám o sobě, převádí se malé oblasti
- konkrétních rozptylovacích matic je mnoho
[0 0 ] [0 0 ] [0 0 ] [0 1 ] [1 1 ] [0 3 ]
Cin = {1, 2, 3, 4, 5} ,
0 0 0 1 1 1 1 1 1 1 2 1
. . . . . . . . . . . . . . . . . . . . . . A jak by fungoval převod do ASCII?
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 53 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Maticové rozptýlení
- pixel nestojí sám o sobě, převádí se malé oblasti
- konkrétních rozptylovacích matic je mnoho
0 12 3 15
8 4 11 7 Mdispej = 2 14 1 13
10 6 9 5
1 5 9 2
8 12 13 6 Mtisk = 4 15 14 10
0 11 7 3
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 54 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
• Distribuce zaokrouhlovací chyby
- pixel nestojí sám o sobě
- při převodu do omezené palety vnikne chyba
- ta se rozdistribuuje do ještě nepřevedených pixelů v okolí
• Floyd–Steinberg dithering - distribude chyby + optimalizované
paleta
7 ... ⋆ 16
... 3 5 1 ... 16 16 16
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 55 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 56 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 57 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 58 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 59 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 60 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 61 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Transformace barev
Originál 8bit prah. 8bit distr.
8bit opt + dith. 16b paleta 16b paleta + dith.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 62 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Konvoluce
∫∞
(f ∗g)(t) = f(τ)g(t −τ)dτ (1)
−∞
∗: L1 × L1 −→L1 (2)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 63 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitá konvoluce
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 64 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Spojitá konvoluce
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 65 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Konvoluce
Základní vlastnosti
f ∗g = g ∗f (3)
f ∗(g ∗h) = (f ∗g) ∗h (4)
a(f ∗g) = (af) ∗g = f ∗(ag) (5)
f ∗(g + h) = (f ∗g) + (f ∗h) (6)
f ∗δ = δ ∗f = f (7)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 66 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Konvoluce
{
∞, if x = 0.
δ(x) = (8)
0, otherwise.
∫
δ(x)dx = 1 (9)
∫∞
f(x)δ(x −a)dx = f(a) (10)
−∞
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 67 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Diskrétní Konvoluce
• Diskrétní konvoluce (rastr)
• 1D
(f ∗ g)[n] = Σ_{m=−∞}^{∞} f[m] · g[n−m] (11)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 68 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Diskrétní konvoluce
• Diskrétní konvoluce (rastr)
• 2D (obrázky)
(f ∗ g)[m, n] = Σ_{i=−∞}^{∞} Σ_{j=−∞}^{∞} f[i, j] · g[m−i, n−j] (12)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 69 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Diskrétní konvoluce
video
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 70 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Okrajový jev
• Diskrétní konvoluce (rastr)
• 2D (obrázky)
• Okrajový jev: A co na kraji obrazu?
- type valid
- type same
- type full
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 71 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Okrajový jev
• Diskrétní konvoluce (rastr)
• 2D (obrázky)
• Okrajový jev: A co na kraji obrazu?
- oblepení nulami (zero padding)
- zrcadlové prodloužení (mirror extension)
- periodické prodloužení (periodic/toroid extension)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 72 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Okrajový jev
• Diskrétní konvoluce (rastr)
• 2D (obrázky)
• Okrajový jev: A co na kraji obrazu?
- oblepení nulami (zero padding)
- zrcadlové prodloužení (mirror extension)
- periodické prodloužení (periodic/toroid extension)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 73 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Okrajový jev
• Diskrétní konvoluce (rastr)
• 2D (obrázky)
• Okrajový jev: A co na kraji obrazu?
- oblepení nulami (zero padding)
- zrcadlové prodloužení (mirror extension)
- periodické prodloužení (periodic/toroid extension)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 74 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Konvoluční filtry
• Prosté a vážené průměrování
• Odšumění
• Detekce hran
• Ostření
• Filtry ve frekvenční oblasti (příště)
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 75 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Odšumění
• Prosté a vážené průměrování
• Odšumění
• Součet roven 1
- proč?
1 1 1
1
× 1 1 1
9
1 1 1
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 76 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Odšumění
• Prosté a vážené růměrování
• Gaussův šum
• Součet roven 1
- proč?
1 2 1
1
× 2 4 2
16
1 2 1
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 77 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Detekce hran
• Sobelův operátor
- první derivace
- směrově orientovaný
- dvojice masek h a h
• Součet roven 0
- Proč?
−1 0 1 1 2 1
h = −2 0 2 h = 0 0 0
−1 0 1 −1 −2 −1
√
|G| = h2 + h2
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 78 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Detekce hran
• Sobelův operátor
- první derivace
- směrově orientovaný
- dvojice masek h a h
−2 −1 0 0 −1 −2
h = −1 0 1 h = 1 0 −1
0 1 2 2 1 0
√
|G| = h2 + h2
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 79 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Detekce hran
• Robinsonův operátor
• Kirschův operátor
−1 −1 −1 −5 −5 −5
hRobin = 1 −2 1 hKirsch = 3 0 3
1 1 1 3 3 3
√
|G| = h2 + h2
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 80 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Detekce hran
• Laplaceův operátor
- druhá derivace
- dvojí reakce na hranu
1 1 1 0 1 0
λ = 1 −8 1 λ = 1 −4 1
1 1 1 0 1 0
více: [Gonz89][Gonz97][Lewi90]
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 81 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Detekce hran
• Laplaceův operátor
- druhá derivace
- dvojí reakce na hranu
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 82 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Ostření
• Zaostření pomocí detekce hran
• Vysoké frekvence
• Nízké frekvence
1 1 1 0 1 0
λ = 1 −8 1 λ = 1 −4 1
1 1 1 0 1 0
√
|G| = G2x + G2y
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 83 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Vzorkování a kvantování nejsou totéž
• Vzorkování určuje, kde obraz měříme: prostorové souřadnice
(m, n).
• Kvantování určuje, kolika hodnotami měření reprezentujeme:
například 256 úrovní na kanál.
• Nedostatečné vzorkování vytváří aliasing; hrubé kvantování
vytváří páskování a kvantizační šum.
• Vyšší bitová hloubka neopraví chybějící prostorové vzorky a
vyšší rozlišení neobnoví ztracené odstíny.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 84 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Nyquistova podmínka a aliasing
Je-li nejvyšší prostorová frekvence obrazu fmax, musí vzorkovací
frekvence splnit
fs > 2fmax.
• Frekvence nad fs/2 se po vzorkování jeví jako nižší frekvence.
• V obraze vzniká moaré, falešné hrany nebo blikání jemných
struktur v animaci.
• Praktické řešení: před zmenšením použít dolní propust; při
renderingu integrovat přes plochu pixelu.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 85 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Diskrétní 2D konvoluce: přesná definice
Pro obraz I a jádro h rozměru (2a + 1) × (2b + 1) definujeme
∑a ∑b
(I ∗h)[m, n] = h[i, j]I[m −i, n −j].
i=−a j=−b
• Jádro se při konvoluci obrací v obou osách; bez obrácení jde o
korelaci.
• U symetrických jader (např. Gaussova) mají obě operace
stejný výsledek.
• Součet koeficientů jedna zachovává konstantní jas; součet
nula potlačuje konstantní oblasti.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 86 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Co se děje na hranici obrazu?
Pro výpočet poblíž okraje chybějí vzorky. Volba rozšíření je součást
algoritmu:
• nuly: jednoduché, ale vytvářejí tmavý lem;
• replikace: prodlužuje krajní hodnotu;
• zrcadlení: obvykle omezuje skok na hranici;
• periodické rozšíření: přirozené pro DFT, nevhodné pro
nenavazující obraz.
Výstup valid používá jen úplná okolí; same zachovává rozměr
pomocí zvolené okrajové podmínky.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 87 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Separabilní filtr a výpočetní cena
Pokud lze jádro zapsat jako h[i, j] = u[i]v[j], pak
I ∗h = (I ∗u) ∗v.
• Přímá konvoluce s jádrem k × k stojí přibližně k2 operací na
pixel.
• Dvě jednorozměrné konvoluce potřebují přibližně 2k operací
na pixel.
• Gaussovské vyhlazení je separabilní; velká jádra jsou proto
výrazně levnější.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 88 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Od derivace k hraně a ostření
• První derivace (Sobel, Scharr) odhaduje gradient
∇I = (Ix, Iy).
√
• Velikost ∥∇I∥2 = I2x + I2y vyjadřuje sílu hrany,
atan2(Iy, Ix) její orientaci.
• Laplaceův operátor ∇2I = Ixx + Iyy je izotropní, ale citlivý na
šum.
• Unsharp masking ostří obraz jako Isharp = I + α(I −Gσ ∗I).
Derivaci proto obvykle předchází vyhlazení; jinak zesílíme i
vysokofrekvenční šum.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 89 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Shrnutí a kontrolní otázky
• Vzorkování určuje prostorové rozlišení, kvantování rozlišení
hodnot.
• Konvoluce je lokální lineární operace; výsledek závisí také na
práci s okrajem.
• Součet koeficientů jádra napovídá reakci na konstantní jas.
1 Proč před zmenšením obrazu používáme dolní propust?
2 Kdy se konvoluce a korelace liší?
3 Proč derivace zesilují šum a jak tomu předcházet?
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 90 ↗
Outline. .. .. .. . Rovinná. .. .. .. .. .. ..grafika.. .. .. .. .. .. .. .. .. . Transformace. .. .. .. .. .. .. .. . Konvoluce. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . Doplnění:. .. .. .. .. .. .. .diskrétní obraz a filtrace .Doporučené. zdr
Doporučené zdroje I
[1] Rafael C. Gonzalez and Richard E. Woods.
Digital Image Processing.
Pearson, 4 edition, 2018.
Základní učebnice zpracování obrazu, konvoluce a frekvenční filtrace.
[2] Alan V. Oppenheim and Ronald W. Schafer.
Discrete-Time Signal Processing.
Prentice Hall, 3 edition, 2010.
Podrobný výklad diskrétních systémů a Fourierovy transformace.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 91 ↗
Příště. .. . Původní. .. . zdroje
Příště
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 92 ↗
Příště. .. . Původní. .. . zdroje
Příště
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 93 ↗
Příště. .. . Původní. .. . zdroje
Zdroje
...
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 94 ↗
Příště. .. . Původní. .. . zdroje
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .Radek Richtr · původní podklad · PDF, strana 95 ↗