È richiesta un abbonamento a JoVE per visualizzare questo contenuto. Accedi o inizia la tua prova gratuita.

Articolo metodologico

Un'architettura hardware a risoluzione adattiva per il rilevamento dei bordi di Sobel in tempo reale, che realizza una scalabilità delle risorse sub-lineare

58 visualizzazioni

⸱

DOI:

10.3791/71589

⸱

28 agosto 2026

 ,  , 

In questo articolo

Sommario

Questo lavoro presenta un'implementazione basata su FPGA dell'algoritmo di rilevamento dei bordi di Sobel sulla piattaforma eterogenea Ultra96-V2, valutando l'utilizzo di risorse, potenza e velocità per risoluzioni delle immagini che vanno da 256 × 256 a 2560 × 1440. L'architettura proposta dimostra una scalabilità delle risorse sub-lineare per applicazioni di elaborazione delle immagini in tempo reale.

Abstract

Il rilevamento dei bordi è un ambito fondamentale nella visione artificiale ed è diventato parte integrante di diverse applicazioni. Questo tipo di rilevamento permette di identificare i bordi, che sono caratteristiche essenziali nelle immagini e rappresentano attributi importanti per estrarre informazioni chiave e distintive dalle immagini stesse. L'implementazione hardware del rilevamento dei bordi deve essere rapida, utilizzare risorse minime, consumare poca energia ed essere adattabile a diverse risoluzioni delle immagini. Questo articolo implementa il rilevamento dei bordi secondo l'operatore di Sobel con risoluzione adattiva, che varia da immagini a bassa risoluzione fino al full high-definition, sfruttando una moderna piattaforma FPGA (Field Programmable Gate Array) eterogenea, l'Ultra96-V2. I risultati mostrano che solo il 5% delle risorse a bordo dell'FPGA, inclusi i Look up Tables (LUTs), i Flip Flops (FF), i Digital Signal Processor (DSP) e la Block Memory (BRAM), viene utilizzato per immagini a bassa risoluzione, mentre per immagini ad alta risoluzione viene consumato circa il 23% delle risorse disponibili. Ciò dimostra che l'aumento nell'utilizzo delle risorse passando da immagini a bassa a quelle ad alta risoluzione è inferiore al 20%. Inoltre, il consumo di potenza è di circa 2 W per la risoluzione più elevata, mentre la frequenza operativa massima registrata è di 136 MHz per immagini ad alta risoluzione e di 166 MHz per quelle a bassa risoluzione, con una riduzione della frequenza inferiore all'18%. L'architettura proposta raggiunge una scalabilità sublineare delle risorse, con un aumento inferiore al 20% nell'utilizzo delle risorse e una riduzione inferiore al 20% in velocità e consumo energetico quando si gestisce un incremento di 56 volte nel numero di pixel, sfruttando i vantaggi delle moderne architetture FPGA eterogenee. Di conseguenza, la capacità di adattamento alla risoluzione unita alla bassa scalabilità delle risorse rende la progettazione proposta particolarmente adatta ad applicazioni in tempo reale di rilevamento dei bordi che richiedono un'elaborazione delle immagini di alta qualità.

Introduzione

La rilevazione dei bordi è diventata un elemento fondamentale in quasi tutte le tecniche di visione artificiale utilizzate oggi in vari ambiti applicativi1. La rilevazione dei bordi rappresenta una fase di estrazione delle caratteristiche ed è responsabile del recupero di dettagli informativi e distintivi dalle immagini, applicabili in una vasta gamma di scenari2. I bordi all'interno di un'immagine indicano le regioni in cui si verifica un brusco cambiamento di intensità; pertanto, forniscono informazioni importanti e distintive riguardo all'immagine stessa. Questo processo facilita l'eliminazione di dettagli superflui e irrilevanti, conservando soltanto gli elementi essenziali e unici che possono essere ulteriormente elaborati per l'applicazione specifica.

L'importanza del rilevamento dei contorni è evidenziata dalle sue applicazioni in diverse attività, tra cui segmentazione delle immagini, rilevamento e riconoscimento di oggetti, estrazione di caratteristiche, miglioramento delle immagini, identificazione di oggetti, imaging medico, sorveglianza, automazione industriale, guida autonoma, realtà aumentata e robotica2,3,4,5,6, come mostrato in Figure 1.

