算法(二):汽车振动部件目标检测与跟踪(计算机视觉)

这篇博客介绍了在NVH性能开发中如何使用计算机视觉技术进行汽车振动部件的检测与跟踪。通过图像预处理和帧间差分法实现目标检测,再利用光流法进行目标跟踪,以判断振动方向。文章详细阐述了帧间差分和光流法的原理及其在实际应用中的优缺点。
摘要由CSDN通过智能技术生成

一、前言

在NVH性能开发过程中,需对整车进行振动试验,进行模态分析。在多个模态频率下,车门、天窗、轮胎或排气系统会产生共振, 形成最大的振幅。如图中排气系统在某个频率下产生了共振,在水平方向产生最大振幅。

二、目标检测

1.图像预处理

由于振动部件的颜色比较明显,振动幅度越大,红色越明显,而静止部分为蓝色。可以尝试将彩色图像RGB转换HSV空间(色差、饱和度、强度)后对蓝色背景进行过滤。

#过滤蓝色部分,将背景转换为白色
def data_prepare(image,index):
    imhsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
    lower_blue = np.array([100,43,46])
    upper_blue = np.array([124,255,255])
    lower_white = np.array([0,0,255])
    upper_white = np.array([0,0,255])
    mask_blue = cv2.inRange(imhsv,lower_blue,upper_blue)
    mask_white = cv2.inRange(imhsv,lower_white,upper_white)
    mask=mask_blue|mask_white
    mask = 255 - mask
    res = cv2.bitwise_and(image,image,mask=mask)
    #将黑色背景转换为白色背景
    res[(res[:,:,0]+res[:,:,1]+res[:,:,2])==0]=[255,255,255]
    return res

2.帧间差分法

帧间差分法是将视频流中相邻两帧或相隔几帧图像的两幅图像像素值相减,并对相减后的图像进行阈值化来提取图像中的运动区域。因此,可采用帧间差分法检测振动部件。

1)帧间差分法的优点:算法简单,不易受环境光线影响。
2)帧间差分法的缺点:无法识别静止或运动速度很慢的目标;差分时容易产生孔洞,需做处理。

若相减两帧图像的帧数分别为第 k k k帧、第 k + 1 k+1 k+1帧,其帧图像分别为 f k ( x , y ) f_k(x,y) fk(x,y) f k + 1 ( x , y ) f_{k+1}(x,y) fk+1(x,y),差分图像二值化阈值为T,差分图像用D(x, y)表示,则帧间差分法的公式如下:

D ( x , y ) = { 1 ,          ∣ f k + 1 ( x , y ) − f k ( x , y ) ∣ > T 0 ,          o t h e r w i s e D(x,y) = \left\{\begin{array}{l}1,\;\;\;\;\left|f_{k+1}(x,y)-f_k(x,y)\right|>T\\0,\;\;\;\;otherwise\end{array}\right. D(x,y)={ 1,f

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值