PRZETWARZANIE OBRAZÓW:
Przekształcenia geometryczne
III.
© P.Ślusarczyk 2013
Strona 1 z 2
1.
Środowisko programistyczne
a. Dev-C++:
http://www.bloodshed.net/devcpp.html
b. Microsoft Visual C++ Express:
http://www.microsoft.com/visualstudio/eng/
d. ImageMagick:
http://www.imagemagick.org/script/index.php
2.
Wykorzystując bibliotekę CImg, napisz program w języku C++ realizujący obrót
dowolnego obrazu z pliku
o kąt 90
o
w prawo lub w lewo.
3.
Wykorzystując bibliotekę CImg, napisz program w języku C++ generujący poniższy
obraz.
Obraz ‘Fig0241(c)(einstein
high contrast).tif’ znajduje się w pliku:
4.
Napisz program demonstracyjny powiększający metodą najbliższego sąsiada macierz
kwadratową liczb całkowitych o rozmiarze 3x4 do rozmiaru 4x5.
•
Współczynniki skalowania:
dla zmiany 3𝑥4 ⇒ 4𝑥5: 𝑆
𝑥
=
4
3 = 1,33 𝑆
𝑦
=
5
4 = 1,2
•
Współrzędne rzeczywiste obrazu przeskalowanego:
𝑥
𝑟
=
𝑥
𝑆
𝑥
𝑦
𝑟
=
𝑦
𝑆
𝑦
•
Określenie współrzędnych najbliższego odpowiednika (sąsiada):
𝑥
𝑜𝑑𝑝
= 𝑓𝑙𝑜𝑜𝑟(𝑥
𝑟
) 𝑦
𝑜𝑑𝑝
= 𝑓𝑙𝑜𝑜𝑟(𝑦
𝑟
)
Przyk
ładowe
w
spółrzędne obrazu
przeskalowanego
Obraz oryginalny
Współrzędne rzeczywiste
odpowiednika
Najbliższy odpowiednik
(0,0)
(0, 0)
(0,0)
(1,1)
(0.75, 0.83)
(0,0)
(2,2)
(1.50, 1.67)
(1,1)
(3,3)
(2.36, 2.50)
(2,2)
(3,4)
(2.36, 3,33)
(2,3)
(1,4)
(0,75, 3,33)
(0,3)
(3,1)
(2,36, 0,83)
(2,0)
Przykładowy obraz: kropkami zaznaczono środki pikseli obrazu oryginalnego,
natomiast
linią ciągłą piksele obrazu wyjściowego
PRZETWARZANIE OBRAZÓW:
Przekształcenia geometryczne
III.
© P.Ślusarczyk 2013
Strona 2 z 2
5.
Wykorzystując bibliotekę CImg, napisz program realizujący interpolację obrazu
metodą najbliższego sąsiada. Program będzie umożliwiał zmniejszanie i
powiększanie dowolnego obrazu z pliku.
6.
Wykorzystując oprogramowanie GIMP, przeprowadź analizą porównawczą
wybranych algorytmów interpolacji.
a.
Zachowując współczynnik proporcji, zmniejsz badany obraz do 1/10
rozmiaru
początkowego, a następnie przywróć rozmiar oryginalny.
b. Badania przeprowad
ź z wykorzystaniem obrazów z pliku
• 'Fig0220(a)(chronometer 3692x2812 2pt25 inch 1250 dpi).tif'
• 'Fig0219(rose1024).tif'
7.
Wykorzystując bibliotekę CImg, napisz program realizujący obrót obrazu o dowolny
kąt.