You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: compendium/modules/w13-assignment-imageprocessing.tex
+5-5Lines changed: 5 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -67,8 +67,8 @@ \subsection{Uppgiften}
67
67
/** Adds a filter to the FilterList */
68
68
def addFilter(filter: ImageFilter): Unit = ???
69
69
70
-
/** Applies all the filters on the given Image and draws it in SimpleWindow */
71
-
def applyFilters(image: Image, sw: SimpleWindow): Unit = ???
70
+
/** Applies all the filters on the given Image and draws it in a PixelWindow */
71
+
def applyFilters(image: Image, w: PixelWindow): Unit = ???
72
72
\end{ScalaSpec}
73
73
74
74
\begin{ScalaSpec}{FilterChooser}
@@ -129,7 +129,7 @@ \subsection{Uppgiften}
129
129
\begin{Code}
130
130
val im = new Image(ImageUI.getImage)
131
131
\end{Code}
132
-
Använd \code{SimpleWindow} samt \code{image}-attributet från \code{Image}-objektet för att visa bilden.
132
+
Använd \code{PixelWindow} samt \code{image}-attributet från \code{Image}-objektet för att visa bilden.
133
133
134
134
\Task\textbf{Inverteringsfilter.} Skriv en klass \code{InvertFilter} som inverterar en bild dvs skapar en ''negativ'' kopia av bilden. Ljusa färger ska alltså bli mörka och mörka färger ska bli ljusa.
135
135
Fundera över vad som kan menas med en inverterad eller negativ kopia: de nya RGB-värdena är inte ett dividerat med de gamla värdena (då skulle de nya värdena kunna bli flyttal) och inte de gamla värdena med ombytt tecken (då skulle de nya värdena bli negativa).
@@ -195,7 +195,7 @@ \subsection{Uppgiften}
195
195
\end{pmatrix}
196
196
\end{displaymath}
197
197
198
-
Det kan vara intressant att prova med andra värden än 4 i mitten av faltningsmatrisen. Med värdet 0 får man en större utjämning eftersom man då inte alls tar hänsyn till den aktuella pixelns värde. Mata in detta värde i Parameter-rutan.
198
+
Det kan vara intressant att prova med andra värden än 4 i mitten av faltningsmatrisen. Med värdet 0 får man en större utjämning eftersom man då inte alls tar hänsyn till den aktuella pixelns värde. Låt användaren mata in argument för mittvärdet via terminalen.
199
199
200
200
Anmärkning: det kan ibland vara svårt att se någon skillnad mellan den filtrerade bilden och originalbilden. Om man vill ha en riktigt suddig bild så måste man använda en större matris som faltningskärna.
Skriv en klass \code{ContrastFilter} som implementerar algoritmen. I katalogen \emph{images} kan bilden \emph{moon.jpg} vara lämplig att testa, eftersom den har låg kontrast. Anmärkning: om \code{cutOff} sätts = 0 så får man samma resultat av denna filtrering som man får av \code{GrayScaleFilter}. Detta kan man se genom att studera interpolationsformeln.
327
327
328
-
\Task\textbf{Eget filter.} Skapa ett eget filter som utnyttjar att \code{apply}-metoden tar emot en array av värden. Till exempel så kan du skicka in en array med fem värden där de två första värdena representerar ett intesitetsintervall och de tre sista värdena representerar röd-, grön- och blåkomponenterna till en färg som ska stoppas in där intensiteten hamnar utanför det givna intervallet. Ett annat alternativ kan vara att använda sig av metoder i \code{SimpleWindow} för att välja specifika pixlar på originalbilden som sedan kan användas för att manipulera bilden i filtrets \code{apply}-metod. Valet är ditt!
328
+
\Task\textbf{Eget filter.} Skapa ett eget filter som utnyttjar att \code{apply}-metoden tar emot en array av värden. Till exempel så kan du skicka in en array med fem värden där de två första värdena representerar ett intesitetsintervall och de tre sista värdena representerar röd-, grön- och blåkomponenterna till en färg som ska stoppas in där intensiteten hamnar utanför det givna intervallet. Ett annat alternativ kan vara att låta användaren välja specifika pixlar på originalbilden som sedan kan användas för att manipulera bilden i filtrets \code{apply}-metod. Valet är ditt!
0 commit comments