Obrázky (reprezentace, generování, úpravy) IB111 Úvod do programování
|
|
- Blanka Emilie Brožová
- před 6 lety
- Počet zobrazení:
Transkript
1 Obrázky (reprezentace, generování, úpravy) IB111 Úvod do programování / 67
2 2 / 67
3 Účel přednášky procvičení základních konstrukcí z jiného pohledu propojení programování a matematiky téma reprezentace dat procvičení čtení kódu podklad pro zajímavé cvičení 3 / 67
4 Poznámka k efektivitě, obrázkům ukázky programů v přednášce: snaha o čitelnost programů neefektivní (pomalé): algoritmy technická realizace (např. putpixel vs load + pixel access object) nízká / rozličná kvalita obrázků čistě pragmatické důvody (nepříliš velké PDF), žádná skrytá pointa 4 / 67
5 Další zdroje, náměty obrázky, zvuk, video: kniha Introduction to Computing and Programming in Python, A Mutlimedia Approach, M. J. Guzdial, B. Ericson. 5 / 67
6 Reprezentace obrázků Bitmapová grafika Vektorová grafika (5,27) (25,27) (5,15) (5,3) (25,3) 6 / 67
7 Reprezentace barev více barevných modelů (aditivní, subtraktivní) budeme používat aditivní model RGB red, green, blue každá složka = hodnota (8 bitů, 1 byte) barva = trojice, např. (15, 255, 100) 7 / 67
8 Knihovny (moduly) v Pythonu knihovna poskytuje rozšiřující funkcionalitu zdroje knihoven: standardní distribuce (např. math, turtle) separátní instalace (např. numpy) vlastní knihovny použití knihoven: import knihovna následná volání knihovna.funkce() import knihovna as nazev from knihovna import funkce from knihovna import * (nedoporučeno) 8 / 67
9 Proč nepoužívat import * from X import * V malém programu nemusí vadit, ale ve větších projektech považováno za velmi špatnou praxi. nepořádek v jmenném prostoru kolize, přepis překlepy se mohou chovat magicky složitější interpretace chybových hlášek Python Zen: Explicit is better than implicit. 9 / 67
10 Knihovna Image knihovna pro práci s bitmapovými obrázky velmi bohatá funkcionalita použijeme jen základní operace: new vytvoření obrázku open, convert otevření obrázku, konverze na RGB mód getpixel zjištění barvy bodu putpixel změna barvy bodu size velikost obrázku show, save zobrazení, uložení 10 / 67
11 Knihovna Image technické poznámky Python Imaging Library (PIL): jen pro Python 2 implementace Pillow (i pro Python 3): from PIL import Image 11 / 67
12 N-tice reprezentace souřadnic a barev pomocí n-tic (tuple) podobné jako seznamy, ale neměnitelné; zápis pomocí kulatých závorek u obrázků typicky: souřadnice: (x, y) barva: (r, g, b) 12 / 67
13 Image demo def demo(): im = Image.new("RGB", (20,20), (255,255,255)) # model, velikost, barva pozadi im.putpixel((10,10), (0,0,0)) im.putpixel((8,7), (255,0,0)) im.putpixel((5,13), (100,255,105)) im.show() im.save("demo.png") 13 / 67
14 Geometrické útvary Napište programy pro generování následujících útvarů: čtverec trojúhelník kruh elipsa spirála 14 / 67
15 Kruh def disc(a = 150, r = 50): im = Image.new("RGB", (a, a), (255, 255, 255)) for x in range(a): for y in range(a): if XXX: im.putpixel((x, y), (0, 0, 0)) im.show() 15 / 67
16 Kruh def disc(a = 150, r = 50): im = Image.new("RGB", (a, a), (255, 255, 255)) for x in range(a): for y in range(a): if (x-a/2)**2 + (y-a/2)**2 < r**2: im.putpixel((x, y), (0, 0, 0)) im.show() 16 / 67
17 Barevný kruh 17 / 67
18 Barevný kruh Barvu namícháme podle vzdálenosti od středu kruhu: d = math.sqrt((x-a/2)**2 + (y-a/2)**2) if d < r: c = int(255*d/r) im.putpixel((x,y), (c,0,255-c)) 18 / 67
19 Barevné kruhy 19 / 67
20 Přidání náhodného kruhu do obrázku def add_random_disc(im): (width, height) = im.size r = random.randint(8, min(width, height) // 6) sx = random.randint(r+1, width-r-1) sy = random.randint(r+1, height-r-1) color = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) for x in range(width): for y in range(height): if (x-sx)**2 + (y-sy)**2 < r**2: im.putpixel((x,y), color) 20 / 67
21 Námět na procvičení 21 / 67
22 Geometrické obrazce 22 / 67
23 Základní princip potřebujeme plynulý přechod mezi bílou a černou jakou matematickou funkci využijeme? 23 / 67
24 Základní princip potřebujeme plynulý přechod mezi bílou a černou jakou matematickou funkci využijeme? sinus hodnoty mezi -1 a 1, perioda 2π potřebujeme hodnoty mezi 0 a 255, perioda (např.) / 67
25 Pruhy def strips(size = 150, count = 5): im = Image.new("RGB", (size, size)) for x in range(size): for y in range(size): z = math.sin(count * 2 * math.pi * x/size) shade = int(255 * (z + 1) / 2) im.putpixel((x,y), (shade, shade, shade)) im.show() 24 / 67
26 Vzory II 25 / 67
27 Mandelbrotova množina 26 / 67
28 Mandelbrotova množina z 1 = 0, c = x + yi je konstanta (komplexní číslo) definujeme posloupnost z n+1 = z 2 n + c c patří do Mandelbrotovy množiny tato posloupnost je omezená 27 / 67
29 Mandelbrotova množina detail Zdroj: Wikipedia Video zoom: 28 / 67
30 Mandelbrotova množina kód _ = ( 255, lambda V,B,c :c and Y(V*V+B,B, c -1)if(abs(V)<6)else ( 2+c-4*abs(V)**-0.4)/i ) ;v, x=1500,1000;c=range(v*x );import struct;p=struct.pack;m,\ j = <QIIHHHH,open( M.bmp, wb ).write for X in j( BM +P(M,v*x*3+26,26,12,v,x,1,24))or C: i,y=_;j(p( BBB,*(lambda T:(T*80+T**9 *i-950*t **99,T*70-880*T**18+701* T **9,T*i**(1-T**45*2)))(sum( [ Y(0,(A%3/3.+X%v+(X/v+ A/3/3.-x/2)/1j)*2.5 /x -2.7,i)**2 for \ A in C [:9]]) /9) ) ) 29 / 67
31 Úpravy obrázků 30 / 67
32 Úprava barev 31 / 67
33 Úprava barev pro každý pixel: zjisti barvu (getpixel) ulož upravenou barvu (putpixel) 31 / 67
34 Úprava barev kód def remove_green(filename): im = Image.open(filename) im = im.convert("rgb") width, height = im.size for x in range(width): for y in range(height): (r, g, b) = im.getpixel((x, y)) im.putpixel((x, y), (r, 0, b)) im.show() 32 / 67
35 Úprava barev obecnější řešení def transform_colors(filename, f_trans): im = Image.open(filename) im = im.convert("rgb") width, height = im.size for x in range(width): for y in range(height): (r,g,b) = im.getpixel((x,y)) im.putpixel((x,y), f_trans(r,g,b)) im.show() def inversion(r, g, b): return (255-r, 255-g, 255-b) transform_colors("les.jpg", inversion) transform_colors("les.jpg", \ lambda r, g, b: (255-r, b, g)) 33 / 67
36 Zrcadlový obraz 34 / 67
37 Zrcadlový obraz pro každý pixel v levé polovině: zjisti jeho barvu (getpixel) ulož barvu na příslušnou pozici v pravé polovině (putpixel) 34 / 67
38 Zrcadlový obraz kód for x in range(width / 2): for y in range(height): im.putpixel((width-1-x,y), im.getpixel((x,y))) 35 / 67
39 Překlopení 36 / 67
40 Překlopení prohazování symetrických bodů 36 / 67
41 Překlopení kód V předchozím kódu (zrcadlový obraz) změníme tělo for cyklu: tmp = im.getpixel((width-1-x,y)) im.putpixel((width-1-x,y), im.getpixel((x,y))) im.putpixel((x,y), tmp) 37 / 67
42 Rotace 38 / 67
43 Rotace vytvoř nový obrázek a naplň jej pixely podle originálu vhodně pozměněné souřadnice 38 / 67
44 Rotace kód s cenzurou def rotation(filename): im = Image.open(filename) im = im.convert("rgb") width, height = im.size new_im = Image.new("RGB", (height, width)) for x in range(width): for y in range(height): new_im.putpixel((xxx, YYY), im.getpixel((x,y))) new_im.show() 39 / 67
45 Rotace ilustrace height y width x height-y-1 x 40 / 67
46 Rotace o zadaný úhel 41 / 67
47 Rotace o zadaný úhel goniometrické funkce, lineární transformace, matice aplikace (procvičení) pojmů z matematiky 41 / 67
48 Histogram variace na téma frekvenční analýza 42 / 67
49 Histogram textový výpis 0-19: 0.3 % 20-39: 3.5 % 40-59: 6.3 % 60-79: 8.3 % 80-99: 12.7 % : 17.1 % : 18.5 % : 15.2 % : 9.0 % : 4.0 % : 1.8 % : 1.1 % : 2.2 % (implementace doporučené cvičení) 43 / 67
50 Další náměty na úpravy změna velikosti obrázku převod do stupňů šedi rozmazání (blur), detekce hran... další věci co umí váš grafický program 44 / 67
51 Pořádek v umění 45 / 67
52 Pořádek (nejen) v umění 46 / 67
53 Pořádek v umění pixel po pixelu 47 / 67
54 Řazení pixelů podle barvy vytvoříme seznam všech použitých barev seznam trojic [ (0, 150, 20), (255,255,255), (0, 0, 255),... ] seznam seřadíme barvy umístíme do obrázku 48 / 67
55 def tidy_up(filename): im = Image.open(filename) im = im.convert("rgb") width, height = im.size pixels = [] for x in range(width): for y in range(height): pixels.append(im.getpixel((x, y))) pixels.sort() new_im = Image.new("RGB", (width, height)) for y in range(height): for x in range(width): new_im.putpixel((x, y), pixels[y*width+x]) new_im.show() 49 / 67
56 Řazení pixelů 50 / 67
57 Řazení pixelů pixely je seznam trojic (r, g, b) sort() používá lexikografické řazení pokud chceme řazení dle součtu (intenzity) nahradíme pixels.sort() za: pixels = sorted(pixels,\ key = lambda c: -(c[0]+c[1]+c[2])) 51 / 67
58 Pořádek v umění náměty Zkuste další způsoby řazení: po řádcích / sloupcích po čtverečcích podle jiného kritéria gradient po uhlopříčce 52 / 67
59 Skrývačky v bitmapové grafice 53 / 67
60 Scalable Vector Graphics (SVG) vektorový formát založený na XML snadný způsob vytváření obrázků v jakémkoliv jazyce (generujeme prostý text) prohlížení: např. webový prohlížeč ruční editování: např. Inkscape převod na bitmapu: např. convert (ImageMagick) 54 / 67
61 SVG příklad <svg xmlns=" <line x1="15" y1="20" x2="30" y2="80" stroke="black" stroke-width="1"/> <circle cx="130" cy="50" r="30" stroke="blue" stroke-width="2" fill="green" /> <polyline fill="none" stroke="red" stroke-width="4" points="160,20 180,30 200,10 234,80"/> </svg> 55 / 67
62 Hvězda 56 / 67
63 def star(n = 10, length = 100): svg_header() center_x = length * 1.5 center_y = length * 1.5 step = length / n for i in range(n + 1): svg_line(center_x + i*step, center_y, center_x, center_y + (n-i)*step) svg_line(center_x - i*step, center_y, center_x, center_y + (n-i)*step) svg_line(center_x + i*step, center_y, center_x, center_y - (n-i)*step) svg_line(center_x - i*step, center_y, center_x, center_y - (n-i)*step) svg_finish() 57 / 67
64 Kompaktnější zápis def star(n = 10, length = 100): svg_header() center_x = length * 1.5 center_y = length * 1.5 step = length / n for i in range(n + 1): for dx, dy in [(-1,-1), (-1,1), (1,-1), (1,1)]: svg_line(center_x + dx*i*step, center_y, center_x, center_y + dy*(n-i)*step) svg_finish() 58 / 67
65 Variace na hvězdu 59 / 67
66 Vlastní knihovna pro želví grafiku želví grafika používána knihovna turtle vytvořme vlastní knihovnu s vykreslováním do SVG jen základní příkazy: forward(length) left(angle), right(angle) save(filename) 60 / 67
67 Princip implementace stav želvy: souřadnice x,y a aktuální natočení heading vykreslený obrazec: seznam souřadnic 61 / 67
68 Implementace I x = 50 y = 50 heading = 0 lines = [] def left(angle): global heading heading -= angle def right(angle): global heading heading += angle 62 / 67
69 Implementace II def forward(d): global x global y nx = x + d * math.cos(heading * math.pi / 180) ny = y + d * math.sin(heading * math.pi / 180) lines.append((x, y, nx, ny)) x, y = nx, ny 63 / 67
70 Poznámky jde o názornou ukázku principů, nikoliv dobrou knihovnu: příliš malá funkcionalita chybí dokumentace nevhodné použití globálních proměnných vhodné pro objektovou reprezentaci 64 / 67
71 class Turtle: def init (self): self.x = 50 self.y = 50 self.heading = 0 self.lines = [] def left(self, angle): self.heading -= angle def right(self, angle): self.heading += angle def forward(self, d): nx = self.x + d * math.cos(self.heading * math.pi / 180 ny = self.y + d * math.sin(self.heading * math.pi / 180 self.lines.append((self.x, self.y, nx, ny)) self.x, self.y = nx, ny 65 / 67
72 Absolutní vs relativní vykreslování (souřadnice vs želva) 66 / 67
73 Shrnutí ukázka elementární práce s grafikou bitmapová Image, putpixel, getpixel vektorová SVG, line využití základních konstrukcí (vesměs vnořené for cykly), trocha matematiky 67 / 67
Obrázky (reprezentace, generování, úpravy) IB111 Základy programování Radek Pelánek
Obrázky (reprezentace, generování, úpravy) IB111 Základy programování Radek Pelánek 2017 1 / 71 2 / 71 Účel přednášky procvičení základních konstrukcí z jiného pohledu propojení programování a matematiky
Obrázky (reprezentace, generování, úpravy) IB111 Úvod do programování skrze Python
Obrázky (reprezentace, generování, úpravy) IB111 Úvod do programování skrze Python 2014 1 / 66 2 / 66 Účel přednášky procvičení základních konstrukcí z jiného pohledu propojení programování a matematiky
IV122 Matematika a programování Úvod kurzu. Radek Pelánek
IV122 Matematika a programování Úvod kurzu Radek Pelánek Cíle předmětu Lepší pochopení matematických pojmů a metod skrze praktické programování. Procvičení programátorských schopností; trénink přechodu
IB111 Úvod do programování skrze Python
Vyhledávání, řazení, složitost IB111 Úvod do programování skrze Python 2012 Otrávené studny 8 studen, jedna z nich je otrávená laboratorní rozbor dokáže rozpoznat přítomnost jedu ve vodě je drahý (je časově
Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace
Programování: základní konstrukce, příklady, aplikace IB111 Programování a algoritmizace 2011 Připomenutí z minule, ze cvičení proměnné, výrazy, operace řízení výpočtu: if, for, while funkce příklady:
Úvod do počítačové grafiky
Úvod do počítačové grafiky elmag. záření s určitou vlnovou délkou dopadající na sítnici našeho oka vnímáme jako barvu v rámci viditelné části spektra je člověk schopen rozlišit přibližně 10 milionů barev
Kreslíme do webu. Canvas
Kreslíme do webu Canvas Počítačová grafika Bitmapy vs Vektory Bitmapy: - obraz je složen z bodů (pixelů), které mají definované vlastnosti Vektory: - obraz je složen z grafických prvků (primitiv), které
Programy a algoritmy pracující s čísly. IB111 Úvod do programování
Programy a algoritmy pracující s čísly IB111 Úvod do programování 2016 1 / 56 Dnešní přednáška práce s čísly v Pythonu ukázky programů, ilustrace použití základních konstrukcí ukázky jednoduchých algoritmů,
Programy a algoritmy pracující s čísly. IB111 Úvod do programování skrze Python
Programy a algoritmy pracující s čísly IB111 Úvod do programování skrze Python 2013 1 / 60 Připomenutí z minule proměnné, výrazy, operace řízení výpočtu: if, for, while funkce příklady: faktoriál, binární
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz) Autor: Radek Vystavěl Díl 8: Analytická geometrie Polární souřadnice, kružnice, elipsa, spirála MATEMATIKA Pro úlohy aplikované
Maturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
Zdroj: http://www.root.cz/clanky/pravda-a-myty-o-gifu/
Zdroj: http://www.root.cz/clanky/pravda-a-myty-o-gifu/ Bitmapový formát (rastrový obrázek) Většina z používaných grafických formátů (JPEG, PNG, TGA, BMP) obsahuje popis rastrového obrázku jako celku ukládají
Programy a algoritmy pracující s čísly. IB111 Úvod do programování skrze Python
Programy a algoritmy pracující s čísly IB111 Úvod do programování skrze Python 2015 1 / 66 Rozcvička 1 2 + 2 2 + 3 2 + + 99 2 + 100 2 2 / 66 Připomenutí z minule proměnné, výrazy, operace řízení výpočtu:
Zobrazování barev. 1995-2015 Josef Pelikán CGG MFF UK Praha. pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/
Zobrazování barev 1995-2015 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ ColorRep 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 18 Barevné schopnosti HW True-color
(a kryptografické odbočky) IB111 Úvod do programování skrze Python
Řetězce a seznamy (a kryptografické odbočky) IB111 Úvod do programování skrze Python 2013 1 / 50 Rozcvička: šifry 1 C S A R B V E K T E O A 2 C S B U J T M B W B 3 A J L B N O C E 2 / 50 Transpoziční šifry
13 Barvy a úpravy rastrového
13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody
Základní ovládání a práce s programem CorelDraw 11
2. Základní ovládání a práce s programem CorelDraw 11 Základní informace Program Corel Draw je produktem kanadské společnosti Corel corporation a je jedním z mnoha programů které při zakoupení balíku Corel
Počítačová grafika. OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely
Počítačová grafika OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely Vektorová grafika Vektorová grafika Příklad vektorové grafiky Zpět na Obsah Vektorová grafika Vektorový
Projekt programu Inženýrská Informatika 2
Projekt programu Inženýrská Informatika 2 Realizace grafu v jazyce Java Ústav počítačové a řídicí techniky, VŠCHT Praha Řešitel: Jan Hornof (ININ 258) Vedoucí: doc. Ing. Jaromír Kukal, Ph.D. 1. Obsah 1.
POČÍTAČOVÁ GRAFIKA. Počítačová grafika 1
Počítačová grafika 1 POČÍTAČOVÁ GRAFIKA Gymnázium Jiřího Wolkera v Prostějově Výukové materiály z matematiky pro nižší gymnázia Autoři projektu Student na prahu 21. století - využití ICT ve vyučování matematiky
IB111 Úvod do programování skrze Python
Vyhledávání, řazení, složitost IB111 Úvod do programování skrze Python 2014 1 / 48 Otrávené studny 8 studen, jedna z nich je otrávená laboratorní rozbor dokáže rozpoznat přítomnost jedu ve vodě je drahý
Algoritmizace a programování
Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech
DATOVÉ FORMÁTY GRAFIKY, JEJICH SPECIFIKA A MOŽNOSTI VYUŽITÍ
DATOVÉ FORMÁTY GRAFIKY, JEJICH SPECIFIKA A MOŽNOSTI VYUŽITÍ UMT Tomáš Zajíc, David Svoboda Typy počítačové grafiky Rastrová Vektorová Rastrová grafika Pixely Rozlišení Barevná hloubka Monitor 72 PPI Tiskárna
Informatika pro moderní fyziky (8) Javascript, CSS - stylování dokumentů, SVG - tvorba obrázků, složitější interaktivní dokument
Informatika pro moderní fyziky (8) Javascript, CSS - stylování dokumentů, SVG - tvorba obrázků, složitější interaktivní dokument František HAVLŮJ e-mail: haf@ujv.cz ÚJV Řež oddělení Reaktorové fyziky a
VY_32_INOVACE_INF.10. Grafika v IT
VY_32_INOVACE_INF.10 Grafika v IT Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Jiří Kalous Základní a mateřská škola Bělá nad Radbuzou, 2011 GRAFIKA Grafika ve smyslu umělecké grafiky
PB001: Úvod do informačních technologíı
PB001: Úvod do informačních technologíı Luděk Matyska Fakulta informatiky Masarykovy univerzity podzim 2013 Luděk Matyska (FI MU) PB001: Úvod do informačních technologíı podzim 2013 1 / 29 Obsah přednášky
Prioritní fronta, halda
Prioritní fronta, halda Priority queue, heap Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2018 1 / 26 Prioritní fronta Halda Heap sort 2 / 26 Prioritní fronta (priority queue) Podporuje
Úvodem... 9 Kapitola 1 Karetních
Úvodem... 9 Základní znalosti o programovacích jazycích...10 Jazyk C# a platforma.net...10 Visual C# 2010 Express...11 Instalace platformy.net 4.0 a Visual C# 2010 Express...11 Zdrojový kód aplikací...12
Geometrické transformace pomocí matic
Geometrické transformace pomocí matic Pavel Strachota FJFI ČVUT v Praze 2. dubna 2010 Obsah 1 Úvod 2 Geometrické transformace ve 2D 3 Geometrické transformace ve 3D Obsah 1 Úvod 2 Geometrické transformace
Semestrální práce Mozaika aneb Co všechno umí pan Voronoi
Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky Semestrální práce Mozaika aneb Co všechno umí pan Voronoi Plzeň, 2008 Aubrecht Vladimír Obsah 1 Zadání...
III/2 Inovace a zkvalitnění výuky prostřednictvím ICT
Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň
Hisab al-džebr val-muqabala ( Věda o redukci a vzájemném rušení ) Muhammada ibn Músá al-chvárizmího (790? - 850?, Chiva, Bagdád),
1 LINEÁRNÍ ALGEBRA 1 Lineární algebra Slovo ALGEBRA pochází z arabského al-jabr, což znamená nahrazení. Toto slovo se objevilo v názvu knihy islámského matematika Hisab al-džebr val-muqabala ( Věda o redukci
Počítačová grafika 1 (POGR 1)
Počítačová grafika 1 (POGR 1) Pavel Strachota FJFI ČVUT v Praze 8. října 2015 Kontakt Ing. Pavel Strachota, Ph.D. Katedra matematiky Trojanova 13, místnost 033a E-mail: WWW: pavel.strachota@fjfi.cvut.cz
(a kryptografické odbočky) IB111 Úvod do programování skrze Python
Řetězce a seznamy (a kryptografické odbočky) IB111 Úvod do programování skrze Python 2014 1 / 56 Rozcvička: šifry 1 C S A R B V E K T E O A 2 A J L B N O C E 3 C S B U J T M B W B 2 / 56 Transpoziční šifry
školení frontend CSS Preprocesory
školení frontend CSS Preprocesory CSS preprocesory Preprocesory Způsob zápisu, který zjednodušuje a zrychluje tvorbu CSS Přidává do CSS další funkce a nástroje, snaží se řešit slabiny CSS Snaží se řešit
Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou
Datum: 1. 12. 2013 Projekt: Registrační číslo: Číslo DUM: Škola: Jméno autora: Název sady: Název práce: Předmět: Ročník: Obor: Časová dotace: Vzdělávací cíl: Pomůcky: Využití ICT techniky především v uměleckém
Obsah. Předmluva 13. O autorovi 15. Poděkování 16. O odborných korektorech 17. Úvod 19
Předmluva 13 O autorovi 15 Poděkování 16 O odborných korektorech 17 Úvod 19 Co kniha popisuje 19 Co budete potřebovat 20 Komu je kniha určena 20 Styly 21 Zpětná vazba od čtenářů 22 Errata 22 KAPITOLA 1
Počítačové zpracování obrazu Projekt Učíme se navzájem
Počítačové zpracování obrazu Projekt Učíme se navzájem Tomáš Pokorný, Vojtěch Přikryl Jaroška 15. ledna 2010 Tomáš Pokorný email: xtompok@gmail.com Jaroška 1 Obsah Abstrakt! 4 Začátky! 5 M&M 5 Původní
INFORMATIKA. Grafické studio ve škole
INFORMATIKA Grafické studio ve škole LUKÁŠ RACHŮNEK Přírodovědecká fakulta UP, Olomouc V současné době školy všech typů často potřebují grafické práce. Jedná se například o prezentaci školy ve formě brožur,
Využití programu GeoGebra v Matematické analýze
Využití programu GeoGebra v Matematické analýze Zuzana Morávková, KMDG, VŠB-TUO 29.3.2012 Obsah přednášky všeobecné informace o programu GeoGebra vybrané problematické pojmy z Matematické analýzy - interaktivní
Inovace bakalářského studijního oboru Aplikovaná chemie
Inovace bakalářského studijního oboru Aplikovaná chemie http://aplchem.upol.cz CZ.1.07/2.2.00/15.0247 Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PRSC
Jazyk C# (seminář 9)
Jazyk C# (seminář 9) Pavel Procházka KMI 19. listopadu 2014 Motivace proč GTK# Moderní přístup k psaní GUI Základ (GTK+) je napsaný v C, ale podporuje celou řadu jazyků (Vala, Python, JavaScript, C#,...
Předmluva 9 Obsah knihy 9 Typografické konvence 10 Informace o autorovi 10 Poděkování 10
Obsah Předmluva 9 Obsah knihy 9 Typografické konvence 10 Informace o autorovi 10 Poděkování 10 KAPITOLA 1 Úvod 11 Dostupná rozšíření Matlabu 13 Alternativa zdarma GNU Octave 13 KAPITOLA 2 Popis prostředí
Kartografická webová aplikace. Přednáška z předmětu Počítačová kartografie (KMA/POK) Otakar Čerba Západočeská univerzita
Kartografická webová aplikace Přednáška z předmětu Počítačová kartografie (KMA/POK) Otakar Čerba Západočeská univerzita Datum vzniku dokumentu: 3. 11. 2011 Datum poslední aktualizace: 10. 12. 2011 Cíl
Mgr. Ladislav Zemánek Maturitní okruhy Matematika 2013-2014. 1. Obor reálných čísel
Mgr. Ladislav Zemánek Maturitní okruhy Matematika 2013-2014 1. Obor reálných čísel - obor přirozených, celých, racionálních a reálných čísel - vlastnosti operací (sčítání, odčítání, násobení, dělení) -
Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:
Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury
Synchronizace dvou pohybů - posuvného ve směru osy x a totačního kolem osy z. scena.pov. anim.ini #include colors.inc
8.5 Animace PovRAY nemá nástroje na vytvoření ucelené animace, umí pouze pomocí proměnné clock vytvořit sekvenci po sobě jdoucích snímků, které je nutné do výsledné animace spojit v dalším programu (MS
Gymnázium Česká a Olympijských nadějí, České Budějovice, Česká 64, 37021
Maturitní témata MATEMATIKA 1. Funkce a jejich základní vlastnosti. Definice funkce, def. obor a obor hodnot funkce, funkce sudá, lichá, monotónnost funkce, funkce omezená, lokální a globální extrémy funkce,
8. Rekurze. doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze
Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 8 1 Základy algoritmizace 8. Rekurze doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Jiří Vokřínek,
Reprodukce obrazových předloh
fialar@kma.zcu.cz Podpořeno z projektu FRVŠ 584/2011 Historie Reprodukční fotografie V reprodukční fotografii se používají různé postupy pro reprodukci pérovek (pouze černá a bílá) jednoduché (viz přednáška
Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13
Obsah Úvod 11 Platforma.NET 11.NET Framework 11 Visual Basic.NET 12 1 Základní principy a syntaxe 13 Typový systém 13 Hodnotové typy 13 Struktury 15 Výčtové typy 15 Referenční typy 15 Konstanty 16 Deklarace
BPC2E_C08 Parametrické 3D grafy v Matlabu
BPC2E_C08 Parametrické 3D grafy v Matlabu Cílem cvičení je procvičit si práci se soubory a parametrickými 3D grafy v Matlabu. Úloha A. Protože budete řešit transformaci z kartézských do sférických souřadnic,
Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Grafická data jsou u 2D vektorové grafiky uložena ve voxelech."
Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Grafická data jsou u 2D vektorové grafiky uložena ve voxelech." Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Na
Základy zpracování obrazu
Základy zpracování obrazu Tomáš Mikolov, FIT VUT Brno V tomto cvičení si ukážeme základní techniky používané pro digitální zpracování obrazu. Pro jednoduchost budeme pracovat s obrázky ve stupních šedi
Práce na počítači. Bc. Veronika Tomsová
Práce na počítači Bc. Veronika Tomsová Barvy Barvy v počítačové grafice I. nejčastější reprezentace barev: 1-bitová informace rozlišující černou a bílou barvu 0... bílá, 1... černá 8-bitové číslo určující
Třída DrawingTool. Obrázek 1: Prázdné okno připravené pro kreslení
Třída DrawingTool strana 1 1. Základ Třída DrawingTool Třída DrawingTool je určena k jednoduchému kreslení pomocí několika základních příkazů do grafického okna zadaných rozměrů (nastavení v konstruktoru),
VYUŽITÍ POČÍTAČOVÉ GRAFIKY
POČÍTAČOVÁ GRAFIKA VYUŽITÍ POČÍTAČOVÉ GRAFIKY ÚPRAVA FOTOGRAFIÍ NAFOCENÉ FOTOGRAFIE Z DIGITÁLNÍHO FOTOAPARÁTU MŮŽEME NEJEN PROHLÍŽET, ALE TAKÉ UPRAVOVAT JAS KONTRAST BAREVNOST OŘÍZNUTÍ ODSTRANĚNÍ ČERVENÝCH
Pracovní text a úkoly ke cvičením MF002
Pracovní text a úkoly ke cvičením MF002 Ondřej Pokora, PřF MU, Brno 11. března 2013 1 Brownův pohyb (Wienerův proces) Základním stavebním kamenem simulací náhodných procesů popsaných pomocí stochastických
On-line škola mladých autorů , pořadatel: ČVUT FEL. Jak na obrázky? Martin Žáček
On-line škola mladých autorů 20. 2. 18. 4. 2013, pořadatel: ČVUT FEL Jak na obrázky? Martin Žáček zacekm@fel.cvut.cz http://www.aldebaran.cz/onlineskola/ Jak na obrázky? Osnova 1. Co je to vůbec obrázek,
Základy algoritmizace a programování
Základy algoritmizace a programování Přednáška 1 Olga Majlingová Katedra matematiky, ČVUT v Praze 19. září 2011 Obsah Úvodní informace 1 Úvodní informace 2 3 4 Doporučená literatura web: http://marian.fsik.cvut.cz/zapg
DTP1. (příprava textu pomocí počítače) Kapitola 3 / Obrázky a rastrování
DTP1 (příprava textu pomocí počítače) Kapitola 3 / Obrázky a rastrování Petr Lobaz, 28. 2. 2007 Digitální grafický výstup složen z bodů bod černá/bílá rozlišení počet bodů na palec, dpi pro text alespoň
. Grafika a plovoucí prostředí. Zpracování textů na počítači. Ing. Pavel Haluza, Ph.D. ústav informatiky PEF MENDELU v Brně haluza@mendelu.
Grafika a plovoucí prostředí Zpracování textů na počítači Ing Pavel Haluza, PhD ústav informatiky PEF MENDELU v Brně haluza@mendelucz Kreslení vektorových obrazů Příklad \unitlength=1mm \begin{picture}(50,30)(10,20)
7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd
7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd Algoritmizace (Y36ALG), Šumperk - 7. přednáška 1 Třída jako zdroj funkcionality Třída v jazyku Java je programová jednotka tvořená
Programování v jazyku LOGO - úvod
Programování v jazyku LOGO - úvod Programovací jazyk LOGO je určen pro výuku algoritmizace především pro děti školou povinné. Programovací jazyk pracuje v grafickém prostředí, přičemž jednou z jeho podstatných
Počítačová grafika. Studijní text. Karel Novotný
Počítačová grafika Studijní text Karel Novotný P 1 Počítačová grafika očítačová grafika je z technického hlediska obor informatiky 1, který používá počítače k tvorbě umělých grafických objektů a dále také
Barvy a barevné modely. Počítačová grafika
Barvy a barevné modely Počítačová grafika Barvy Barva základní atribut pro definici obrazu u každého bodu, křivky či výplně se definuje barva v rastrové i vektorové grafice všechny barvy, se kterými počítač
Algoritmus pro generování normálních magických čtverců
1.1 Úvod Algoritmus pro generování normálních magických čtverců Naprogramoval jsem v Matlabu funkci, která dokáže vypočítat magický čtverec libovolného přípustného rozměru. Za pomocí tří algoritmů, které
Kreslení elipsy Andrej Podzimek 22. prosince 2005
Kreslení elipsy Andrej Podzimek 22. prosince 2005 Kreslení elipsy v obecné poloze O co půjde Ukázat přesný matematický model elipsy Odvodit vzorce pro výpočet souřadnic důležitých bodů Nalézt algoritmus
umenugr JEDNOTKA PRO VYTVÁŘENÍ UŽIVATELSKÝCH GRAFICKÝCH MENU Příručka uživatele a programátora
umenugr JEDNOTKA PRO VYTVÁŘENÍ UŽIVATELSKÝCH GRAFICKÝCH MENU Příručka uživatele a programátora SofCon spol. s r.o. Střešovická 49 162 00 Praha 6 tel/fax: +420 220 180 454 E-mail: sofcon@sofcon.cz www:
DTP1. (příprava textu pomocí počítače) Petr Lobaz,
DTP1 (příprava textu pomocí počítače) Kapitola 3 / Obrázky a rastrování Petr Lobaz, 28. 2. 2007 Digitální grafický výstup složen z bodů bod černá/bílá rozlišení počet bodů na palec, dpi pro text alespoň
Digitální grafika. Digitální obraz je reprezentace dvojrozměrného obrazu, který používá binární soustavu (jedničky a nuly).
Digitální grafika Digitální obraz je reprezentace dvojrozměrného obrazu, který používá binární soustavu (jedničky a nuly). Grafika v počítači Matematický popis (přímka, křivka) Rastrový popis (síť, rastr)
Paměť počítače. alg2 1
Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových
IB112 Základy matematiky
IB112 Základy matematiky Řešení soustavy lineárních rovnic, matice, vektory Jan Strejček IB112 Základy matematiky: Řešení soustavy lineárních rovnic, matice, vektory 2/53 Obsah Soustava lineárních rovnic
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Dynamická alokace paměti Jazyky C a C++ poskytují programu možnost vyžádat si část volné operační paměti pro
Rekurze. IB111 Úvod do programování skrze Python
Rekurze IB111 Úvod do programování skrze Python 2015 1 / 64 XKCD: Tabletop Roleplaying https://xkcd.com/244/ 2 / 64 To iterate is human, to recurse divine. (L. Peter Deutsch) 3 / 64 Rekurze použití funkce
Digitální učební materiál
Střední hotelová škola, s.r.o. Floriánské náměstí 350, 272 01 Kladno Digitální učební materiál Číslo projektu Název projektu Název školy Předmět Tematický okruh Téma CZ.1.07/1.5.00/34.0112 Moderní škola
Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)
Programovací jazyky Programovací jazyky nižší assembler (jazyk symbolických instrukcí) vyšší imperativní (procedurální) Pascal, C/C++, Java, Basic, Python, php neimperativní (neprocedurální) Lisp, Prolog
Jak ovládat ručičku tachometru (ukazatel)?
Tachometr v Excelu (speedometer, zkrátka budík) je typ grafu, kterým se řada zkušenějších uživatelů chlubila již před několika lety. Nativní podpora v Excelu pro něj stále není, a tak si pomáháme jako
Vstupní požadavky, doporučení a metodické pokyny
Název modulu: Základy PHP Označení: C9 Stručná charakteristika modulu Modul je orientován na tvorbu dynamických stánek aktualizovaných podle kontextu volání. Jazyk PHP umožňuje velmi jednoduchým způsobem
Slovo ALGEBRA pochází z arabského al-jabr, což znamená nahrazení. Toto slovo se objevilo v názvu knihy
1 Lineární algebra Slovo ALGEBRA pochází z arabského al-jabr, což znamená nahrazení. Toto slovo se objevilo v názvu knihy islámského matematika Hisab al-džebr val-muqabala ( Věda o redukci a vzájemném
IB111 Základy programování Radek Pelánek
Proměnné, paměť, soubory IB111 Základy programování Radek Pelánek 2017 1 / 54 Rozcvička I a = [3, 1, 7] print(sorted(a)) print(a) b = [4, 3, 1] print(b.sort()) print(b) 2 / 54 Rozcvička II a = ["magic"]
MBI - technologická realizace modelu
MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,
Úloha 1. Text úlohy. Vyberte jednu z nabízených možností: NEPRAVDA. PRAVDA Úloha 2. Text úlohy
Úloha 1 Úloha 2 Otázka se týká předchozího kódu. Určete pravdivost následujícího tvrzení: "Pro každý bod vytvoří úsečku mezi ním a středem panelu." Úloha 3 Otázka se týká předchozího kódu. Určete pravdivost
Vybrané kapitoly z matematiky
Vybrané kapitoly z matematiky VŠB-TU Ostrava 2017-2018 Vybrané kapitoly z matematiky 2017-2018 1 / 19 Základní informace předmět: 714-0513, 5 kreditů přednáší: Radek Kučera kontakt: radek.kucera@vsb.cz,
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz) Autor: Radek Vystavěl Díl 5: Náhoda Původ a význam Gaussova rozdělení MATEMATIKA O pravděpodobnostech při hodu jednou kostkou
Rastrový obraz Barevný prostor a paleta Zmenšení barevného prostoru Základní rastrové formáty
Přednáška Rastrový obraz Barevný prostor a paleta Zmenšení barevného prostoru Základní rastrové formáty etody zmenšení barevného prostoru. Cíl: snížení počtu barev etody: rozptylování, půltónování, prahování,
Počítačová grafika 2 (POGR2)
Počítačová grafika 2 (POGR2) Pavel Strachota FJFI ČVUT v Praze 19. února 2015 Kontakt Ing. Pavel Strachota, Ph.D. Katedra matematiky Trojanova 13, místnost 033a E-mail: pavel.strachota@fjfi.cvut.cz WWW:
MINISTERSTVO ŠKOLSTVÍ, MLÁDEŽE A TĚLOVÝCHOVY. Učební osnova předmětu MATEMATIKA. pro studijní obory SOŠ a SOU (8 10 hodin týdně celkem)
MINISTERSTVO ŠKOLSTVÍ, MLÁDEŽE A TĚLOVÝCHOVY Učební osnova předmětu MATEMATIKA pro studijní obory SOŠ a SOU (8 10 hodin týdně celkem) Schválilo Ministerstvo školství, mládeže a tělovýchovy dne 14. 6. 2000,
KMI / TMA Tvorba mobilních aplikací
KMI / TMA Tvorba mobilních aplikací 5. seminář 17.10.2018 ZS 2018/2019 STŘEDA 13:15-15:45 OBSAH SEMINáře BARVY, GRAFIKA, STYLY/TÉMATA, ŘETĚZCE, TOOLBAR MENU BARVY DRY = Dont Repeat Yourself v souboru /res/values/colors.xml
Knihovna CanvasLib TXV 003 89 první vydání prosinec 2014 změny vyhrazeny
Knihovna CanvasLib TXV 003 89 první vydání prosinec 2014 změny vyhrazeny 1 TXV 003 89.01 Historie změn Datum Vydání Popis změn Prosinec 2014 1 První vydání, popis odpovídá CanvasLib_v16 2 TXV 003 89.01
Informatika pro moderní fyziky (8) CSS - stylování dokumentů, SVG - tvorba obrázků, složitější interaktivní dokument
Informatika pro moderní fyziky (8) CSS - stylování dokumentů, SVG - tvorba obrázků, složitější interaktivní dokument František HAVLŮJ e-mail: haf@ujv.cz ÚJV Řež oddělení Reaktorové fyziky a podpory palivového
KTE / ZPE Informační technologie
4 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň Největší
Gymnázium Jiřího Ortena, Kutná Hora
Předmět: Náplň: Cvičení z matematiky geometrie (CZMg) Systematizace a prohloubení učiva matematiky Planimetrie, Stereometrie, Analytická geometrie, Kombinatorika, Pravděpodobnost a statistika Třída: 4.
Obsah. Úvod... 9. Barevná kompozice... 16 Světlo... 18 Chromatická teplota světla... 19 Vyvážení bílé barvy... 20
Obsah Úvod.............................................................................................. 9 Historie grafického designu a tisku..................................... 10 Od zadání k návrhu..............................................................
Grafika na počítači. Bc. Veronika Tomsová
Grafika na počítači Bc. Veronika Tomsová Proces zpracování obrazu Proces zpracování obrazu 1. Snímání obrazu 2. Digitalizace obrazu převod spojitého signálu na matici čísel reprezentující obraz 3. Předzpracování
Základy informatiky. 10 Počítačová grafika
Základy informatiky 10 Počítačová grafika Michal Kačmařík Institut geoinformatiky, VŠB-TUO Osnova přednášky Reprezentace barev v PC Způsoby míchání barev Barevné modely Bitová hloubka Rastrová grafika
MATURITNÍ TÉMATA Z MATEMATIKY
MATURITNÍ TÉMATA Z MATEMATIKY 1. Základní poznatky z logiky a teorie množin Pojem konstanty a proměnné. Obor proměnné. Pojem výroku a jeho pravdivostní hodnota. Operace s výroky, složené výroky, logické
1 Webový server, instalace PHP a MySQL 13
Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
Kombinatorika, výpočty
Kombinatorika, výpočty Radek Pelánek IV122 Styl jednoduché výpočty s čísly vesměs spíše opakování + pár dílčích zajímavostí užitečný trénink programování Kombinace, permutace, variace Daná množina M s
Omezení barevného prostoru
Úpravy obrazu Omezení barevného prostoru Omezení počtu barev v obraze při zachování obrazového vjemu z obrazu Vytváření barevné palety v některých souborových formátech Různé filtry v grafických programech