

一个AI客流系统输入的是连续视频帧。
输出的是结构化事件。
两者之间存在较长的数据处理链:
Video Stream ↓Frame Decode ↓Detection ↓Tracking ↓Trajectory ↓Event Detection ↓Traffic Aggregation如果系统还需要计算有效客流,则增加:
Staff IdentificationDuplicate FilteringInvalid Target Filtering因此可以把系统定义为:
Video-to-Event Pipeline
最终输出的不是视频,而是事件数据。
典型部署方式:
Camera ↓Edge AI Device ↓Local Inference ↓Event Generator ↓MQTT / HTTP ↓Cloud API ↓Message Queue ↓Data Storage ↓Analytics边缘计算的意义在于减少原始视频上传。
例如摄像头产生:
1920 × 108025 FPS如果直接上传原始视频,带宽压力明显。
但客流系统真正需要上传的可能只是:
{ "timestamp": "2026-08-20T09:30:21", "direction": "in", "event_type": "effective_customer", "confidence": 0.94}数据量会大幅下降。
推荐不要直接存储:
count = 10而是生成事件。
例如:
Event IDDevice IDTimestampTrack IDDirectionObject TypeConfidenceZone ID这样后端才能进行二次聚合。
例如:
09:00–10:00IN = 125OUT = 98Effective IN = 104系统可以继续生成:
Traffic = 104如果后续需要重新定义过滤规则,也不必重新处理全部视频。
可以使用规则引擎:
IF direction = INAND object = personAND staff = falseAND duplicate = falseAND confidence >= thresholdTHEN event = EFFECTIVE_CUSTOMER这里的threshold不是固定的“行业标准值”。
它应该通过验证集确定。
例如:
Threshold = 0.50Threshold = 0.60Threshold = 0.70Threshold = 0.80分别测试:
PrecisionRecallF1-score再根据实际场景选择。
例如系统检测100个目标。
其中:
TP = 92FP = 8那么:
Precision = 92 / (92 + 8) = 92%但如果真实存在110个目标,而系统只检测到92个:
Recall = 92 / 110 ≈ 83.6%所以一个系统即使Precision很高,也可能存在较严重漏检。
客流系统测试时必须同时看:
PrecisionRecallF1Counting Accuracy客流统计中的典型问题是遮挡。
单人场景:
Person A多人场景:
A B C D当目标之间距离缩小时:
A+B可能在视觉上形成一个连通区域。
如果算法依赖人体完整轮廓,漏检概率可能增加。
因此工程测试需要加入:
Low DensityMedium DensityHigh Density不能只在空旷场景下验证。
可以用有限状态机描述进出事件:
NEW ↓TRACKING ↓CROSSING ↓CONFIRMED ↓LOST例如:
NEW ↓连续N帧检测成功 ↓TRACKING ↓穿越虚拟线 ↓CROSSING ↓方向满足条件 ↓CONFIRMED IN这样可以减少单帧误触发。
如果一个目标只在虚拟线附近出现一帧:
Frame 101 → detectedFrame 102 → lost就不应该直接生成一个有效客流事件。
可以采用如下逻辑:
Raw Event ↓Kafka / Message Queue ↓Stream Processing ↓Clean Event ↓Time Series DB ↓Aggregation聚合维度包括:
device_idstore_iddatehour15_minute_windowdirectiontraffic_type最终生成:
store_id = S001date = 2026-08-20hour = 09effective_traffic = 104再与POS数据Join:
Traffic Table +POS Table ↓Conversion Dataset假设:
effective_traffic = 104orders = 18那么:
conversion_rate= orders / effective_traffic≈ 17.31%注意这里需要明确统计时间窗口。
不能拿:
09:00–10:00 Traffic去除以:
全天 Orders这会形成时间窗口错位。
正确方式是:
Traffic Window=Transaction Window这是零售数据分析中非常容易被忽略的数据工程问题。
完整系统至少应该记录:
Detection FPSInference LatencyEvent LatencyCPU UsageGPU/NPU UsageMemory UsageNetwork BandwidthEvent Loss Rate例如:
Frame Input: 25 FPSInference Latency: < 100 msEvent Latency: < 1 s这里只能作为测试方案示例。
实际指标必须以硬件、模型、分辨率和场景测试结果为准。
从系统架构看,有效客流不是一个单独算法。
它是多个模块共同产生的结果:
Vision+Tracking+Re-ID+Rule Engine+Event Processing+Data Aggregation如果其中任何一层产生系统性误差,最终客流数据都会受到影响。
因此,AI客流分析真正值得研究的不是“如何把人检测出来”,而是:
如何把连续视频转换成可靠、可计算、可追溯的消费者事件数据。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。