Esistono diversi metodi per il rilevamento dei bordi, tra cui Sobel, Prewitt, Roberts, Canny e altri. Tra queste tecniche, il rilevamento dei bordi di Sobel si distingue per la semplicità di applicazione, la ridotta complessità di implementazione e l'elevata precisione nel rilevamento dei bordi3,4,5,6. I gradienti dell'immagine vengono determinati dall'algoritmo di edge detection di Sobel sia nella direzione orizzontale che verticale, utilizzando rispettivamente i kernel Gx e Gy, come mostrato di seguito2,4.

Gx evidenzia i bordi nella direzione ×, mentre Gy evidenzia i bordi nella direzione y12,13. Combinati insieme, essi definiscono completamente tutti i bordi in un'immagine6. Per applicare il rilevamento dei bordi di Sobel a un'immagine si utilizza la convoluzione con la matrice del kernel e la finestra scorrevole. Una finestra, ad esempio di dimensioni 3 per 3 pixel, viene estratta dall'immagine un'unità alla volta e convoluta con la matrice del filtro per ottenere il nuovo valore del pixel centrale. L'intera immagine viene elaborata in questo modo. Nel rilevamento dei bordi di Sobel vengono utilizzati due kernel di questo tipo: uno per estrarre i bordi nella direzione x e un altro per la direzione y. Per ottenere tutti i bordi, i due risultati vengono successivamente combinati. Il rilevamento dei bordi di Sobel produce risultati precisi e affidabili, che possono essere ulteriormente migliorati con alcune operazioni di pre-elaborazione4,5,15. L'intero processo di rilevamento dei bordi di Sobel è illustrato in Figura 2.

Sebbene tutta la letteratura riportata abbia contribuito significativamente al campo del rilevamento dei bordi, tutte le principali ricerche pubblicate hanno lavorato su risoluzioni di immagine basse, mentre il lavoro presentato in questo articolo opera su diverse risoluzioni di immagine, che variano da immagini a bassa risoluzione (256 × 256) fino alla risoluzione completa di immagini ad alta definizione (HD) (2560 × 1440). Di conseguenza, studiare l'implementazione hardware dell'algoritmo di rilevamento dei bordi di Sobel per diverse risoluzioni di immagine è fondamentale per comprendere l'efficienza dell'implementazione in scenari in tempo reale con risoluzioni di immagine variabili. L'Field Programmable Gate Array (FPGA) è stato riconosciuto come una piattaforma adeguata per implementazioni hardware, grazie alla sua idoneità allo sviluppo rapido di prototipi e ai vantaggi offerti dalla riconfigurabilità, che consente modifiche facili del progetto senza dover cambiare l'intera configurazione hardware6,7,8,9,10,11,12,13. Inoltre, gli FPGA offrono la possibilità di elaborazione parallela e pipeline; una volta ottimizzate le metriche di prestazione e validata la piattaforma, il progetto può procedere verso la produzione effettiva di circuiti integrati specifici per applicazioni (ASIC)14,15. Un'altra caratteristica importante degli FPGA è la loro riconfigurabilità, che consente ai progettisti di apportare modifiche al design del prodotto in qualsiasi momento senza dover sostituire alcun componente hardware. È sufficiente riprogrammare il chip, un'operazione che richiede poco tempo o sforzo, a condizione che il progettista abbia una buona conoscenza dei linguaggi di descrizione hardware come VHDL/Verilog4,6,13,16,17. Per l'analisi dell'implementazione su FPGA, i parametri principali considerati sono la velocità (frequenza massima), l'utilizzo delle risorse e l'efficienza energetica. Tabella 1, che illustra l'aumento della quantità di letteratura pubblicata nel settore degli FPGA, mostra come le pubblicazioni su FPGA siano evolute nel periodo compreso tra il 2006 e il 2024. È chiaro che il campo della ricerca sugli FPGA si è ora spostato verso applicazioni in tempo reale, realtà aumentata, elaborazione ai bordi della rete (edge computing) e altre applicazioni avanzate13,14,15,16,17,18,19,20,21,22,23.

Tabella 2 evidenzia i lavori presenti nella letteratura esistente relativi all'implementazione del rilevamento dei bordi di Sobel su FPGA dal 2020 al 2025. Tabella 2 riporta la scheda FPGA utilizzata, gli algoritmi implementati, la metodologia di progettazione, i risultati, le metriche, l'ambito applicativo e le sfide di ciascun articolo citato.

Gli autori4 hanno raccomandato l'utilizzo del metodo di rilevamento dei bordi con Sobel a 8 direzioni per aumentare l'accuratezza del rilevamento, tuttavia hanno riportato un consumo maggiore di risorse per la metodologia proposta. Navinkumar et al. utilizzano una tecnica per ridurre le operazioni matematiche complesse di moltiplicazione e radice quadrata coinvolte nel tradizionale rilevamento dei bordi di Sobel, risparmiando così risorse a bordo e migliorando la velocità9. Gli autori17 hanno descritto l'uso dell'algoritmo di rilevamento dei bordi di Sobel per identificare le corsie nei sistemi avanzati di assistenza alla guida. Il loro obiettivo era accelerare il rilevamento riducendo al contempo il tempo di elaborazione. Nel complesso, è stato suggerito che l'uso del rilevamento dei bordi rappresenti un metodo affidabile per l'estrazione della regione di interesse in futuro, il che potrebbe risultare molto utile in diverse applicazioni in cui è necessario estrarre l'area desiderata di un'immagine ignorando qualsiasi informazione non necessaria. Le sfide riportate comprendono complessivamente un elevato utilizzo di risorse e memoria, sensibilità al rumore, elevato costo computazionale e scalabilità limitata per immagini ad alta risoluzione4,5,6,11,12,13,21,22,23.

In questo lavoro, l'implementazione tradizionale dell'algoritmo di rilevamento dei bordi di Sobel è stata eseguita sulla scheda FPGA Ultra96-V2, per diverse risoluzioni di immagine che vanno da una risoluzione bassa di 256 × 256 fino alla risoluzione full high-definition di 2560 × 1440. Ultra96-V2 è una scheda che combina le capacità di programmabilità FPGA con l'elaborazione Arm ad alte prestazioni (Cortex-A53/R5), ideale per applicazioni ad elevate prestazioni. Questa scheda è stata rilasciata per la prima volta nel 2018 e utilizza il nodo tecnologico FinFET a 16 nm18.

Per garantire la riproducibilità, l'intera implementazione è stata eseguita utilizzando una toolchain standard composta da Vivado HLS 2019.2 per la High-Level Synthesis (HLS) e Vivado 2019.2 per il place-and-route, oltre all'immagine PYNQ rilasciata dalle risorse Ultra96-V2. Il codice HLS è stato utilizzato per ricavare l'IP (Intellectual Property) per il rilevamento dei bordi con filtro di Sobel, che è stato esportato e integrato nell'ambiente di progettazione Vivado. L' IP è stato implementato nella parte PL (Programmable Logic), mentre la parte PS (Processing System) dell'FPGA si è occupata del trasferimento dati e dei meccanismi di controllo. L'interfacciamento tra PS e PL è stato realizzato tramite il protocollo AXI. Tutte le metriche riportate—frequenza, utilizzo delle risorse e consumo energetico—sono state estratte dai rapporti post-implementazione, non dalle stime di HLS. Le impostazioni di implementazione sono rimaste costanti, e soltanto le risoluzioni delle immagini sono state modificate durante gli esperimenti.

I risultati significativi di questo lavoro riguardano il basso consumo di potenza, l'uso ridotto di risorse e l'elevata velocità. I dati indicano un utilizzo delle risorse a bordo inferiore al 20% (18% di tabelle di conversione (LUT), 11% di flip-flop (FF), 3% di memoria e 10% di DSP) per immagini ad alta risoluzione, dimostrando un'ampia disponibilità per integrare ulteriori elaborazioni su tali immagini, come richiesto in ogni sistema di visione artificiale, poiché il rilevamento dei contorni rappresenta soltanto una fase intermedia. Inoltre, la dissipazione di potenza è di circa 2 W e la frequenza operativa massima risulta pari a 144 MHz. I risultati mostrano che un aumento delle dimensioni delle immagini di circa 56 volte comporta un incremento dell'utilizzo delle risorse di soli circa il 20%. Anche la velocità e la dissipazione di potenza peggiorano soltanto di circa il 20%. Questa analisi esamina approfonditamente l'algoritmo da una prospettiva differente, mai riportata nella letteratura precedente, indicando quindi che l'implementazione è particolarmente adatta per applicazioni in tempo reale, senza necessità di limitare le immagini a dimensioni ridotte o bassa risoluzione, il che certamente ridurrebbe la quantità di informazioni necessarie nelle fasi successive al rilevamento dei contorni.

