图像处理-找出条码和相机之间的距离



如果知道实际条形码的大小和摄像头检测到的条形码的所有角的(x,y),是否有可能找到被检测到的qr条形码(正方形)与摄像头之间的距离?

我希望该方法工作,即使相机是在一个角度从条形码。

我尝试使用一个简单的方程,如f=d*z/d,其中f是相机的局部长度,d是物体的大小,d是被检测物体的宽度(像素),z是相机和条形码之间的距离。首先,我使用已知距离的数据计算焦距,然后得到相应的z值。

虽然上面的方法工作得很好,但如果相机处于一个角度,它会有很多误差。

有更好的方法吗?

另外,我只能使用一个相机,使用两个相机是不可能的。

用你当前的公式(你说的很好)对比最长的边和它的相反边,然后取平均值。

或者,取最长边和它的相反边的长度的平均值。这些关系都是线性的,所以你应该得到相同的答案。

首先你必须知道相机的角度。如果不能从设备中读取该参数,则可以使用其他方法估计该参数。

例如,你知道条形码是矩形的。通过检测它,你可以得到四个角度,并从中估计出一个齐次矩阵。知道了单应矩阵,你就可以通过将坐标与单应矩阵逆相乘来简化问题。

最新更新