Rileva l'area di attenzione visiva in un'immagine


9

Sto cercando di rilevare l' area di attenzione visiva in una determinata immagine e ritagliare l'immagine in quella zona. Ad esempio, data un'immagine di qualsiasi dimensione e un rettangolo di dimensioni LxW come input, vorrei ritagliare l'immagine nell'area di attenzione visiva più importante. Sto cercando un approccio all'avanguardia per questo.

Abbiamo strumenti o SDK per implementarlo? Qualsiasi pezzo di codice o algoritmo sarebbe davvero d'aiuto.


A proposito, all'interno di un "singolo" oggetto, vorrei attirare l'attenzione. Quindi il rilevamento degli oggetti potrebbe non essere la cosa migliore.
Tina J,

Sei alla ricerca di approcci basati sull'apprendimento profondo o approcci basati sull'elaborazione classica delle immagini?
varsh

Qualcuno che funzionerebbe meglio. Il deep learning potrebbe essere una scelta migliore.
Tina J,

Risposte:


2

Puoi cercare i seguenti titoli cartacei:

  1. Una rete multi-livello profonda per la previsione di salienza.
  2. Beyond Universal Saliency: Previsione di salienza personalizzata con CNN multi-task.

Puoi codificare in Python usando il framework Pytorch.


0

"Attenzione" nella rete neurale (visiva) è l'area dell'immagine in cui la rete può trovare il maggior numero di funzioni per classificarla con la massima sicurezza. Sulla base della tua descrizione stai parlando di "attenzione morbida".

Abbiamo strumenti o SDK per implementarlo? non credo che ci siano SDK pronti all'uso. È molto meglio addestrare un modello sul set di dati con attenzione. Una volta che hai pronto il tuo modello di base, è facile aggiungere un meccanismo di attenzione per esso. Ti consiglio di controllare https://arxiv.org/pdf/1502.03044.pdf .


0

Per fare in modo che un computer rilevi e fornisca il rettangolo di selezione o il cerchio attorno a un'area di attenzione visiva in un'immagine, è necessario determinare le basi dell'attenzione. Quindi è possibile selezionare il metodo per fare in modo che il sistema informatico faccia le scelte in base a tale base. Cominciando dall'inizio.

È un personaggio volto o corpo o gioco che deve essere l'oggetto di interesse? Sarà l'oggetto più dinamico nel frame in termini di movimento? Se è una persona, è sempre la stessa persona? In entrambi i casi, il loro viso sarà esposto all'angolazione della telecamera? Ci sono solo scatti fissi o le immagini saranno cornici in un film?

Una volta che sai come distingueresti l'oggetto che richiede attenzione da altri oggetti e sfondo, puoi iniziare a vedere come un computer potrebbe simulare quel riconoscimento. Durante l'addestramento di una rete profonda che coinvolge kernel di convoluzione (chiamato CNN o rete neurale convoluzionale) e possibilmente celle di memoria a lungo termine (LSTM), ci sono fasi per il riconoscimento.

Di solito i bordi delle cose vengono rilevati per primi. Nei filmati, il movimento dei bordi viene monitorato come caratteristiche dell'immagine. Gli elementi nell'immagine che identificano che tipo di oggetto sono gli oggetti è il secondo. Ad esempio, un giocattolo potrebbe essere rilevato dal modo in cui la plastica riflette la luce e dai tipi e forme di colore comuni ai giocattoli. Un viso potrebbe essere prima riconosciuto identificando occhi, naso, bocca, mento e orecchie.

Dopo aver identificato le parti, è possibile identificare interi oggetti attraverso un'altra fase dell'estrazione delle feature. I sistemi di visione seguono gli stessi principi base di riconoscimento utilizzati dal nostro sistema visivo umano.

Esistono molti framework e librerie per aiutare con questi compiti, ma per usarli è importante avere un quadro generale del processo e chiarire che cosa distingue gli oggetti importanti da altri oggetti che possono essere simili o completamente diverso in modo che l'attenzione possa essere focalizzata nel modo desiderato.

Una volta che hai (hmion,vmion);(hmun'X,vmun'X), le coordinate dei due angoli dell'operazione di ritaglio, che sarebbe l'obiettivo della formazione di rete, quindi qualsiasi libreria di manipolazione delle immagini potrebbe gestire il ritaglio.

Questo è lo stato dell'arte. Non esiste un SDK di alto livello che consenta di comandare al computer di trovare l'elemento più importante nel frame senza alcun chiarimento di cosa si intenda e operazioni di formazione per insegnare al software a trovare ciò su cui hai deciso di essere importante in base alcuni criteri. Non ancora.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.