Doc. dr inż. Jacek Jarnicki Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej jacek.jarnicki@pwr.wroc.pl Inżynieria obrazów cyfrowych Ćwiczenie 8 GIMP montaż, retusz, ścieżki i ich zastosowanie Celem ćwiczenia jest zaprezentowanie elementów techniki montażu cyfrowego zdjęć fotograficznych oraz zastosowania tzw. ścieżek przy montażu i wspomaganiu rysowania bardziej skomplikowanych obiektów graficznych. Rozważane będą następujące trzy zagadnienia: Budowa obrazu z dwóch zdjęć fotograficznych, pierwszego planu i tła oraz retusz otrzymanego wyniku. Pojęcie ścieżki i zastosowanie ścieżek do określania skomplikowanych zaznaczeń, Wykorzystanie ścieżek do rysowania. 1. Prosty przykład montażu Zadanie polega na wymianie tła w obrazie, tak aby uzyskać efekt podobny do pokazanego na rysunku 1. Jako nowe tło dla lewego obrazu z rysunku 1 wykorzystany będzie obraz pokazany na rysunku 2. W zarysie operacja jest dość prosta. Z obrazu oryginalnego należy wyciąć pierwszy plan i wkleić w obraz zawierający nowe tło. Prawidłowe wykonanie zadania wymaga jednak zastosowania Rys. 1. Obraz oryginalny (po lewej) i obraz zmontowany (po prawej)
kilku nie do końca banalnych czynności i dlatego warto je w szczegółach przeanalizować. Oczywiście ostateczny efekt zależy od precyzji wykonania poszczególnych operacji, staranności a także w pewnym stopniu od zdolności plastycznych. Rys. 2. Obraz wybrany jako tło Wykonanie montażu można podzielić na trzy etapy. Na początku należy odpowiednio przygotować tło. Drugim etapem jest wycięcie z obrazu źródłowego fragmentów przewidziane do pozostawienia i umieszczenie ich na obrazie z tłem. Ostatni etap procedury polega na retuszu modyfikującym niektóre fragmenty obrazu i usuwającym drobne błędy powstałe w wyniku poprzednich operacji. W zamieszczonym poniżej opisie procedury montażu zostanie zwrócona uwaga jedynie na elementy nowe w stosunku do zadań wykonywanych w poprzednich ćwiczeniach. Takie czynności jak zmiana rozmiaru obrazu, kadrowanie czy poprawa jakości nie będą już szczegółowo opisywane. Kroki prowadzące do celu są następujące: Wczytać obraz źródłowy z pliku Foto_1.jpg i obraz z tłem z pliku Foto_2.jpg. Odczytać parametry (rozmiary i rozdzielczość) obrazu źródłowego. Skadrować obraz zawierający tło, tak aby uzyskać obraz zawierający odpowiedni fragment obrazu z pliku Foto_2.jpg oraz aby rozmiary i rozdzielczość nowego obrazu były zgodne z parametrami obrazu źródłowego (wczytanego z pliku Foto_1.jpg). Przetworzony obraz tła zapisać w nowym pliku. Poprawić jakość obrazu tła stosując procedurę mniej więcej taką jak w poprzednim ćwiczeniu (regulacja poziomów, balansu kolorów, jasności i kontrastu). Wybrać narzędzie do zaznaczania zwane magiczną różdżką, w oknie opcji narzędzia ustawić Próg na około 20 i na obrazie źródłowym kliknąć w miejsce gdzie niebo ma kolor biały. Wynik operacji powinien być taki jak na rysunku 3.
Tu kliknąć różdżką z wciśniętym klawiszem Shift Rys. 3. Fragment obrazu źródłowego zaznaczony przy pomocy magicznej różdżki Działanie magicznej różdżki spowodowało, że zaznaczony został spójny obszar składający się z punktów o kolorze podobnym do punktu wskazanego różdżką. Zakres podobieństwa koloru określany jest przez parametr Próg wybrany jako jedna z opcji narzędzia. Wielkość zaznaczonego obszaru zależy oczywiście od wartości progu. Dla konkretnego przypadku dobrze jest dobierać próg eksperymentalnie, tak aby uzyskać zaznaczenie obszaru najbardziej podobnego do pożądanego. Jeśli mim tego nie uzyska się zadowalającego wyniku zaznaczenie można poprawić klikając różdżką z jednocześnie wciśniętym klawiszem Shift na obszary, które nie zostały zaznaczone a zaznaczone być powinny (rys 3). Ostateczny efekt zaznaczenia przy pomocy różdżki pokazano na rysunku 4. Otrzymane w wyniku przy różdżką zaznaczenie odwrócić wykonując polecenie Zaznaczenie, Odwróć. Spowoduje to, że zaznaczony zostanie obszar będący dopełnieniem obszaru zaznaczonego, czyli część obrazu zwierająca pierwszy plan zdjęcia. Poprawić uzyskane zaznaczenie wykonując polecenia Zaznaczenie, Zaokrąglaj, co spowoduje wygładzenie brzegu zaznaczenia. Promień zaokrąglania można dobierać zmieniając w ten sposób pewnym zakresie kształt zaznaczonego obszaru. Po uzyskaniu pożądanego zaznaczenia należy jeszcze usunąć z obrazu wszystko co znajduje się na nim poza zaznaczeniem wykonując polecenie Zaznaczenie, Wyczyść. wyczyszczenie wszystkiego poza utworzonym zaznaczeniem.
Skopiować zaznaczenie Na obrazie zawierającym tło utworzyć nową warstwę i wkleić skopiowane zaznaczenie. Rys. 4. Poprawione zaznaczenie Po ewentualnych korektach położenia i sposobu łączenia warstw otrzymany obraz można spłaszczyć przy pomocy polecenia Obraz, Spłaszcz Obraz. Efekt pracy powinien być już mniej więcej taki jak na prawym zdjęciu z rysunku 1. Jednak zmontowany obraz zawiera jeszcze pewne błędy. W lewej dolnej części zdjęcia znajdują się niezbyt realistycznie wyglądające budynki (rys. 5). Rys. 5. Błąd geometrii powstały w wyniku montażu
Można także łatwo zauważyć, że niektóre krawędzie wklejonego pierwszego planu, łączą się z tłem w ten sposób, że na pierwszy rzut oka widać, ze nie jest to połączenie naturalne (rys. 6) Rys. 6. Błąd wynikający z niedoskonałości algorytmu zaznaczania Oba błędy można poprawić przy pomocy narzędzi do wykonywania retuszu. Podstawową rolę pełni tu stempel do klonowania. Narzędzie to działa tak, że ze wskazanego obszaru obrazu pobiera jego fragment a następnie pozwala przenieść pobrany fragment do innego obszaru. Dla stempla do klonowania obowiązują takie same zasady jak dla wszystkich narzędzi do malowania, można więc dobierać stopień krycia, tryb mieszania, rodzaj końcówki itd. Sposób użycie stempla na przykład dla usunięcia z obrazu zbędnych budynków (rys. 5) jest następujący: Po wybraniu stempla i ustawieniu odpowiednich opcji narzędzia kliknąć z wciśniętym klawiszem Ctrl na fragment obrazu zawierający fale. W ten sposób pobrany zostanie wzorzec fragmentu fal. Wielkość pobranego wzorca jest zgodna z rozmiarem wybranej w opcjach narzędzia końcówki (opcja Pędzel). Pobranym wzorcem zamalować część niepotrzebnego obrazu budynków. Aby uzyskać lepszy efekt wzorzec należy co pewien czas zmieniać, pobierając nowy wzorzec z innego fragmentu obrazu. Używając stempla można także usunąć niekorzystne efekty pokazane na rysunku 6. Należy zaznaczyć, że stempel do klonowania jest narzędziem bardzo uniwersalnym i elastycznym i przy odpowiedniej wprawie w jego używaniu można bardzo szybko osiągać zamierzone efekty. Retuszowanie obrazu może także wymagać użycia innych narzędzi.
2. Ścieżki i ich zastosowanie W dotychczas wykonanych ćwiczeniach wykorzystywane obiekty takie jak zaznaczenia, teksty, czy też rysunki wykonywane narzędziami do rysowania były obrazami a wiec zbiorami pikseli. W programie GIMP użytkownik ma także do dyspozycji inny rodzaj obiektów, które nie są zbiorami pikseli lecz efektem przetworzenia na obraz pewnego opisu matematycznego definiującego kształt. Tego typu obiekty w ogólności noszą nazwę obiektów wektorowym a w programie GIMP zostały nazwane ścieżkami. Aparat matematyczny stosowany przy budowie ścieżek jest dość skomplikowany. Wybrano pewien rodzaj krzywych wielomianowych zwanych krzywymi Beziera. Przy pomocy tych krzywych można bardzo łatwo i zgodnie z intuicją zbudować gładką aproksymację łamanej wyznaczonej przez kolejne punkty płaszczyzny. Z matematycznego punktu widzenia ścieżki można traktować jako połączone ze sobą segmenty opisane wspomnianymi wyżej krzywymi Beziera. Do tworzenia ścieżek służy narzędzie Projektowanie i edycja ścieżek. Pozwala ono na budowę ścieżki i prawie dowolną zmianę jej kształtu. Ponadto ścieżki mają jeszcze następujące bardzo pożyteczne własności: o ścieżkę można zapisać w osobnym pliku, o ścieżkę można przekształcić na zaznaczenie, o zaznaczenie można przekształcić na ścieżkę, o ścieżkę można obrysować przy pomocy dowolnego narzędzia do rysowania. W praktyce ścieżki służą najczęściej do obrysowywania przewidzianych do selekcji fragmentów obrazów, które nie mogą zostać automatycznie zaznaczone, na przykład przy pomocy magicznej różdżki. Takie obszary po obrysowaniu ścieżką można przekształcić na zaznaczenie i użyć dalej na przykład w procesie montażu. Innym zastosowaniem ścieżek jest tworzenie szablonów elementów, wielokrotnie stosowanych. Szablony takie można przy pomocy mechanizmu tworzenia ścieżek definiować praktycznie z dowolna dokładnością, zapisywać do osobnych plików a następnie wykorzystywać przy tworzeniu nie tylko jednego obrazu. Technika wykorzystanie ścieżek zostanie zilustrowana na dwóch przykładach. Pierwszy z nich dotyczy tworzenia skomplikowanej selekcji, natomiast drugi pokazuje jak przy pomocy mechanizmu ścieżek można dokładnie rysować obrazy zawierające motywy powtarzające się wielokrotnie. Zastosowanie ścieżek do selekcji Zadanie polega na wycięciu z obrazu zapisanego w pliku Foto_3.jpg (rys. 7) fragmentu przedstawiającego kwiat. Zakłada się, że nie można efektywnie tego zrobić przy pomocy magicznej różdżki. Aby otrzymać ścieżkę należy po otwarciu obrazu wybrać narzędzie Projektowanie i edycja ścieżek, w opcjach narzędzia ustawić tryb Projektowanie a następnie (operując odpowiednio lewym klawiszem myszy) wskazywać kursorem kolejne punkty obrysu obiektu. Na rysunku pojawi się ścieżka. Przy projektowaniu ścieżki należy przestrzegać zasady, że gdzie większa krzywizna tam kolejne punkty definiujące ścieżkę rozmieszczone są gęściej i odwrotnie. Po zbudowaniu całej ścieżki obraz powinien wyglądać mniej więcej tak jak na rysunku 8.
Rys. 7. Obiekt przewidziany do selekcji Rys. 8. Obiekt z krawędziami obrysowanymi ścieżka
Otrzymaną ścieżkę można uzupełniać i poprawiać aż do osiągnięcia pożądanego rezultatu. Przy poprawianiu ścieżki należy używać trybu Projektowanie i Edycja oraz opcji dostępnych w tych trybach. Należy także zwrócić uwagę na rolę klawiszy Shift i Ctrl. Wynik poprawienia fragmentu ścieżki pokazano na rysunku 9. Widać, że poszczególne segmenty ścieżki nie są odcinkami prostej lecz krzywymi. Są to właśnie wspomniane wyżej krzywe Beziera.. Rys. 9. Poprawiony fragment ścieżki w dużym powiększeniu Poprawioną ścieżkę można zapisać do pliku. W tym celu należy wykonać polecenia Okno dialogowe, Ścieżki a po pojawieniu się okienka informacyjnego dotyczącego ścieżek należy prawym klawiszem myszy kliknąć na pasek z symbolem utworzonej ścieżki. Po wybraniu opcji Eksportuj należy ścieżkę zapisać do pliku o rozszerzeniu *.svg. Ścieżkę można także zamienić na zaznaczenie wybierając opcje Ścieżka na zaznaczenie i przy dalszej pracy stosować już zasady dotyczące zaznaczeń. Można wiec na przykład zaznaczenie skopiować i wkleić do innego obrazu. Zastosowanie ścieżek do rysowania Zadanie polega tym razem na narysowaniu rysunku fragmentu menu pokazanego na rysunku 10. Jak widać rysunek składa się z pięciu zaokrąglonych z jednej strony prostokątów, wypełnionych gradientowo i zawierających napisy oraz żółtej linii otaczającej wybraną opcję. Oczywiście sposobów narysowania takiego obrazu jest wiele. Podany niżej algorytm
postępowania pokazuje jeden z nich wykorzystujący technikę oparta na ścieżkach. Tok postępowania jest mniej więcej taki: o zbudować ścieżkę opisującą kształt żółtej linii, o utworzoną ścieżkę wykorzystać do budowy ścieżki opisującej kształt pojedynczej zakładki menu, o ścieżki zamieniać na zaznaczenia i po odpowiednich przekształceniach budować z nich rysunek. 4 px 40 px 100 px 100 px 100 px 100 px 100 px Rys. 10. Przykładowe menu z wybraną opcją nr 2 Zbudowanie ścieżki określającej kształt żółtej linii z rysunku 10 można wykonać tak: Otworzyć nowy, pusty obraz o ramiarze na przykład 800 na 600 pikseli. Zaznaczyć prostokąt o szerokości 100 i wysokości 80 pikseli a następnie zaokrąglić rogi zaznaczenia przy pomocy polecenia Zaznaczenie, Zaokrąglenie. Przy pomocy narzędzia do wypełnienia obszarów wypełnić zaznaczenie kolorem czarnym i otrzymując w efekcie czarny prostokąt z zaokrąglonymi rogami. Na nowej warstwie narysować w podobny jak poprzednio sposób czarny prostokąt o szerokości 500 i wysokości 40 pikseli. Przesuwając warstwę z narysowanym prostokątem doprowadzić do sytuacji, że obraz wygląda tak jak to pokazano na rysunku 11 i spłaszczyć uzyskany obraz. Przy pomocy magicznej różdżki zaznaczyć czarną figurę na rysunku i wypełnić ją kolorem tła. Wykonując polecenie Zaznaczenie, Przekształć na ścieżkę zamienić zaznaczenie na ścieżkę. Otworzyć okienko informacyjne ścieżek przy pomocy polecenia Okno, dialogowe, Ścieżki, wybrać narzędzie do tworzenia i modyfikacji ścieżek i dwukrotnie kliknąć w okienku Ścieżki na pasek odpowiadający utworzonej właśnie ścieżce. Powinien się pojawić obraz taki jak na rysunku 12. Na koniec należy przy pomocy narzędzia do tworzenie i modyfikacji ścieżek usunąć z utworzonej ścieżki zbędne segmenty, tak aby uzyskać kształt taki jak żółtej
linii z rysunku 10 (usuwanie elementów ścieżki wykonuję się narzędziem przy wciśniętych klawiszach Shift i Ctrl ) i zapisać utworzoną ścieżkę do pliku z rozszerzeniem *.svg.. Rys. 11. Dwa czarne prostokąty Rys. 12. Zaznaczenie zamienione na ścieżkę Klejonym etapem zadania będzie utworzenie ścieżki o kształcie zakładki menu. Do tego celu można wykorzystać utworzoną właśnie ścieżkę wystarczy więc:
Otworzyć nowy obraz i plik z zapisana wcześniej ścieżką odpowiadająca żółtej linii. Przy pomocy narzędzia do tworzenia i modyfikacji ścieżek usunąć z z wczytanej ścieżki zbędne segmenty a następnie połączyć pierwszy i ostatni węzeł nowym segmentem (przy wciśniętym klawiszu Ctrl). Utworzona ścieżka powinna wyglądać tak jak na rysunku 13. Ścieżkę należy zapisać do kolejnego pliku w formacie *.svg. Rys. 13. Szablon zakładki menu w postaci ścieżki Dysponując już dwoma szablonami, opisującymi w postaci ścieżek obrysy żółtej linii i zakładki, można przystąpić do tworzenia rysunku menu. Najlepiej jest rysować kolejne elementy obrazu na oddzielnych warstwach. Aby narysować pierwszy element rysunku należy: Otworzyć nowy obraz i plik z zapisana ścieżką opisującą obrys zakładki. Zmienić ścieżkę na zaznaczenie i odwrócić uzyskane zaznaczenie przy pomocy polecenia Zaznaczenie, Odwróć. Wybrać gradient, i po ustawieniu parametrów gradientu, wypełnić zaznaczenie. Dodać w odpowiednim miejscu rysunku tekst z opisem zakładki. W ten sam sposób, na kolejnych warstwach narysować pozostałe zakładki. Należy zwrócić przy tym uwagę na prawidłowe rozmieszczenie rysunków zakładek na kolejnych warstwach. Najlepiej jest stosować translacje kolejnych warstw przy pomocy polecenia Warstwa, Przekształcenie, Przesuniecie.
Po wykonaniu rysunków wszystkich zakładek spłaszczyć rysunek uzyskując tło w postaci pokazanej na rysunku 14. Rys. 14. Tło z rysunkiem pięciu zakładek Ostatnim etapem pracy będzie dorysowanie żółtej linii otaczającej drugą, jaśniejszą zakładkę. W tym celu należy: Utworzyć nową warstwę Wczytać ścieżkę z opisem kształtu żółtej linii z wcześniej utworzonego pliku (plik *.svg). Obrysować ścieżkę, używając na przykład pędzla, żółta linią o odpowiedniej grubości. Do szybkiego obrysowania ścieżki można użyć odpowiedniego przycisku (drugi przycisk z prawej w dolnej części okienka Ścieżki). Na koniec należy rysunek spłaszczyć i zapisać wykonany obraz do pliku.