У меня проблема, и я заблокирован, было бы полезно дать мне несколько идей (извините за мой Engli sh)
Я не знаю, как вращать облако точек относительно угол поворота пластины для второго лазерного луча, и я получаю облако точек пересечения.
и я получаю это облако точек:
Платформа вращения:
Генерация и вращение облака точек:
u, v = points2D
#-- Obtaining point cloud in camera coordinates
if leftLaser:
d = dL #minimum distance from left laser to origin camera coordinates
n = nL #normal vector to left laser plane
else:
d = dR #minimum distance from right laser to origin camera coordinates
n = nR #normal vector to right laser plane
x = np.concatenate(((u-cx)/fx, (v-cy)/fy, np.ones(len(u)))).reshape(3,len(u))
Xc = d/np.dot(n,x)*x
#-- Move point cloud to world coordinates
R = np.matrix(rotationMatrix).T
t = np.matrix(translationVector).T
Xwo = R*Xc - R*t
#-- Rotate point cloud
c = np.cos(theta) #theta is the current plate angle, and increases in steps of 0.45°
s = np.sin(theta)
Rz = np.matrix([[c, -s, 0],[s, c, 0], [0, 0, 1]])
Xw = Rz * Xwo