Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Convoluzione

Scopri come la convoluzione potenzia l'IA nella computer vision, consentendo attività come il rilevamento di oggetti, il riconoscimento di immagini e l'imaging medicale con precisione.

La convoluzione è un'operazione matematica specializzata che funge da elemento costitutivo fondamentale dei moderni sistemi di sistemi di visione artificiale (CV). Nel contesto dell intelligenza artificiale (AI), convoluzione consente ai modelli di elaborare dati simili a griglie, come le immagini, filtrando sistematicamente gli input per estrarre modelli significativi. modelli significativi. A differenza degli algoritmi tradizionali, che richiedono l'impostazione manuale delle regole, la convoluzione permette a una rete neurale di apprendere automaticamente gerarchie gerarchie spaziali di caratteristiche, dai semplici bordi e texture alle forme complesse degli oggetti, imitando i processi biologici osservati nella corteccia visiva dei bambini. processi biologici osservati nella corteccia visiva del cervello.

La meccanica della convoluzione

L'operazione funziona facendo scorrere una piccola matrice di numeri, nota come kernel o filtro, sull'immagine in ingresso. kernel o filtro, su un'immagine di ingresso. A ogni posizione, il kernel esegue una moltiplicazione elementare con i valori dei pixel sovrapposti e somma i risultati per produrre un singolo pixel di uscita. un singolo pixel di uscita. Questo processo genera una mappa delle caratteristiche, che evidenzia le aree in cui specifici.

I parametri chiave che definiscono il comportamento di una convoluzione includono:

  • Dimensione del kernel: Le dimensioni del filtro (ad esempio, 3x3 o 5x5), che determinano l'area dell'ingresso considerata in una sola volta. considerato in una sola volta, spesso indicato come il campo ricettivo.
  • Passo: La dimensione del passo con cui il filtro si muove sull'immagine. Un passo più grande maggiore si traduce in dimensioni di uscita più piccole dimensioni di uscita più piccole, riducendo di fatto il campionamento dei dati.
  • Padding: L'aggiunta di pixel di confine (di solito zeri) all'input per controllare la dimensione spaziale dell'output. dell'output, un concetto descritto in dettaglio nella PyTorch .

Rilevanza nell'apprendimento profondo

La convoluzione è il motore principale delle delle reti neurali convoluzionali (CNN). La sua importanza risiede in due proprietà principali: la condivisione dei parametri e la localizzazione spaziale. località spaziale. Utilizzando gli stessi pesi del modello (kernel) per l'intera immagine, la rete rimane rete rimane efficiente dal punto di vista computazionale e in grado di invarianza alla traslazione, cioè è in grado di riconoscere un oggetto indipendentemente dalla sua posizione nell'inquadratura. Questa efficienza consente di realizzare architetture architetture come YOLO11 di eseguire l'inferenza in tempo reale su hardware diversi, dalle potenti GPU ai dispositivi Edge AI a risorse limitate. dispositivi Edge AI con risorse limitate.

Applicazioni nel mondo reale

L'utilità della convoluzione si estende praticamente a tutti i settori che utilizzano dati visivi:

  • Analisi delle immagini mediche: In AI in ambito sanitario, la convoluzione permette agli algoritmi di di scansionare risonanza magnetica e TAC per identificare minime anomalie. Ad esempio, è possibile addestrare kernel specifici per evidenziare le trame irregolari associate ai tumori in fase iniziale, aiutando i radiologi a formulare diagnosi accurate. associate ai tumori in fase iniziale, aiutando i radiologi a formulare diagnosi accurate.
  • Navigazione autonoma: Le auto a guida autonoma si affidano in larga misura alla convoluzione per il rilevamento degli oggetti e segmentazione delle immagini. Il sistema elabora i feed video per video per distinguere le corsie stradali, i pedoni e i segnali stradali, consentendo all'intelligenza artificiale automobilistica di automobilistico di prendere decisioni di guida sicure e in decisioni di guida sicure.

Convoluzione e strati completamente connessi

È importante distinguere la convoluzione dagli strati completamente connessi (densi). In uno strato completamente connesso ogni neurone di ingresso si connette a ogni neurone di uscita, il che è computazionalmente costoso e ignora la struttura spaziale delle immagini. struttura spaziale delle immagini. Al contrario, la convoluzione preserva le relazioni spaziali e riduce drasticamente il numero di parametri. parametri, prevenendo l'overfitting su dati altamente dati ad alta dimensionalità. Mentre gli strati densi sono spesso utilizzati per la classificazione finale, gli strati convoluzionali si occupano del lavoro pesante dell'estrazione delle caratteristiche. estrazione delle caratteristiche.

Implementazione della convoluzione con Ultralytics

È possibile visualizzare l'architettura convoluzionale dei moderni rilevatori di oggetti utilizzando il file ultralytics pacchetto. Il codice seguente carica un pacchetto YOLO11 e stampa la sua struttura, rivelando la Conv2d strati utilizzati per l'elaborazione.

from ultralytics import YOLO

# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")

# Print the model architecture to observe Conv2d layers
# These layers perform the convolution operations to extract features
print(model.model)

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora