MCPcopy Create free account
hub / github.com/DNA-Rendering/DNA-Rendering / getProjectionMatrix2

Function getProjectionMatrix2

scripts/3DGS/utils/graphics_utils.py:73–94  ·  view source on GitHub ↗
(znear, zfar, K, W, H)

Source from the content-addressed store, hash-verified

71 return P
72
73def getProjectionMatrix2(znear, zfar, K, W, H):
74 fx = K[0, 0]
75 fy = K[1, 1]
76 cx = K[0, 2]
77 cy = K[1, 2]
78 top = znear * cy / fy
79 bottom = -znear * (H - cy) / fy
80 right = znear * (W - cx) / fx
81 left = -znear * cx / fx
82
83 P = torch.zeros(4, 4)
84 z_sign = 1.0
85
86 P[0, 0] = 2.0 * znear / (right - left)
87 P[1, 1] = 2.0 * znear / (top - bottom)
88 P[0, 2] = -(right + left) / (right - left)
89 P[1, 2] = (top + bottom) / (top - bottom)
90 P[3, 2] = z_sign
91 P[2, 2] = z_sign * zfar / (zfar - znear)
92 P[2, 3] = -(zfar * znear) / (zfar - znear)
93
94 return P
95
96def fov2focal(fov, pixels):
97 return pixels / (2 * math.tan(fov / 2))

Callers 1

__init__Method · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected