Skip to main content

BriefCam用户指南

有用的运算式

Last Updated: 8 minute read
版本2024r2
語言中文(繁體)

以下是可用于自订仪表板的运算式范例。

计数运算式
计算对象数量

对于聚合仪表板

如需详细仪表板

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

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

位置:

类别ID

類別

0

人員

1

脚踏车

2

道路车辆

3

其他车辆

4

動物

5

照明变更

範例:

  • 为汇总仪表板计数的人员: sum({$<[Class Category ID]={0}>}TotalObjects)

  • 详细仪表板计数对象: count({$<[Class Category ID]={0}>}ObjectID)

在下面的图表中,您可以看到每个类别中包含哪些类:

Class Category table.png
计算人员数量
  • 60天前:

对于聚合仪表板

如需详细仪表板

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)

请注意,在使用名称项的示例中,它被作为自定义维的名称来提供。您可以用您的任何自订维度名称来取代此名称。

  • 在名为进入的区域中:

对于聚合仪表板

如需详细仪表板

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

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

  • 从前七天(上周)的入口区域:

对于聚合仪表板

如需详细仪表板

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)

  • 从过去两周在入口区域发生的事件来看:

对于聚合仪表板

如需详细仪表板

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)

  • 从两周前到一周前,在一个叫做“入口”的区域里:

对于聚合仪表板

如需详细仪表板

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)

例如,如果今天是20/8/2020并且运行表达式,它将计算2020年6月8日(>今天-14)到2020年8月13日(<今天-7)之间的人数。

  • 从造访左翼摄影机和出口1摄影机,但不造访入口2摄影机的观察清单中:

对于聚合仪表板

如需详细仪表板

N/A

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

请注意,如果该词发DISTINCT生在函数参数之前,则忽略函数参数求值过程中产生的重复。

  • 在“进入”路径的摄影机4中,连同摄影机15中除“经过”路径外所有路径和区域的人员数量:

对于聚合仪表板

如需详细仪表板

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)

  • 员工是谁(根据名为“员工”的观察清单):

对于聚合仪表板

如需详细仪表板

N/A

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

  • 在“入口”区域(不包括“员工”观察清单上的员工):

对于聚合仪表板

如需详细仪表板

N/A

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

  • 计算移动方向高于299.5或低于60.5的物体:

对于聚合仪表板

如需详细仪表板

N/A

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

日期和时间运算式
  • 目前年度与月份中超过1000人的天数:

对于聚合仪表板

如需详细仪表板

=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))

  • 整个时间范围内超过1000人的天数:

对于聚合仪表板

如需详细仪表板

=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))

  • 相同摄影机中最后两个人与日之间的时间差:

例如,这与确保分支机构的最后两名员工不一起离职有关。

对于聚合仪表板

如需详细仪表板

N/A

  • 最后一个物件: firstsortedvalue([End Time], -[End Time],1)

    最后一个物件: firstsortedvalue([End Time], -[End Time],2)

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

  • 凌晨4点至上午8点之间增加10分钟时间:

对于聚合仪表板

如需详细仪表板

N/A

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

  • 自动开启要显示今天和前七天的工作表:

  1. 在工作表属性中,打开操作部分。

  2. 从“动作”属性中,选取“选取符合搜寻条件的值”。

  3. 从字段属性中选择日期。

  4. 在“值”属性中,输入: ='>=' & Date(Today()-7) & '<=' & Date(Today())

    Show today expression.png
  • 确保图表以周顺序的正确天数开始:

    1. 单击包含天数的图表。

    2. 从图表的属性中,选择排序部分。

    3. 选择包含天的维度。

    4. 确保选中“排序依据”表达式。

    5. 确保顺序设置为“Ascending(升序)”。

    6. 在“表达式”属性中输入以下内容: match(Day, 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun')

      Match days expression.png
最大值和最小值的表达式

请注意,如果该词发DISTINCT生在函数参数之前,则忽略函数参数求值过程中产生的重复。

  • 最大人员数量/小时(多个路径和区域)

对于聚合仪表板

如需详细仪表板

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))

  • 每日每小时最大访客数量(不包括“员工”观察清单上的员工):

对于聚合仪表板

如需详细仪表板

N/A

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))

  • 每日每小时最低访客数量(不包括“员工”观察清单上的员工):

对于聚合仪表板

如需详细仪表板

N/A

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)) )

平均值的表达式
  • 名称为“项目”的自订维度每日平均人员数量:

对于聚合仪表板

如需详细仪表板

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

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

  • 自订维度名称为“项目”的平均每小时人员数量:

对于聚合仪表板

如需详细仪表板

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

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

  • 平均每10分钟的人数:

对于聚合仪表板

如需详细仪表板

N/A

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

  • 10分钟内超过50人的平均次数:

对于聚合仪表板

如需详细仪表板

N/A

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

  • 根据最长平均停留时间(仅限人员)每个最大日期的前10个来源:

  1. 添加具有以下度量表达式之一的条形图(根据需要):

    • 所有日期的平均停留时间(仅限人员)的测量运算式:

      对于汇总仪表板: sum({$<[Class Category ID]={0}>}WeightedAvgDwellSec) / sum({$<[Class Category ID]={0}>}TotalObjects

      如需详细仪表板: Avg({$<[Class Category ID]={0}>}[Dwell (Sec)])

    • 平均停留时间(仅限人员)的度量表达式,每最大日期:

      对于汇总仪表板: Avg({$<[Class Category ID]={0},[Date]={"$(=Max(Date))"}>}[Dwell (Sec)])

      如需详细仪表板: sum({$<[Class Category ID]={0},[Date]={"$(=Max(Date))"}>}WeightedAvgDwellSec) / sum({$<[Class Category ID]={0},[Date]={"$(=Max(Date))"}>}TotalObjects)

  2. 将度量的名称更改为平均停留。

  3. 添加一个维并选择源。

  4. 在源维度上添加一个限制,以设置前10个源,如下图所示。

    Top 10 sources 1.png
  5. 依运算式排序图表(透过将平均暂留测量作为排序清单中的第一个项目)。

    Top 10 sources 2.png
  6. 查看结果:

    Top 10 sources 3.png
排除运算式
  • 排除特定自订维度:

对于聚合仪表板

如需详细仪表板

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

count({<[Class Category ID]={0},[Path & Area] -= {' 自订维度名称 '}>}[ObjectID])

  • 排除“随需”周一至周五排程的周末。

对于聚合仪表板

如需详细仪表板

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

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

注意

若要移除图表中的性别,请取代vClass为vClassCategory.

车辆运算式
  • 自行车计数–仅计算自行车数量:

对于聚合仪表板

如需详细仪表板

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

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

  • 道路车辆计算–计算以下类别:公车、汽车、摩托车、皮卡、卡车和卡车及:

对于聚合仪表板

如需详细仪表板

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

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

  • 其他车辆计数–计算以下类别:飞机、船和火车:

对于聚合仪表板

如需详细仪表板

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

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

  • 前7天的车辆周转次数:

对于聚合仪表板

如需详细仪表板

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)

  • 每小时车辆周转率:

对于聚合仪表板

如需详细仪表板

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))

  • 每个LPR的日期持续时间:

对于聚合仪表板

如需详细仪表板

N/A

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