Poco chiarimento sulla codifica? HW6

lwcs (1380 points)
4 15 26
asked Nov 20, 2020 in HW6 obbligatorio by lwcs (1,380 points)
Buonasera, leggendo i vari post trovo un po difficoltoso capire effettivamente cosa richiede il programma per quanto riguarda la compressione dell'immagine.

Assumiamo che abbiamo trovato i valori x,y,w,h,C di ogni rettangolo,li abbiamo tutti.

Esempio per un rettangolo trovato: x = 18 , y= 16 ,w = 20, h = 21, C=(150,120,80)

nell immagine (lista) codificata da questi dati ci sarà una riga(lista) per ogni rettangolo colorato esistente nell' immagine da analizzare, ed ogni riga dovrà contenere 5 tuple, ogni tupla 3 interi con numeri che vanno da 0 a 255,e questi 3 interi della tupla se messi uno accanto all'altro (non sommati) dovrebbero restituire esattamente il valore,ad esempio il valore x da quella tupla.

Ora la mia domanda è: prendiamo che voglio codificare la x,cioè il numero 18,che calcolo dovrei fare? Poi il numero intero che dovrebbe venir fuori deve per forza essere formato da 3 cifre oppure basta che lo suddivido in tre interi a piacimento per creare un pixel? E poi, se x fosse 0, la tupla dovrà essere (0,0,0) ?
358 views

1 Answer

Best answer
twgever (14740 points)
7 26 105
answered Nov 20, 2020 by twgever (14,740 points)
selected Nov 20, 2020 by lwcs
il numero 18 sarebbe (0,0,18), il numero 257 sarebbe (0,1,1) ecc.

Devi considerarei numeri della tupla come un unico numero, cioè (1,2,3) diventa 123, (18,18,18) diventa 18 18 18.

Il problema è, cosa rappresenta la tupla? la tupla rappresenta il numero che vogliamo (facciamo 257) in base 256. infatti (0,1,1) si traduce in decimale così: 0*(256^2)+1*(256^1)+1(256^0), cioè 256+1.

Se avessimo come tupla (120,12,200), il numero in decimale sarebbe 120*(256**2)+12*(256^1)+200*(256^0). Abbastanza chiaro?
AdSum (16290 points)
9 20 134
commented Nov 20, 2020 by AdSum (16,290 points)
Stavo impazzendo anche io a capire il concetto, ottima spiegazione, grazie mille.
twgever (14740 points)
7 26 105
commented Nov 20, 2020 by twgever (14,740 points)
Dopo la spiegazione con le Ferrari, è il minimo che posso fare lol
lwcs (1380 points)
4 15 26
commented Nov 20, 2020 by lwcs (1,380 points)
Grazie twgever! Non era davvero di facile comprensione questo passaggio.
c
c.giannobile (660 points)
0 2 6
commented Nov 21, 2020 by c.giannobile (660 points)
Grande, grazie mille