La novità di questo lavoro non risiede nell'algoritmo in sé, ma si concentra sulla valutazione delle prestazioni dell'algoritmo tradizionale di rilevamento dei bordi di Sobel a diverse risoluzioni d'immagine su moderne architetture FPGA eterogenee, sfruttando i vantaggi delle tecniche di implementazione basate su HLS. I principali contributi di questo articolo riguardano principalmente l'applicazione di una metodologia ibrida implementata su un FPGA, distribuendo efficacemente il carico di lavoro tra le sezioni PS e PL dell'architettura, consentendo così al progetto di adattarsi facilmente a diverse risoluzioni. Un altro contributo consiste nell'eseguire esperimenti per valutare come la scalabilità delle risorse vari al cambiare della risoluzione delle immagini, il che aiuta a comprendere le prestazioni in diverse configurazioni e per applicazioni differenti.

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Protocollo

1. Implementazione del rilevamento dei bordi di Sobel nello strumento HLS

  1. Aprire lo strumento Vivado HLS 2019.2 e creare un progetto. Selezionare la scheda FPGA come Ultra96-V2.
  2. Scrivere il codice in linguaggio ad alto livello utilizzando il linguaggio C++ per il rilevamento dei bordi con l'operatore di Sobel, con il parametro delle dimensioni dell'immagine generalizzato e non fissato.
    NOTA: Larghezza e altezza dell'immagine non sono fisse, ma sono scritte come parametri generali nel codice, in modo da poter essere facilmente modificate al variare della risoluzione dell'immagine, senza dover apportare modifiche in più posizioni.
  3. Scrivere il codice della test bench per l'algoritmo di rilevamento dei bordi con l'operatore di Sobel in C++.
    NOTA: La test bench viene scritta per fornire immagini di ingresso su cui testare il codice.
  4. Fare clic su “run C simulation” per simulare il codice e verificarne la correttezza funzionale. Fornire un'immagine di ingresso alla test bench e quindi controllare l'uscita generata, che dovrebbe essere un'immagine con i bordi evidenziati.
  5. Fare clic su “run C synthesis” per sintetizzare il codice HLS ed esportare l'IP per il rilevamento dei bordi con l'operatore di Sobel.
    NOTA: Il processo di sintesi mappa essenzialmente la progettazione codificata su componenti hardware, rendendo la progettazione compatibile e pronta per l'implementazione hardware.
  6. Verificare i rapporti sui tempi e sull'utilizzo delle risorse generati dallo strumento e assicurarsi che il tempo stimato non superi il tempo previsto.
    NOTA: Tutti questi risultati della piattaforma HLS sono soltanto stime; i parametri effettivi vengono calcolati solo quando la progettazione viene implementata su un FPGA.
  7. Fare clic su “export IP” per esportare l'IP della procedura di rilevamento dei bordi con l'operatore di Sobel.
    NOTA: Questo IP verrà utilizzato nel passaggio successivo durante la progettazione del diagramma a blocchi per l'implementazione FPGA nello strumento Vivado.

2. Implementazione del rilevamento dei bordi di Sobel su piattaforma FPGA, Ultra96-V2, mediante IP HLS estratto

  1. Aprire lo strumento di progettazione Vivado e creare un nuovo progetto. Selezionare la scheda di destinazione come Ultra96-V2 e fare clic su “Crea un nuovo progetto a blocchi”.
  2. Importare l'IP per il rilevamento dei bordi di Sobel appena esportato dallo strumento HLS. Aggiungere gli altri blocchi necessari per completare l'interfacciamento tra la parte PS e la parte PL.
    NOTA: Il diagramma a blocchi utilizza anche altri IP importanti, come l'IP Zynq Ultrascale, lo Smart Connect e il reset del processore, ecc., per stabilire l'interfaccia tra PS e PL utilizzando il protocollo Advanced eXtensible Interface (AXI).
  3. Fare clic su “convalida progetto” per validare il progetto a blocchi. Assicurarsi che lo strumento non segnali errori di progetto. In caso di errori, seguire le istruzioni per la correzione e convalidare nuovamente.
    NOTA: Questo passaggio verifica l'assenza di connessioni mancanti nel diagramma a blocchi, ma non verifica la correttezza funzionale del progetto.
  4. Fare clic su “crea wrapper HDL” per ottenere un codice HDL generalizzato per il progetto a blocchi.
  5. Fare clic su “esegui sintesi” per sintetizzare il progetto e verificare eventuali errori segnalati. Se non vengono trovati errori, lo strumento segnala una sintesi riuscita. Dopo aver completato con successo la sintesi, accedere ai rapporti di sintesi relativi al timing per verificare la presenza di violazioni temporali.
  6. Per verificare le violazioni temporali, assicurarsi che nessun valore di timing sia riportato in testo rosso, poiché ciò indica che il tempo utilizzato supera l'obiettivo assegnato e quindi indica violazioni.
  7. Fare clic su “esegui implementazione” per implementare il progetto e valutare i rapporti relativi a timing, potenza e utilizzo delle risorse.
  8. Generare il file “.bit” per programmare la scheda FPGA.
    NOTA: Il diagramma a blocchi per il rilevamento dei bordi di Sobel su Ultra96-V2 è mostrato in Figura 3. Come già indicato, il diagramma a blocchi è essenzialmente necessario per stabilire un'interfaccia tra la parte PS e la parte PL della scheda FPGA.

3. Programmazione della scheda FPGA

  1. Per preparare la scheda SD, scaricare il file immagine PYNQ (.img) per la scheda Ultra96-V216 e installare il file scaricato sulla scheda SD.
  2. Accendere la scheda in modalità di avvio da scheda SD selezionando le posizioni dell'interruttore secondo il manuale di riferimento di Ultra96-V2¹⁶.
  3. Visita l'URL http://192.168.3.1 e inserisci nome utente e password, entrambi "xilinx", quando richiesto.
    NOTA: si consiglia di utilizzare il browser Google Chrome per evitare eventuali incompatibilità tecniche.
  4. Accedere alla piattaforma Jupyter e scrivere codice Python per la parte PS per leggere le immagini o i video di input e inviare l'immagine letta alla parte PL per l'elaborazione.
  5. Scrivere il codice per l'attività di riscrittura delle immagini elaborate da PL a PS e visualizzazione del risultato.
    NOTA: Per visualizzare i risultati su Ultra96-V2, si utilizza la piattaforma PYNQ, che consente di mostrare le immagini in uscita in modo molto semplice mediante l'uso di codici Python e delle librerie OpenCV.
    Figura 4 mostra i passaggi per l'approccio Ultra96-V2 come illustrato in questa sezione e gli output ottenuti.

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Risultati

Questa sezione illustra i risultati ottenuti nella progettazione del rilevamento dei bordi di Sobel su Ultra96-V2. Figura 5 di seguito mostra le immagini di input e di output ottenute tramite la simulazione HLS. Le immagini utilizzate sono immagini standard di dimensione 512 × 512. Questi risultati dimostrano che il codice HLS scritto per il rilevamento dei bordi di Sobel è funzionalmente corretto. I bordi devono essere chiaramente visibili nelle immagini risultanti.

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Discussione

In questo articolo ci si concentra sull'esecuzione dell'algoritmo di rilevamento dei bordi di Sobel, un componente essenziale in numerose applicazioni nei diversi settori della visione artificiale ed elaborazione delle immagini2,3,4,5,6. L'implementazione del rilevamento dei bordi di Sobel viene eseguita utilizzando lo strumento Vivado HLS, consentendo la scrittura del codice in l...

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Dichiarazioni

Gli autori dichiarano di non avere conflitti di interessi. Nessuno strumento di intelligenza artificiale (AI) è stato utilizzato nella preparazione di questo manoscritto.

Ringraziamenti

Gli autori non hanno ringraziamenti da dichiarare. Questa ricerca non ha ricevuto finanziamenti esterni.

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Materiali

Elenco dei materiali utilizzati in questo articolo
NomeAziendaNumero di catalogoCommenti
Scheda FPGA Ultra96-V2 Xilinx Introdotto nel 2018Piattaforma hardware utilizzata per implementare l'algoritmo di rilevamento dei pedoni
Vivado HLS AMD2019.2Strumento di sintesi ad alto livello utilizzato per la programmazione ad alto livello del codice di rilevamento dei pedoni presentato nell'articolo, al fine di esportare l'Intellectual Property (IP)
Vivado AMD2019.2Strumento di programmazione FPGA utilizzato per programmare la scheda FPGA Ultra96 v2 con l'algoritmo di rilevamento dei bordi di Sobel 

