Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Trovare la y più grande e la y più piccola

s
susannacifani (4000 points)
2 21 53
in HW6 obbligatorio by (4.0k points)
Salve, svolgendo l'homework mi è venuto un dubbio che mi ha confuso le idee. Avendo inserito in un dizionario tutte le coordinate (x, y) dei pixel di uno stesso colore, ora vorrei trovare quale tra tutti i pixel di uno stesso colore ha la coordinata y più grande e quale la ha più piccola. Innanzitutto avevo pensato di scorrere il dizionario utilizzando un for per scorrere le chiavi e un for annidato per poi scorrere i valori, in seguito volevo appunto utilizzare max() e min() per trovare la y più grande e la y più piccola per poi inserirle in un nuovo dizionario vuoto, ma sono bloccata proprio su questo. Inoltre sia della y grande che della y piccola volevo trovare le rispettive x grande e x piccola. La domanda forse è un po' confusa, ma non saprei come spiegarla. In sostanza vorrei trovare questo:

1)Y GRANDE:
-x grande
-x piccola

2)Y PICCOLA:
-x grande
-x piccola
350 views
closed

1 Answer

Best answer
twgever (17470 points)
8 29 105
by (17.5k points)
selected by
Sostanzialmente, vuoi trovare la bounding box?
s
susannacifani (4000 points)
2 21 53
by (4.0k points)
No, mi servirebbe per trovare i vertici di ogni rettangolo
twgever (17470 points)
8 29 105
by (17.5k points)
ma se ti salvi i pixel in ordine di apparizione, il primo sarà la coordinata del vertice in alto a sinistra e l'ultimo  la coordinata del vertice in basso a destra, no? immagino scorrerai tutte le righe, e per ogni apparizione del colore, aggiungi le coordinate all'elemento del dizionario corrispondente. quindi dizionario[colore][0] dovrebbe essere quello in alto a sinistra e dizionario[colore][-1] quello in basso a destra. no?
s
susannacifani (4000 points)
2 21 53
by (4.0k points)
si ma ho bisogno anche degli altri due vertici per poter calcolare il perimetro di ogni rettangolo e trovare la bounding box
twgever (17470 points)
8 29 105
by (17.5k points)
no, ti bastano il vertica in alto a sinistra e quello in basso a destra
se il vertice in alto a sinistra ha coordinate (x1,y1) e quello in basso a destra ha coordinate (x2,y2), allora quello in alto a destra ha coordinate (x1,y2) e quello in basso a sinistra ha coordinate (x2,y1)
dove x corrisponde alla riga e y alla colonna
s
susannacifani (4000 points)
2 21 53
by (4.0k points)
Ah okay, non ci avevo pensato, a furia di ragionarci sopra mi vado a confondere! Grazie :)
twgever (17470 points)
8 29 105
by (17.5k points)
figurati, è un piacere!