我正在我的手肘上使用乒乓球。我可以使用Python中的OpenCV跟踪它并提取每个帧中的x和y,但问题是:我还需要z。因此,我在冠状平面上添加了第二个相机。如果您不熟悉,请参考以下图片: 我的第一个摄像头是在矢状面上。我不知道如何进行同步。有什么建议吗?
几种解决方案: 将您的网络摄像头放置在两个垂直平面上(您所做的),并手动测量它们之间的距离(x,y,0)。 然后,您的第一个网络摄像头位于(0,0,0),第二个网络摄像头位于(例如15,16,0)。从那里,您可以轻松推导出图像之间的转换,参见此wiki 这是90度旋转+平移,因此如果您的旋转沿z轴,则转换矩阵将为: 0 1 15-1 0 160 0 1 或者 0 -1 151 0 160 0 1 取决于旋转是否为+或-90度。如果您有疑问,请查看您的数据。 另一种解决方案:定位您的两个网络摄像头,然后在拍摄区域中放置参考点(4个应该足够好,定义笛卡尔坐标系),并决定它们将定义您的参考框架。然后,您将转换来自两个网络摄像头的输入,以获取它们相对于该框架的坐标。我想您可以通过使用我给您提供的链接中的某些数学,并在OpenCV中检查您的结果来实现这一点。
grab
捕获两个摄像头,然后再使用retrieve
,但仍会有轻微的延迟。 - Azad