Riferimenti

  1. Rani N. Image processing techniques: a review. J Today Ideas Tomorrow Technol. 2017;5(1):40-9.
  2. Gonzalez RC. Digital image processing. Pearson Education; India; 2009.
  3. Jena KK, Mishra S, Mishra S. An edge detection approach for fractal image processing. In: Examining Fractal Image Processing and Analysis. IGI Global; 2020. p. 1-22.
  4. Gayathri AG, Remya AS. VLSI implementation of improved Sobel edge detection algorithm [conference presentation]. Presented at: 2021 International Conference on Communication, Control and Information Sciences (ICCISc); 2021 Jun 16. Available from: https://ieeexplore.ieee.org/
  5. Obaid MT. Efficient Implementation of Sobel Edge Detection with ZYNQ-7000 [Master's thesis]. Purdue University.
  6. Asharani P, et al. A inventive method for door detection on FPGA using Sobel edge algorithm [conference presentation]. Presented at: 2022 2nd International Conference on Intelligent Technologies (CONIT); 2022 Jun 24. Available from: https://ieeexplore.ieee.org/
  7. Shylashree N, Anil Naik M, Sridhar V. Design and implementation of image edge detection algorithm on FPGA. Int J Circuits Syst Signal Process. 2022;16:628-36.
  8. Zhou G, Guo S, Chen Z. FPGA-based improved Sobel operator edge detection. Front Comput Intell Syst. 2023;5(2):6-11.
  9. Navinkumar K, Logesh R, VishnuBabu P, Ananthalakshmi AV. FPGA implementation of Sobel edge detection algorithm. EAI Endorsed Trans Internet Things. 2024;10.
  10. Ravichandran S, et al. Parallel processing of Sobel edge detection on FPGA: enhancing real-time image analysis. Sensors. 2025;25(12):3649.
  11. Baloch A, et al. Hardware synthesize and performance analysis of intelligent transportation using Canny edge detection algorithm. Int J Eng Manuf. 2021;11(4):22-32.
  12. Patel CS, Solanki N, Tailor N. Analysis of edge detection using Zynq based SoC FPGA. Turk Online J Qual Inq. 2021;12(7).
  13. Kashyap S, Bhandari AK, Giri P. Low resource FPGA implementation based efficient image edge detector architecture. Multimed Tools Appl. 2024;83(9):25595-615.
  14. Dakshayani V, et al. Design of a Gabor filter-based image denoising hardware model. Electronics. 2022;11(7):1063.
  15. Belmessaoud NM, Bentoutou Y, El-Mezouar MC. FPGA implementation of feature detection and matching using ORB. Microprocess Microsyst. 2022;94:104666.
  16. Castells-Rufas D, et al. A survey of FPGA-based vision systems for autonomous cars. IEEE Access. 2022;10:132525-63.
  17. Vedavyas Y, Vasavi S, Harsha SS, Subhash MS. An FPGA-based adaptive real-time quality enhancement system for drone imagery. SN Comput Sci. 2022;4(1):84.
  18. Avnet. Ultra96-V2 Single Board Computer Hardware User's Guide. Revision 1.0. Avnet; 2020 May.
  19. Singh G, et al. Optimizing IoT capabilities: leveraging FPGA for superior performance, efficiency and security [conference presentation]. Presented at: 2024 5th International Conference for Emerging Technology (INCET); 2024 May 24. Available from: https://ieeexplore.ieee.org/
  20. Kaur A. A survey on FPGA implementations in embedded augmented reality applications [conference presentation]. Presented at: 6th Edition of International Conference on Wireless Networks and Embedded Systems (WECON); 2018 Nov 16. Available from: https://ieeexplore.ieee.org/
  21. Kalaiselvi A, Sajina S, Nithish S, Sowmiya M. Implementation of Sobel edge detection. Int Res J Mod Eng Technol Sci. 2023;5(3):701-11.
  22. Narasimhamurthy CG, Kulkarni S. Fast architecture for low level vision and image enhancement for reconfigurable platform [conference presentation]. Presented at: 2021 International Conference on Advances in Electrical, Computing, Communication and Sustainable Technologies (ICAECT); 2021 Feb 19. Available from: https://ieeexplore.ieee.org/
  23. Pujare A, Sawant P, Sharma H, Pichhode K. Hardware implementation of Sobel edge detection algorithm [conference presentation]. Presented at: ITM Web of Conferences; 2020. Available from: https://www.itm-conferences.org/

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Ristampe e permessi

Esplora altri articoli

Rilevamento dei bordi in tempo realerisoluzione dell'immagine adattivaarchitettura FPGAimplementazione hardwareFPGA Ultra96-V2elaborazione delle immaginivisione artificiale