Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

Sobel Operator

L’operatore Sobel è un filtro immagine 3×3 che misura i gradienti di luminosità per il rilevamento dei bordi, l’estrazione di caratteristiche e la segmentazione delle immagini.

L’operatore Sobel è un filtro immagine fisso che stima quanto rapidamente cambia la luminosità in un’immagine e in quale direzione. Produce gradienti dell’immagine: risposte elevate indicano transizioni nette, mentre risposte basse indicano regioni relativamente uniformi. Chiamato anche filtro Sobel o operatore Sobel–Feldman, è uno strumento fondamentale per il rilevamento dei bordi e l’estrazione di caratteristiche nella visione artificiale.

Irwin Sobel e Gary Feldman lo presentarono allo Stanford Artificial Intelligence Project nel 1968, in una presentazione intitolata A 3x3 Isotropic Gradient Operator for Image Processing, descritta nel resoconto storico e nella derivazione di Sobel.

Come funzionano i kernel Sobel#

Il filtraggio Sobel applica due piccole griglie di pesi, chiamate kernel, ai pixel adiacenti. Questo filtraggio locale viene comunemente descritto come convoluzione; OpenCV applica i pesi senza invertirli, usando la correlazione. I kernel standard 3 x 3 hanno queste righe:

RigaKernel nella direzione XKernel nella direzione Y
Superiore-1, 0, 1-1, -2, -1
Centrale-2, 0, 20, 0, 0
Inferiore-1, 0, 11, 2, 1

La risposta nella direzione x, Gx, misura le variazioni d’intensità da sinistra a destra ed enfatizza i bordi verticali. Gy misura le variazioni dall’alto verso il basso ed enfatizza i bordi orizzontali. Ogni kernel combina un filtro differenziale, con pesi -1, 0, 1, lungo un asse e uno smoothing pesato, con pesi 1, 2, 1, lungo l’altro. Il suo campo recettivo copre nove pixel.

Combinando Gx e Gy si ottengono il modulo del gradiente, ovvero la radice quadrata di Gx al quadrato più Gy al quadrato, e l’orientamento, calcolato con atan2(Gy, Gx). Il gradiente punta attraverso un bordo, perpendicolarmente al suo contorno locale. Questi risultati direzionali sono mappe di caratteristiche: griglie spaziali che descrivono la risposta in ogni posizione.

Applicare Sobel in Python#

OpenCV calcola le derivate con segno con cv2.Sobel, come descritto nella sua guida all’implementazione del rilevamento dei bordi. L’output in virgola mobile conserva le risposte negative, che si verificano quando la luminosità diminuisce nella direzione selezionata; l’output senza segno a 8 bit le limita a zero, perdendo queste transizioni dei bordi.

Installa le dipendenze con pip install opencv-python numpy. Questo esempio scarica un’immagine, calcola entrambe le derivate e salva il loro modulo combinato:

from urllib.request import urlopen

import cv2
import numpy as np

with urlopen("https://ultralytics.com/images/bus.jpg") as response:
    encoded = np.frombuffer(response.read(), dtype=np.uint8)
image = cv2.imdecode(encoded, cv2.IMREAD_GRAYSCALE)

# Conserva le derivate con segno prima di combinarne le intensità.
gx = cv2.Sobel(image, cv2.CV_32F, 1, 0, ksize=3)
gy = cv2.Sobel(image, cv2.CV_32F, 0, 1, ksize=3)
magnitude = cv2.magnitude(gx, gy)
edge_image = cv2.normalize(magnitude, None, 0, 255, cv2.NORM_MINMAX)
cv2.imwrite("sobel_edges.png", edge_image.astype(np.uint8))

L’immagine salvata mostra le transizioni nette di luminosità come contorni luminosi. La sua normalizzazione ridimensiona i valori per la visualizzazione; un passaggio separato di soglia converte l’intensità del gradiente in una mappa binaria dei bordi.

Dove vengono usati i gradienti Sobel#

Nella segmentazione delle immagini, il modulo Sobel può fornire informazioni sui confini a un algoritmo watershed, che fa crescere le regioni a partire da marcatori iniziali. Nell’esempio di segmentazione delle monete di scikit-image, i gradienti intensi formano barriere tra le monete e lo sfondo. Il watershed usa queste barriere per separare il primo piano dallo sfondo, prima che le componenti connesse etichettino le singole monete.

I gradienti Sobel guidano anche il rilevamento degli oggetti in YOLO26-RD, un modello personalizzato basato su YOLO26 di Ultralytics. Il suo modulo EdgeSPD usa un segnale di bordo Sobel fisso per controllare il sottocampionamento, enfatizzando le informazioni sui confini mentre la risoluzione spaziale diminuisce.

Sobel a confronto con altri filtri per i bordi#

Prewitt usa pesi di smoothing uniformi; Sobel assegna un peso maggiore alla riga o alla colonna centrale. Scharr migliora l’accuratezza direzionale per le stime delle derivate 3 x 3. Il Laplaciano misura le variazioni d’intensità del secondo ordine. Canny combina la stima del gradiente con l’assottigliamento dei bordi e il collegamento dei bordi tramite doppia soglia, producendo una mappa dei contorni più selettiva rispetto al modulo Sobel grezzo.

Nell’analisi di immagini mediche, i gradienti indotti dal rumore possono frammentare le regioni watershed: la segmentazione di immagini MR con gradienti Sobel mostra una sovrasegmentazione e usa la riduzione del rumore per limitarla. Ai bordi dell’immagine, l’assenza di pixel adiacenti richiede una regola di estensione definita: l’implementazione Sobel di SciPy usa per impostazione predefinita il riflesso dei pixel oltre il bordo dell’ultimo pixel.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning