Skip to main content

Guida utente di BriefCam

Espressioni utili

Last Updated: 7 minute read
Versione2025r1
LinguaItaliano

Di seguito sono riportati alcuni esempi di espressioni che è possibile utilizzare per personalizzare i dashboard.

Espressioni di conteggio
Contare il numero di oggetti

Per dashboard aggregate

Per dashboard dettagliate

sum({$<[Class Category ID]={Category ID}>}TotalObjects)

count({$<[Class Category ID]={Category ID}>}ObjectID)

In cui:

ID categoria

Categoria

0

Persone

1

Biciclette

2

Veicoli stradali

3

Altri veicoli

4

Animali

5

Cambiamenti di illuminazione

Ad esempio:

  • Conteggio persone per i dashboard aggregati: sum({$<[Class Category ID]={0}>}TotalObjects)

  • Conteggio persone per dashboard dettagliate: count({$<[Class Category ID]={0}>}ObjectID)

Nel grafico sottostante, puoi vedere quali classi sono incluse in ognuna delle categorie:

Class Category table.png
Contare il numero di persone
  • Da 60 giorni fa:

Per dashboard aggregate

Per dashboard dettagliate

sum({<[Class Category ID]={0}, Date={"$(=Date(Today()-60,'DD/MM/YYYY'))"}>} TotalObjects) 

count({<[Class Category ID]={0}, Date={"$(=Date(Today()-60,'DD/MM/YYYY'))"}>} ObjectID)

Si noti che negli esempi in cui viene utilizzato il nome Voce, viene fornito come esempio del nome di una dimensione personalizzata. È possibile sostituirlo con il nome di qualsiasi dimensione personalizzata.

  • In un'area denominata Ingresso:

Per dashboard aggregate

Per dashboard dettagliate

sum({$<[Class Category ID]={0},[Path & Area]={'Entry'}>} TotalObjectsCustomDimension) 

count({$<[Class Category ID]={0},[Path & Area]={'Entry'}>}ObjectID)

  • Dai sette giorni precedenti (l'ultima settimana) in un'area denominata Ingresso:

Per dashboard aggregate

Per dashboard dettagliate

sum({<[Class Category ID]={0}, [Path & Area]={'Entry'}, Date={">=$(=Date(Today()-7,'DD/MM/YYYY'))"}>} TotalObjectsCustomDimension)

count({<[Class Category ID]={0}, [Path & Area]={'Entry'}, Date={">=$(=Date(Today()-7,'DD/MM/YYYY'))"}>} ObjectID)

  • Dalle ultime due settimane in un'area chiamata Ingresso:

Per dashboard aggregate

Per dashboard dettagliate

sum({<[Class Category ID]={0}, [Path & Area]={'Entry'}, Date={">=$(=Date(Today()-14,'DD/MM/YYYY')) "}>} TotalObjectsCustomDimension) 

count({<[Class Category ID]={0}, [Path & Area]={'Entry'}, Date={">=$(=Date(Today()-14,'DD/MM/YYYY')) "}>} ObjectID)

  • Da due settimane fa a una settimana fa in un'area chiamata Ingresso:

Per dashboard aggregate

Per dashboard dettagliate

sum({<[Class Category ID]={0}, [Path & Area]={'Entry'}, Date={">=$(=Date(Today()-14,'DD/MM/YYYY'))<=$(=Date(Today()-7,'DD/MM/YYYY'))"}>} TotalObjectsCustomDimension)

count({<[Class Category ID]={0}, [Path & Area]={'Entry'}, Date={">=$(=Date(Today()-14,'DD/MM/YYYY'))<=$(=Date(Today()-7,'DD/MM/YYYY'))"}>} ObjectID)

Ad esempio, se oggi è 20/8/2020 e l'espressione viene eseguita, verranno contate le persone dal 6/8/2020 (>oggi-14) fino al 13/8/2020 (<oggi-7).

  • Dalle liste di controllo che hanno visitato la telecamera Left Wing e la telecamera Exit 1, ma non la telecamera Entrance 2:

Per dashboard aggregate

Per dashboard dettagliate

N/D

Count(DISTINCT {$<Identity = P({<[Source] = {'Left Wing'}>}) * P({<[Source] = {'Exit 1'}>}) - P({<[Source] = {'Entrance 2'}>})>} Identity)

Se la parola DISTINCT precede gli argomenti della funzione, i duplicati risultanti dalla valutazione degli argomenti della funzione non verranno presi in considerazione.

  • Nella Telecamera 4 nel percorso "Ingresso" insieme al numero di persone nella Telecamera 15 in tutti i percorsi e le aree eccetto il percorso "Passaggio di passaggio":

Per dashboard aggregate

Per dashboard dettagliate

sum({$<Source={'Cam 4'},[Class Category ID]={0}, [Path & Area]={'Entry'}>} TotalObjectsCustomDimension)+ sum({$<Source={'Cam 15'},[Class Category ID]={0}, [Path & Area]-={'Passing by'}>} TotalObjectsCustomDimension) 

count({$<Source={'Cam 4'},[Class Category ID]={0}, [Path & Area]={'Entry'}>}ObjectID)+count({$<Source={'Cam 15'},[Class Category ID]={0}, [Path & Area]-={'Passing by'}>}ObjectID)

  • Chi sono i dipendenti (in base alla lista di controllo denominata Dipendenti):

Per dashboard aggregate

Per dashboard dettagliate

N/D

Count(DISTINCT {$<[Watchlist]={'Employees'},[Class Category ID]={0}>} FaceID)

  • Nell'area "Ingresso" (esclusi i dipendenti dalla lista di controllo "Dipendenti"):

Per dashboard aggregate

Per dashboard dettagliate

N/D

Count(DISTINCT {$<[Path & Area]={'Entry'},[Class Category ID]={0},[Watchlist]-={'Employees'}>}FaceID)

  • Conta gli oggetti spostati in una direzione superiore a 299,5 o inferiore a 60,5:

Per dashboard aggregate

Per dashboard dettagliate

N/D

count({$<[Direction]={">=299.5<=60.5"}>}ObjectID)

Espressioni di data e ora
  • Numero di giorni nell'anno e nel mese in corso con più di 1000 persone:

Per dashboard aggregate

Per dashboard dettagliate

=sum(aggr({$<[Class Category ID]={0},Year={$(=Year(Today()))},[Month Num]={$(=Month(Today())+0)}>}if(sum(TotalObjects) > 1000,1,0),Date))

=sum(aggr({$<[Class Category ID]={0},Year={$(=Year(Today()))},[Month Num]={$(=Month(Today())+0)}>}if(count(ObjectID) > 1000,1,0),Date))

  • Numero di giorni nell'intero intervallo di tempo che hanno più di 1000 persone:

Per dashboard aggregate

Per dashboard dettagliate

=sum(aggr({$<[Class Category ID]={0}>}if(sum(TotalObjects) > 1000,1,0),Date))

=sum(aggr({$<[Class Category ID]={0}>}if(count(ObjectID) > 1000,1,0),Date))

  • Intervallo di tempo tra le ultime due persone nella stessa telecamera e giorno:

Questo serve, ad esempio, per assicurarsi che gli ultimi due dipendenti della filiale non escano insieme.

Per dashboard aggregate

Per dashboard dettagliate

N/D

  • Ultimo oggetto: firstsortedvalue([End Time], -[End Time],1)

    Secondo ultimo oggetto: firstsortedvalue([End Time], -[End Time],2)

    Distanza: firstsortedvalue([End Time], -[End Time],1) - firstsortedvalue([End Time], -[End Time],2)

  • Incrementi di 10 minuti tra le ore 4 e le ore 8:

Per dashboard aggregate

Per dashboard dettagliate

N/D

=if(Time >= 4/24 and Time <=8/24,time([10 Min],'$(vTimeFormat)'))

  • Apri automaticamente un foglio per visualizzare oggi e i sette giorni precedenti:

  1. Nelle proprietà del foglio , aprire la sezione Azione.

  2. Dalla proprietà Azione, selezionare Seleziona valori corrispondenti ai criteri di ricerca.

  3. Dalla proprietà Campo, selezionare Data.

  4. Nella proprietà Valore, immettere: ='>=' & Date(Today()-7) & '<=' & Date(Today())

    Show today expression.png
  • Assicurati che un grafico inizi con i giorni corretti dell'ordine della settimana:

    1. Fare clic sul grafico che include i giorni.

    2. Dalle proprietà del grafico, selezionare la sezione Ordinamento.

    3. Selezionare una dimensione che includa Giorno.

    4. Assicurarsi che l'opzione Ordina per espressione sia selezionata.

    5. Assicurarsi che l'ordine sia impostato su Crescente.

    6. Nella proprietà Espressione, immettere quanto segue: match(Day, 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun')

      Match days expression.png
Espressioni per Massimi e Minimi

Se la parola DISTINCT precede gli argomenti della funzione, i duplicati risultanti dalla valutazione degli argomenti della funzione non verranno presi in considerazione.

  • Numero massimo di persone/ora (percorso e area multipli)

Per dashboard aggregate

Per dashboard dettagliate

max(aggr(sum({$<[Class Category ID]={0},[Path & Area]={ 'custom_dimension_name_A ', 'custom_dimension_name_B'}>} TotalObjectsCustomDimension), [Hour (hh)],Date)) 

max(aggr(count({$<[Class Category ID]={0},[Path & Area]={ ' custom_dimension_name_A ', ' custom_dimension_name_B '}>}ObjectID),Hour,Date))

  • Numero massimo di visitatori all'ora su base giornaliera (esclusi i dipendenti nella lista di controllo "Dipendenti"):

Per dashboard aggregate

Per dashboard dettagliate

N/D

max(aggr(count({$<[Path & Area]={'C-01-PC-OverHeadEntr'},[Class Category ID]={0}>}ObjectID) - (count(distinct {$<[Watchlist]={'Employees'},[Class Category ID]={0}>} FaceID)),Hour,Date))

  • Numero minimo di visitatori all'ora su base giornaliera (esclusi i dipendenti nella lista di controllo "Dipendenti"):

Per dashboard aggregate

Per dashboard dettagliate

N/D

if (Min(aggr(count({$<[Path & Area]={'C-01-PC-OverHeadEntr'},[Class Category ID]={0}>}ObjectID) - (count(distinct {$<[Watchlist]={'Employees'},[Class Category ID]={0}>} FaceID)),Hour,Date)) < 0 , 0, Min(aggr(count({$<[Path & Area]={'C-01-PC-OverHeadEntr'},[Class Category ID]={0}>}ObjectID) - (count(distinct {$<[Watchlist]={'Employees'},[Class Category ID]={0}>} FaceID)),Hour,Date)) )

Espressioni per le medie
  • Numero medio di persone al giorno nella dimensione personalizzata denominata Voce:

Per dashboard aggregate

Per dashboard dettagliate

avg(Aggr((sum({<[Path & Area]={'Entry'}>} TotalObjectsCustomDimension)),Day)) 

avg(Aggr((count({<[Path & Area]={'Entry'}>}[ObjectID])),Day))

  • Numero medio di persone all'ora nella dimensione personalizzata denominata Entry:

Per dashboard aggregate

Per dashboard dettagliate

avg(Aggr((count({<[Path & Area]={'Entry'}>}[ObjectID])),Date,Hour))

avg(Aggr((count({<[Path & Area]={'Entry'}>}[ObjectID])),Date,Hour))

  • Numero medio di persone ogni 10 minuti:

Per dashboard aggregate

Per dashboard dettagliate

N/D

avg(Aggr((count({<[Class Category ID]={0}>}[ObjectID])),Date,[10 Min]))

  • Numero medio di volte in cui ci sono state più di 50 persone in 10 minuti:

Per dashboard aggregate

Per dashboard dettagliate

N/D

sum(aggr(if(avg(Aggr((count({<[Class Category ID]={0}>}[ObjectID])),Date,[10 Min])) > 50,1,0),Date,[10 Min]))

  • Prime 10 fonti in base al tempo di permanenza medio più lungo (solo persone), per data massima:

  1. Aggiungere un grafico a barre con una delle espressioni della misura seguente (in base alle proprie esigenze):

    • Espressione di misura per il tempo di permanenza medio (solo persone), in tutte le date:

      Per dashboard aggregate: sum({$<[Class Category ID]={0}>}WeightedAvgDwellSec) / sum({$<[Class Category ID]={0}>}TotalObjects

      Per i dashboard dettagliati: Avg({$<[Class Category ID]={0}>}[Dwell (Sec)])

    • Espressione di misura per il tempo medio di permanenza (solo persone), per data massima:

      Per dashboard aggregate: Avg({$<[Class Category ID]={0},[Date]={"$(=Max(Date))"}>}[Dwell (Sec)])

      Per i dashboard dettagliati: sum({$<[Class Category ID]={0},[Date]={"$(=Max(Date))"}>}WeightedAvgDwellSec) / sum({$<[Class Category ID]={0},[Date]={"$(=Max(Date))"}>}TotalObjects)

  2. Cambiare il nome della misura in Media sosta.

  3. Aggiungere una dimensione e selezionare Origine.

  4. Aggiungi una limitazione alla dimensione Sorgente per impostare le 10 fonti come mostrato nell'immagine sottostante.

    Top 10 sources 1.png
  5. Ordinare il grafico in base all'espressione, utilizzando la misura di permanenza media come primo elemento nell'elenco Ordinamento.

    Top 10 sources 2.png
  6. Visualizza il risultato:

    Top 10 sources 3.png
Espressioni di esclusione
  • Escludi specifiche dimensioni personalizzate:

Per dashboard aggregate

Per dashboard dettagliate

sum({<[Class Category ID]={0},[Path & Area]-={'custom_dimension_name'}>}TotalObjectsCustomDimension) 

count({<[Class Category ID]={0},[Path & Area] -= {' custom_dimension_name '}>}[ObjectID])

  • Escludi i fine settimana per la programmazione "su richiesta" lun-ven.

Per dashboard aggregate

Per dashboard dettagliate

=if (Weekday(Date(Today()))=0,Date(Today()-3),Date(Today()-1)) 

=if (Weekday(Date(Today()))=0,Date(Today()-3),Date(Today()-1))

Nota

Per rimuovere il genere dai grafici, sostituire vClass con vClassCategory.

Espressioni del veicolo
  • Conteggio biciclette – Conta solo biciclette:

Per dashboard aggregate

Per dashboard dettagliate

sum({$<[Class Category ID]={1}>} TotalObjects)

count({$<[Class Category ID]={1}>}ObjectID)

  • Conteggio dei veicoli stradali: conta le seguenti classi:autobus,auto,moto,pick-up, camion e furgone:

Per dashboard aggregate

Per dashboard dettagliate

sum({$<[Class Category ID]={2}>} TotalObjects)

count({$<[Class Category ID]={2}>}ObjectID)

  • Conteggio degli altri veicoli: conta le seguenti classi: aereo, barca e treno:

Per dashboard aggregate

Per dashboard dettagliate

sum({$<[Class Category ID]={3}>} TotalObjects)

count({$<[Class Category ID]={3}>}ObjectID)

  • Conteggio inversioni a U del veicolo dai 7 giorni precedenti:

Per dashboard aggregate

Per dashboard dettagliate

sum({<[Class Category ID]={2}, [Path & Area]={'U-Turn'},Date={">=$(=Date(Today()-7,'DD/MM/YYYY'))"}>} TotalObjectsCustomDimension)

count({<[Class Category ID]={2}, [Path & Area]={'U-Turn'},Date={">=$(=Date(Today()-7,'DD/MM/YYYY'))"}>} ObjectID)

  • Inversioni a U del veicolo all'ora:

Per dashboard aggregate

Per dashboard dettagliate

sum(Aggr((count({<[Class Category ID]={2}, [Path & Area]={'U-Turn'}>} TotalObjectsCustomDimension)),Date, [Hour (hh)]))

Count(Aggr((count({<[Class Category ID]={2}, [Path & Area]={'U-Turn'}>}[ObjectID])),Date,Hour))

  • Durata per data per LPR:

Per dashboard aggregate

Per dashboard dettagliate

N/D

Interval(avg(Aggr((max({<[LPR]-={''}>}[End Time])-min({<[LPR]-={''}>}[Start Time])),GroupID,LPR,Date)))