Modello di rilevamento del piè di pagina

Questo modello offre una panoramica per l'implementazione di una soluzione di rilevamento di piè di pagina basata sull'intelligenza artificiale per l'analisi del traffico dei visitatori nei punti vendita al dettaglio. La soluzione genera informazioni dettagliate da azioni reali, usando Azure, l'hub di Azure Stack e Visione personalizzata AI Dev Kit.

Contesto e problema

Contoso Stores vuole ottenere informazioni dettagliate sul modo in cui i clienti ricevono i prodotti correnti in relazione al layout dello store. Non riescono a posizionare il personale in ogni sezione ed è inefficiente avere un team di analisti che esamina le riprese di un intero negozio. Inoltre, nessuno dei negozi ha una larghezza di banda sufficiente per trasmettere video da tutte le fotocamere al cloud per l'analisi.

Contoso vuole trovare un modo non invadente e descrittivo per la privacy per determinare i dati demografici, la fedeltà e le reazioni dei clienti per archiviare display e prodotti.

Soluzione

Questo modello di analisi delle vendite al dettaglio usa un approccio a livelli per l'inferenza al perimetro. Usando Visione personalizzata AI Dev Kit, solo le immagini con visi umani vengono inviate per l'analisi a un hub di Azure Stack privato che esegue Servizi cognitivi di Azure. I dati aggregati anonimi vengono inviati ad Azure per l'aggregazione in tutti gli archivi e le visualizzazioni in Power BI. La combinazione del cloud pubblico e perimetrale consente a Contoso di sfruttare al tempo stesso la tecnologia di intelligenza artificiale moderna, mantenendo al tempo stesso la conformità ai criteri aziendali e rispettando la privacy dei clienti.

Footfall detection pattern solution

Ecco un riepilogo del funzionamento della soluzione:

  1. Visione personalizzata AI Dev Kit ottiene una configurazione da hub IoT, che installa il runtime di IoT Edge e un modello di ML.
  2. Se il modello vede una persona, acquisisce un'immagine e la carica nell'archivio BLOB dell'hub di Azure Stack.
  3. Il servizio BLOB attiva una funzione di Azure nell'hub di Azure Stack.
  4. La funzione di Azure chiama un contenitore con l'API Viso per ottenere dati demografici ed emozioni dall'immagine.
  5. I dati vengono resi anonimi e inviati a un cluster Hub eventi di Azure.
  6. Il cluster di Hub eventi esegue il push dei dati in Analisi di flusso.
  7. Analisi di flusso aggrega i dati ed esegue il push in Power BI.

Componenti

In questa soluzione vengono usati i componenti seguenti:

Livello Componente Descrizione
Hardware in-store Visione personalizzata AI Dev Kit Fornisce il filtro nell'archivio usando un modello di ML locale che acquisisce solo immagini di persone per l'analisi. Provisioning e aggiornamento sicuro tramite hub IoT.

Azure Hub eventi di Azure Hub eventi di Azure offre una piattaforma scalabile per l'inserimento di dati anonimi che si integra perfettamente con Analisi di flusso di Azure.
Azure Stream Analytics Un processo di Analisi di flusso di Azure aggrega i dati anonimi e lo raggruppa in finestre di 15 secondi per la visualizzazione.
Microsoft Power BI Power BI offre un'interfaccia dashboard facile da usare per visualizzare l'output da Analisi di flusso di Azure.
Hub di Azure Stack Servizio app Il provider di risorse servizio app fornisce una base per i componenti perimetrali, incluse le funzionalità di hosting e gestione per app Web/API e funzioni.
Cluster del motore di servizio Azure Kubernetes (servizio Azure Kubernetes) Il punto di ripristino del servizio Azure Kubernetes con AKS-Engine cluster distribuito nell'hub di Azure Stack offre un motore scalabile e resiliente per eseguire il contenitore dell'API Viso.
Contenitori dell'API Viso di Servizi cognitivi di Azure Il rpo di Servizi cognitivi di Azure con i contenitori dell'API Viso fornisce dati demografici, emozioni e rilevamento univoco dei visitatori nella rete privata di Contoso.
Archiviazione BLOB Le immagini acquisite da AI Dev Kit vengono caricate nell'archivio BLOB dell'hub di Azure Stack.
Funzioni di Azure Una funzione di Azure in esecuzione nell'hub di Azure Stack riceve l'input dall'archiviazione BLOB e gestisce le interazioni con l'API Viso. Genera dati anonimi in un cluster di Hub eventi situato in Azure.

Considerazioni e problemi

Quando si decide come implementare questa soluzione, tenere presente quanto segue:

Scalabilità

Per consentire la scalabilità di questa soluzione tra più fotocamere e posizioni, è necessario assicurarsi che tutti i componenti possano gestire il carico aumentato. Potrebbe essere necessario eseguire azioni come:

  • Aumentare il numero di unità di streaming di Analisi di flusso.
  • Aumentare il numero di istanze della distribuzione dell'API Viso.
  • Aumentare la velocità effettiva del cluster di Hub eventi.
  • Per i casi estremi, potrebbe essere necessario eseguire la migrazione da Funzioni di Azure a una macchina virtuale.

Disponibilità

Poiché questa soluzione è a livelli, è importante considerare come gestire le reti o gli errori di alimentazione. A seconda delle esigenze aziendali, potrebbe essere necessario implementare un meccanismo per memorizzare nella cache le immagini in locale, quindi inoltrare all'hub di Azure Stack quando viene restituita la connettività. Se la posizione è sufficientemente grande, la distribuzione di Data Box Edge con il contenitore DELL'API Viso in tale posizione potrebbe essere un'opzione migliore.

Gestione

Questa soluzione può estendersi su molti dispositivi e posizioni, che potrebbero risultare poco difficili. I servizi IoT di Azure possono essere usati per portare online automaticamente nuovi percorsi e dispositivi e mantenerli aggiornati.

Sicurezza

Questa soluzione acquisisce le immagini dei clienti, rendendo la sicurezza una considerazione fondamentale. Assicurarsi che tutti gli account di archiviazione siano protetti con i criteri di accesso appropriati e ruotare regolarmente le chiavi. Assicurarsi che gli account di archiviazione e Hub eventi dispongano di criteri di conservazione che soddisfano le normative sulla privacy aziendali e governative. Assicurarsi anche di livelli di accesso utente. La suddivisione in livelli garantisce che gli utenti abbiano accesso solo ai dati necessari per il proprio ruolo.

Passaggi successivi

Per altre informazioni sugli argomenti presentati in questo articolo:

Quando si è pronti per testare l'esempio di soluzione, continuare con la guida alla distribuzione di rilevamento Footfall. Questa guida contiene istruzioni dettagliate per la distribuzione e il test dei componenti.