V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
clemente0620
V2EX  ›  分享创造

面向交通流目标检测+跟踪 想做成落地服务,有什么好的建议吗?

  •  
  •   clemente0620 · 2020-02-20 13:12:53 +08:00 · 2884 次点击
    这是一个创建于 1749 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://www.bilibili.com/video/av89683287

    web 或 上位机 gui 还是原生视频叠层?

    功能上不知道还需要做哪些

    现在有的功能 1.警戒区闯入报警+跟踪码记录 2.按种类截面交通流计数 3.运行轨迹->短期预测->提前报警或者其他扩展 4.速度预测 这个需要标定还没做(感觉意义不大) 5.日报表生成

    18 条回复    2020-02-24 13:44:50 +08:00
    mathzhaoliang
        1
    mathzhaoliang  
       2020-02-20 16:58:19 +08:00
    应用场景是江面上船的交通流吗?
    clemente0620
        2
    clemente0620  
    OP
       2020-02-20 17:57:57 +08:00
    @mathzhaoliang 车 船 行人 甚至 畜牧场 草原的动物 都可以
    clemente0620
        3
    clemente0620  
    OP
       2020-02-20 17:58:52 +08:00
    @mathzhaoliang 还有密集物体的快速数量统计和交通密度估计以评估 jam 值
    Moker
        4
    Moker  
       2020-02-20 18:06:54 +08:00
    个人做这个没有优势啊 有需求的基本自己做了 或者找知名的一些公司接入
    opengps
        5
    opengps  
       2020-02-20 18:09:12 +08:00 via Android
    这个跟我的车载定位器相似
    mathzhaoliang
        6
    mathzhaoliang  
       2020-02-20 20:32:03 +08:00
    @clemente0620 你能说一下,你是怎么解决车辆轨迹和速度预测的吗?我觉得车辆和船的场景差别很大。
    clemente0620
        7
    clemente0620  
    OP
       2020-02-20 21:24:14 +08:00
    @mathzhaoliang 因为摄像头是固定距离的 透视仿射处理后 像素移动的真实速度估值 , 车辆轨迹预测是很简单的网络拟合估计
    mathzhaoliang
        8
    mathzhaoliang  
       2020-02-20 21:33:59 +08:00
    @clemente0620 几个问题你思考一下应该怎么解决:

    1. 选取哪个像素来进行透视变换?
    2. 透视变换投影的结果是相机焦点与像素的连线与地面交线,一般会落在车辆的后面。
    3. 神经网络检测车辆的时候给出的 bounding box 会有抖动,你怎么消除这个抖动?
    4. 交通场景里面经常有车辆的加速减速,车辆的错车会车,你怎么解决追踪 id 丢失和切换的问题?
    pascalsun
        9
    pascalsun  
       2020-02-21 09:29:00 +08:00
    目前你这些功能,国外的游艇会应该比较感兴趣。可以监测进出的游艇船只数量。如果测速准的话,水警可以开罚单。
    clemente0620
        10
    clemente0620  
    OP
       2020-02-21 10:49:51 +08:00
    @pascalsun 国产激光雷达可以完成这个需求,而且预算低
    clemente0620
        11
    clemente0620  
    OP
       2020-02-21 10:58:36 +08:00
    @mathzhaoliang

    1. 最好转换成俯视图来做,透视转换矩阵也只能随机去尝试,很难找到最优
    2. 通过变换,将视频画面转换成“俯视视角”(站在道路上方俯视道路)。经过这种变换之后,路面所有的运动目标都可以看作是 2D 平面运动,变换之后的每像素所代表的实际物理距离固定不变(米 /像素)。这样一来,计算实际物理速度就非常简单了,先计算像素速度,然后再乘以一个固定值即可得到实际物理速度。当然这是有误差的 10% ++
    3. 整体滑动平均 或者 从主干网络选型上着手
    4. 这条可以选择 仿照 交通监控灯的布置 (行驶道平行视角的 45 度角斜射摄像头摆放)这样能最大程度获取有效特征,避免遮挡沾粘
    clemente0620
        12
    clemente0620  
    OP
       2020-02-21 11:02:20 +08:00
    @mathzhaoliang 实际上,船要比车难做,因为满载的船特征区别度不大,可能在某些视角上看 就是一条细长的长条矩形,比如我视频后段,那条船是集装箱+矿砂两用内河船,前半段特征是内河船,后半段集装箱明显,所以造成了来回切换。
    clemente0620
        13
    clemente0620  
    OP
       2020-02-21 11:07:01 +08:00
    @mathzhaoliang 我基础不扎实,哈哈可能说的有些不对,边查边做的
    mathzhaoliang
        14
    mathzhaoliang  
       2020-02-21 11:44:30 +08:00
    @clemente0620

    俯视图会把物体变形,所以在俯视图里面是没法做神经网络检测的。而且俯视图是有范围限制的,你说的看作是 2D 平面运动,其实只能看相机下方一小块地方,超出范围物体就被拍扁了完全无法辨认。

    "整体滑动平均" 不知何意。至少你应该有一个扩展 Kalman 滤波来稳定轨迹。

    最后一条不知道你做不做追踪,船的动力学很简单,只能近似匀速地前进后退,慢慢拐弯。车辆要复杂很多,人就更随意了。轨迹变化导致的跟丢是很常见的事情。
    ianshow15
        15
    ianshow15  
       2020-02-24 09:26:19 +08:00
    @mathzhaoliang

    大佬您好,想咨询一下您提问的第 4 点的想法。您说的这种问题,在您看来有办法解决或者避免吗?
    mathzhaoliang
        16
    mathzhaoliang  
       2020-02-24 10:04:29 +08:00
    @ianshow15 我不清楚有没有一劳永逸一下解决的高明办法,我觉得需要多种手段一起使用.一个是轨迹暂时跟丢的话可以给它一个虚拟生命周期,后面匹配的话可以接上.一个是对不同的对象进行动力学建模,使用扩展或者无迹 Kalman 滤波进行追踪.一个应该是进行特征点的计算,对 mask/bbox 里面的对象作 iou 之外的二次检测. 最后还有需要稳定神经网络输出的 box 的抖动.
    ianshow15
        17
    ianshow15  
       2020-02-24 12:34:19 +08:00
    @mathzhaoliang
    所以现在这种场景下应该是还没有实际可用的完美的解决方案的吧?很多时候看到的都是 demo 视频,实际真的运用上了可能会暴露很多问题的吧?
    mathzhaoliang
        18
    mathzhaoliang  
       2020-02-24 13:44:50 +08:00
    @ianshow15 完美方案肯定没有。追踪的关键是神经网络的检测输出稳定,神经网络做不到,整体就做不到。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3481 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:19 · PVG 19:19 · LAX 03:19 · JFK 06:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.