Python中的车辆检测,计数和分类

问题描述 投票:1回答:2

我必须最终计算视频中的车辆总数,区分汽车和卡车以及检测到的车辆的颜色。我正在使用OpenCV,Python和SimpleCV。到目前为止我所做的是:1。背景减法2.使用find.Blobs()来查找blob

根据斑点的大小,我可以区分汽车和卡车。但是,当我在前景蒙版上找到斑点的数量时,所有斑点都是白色的。所以我的问题是如何才能找到检测到的车辆的颜色?

python-2.7 opencv blob background-subtraction simplecv
2个回答
0
投票

你假设车辆主要是一种颜色,因此你正在寻找每个blob的平均颜色,不是吗?这应该在每个宽度为3的blob周围绘制一个矩形,矩形颜色是平均颜色。

随意优化:)

for blob in blobs:
    a=blob.meanColor()
    mc=(int(a[0]), int(a[1]), int(a[2]))
    rect=blob.boundingBox()
    img.drawRectangle(rect[0], rect[1], rect[2], rect[3], mc, 3)
img.show()

0
投票

另一个有趣的方法是使用OpenCV HOG + SVM分类器来检测车辆。看看这个博客:https://medium.com/@priya.dwivedi/automatic-vehicle-detection-for-self-driving-cars-8d98c086b161#.6x2k4szf5

© www.soinside.com 2019 - 2024. All rights reserved.