저는 depth map with OpenCV
에서 일하고 있습니다. 나는 그것을 얻을 수는 있지만 왼쪽 카메라 원점에서 재구성되고이 후자의 약간의 기울기가 있으며 그림에서 볼 수 있듯이 깊이는 "이동"합니다 (깊이는 가깝고 수평 그래디언트가 없어야 함) :Python - 회전 각도에서 OpenCV를위한 원근감 변환
,
P = np.dot(cam,np.dot(Transl,np.dot(Rot,A1)))
dst = cv2.warpPerspective(depth, P, (2048, 2048))
와 ... 난 당신이 아래에 볼 수있는 워프 관점의 기능을 시도하지만 난 널 필드를 얻을 :
#Projection 2D -> 3D matrix
A1 = np.zeros((4,3))
A1[0,0] = 1
A1[0,2] = -1024
A1[1,1] = 1
A1[1,2] = -1024
A1[3,2] = 1
#Rotation matrice around the Y axis
theta = np.deg2rad(5)
Rot = np.zeros((4,4))
Rot[0,0] = np.cos(theta)
Rot[0,2] = -np.sin(theta)
Rot[1,1] = 1
Rot[2,0] = np.sin(theta)
Rot[2,2] = np.cos(theta)
Rot[3,3] = 1
#Translation matrix on the X axis
dist = 0
Transl = np.zeros((4,4))
Transl[0,0] = 1
Transl[0,2] = dist
Transl[1,1] = 1
Transl[2,2] = 1
Transl[3,3] = 1
#Camera Intrisecs matrix 3D -> 2D
cam = np.concatenate((C1,np.zeros((3,1))),axis=1)
cam[2,2] = 1
P = np.dot(cam,np.dot(Transl,np.dot(Rot,A1)))
dst = cv2.warpPerspective(Z0_0, P, (2048*3, 2048*3))
LATER
편집 : https://filex.ec-lille.fr/get?k=cCBoyoV4tbmkzSV5bi6 :
당신은 여기에 32MB의 필드 데이터 집합을 다운로드 할 수 있습니다. 그런 다음 이미지로드 및보기 :
from matplotlib import pyplot as plt
import numpy as np
img = np.load('testZ0.npy')
plt.imshow(img)
plt.show()
왜 valentin 답을 삭제 했습니까? – user3601754
[이 답변] (http://stackoverflow.com/q/33497736/1510289)이 도움이 될 수 있습니다. –
감사합니다.) – user3601754