最近智慧城市这个名词越来越被大家知晓,各大城市都在全力打造智慧城市,那么智慧城市中有一个重要的部分就是智慧交通,让AI来指挥整个城市的红绿灯系统,从而减少交通的拥堵,那么AI是如何识别各个路口的实时车流量的呢,下面小编带大家用python+opencv来检测路口的实时车流量。
今天我们使用一款开源github库来实现,该库的地址:
https://github.com/alex-drake/OpenCV-Traffic-Counter
主代码为:trafficCounter/blobDetection.py
该项目的目的是实时检测道路路口的车流量,整个项目分为两个部分,车辆检测与车辆计数。
▊ 车辆检测
为了计算车辆,我们首先需要能够在图像中检测到它们。对于人类来说,这很简单,但是在机器的世界中却很难实现。但是,如果我们认为图像只是一个数字数组(每个像素一个值),则可以使用它来确定车辆的外观以及在没有车辆的情况下期望看到的图像。我们可以使用OpenCV查看这两种情况下某些像素的值如何变化,如下图所示。为此,我们必须首先将图像从RGB通道(红色,绿色蓝色)转换为HSV(色相,饱和度,值),并检查每个通道是否可以告诉我们一些信息。
从直方图可以看出,色相通道没有提供太多信息,而饱和度和值通道都清楚地显示了车辆/无车辆条件之间的差异,因此我们可以在检测算法中使用此通道。但是,为简单起见,我们暂时仅使用Value通道。
我们还需要一张没有车辆的背景图片...
点击查看剩余70%
网友评论0