Domanda da interpretare
Inviato: 23/10/2014, 17:04
Il vicinato di un pixel p di un'immagine sono i pixel adiacenti a p sia per
lato che per diagonale. Se e' un pixel di bordo il vicinato comprende solamente
i pixel adiacenti contenuti nell'immagine. I pixel del vicinato sono ordinati
in senso orario a partire da quello in alto a sinistra. Qui sotto e' mostrato
un pixel p e i pixel del suo vicinato numerati secondo l'ordine suddetto:
1 | 2 | 3
---|---|---
8 | p | 4
---|---|---
7 | 6 | 5
Per distanza di due colori intendiamo la somma delle differenze assolute delle
tre componenti colore (RGB). Chiamiamo edging la seguente trasformazione di
un'immagine: Il colore di ogni pixel p diventa uguale al colore piu' distante
dal colore di p nel vicinato di p. Se ci sono piu' colori alla massima distanza
si sceglie il primo nell'ordine del vicinato.
Scrivere una funzione edging(fname_in, k, fname_out) che presa in input
un'immagine in formato PNG nel file fname_in e un intero k >= 1, applica k
volte la trasformazione di edging all'immagine e salva l'immagine ottenuta nel
file fname_out. Applicare la trasformazione k volte significa che la prima
volta la trasformazione e' applicata all'immagine di input, la seconda volta e'
applicata all'immagine ottenuta dalla prima applicazione, la terza volta e'
applicata all'immagine ottenuta dalla seconda applicazione, e cosi' via.
Bum questo mi chiede ma oggi sto rimbecillito e non riesco a capire quello che devo fare.
Se può interessarvi lo devo in Python ma poco cambia, mi dovete assolutamente aiutare a capire il problema.
PS
Non sapevo dove postarlo e questa mi sembrava la sezione più giusta, forse andava bene anche in discussioni serie o ogni sorta de male boh, in tal caso spostate il topic
lato che per diagonale. Se e' un pixel di bordo il vicinato comprende solamente
i pixel adiacenti contenuti nell'immagine. I pixel del vicinato sono ordinati
in senso orario a partire da quello in alto a sinistra. Qui sotto e' mostrato
un pixel p e i pixel del suo vicinato numerati secondo l'ordine suddetto:
1 | 2 | 3
---|---|---
8 | p | 4
---|---|---
7 | 6 | 5
Per distanza di due colori intendiamo la somma delle differenze assolute delle
tre componenti colore (RGB). Chiamiamo edging la seguente trasformazione di
un'immagine: Il colore di ogni pixel p diventa uguale al colore piu' distante
dal colore di p nel vicinato di p. Se ci sono piu' colori alla massima distanza
si sceglie il primo nell'ordine del vicinato.
Scrivere una funzione edging(fname_in, k, fname_out) che presa in input
un'immagine in formato PNG nel file fname_in e un intero k >= 1, applica k
volte la trasformazione di edging all'immagine e salva l'immagine ottenuta nel
file fname_out. Applicare la trasformazione k volte significa che la prima
volta la trasformazione e' applicata all'immagine di input, la seconda volta e'
applicata all'immagine ottenuta dalla prima applicazione, la terza volta e'
applicata all'immagine ottenuta dalla seconda applicazione, e cosi' via.
Bum questo mi chiede ma oggi sto rimbecillito e non riesco a capire quello che devo fare.
Se può interessarvi lo devo in Python ma poco cambia, mi dovete assolutamente aiutare a capire il problema.
PS
Non sapevo dove postarlo e questa mi sembrava la sezione più giusta, forse andava bene anche in discussioni serie o ogni sorta de male boh, in tal caso spostate il topic