EP08_08 — 🟡 Immagine in Scala di Grigi e Soglia Dinamica
8.14.8 EP08_08 🟡 Immagine in Scala di Grigi e Soglia Dinamica
In questo esercizio, l’immagine di ingresso non è più strettamente binaria (0/1) ma diventa un’immagine in scala di grigi (\(8\) bit, \(0\dots255\)), dove gli oggetti hanno un’intensità media intermedia su uno sfondo scuro (\(0\)), oltre a rumore di tipo sale e pepe distribuito su tutta l’immagine.
8.14.8.1 📋 Linee Guida di Implementazione
Ingresso: leggere \(H\) e \(W\) nella prima riga, seguiti dalle \(H\) righe con valori interi da \(0\) a \(255\) in una matrice \(H \times W\).
Pre-elaborazione:
Applicare un filtro di Mediana (\(3 \times 3\)) per rimuovere il rumore sale e pepe mantenendo i bordi nitidi.
Applicare la Soglia di Otsu (o una soglia fissa \(T = 60\)) per binarizzare l’immagine pulita.
Misurazione e Uscita: estrarre il contorno degli oggetti, calcolare le metriche geometriche (area, perimeter, cx, cy, x, y, w, h, circularity, solidity) e ordinare gli oggetti per bbox[0] (con bbox[1] come criterio di parità). Riassegnare id da \(1\) a \(N\) e stampare la tabella.
Per ordinare, usare misure.sort(key=lambda m: (m['bbox'][1], m['bbox'][0])), con misure = mm.measure(img).
id area perimeter cx cy x y w h circularity solidity vertices
1 16.0 16.0 8.0 8.0 6 6 5 5 0.79 1.000 4
2 28.3 18.8 22.5 8.0 19 5 7 7 1.00 1.000 8
[req 418908] Traduci questo Markdown dal portoghese all’italiano:
🧮 Simulatore EP08_08: Rumore Sale e Pepe in Scala di Grigi & Misurazione OpenCVMediana 3x3 → Binarizzazione → Misurazione
FASE DI ELABORAZIONE
VISUALIZZAZIONE DELLA MATRICE DEI PIXEL
TABELLA DELLE MISURAZIONI DEGLI OGGETTI (ORDINATI PER BBOX_X, BBOX_Y)
id
area
perimetro
cx
cy
x
y
w
h
circolarità
solidità
vertices
Figura 8.22: Simulatore EP08_08: Filtraggio Mediano in Scala di Grigi e Misurazione di Oggetti OpenCV
%%writefile EP08_08.py# Codice Python
Overwriting EP08_08.py
TestSuite("EP08_08.py").run()
✔️ EP08_08.cases esiste già in casos/
📋 3 caso/i caricato/i da casos/EP08_08.cases
🔍 Test di Python: EP08_08.py
⚠️ EP08_08.py: file vuoto (meno di 3 righe). Test saltati.