-3

我是openCV的新手。有没有办法在开放的简历中实时计算到手的距离。我的基本想法是跟踪手并识别手势。使用肤色识别真的很难做到这一点。所以我虽然计算到手的距离并隔离手部区域并进行手势识别。请在这件事上给予我帮助...

4

1 回答 1

1

以下是您可以使用的一些技术...

  1. 如果您的背景静止并且只有手在移动,那么您可以使用帧微分来分割移动的手...I(x,y)diff = absoulute[ I(x,y,n) - I(x,y, n-1) ]....其中 I(x,y,n) 是当前帧的点 x,y 的强度...并且 I(x,y,n-1) 与前一帧相同框架..然后阈值 I(x,y)diff 得到唯一移动的手....

  2. 使用 OpenCV 的 goodfeturestotrack 函数来识别一组易于跟踪的点,并使用 calcOpticalFlow 函数来查找该组点在每一帧中的位置...此方法与背景无关...goodfeaturestotrack 将识别一组手上和背景上的点....但是由于您的手与背景相比移动很大,因此在每一帧中,您将获得最初确定的一组点的不同位置,这些点有利于跟踪...所以与帧中的其他点相比,您手上和附近的点将具有最大位移...因此,根据 2 个连续帧之间点的位移幅度,可以分割出手...这个过程称为光流计算...

  3. 一旦你分割出手,你就可以对分割区域进行多边形拟合。这样你就可以在手势和多边形的形状之间建立联系......

例子...

于 2012-09-11T10:06:49.683 回答