gtsam-develop 4.3a0.dev202508020718__cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl → 4.3a0.dev202508021458__cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of gtsam-develop might be problematic. Click here for more details.
- gtsam/__init__.pyi +12 -12
- gtsam/gtsam/__init__.pyi +155 -33
- gtsam/gtsam.cpython-312-aarch64-linux-gnu.so +0 -0
- {gtsam_develop-4.3a0.dev202508020718.dist-info → gtsam_develop-4.3a0.dev202508021458.dist-info}/METADATA +3 -3
- {gtsam_develop-4.3a0.dev202508020718.dist-info → gtsam_develop-4.3a0.dev202508021458.dist-info}/RECORD +10 -10
- gtsam_develop.libs/{libgtsam-785a7dff.so.4.3a0.dev202508020718 → libgtsam-4bfd36cd.so.4.3a0.dev202508021458} +0 -0
- gtsam_develop.libs/{libgtsam_unstable-93bbce1b.so.4.3a0.dev202508020718 → libgtsam_unstable-c4df60a2.so.4.3a0.dev202508021458} +0 -0
- gtsam_unstable/gtsam_unstable.cpython-312-aarch64-linux-gnu.so +0 -0
- {gtsam_develop-4.3a0.dev202508020718.dist-info → gtsam_develop-4.3a0.dev202508021458.dist-info}/WHEEL +0 -0
- {gtsam_develop-4.3a0.dev202508020718.dist-info → gtsam_develop-4.3a0.dev202508021458.dist-info}/top_level.txt +0 -0
gtsam/__init__.pyi
CHANGED
|
@@ -2,28 +2,28 @@
|
|
|
2
2
|
Module definition file for GTSAM
|
|
3
3
|
"""
|
|
4
4
|
from __future__ import annotations
|
|
5
|
+
from builtins import dict as IndexPairSetMap
|
|
5
6
|
from builtins import dict as KeyPairDoubleMap
|
|
6
7
|
from builtins import dict as MatchIndicesMap
|
|
7
|
-
from builtins import
|
|
8
|
-
from builtins import list as
|
|
8
|
+
from builtins import list as Point2Vector
|
|
9
|
+
from builtins import list as Rot3Vector
|
|
10
|
+
from builtins import list as Pose3Pairs
|
|
11
|
+
from builtins import list as SfmMeasurementVector
|
|
9
12
|
from builtins import list as BetweenFactorPose3s
|
|
13
|
+
from builtins import list as BetweenFactorPose2s
|
|
14
|
+
from builtins import list as Point2Pairs
|
|
10
15
|
from builtins import list as KeyVector
|
|
16
|
+
from builtins import list as SfmCameras
|
|
11
17
|
from builtins import list as BinaryMeasurementsUnit3
|
|
12
|
-
from builtins import list as Pose2Pairs
|
|
13
|
-
from builtins import list as BinaryMeasurementsRot3
|
|
14
|
-
from builtins import list as KeypointsVector
|
|
15
18
|
from builtins import list as Pose3Vector
|
|
16
|
-
from builtins import list as Point2Vector
|
|
17
|
-
from builtins import list as Rot3Vector
|
|
18
19
|
from builtins import list as SfmTracks
|
|
19
|
-
from builtins import list as BetweenFactorPose2s
|
|
20
|
-
from builtins import list as Point2Pairs
|
|
21
20
|
from builtins import list as BinaryMeasurementsPoint3
|
|
22
|
-
from builtins import list as Pose3Pairs
|
|
23
|
-
from builtins import list as SfmCameras
|
|
24
21
|
from builtins import list as Point3Pairs
|
|
22
|
+
from builtins import list as BinaryMeasurementsRot3
|
|
23
|
+
from builtins import list as SfmTrack2dVector
|
|
24
|
+
from builtins import list as Pose2Pairs
|
|
25
|
+
from builtins import list as KeypointsVector
|
|
25
26
|
from builtins import list as IndexPairVector
|
|
26
|
-
from builtins import list as SfmMeasurementVector
|
|
27
27
|
from gtsam.gtsam import AHRSFactor
|
|
28
28
|
from gtsam.gtsam import AcceleratingScenario
|
|
29
29
|
from gtsam.gtsam import AlgebraicDecisionTreeKey
|
gtsam/gtsam/__init__.pyi
CHANGED
|
@@ -612,6 +612,11 @@ class Cal3:
|
|
|
612
612
|
vectorized form (column-wise)
|
|
613
613
|
"""
|
|
614
614
|
class Cal3Bundler(Cal3f):
|
|
615
|
+
@staticmethod
|
|
616
|
+
def Dim() -> int:
|
|
617
|
+
"""
|
|
618
|
+
Return DOF, dimensionality of tangent space.
|
|
619
|
+
"""
|
|
615
620
|
def __getstate__(self) -> tuple:
|
|
616
621
|
...
|
|
617
622
|
@typing.overload
|
|
@@ -629,6 +634,10 @@ class Cal3Bundler(Cal3f):
|
|
|
629
634
|
...
|
|
630
635
|
def deserialize(self, serialized: str) -> None:
|
|
631
636
|
...
|
|
637
|
+
def dim(self) -> int:
|
|
638
|
+
"""
|
|
639
|
+
Return DOF, dimensionality of tangent space.
|
|
640
|
+
"""
|
|
632
641
|
def equals(self, K: Cal3Bundler, tol: float) -> bool:
|
|
633
642
|
"""
|
|
634
643
|
assert equality up to a tolerance
|
|
@@ -659,7 +668,7 @@ class Cal3DS2(Cal3DS2_Base):
|
|
|
659
668
|
@staticmethod
|
|
660
669
|
def Dim() -> int:
|
|
661
670
|
"""
|
|
662
|
-
|
|
671
|
+
return DOF, dimensionality of tangent space
|
|
663
672
|
"""
|
|
664
673
|
def __getstate__(self) -> tuple:
|
|
665
674
|
...
|
|
@@ -681,7 +690,7 @@ class Cal3DS2(Cal3DS2_Base):
|
|
|
681
690
|
...
|
|
682
691
|
def dim(self) -> int:
|
|
683
692
|
"""
|
|
684
|
-
|
|
693
|
+
return DOF, dimensionality of tangent space
|
|
685
694
|
"""
|
|
686
695
|
def equals(self, K: Cal3DS2, tol: float) -> bool:
|
|
687
696
|
"""
|
|
@@ -771,6 +780,11 @@ class Cal3DS2_Base(Cal3):
|
|
|
771
780
|
Return all parameters as a vector.
|
|
772
781
|
"""
|
|
773
782
|
class Cal3Fisheye(Cal3):
|
|
783
|
+
@staticmethod
|
|
784
|
+
def Dim() -> int:
|
|
785
|
+
"""
|
|
786
|
+
Return dimensions of calibration manifold object.
|
|
787
|
+
"""
|
|
774
788
|
def __getstate__(self) -> tuple:
|
|
775
789
|
...
|
|
776
790
|
@typing.overload
|
|
@@ -810,6 +824,10 @@ class Cal3Fisheye(Cal3):
|
|
|
810
824
|
"""
|
|
811
825
|
def deserialize(self, serialized: str) -> None:
|
|
812
826
|
...
|
|
827
|
+
def dim(self) -> int:
|
|
828
|
+
"""
|
|
829
|
+
Return dimensions of calibration manifold object.
|
|
830
|
+
"""
|
|
813
831
|
def equals(self, K: Cal3Fisheye, tol: float) -> bool:
|
|
814
832
|
"""
|
|
815
833
|
assert equality up to a tolerance
|
|
@@ -1057,6 +1075,11 @@ class Cal3_S2(Cal3):
|
|
|
1057
1075
|
Returns: point in image coordinates
|
|
1058
1076
|
"""
|
|
1059
1077
|
class Cal3_S2Stereo(Cal3_S2):
|
|
1078
|
+
@staticmethod
|
|
1079
|
+
def Dim() -> int:
|
|
1080
|
+
"""
|
|
1081
|
+
return DOF, dimensionality of tangent space
|
|
1082
|
+
"""
|
|
1060
1083
|
@typing.overload
|
|
1061
1084
|
def __init__(self) -> None:
|
|
1062
1085
|
...
|
|
@@ -1099,6 +1122,10 @@ class Cal3_S2Stereo(Cal3_S2):
|
|
|
1099
1122
|
|
|
1100
1123
|
Returns: point in intrinsic coordinates
|
|
1101
1124
|
"""
|
|
1125
|
+
def dim(self) -> int:
|
|
1126
|
+
"""
|
|
1127
|
+
return DOF, dimensionality of tangent space
|
|
1128
|
+
"""
|
|
1102
1129
|
def equals(self, other: Cal3_S2Stereo, tol: float) -> bool:
|
|
1103
1130
|
"""
|
|
1104
1131
|
Check if equal up to specified tolerance.
|
|
@@ -1142,6 +1169,11 @@ class Cal3_S2Stereo(Cal3_S2):
|
|
|
1142
1169
|
vectorized form (column-wise)
|
|
1143
1170
|
"""
|
|
1144
1171
|
class Cal3f(Cal3):
|
|
1172
|
+
@staticmethod
|
|
1173
|
+
def Dim() -> int:
|
|
1174
|
+
"""
|
|
1175
|
+
Return DOF, dimensionality of tangent space.
|
|
1176
|
+
"""
|
|
1145
1177
|
def __getstate__(self) -> tuple:
|
|
1146
1178
|
...
|
|
1147
1179
|
@typing.overload
|
|
@@ -1178,6 +1210,10 @@ class Cal3f(Cal3):
|
|
|
1178
1210
|
"""
|
|
1179
1211
|
def deserialize(self, serialized: str) -> None:
|
|
1180
1212
|
...
|
|
1213
|
+
def dim(self) -> int:
|
|
1214
|
+
"""
|
|
1215
|
+
Return DOF, dimensionality of tangent space.
|
|
1216
|
+
"""
|
|
1181
1217
|
def equals(self, K: Cal3f, tol: float) -> bool:
|
|
1182
1218
|
"""
|
|
1183
1219
|
assert equality up to a tolerance
|
|
@@ -1225,9 +1261,7 @@ class Cal3f(Cal3):
|
|
|
1225
1261
|
class CalibratedCamera:
|
|
1226
1262
|
@staticmethod
|
|
1227
1263
|
def Dim() -> int:
|
|
1228
|
-
|
|
1229
|
-
Deprecated
|
|
1230
|
-
"""
|
|
1264
|
+
...
|
|
1231
1265
|
@staticmethod
|
|
1232
1266
|
def Level(pose2: Pose2, height: float) -> CalibratedCamera:
|
|
1233
1267
|
"""
|
|
@@ -1266,9 +1300,7 @@ class CalibratedCamera:
|
|
|
1266
1300
|
def deserialize(self, serialized: str) -> None:
|
|
1267
1301
|
...
|
|
1268
1302
|
def dim(self) -> int:
|
|
1269
|
-
|
|
1270
|
-
Deprecated
|
|
1271
|
-
"""
|
|
1303
|
+
...
|
|
1272
1304
|
def equals(self, camera: CalibratedCamera, tol: float) -> bool:
|
|
1273
1305
|
"""
|
|
1274
1306
|
assert equality up to a tolerance
|
|
@@ -4064,11 +4096,21 @@ class GPSFactorArmCalib(NonlinearFactor):
|
|
|
4064
4096
|
...
|
|
4065
4097
|
class Gal3:
|
|
4066
4098
|
@staticmethod
|
|
4099
|
+
def Dim() -> int:
|
|
4100
|
+
"""
|
|
4101
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
4102
|
+
"""
|
|
4103
|
+
@staticmethod
|
|
4067
4104
|
def Expmap(xi: numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Gal3:
|
|
4068
4105
|
"""
|
|
4069
4106
|
Exponential map at identity: tangent vector xi -> manifold element g.
|
|
4070
4107
|
"""
|
|
4071
4108
|
@staticmethod
|
|
4109
|
+
def Hat(xi: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[5], typing.Literal[5]], numpy.dtype[numpy.float64]]:
|
|
4110
|
+
"""
|
|
4111
|
+
Hat operator: maps tangent vector xi to Lie algebra matrix.
|
|
4112
|
+
"""
|
|
4113
|
+
@staticmethod
|
|
4072
4114
|
def Identity() -> Gal3:
|
|
4073
4115
|
"""
|
|
4074
4116
|
Return the identity element.
|
|
@@ -4078,6 +4120,11 @@ class Gal3:
|
|
|
4078
4120
|
"""
|
|
4079
4121
|
Logarithmic map at identity: manifold element g -> tangent vector xi.
|
|
4080
4122
|
"""
|
|
4123
|
+
@staticmethod
|
|
4124
|
+
def Vee(X: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
4125
|
+
"""
|
|
4126
|
+
Vee operator: maps Lie algebra matrix to tangent vector xi.
|
|
4127
|
+
"""
|
|
4081
4128
|
@typing.overload
|
|
4082
4129
|
def __init__(self) -> None:
|
|
4083
4130
|
...
|
|
@@ -4095,6 +4142,10 @@ class Gal3:
|
|
|
4095
4142
|
...
|
|
4096
4143
|
def compose(self, other: Gal3) -> Gal3:
|
|
4097
4144
|
...
|
|
4145
|
+
def dim(self) -> int:
|
|
4146
|
+
"""
|
|
4147
|
+
Provided fixed dimension indim()if needed.
|
|
4148
|
+
"""
|
|
4098
4149
|
def equals(self, other: Gal3, tol: float) -> bool:
|
|
4099
4150
|
"""
|
|
4100
4151
|
Check equality within tolerance.
|
|
@@ -10593,6 +10644,11 @@ class Pose2:
|
|
|
10593
10644
|
def Align(a: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], b: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> Pose2 | None:
|
|
10594
10645
|
...
|
|
10595
10646
|
@staticmethod
|
|
10647
|
+
def Dim() -> int:
|
|
10648
|
+
"""
|
|
10649
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
10650
|
+
"""
|
|
10651
|
+
@staticmethod
|
|
10596
10652
|
@typing.overload
|
|
10597
10653
|
def Expmap(xi: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Pose2:
|
|
10598
10654
|
"""
|
|
@@ -10709,6 +10765,10 @@ class Pose2:
|
|
|
10709
10765
|
...
|
|
10710
10766
|
def deserialize(self, serialized: str) -> None:
|
|
10711
10767
|
...
|
|
10768
|
+
def dim(self) -> int:
|
|
10769
|
+
"""
|
|
10770
|
+
Provided fixed dimension indim()if needed.
|
|
10771
|
+
"""
|
|
10712
10772
|
def equals(self, pose: Pose2, tol: float) -> bool:
|
|
10713
10773
|
"""
|
|
10714
10774
|
assert equality up to a tolerance
|
|
@@ -10822,6 +10882,10 @@ class Pose2:
|
|
|
10822
10882
|
"""
|
|
10823
10883
|
translation
|
|
10824
10884
|
"""
|
|
10885
|
+
def vec(self) -> numpy.ndarray[tuple[typing.Literal[9], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
10886
|
+
"""
|
|
10887
|
+
Vectorize the rotation matrix into a 9D vector.
|
|
10888
|
+
"""
|
|
10825
10889
|
def x(self) -> float:
|
|
10826
10890
|
"""
|
|
10827
10891
|
get x
|
|
@@ -10842,6 +10906,11 @@ class Pose3:
|
|
|
10842
10906
|
def Align(a: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], b: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> Pose3 | None:
|
|
10843
10907
|
...
|
|
10844
10908
|
@staticmethod
|
|
10909
|
+
def Dim() -> int:
|
|
10910
|
+
"""
|
|
10911
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
10912
|
+
"""
|
|
10913
|
+
@staticmethod
|
|
10845
10914
|
@typing.overload
|
|
10846
10915
|
def Expmap(xi: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Pose3:
|
|
10847
10916
|
"""
|
|
@@ -10988,6 +11057,10 @@ class Pose3:
|
|
|
10988
11057
|
...
|
|
10989
11058
|
def deserialize(self, serialized: str) -> None:
|
|
10990
11059
|
...
|
|
11060
|
+
def dim(self) -> int:
|
|
11061
|
+
"""
|
|
11062
|
+
Provided fixed dimension indim()if needed.
|
|
11063
|
+
"""
|
|
10991
11064
|
def equals(self, pose: Pose3, tol: float) -> bool:
|
|
10992
11065
|
"""
|
|
10993
11066
|
assert equality up to a tolerance
|
|
@@ -11204,6 +11277,10 @@ class Pose3:
|
|
|
11204
11277
|
"""
|
|
11205
11278
|
get translation
|
|
11206
11279
|
"""
|
|
11280
|
+
def vec(self) -> numpy.ndarray[tuple[typing.Literal[16], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
11281
|
+
"""
|
|
11282
|
+
Return vectorized SE(3) matrix in column order.
|
|
11283
|
+
"""
|
|
11207
11284
|
def x(self) -> float:
|
|
11208
11285
|
"""
|
|
11209
11286
|
get x
|
|
@@ -12179,6 +12256,11 @@ class ReferenceFrameFactorPoint3Pose3(NoiseModelFactor):
|
|
|
12179
12256
|
...
|
|
12180
12257
|
class Rot2:
|
|
12181
12258
|
@staticmethod
|
|
12259
|
+
def Dim() -> int:
|
|
12260
|
+
"""
|
|
12261
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
12262
|
+
"""
|
|
12263
|
+
@staticmethod
|
|
12182
12264
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Rot2:
|
|
12183
12265
|
"""
|
|
12184
12266
|
Exponential map at identity - create a rotation from canonical coordinates.
|
|
@@ -12261,6 +12343,10 @@ class Rot2:
|
|
|
12261
12343
|
"""
|
|
12262
12344
|
def deserialize(self, serialized: str) -> None:
|
|
12263
12345
|
...
|
|
12346
|
+
def dim(self) -> int:
|
|
12347
|
+
"""
|
|
12348
|
+
Provided fixed dimension indim()if needed.
|
|
12349
|
+
"""
|
|
12264
12350
|
def equals(self, R: Rot2, tol: float) -> bool:
|
|
12265
12351
|
"""
|
|
12266
12352
|
equals with an tolerance
|
|
@@ -12319,6 +12405,10 @@ class Rot2:
|
|
|
12319
12405
|
"""
|
|
12320
12406
|
rotate point from world to rotated frame$ p^c = (R_c^w)^T p^w $
|
|
12321
12407
|
"""
|
|
12408
|
+
def vec(self) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12409
|
+
"""
|
|
12410
|
+
Vectorize the rotation matrix into a 4D vector.
|
|
12411
|
+
"""
|
|
12322
12412
|
class Rot3:
|
|
12323
12413
|
@staticmethod
|
|
12324
12414
|
def AxisAngle(axis: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]], angle: float) -> Rot3:
|
|
@@ -12339,6 +12429,11 @@ class Rot3:
|
|
|
12339
12429
|
Uses Full SVD to compute the orthogonal matrix, thus is highly accurate and robust. N. J. Higham. Matrix nearness problems and applications. In M. J. C. Gover and S. Barnett, editors, Applications of Matrix Theory, pages 1–27. Oxford University Press, 1989.
|
|
12340
12430
|
"""
|
|
12341
12431
|
@staticmethod
|
|
12432
|
+
def Dim() -> int:
|
|
12433
|
+
"""
|
|
12434
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
12435
|
+
"""
|
|
12436
|
+
@staticmethod
|
|
12342
12437
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Rot3:
|
|
12343
12438
|
"""
|
|
12344
12439
|
Exponential map - create a rotation from canonical coordinates$ [R_x,R_y,R_z] $using Rodrigues' formula.
|
|
@@ -12473,6 +12568,10 @@ class Rot3:
|
|
|
12473
12568
|
...
|
|
12474
12569
|
def deserialize(self, serialized: str) -> None:
|
|
12475
12570
|
...
|
|
12571
|
+
def dim(self) -> int:
|
|
12572
|
+
"""
|
|
12573
|
+
Provided fixed dimension indim()if needed.
|
|
12574
|
+
"""
|
|
12476
12575
|
def equals(self, p: Rot3, tol: float) -> bool:
|
|
12477
12576
|
"""
|
|
12478
12577
|
equals with an tolerance
|
|
@@ -12562,6 +12661,10 @@ class Rot3:
|
|
|
12562
12661
|
"""
|
|
12563
12662
|
unrotate 3D direction from world frame to rotated coordinate frame
|
|
12564
12663
|
"""
|
|
12664
|
+
def vec(self) -> numpy.ndarray[tuple[typing.Literal[9], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12665
|
+
"""
|
|
12666
|
+
Vee maps from Lie algebra to tangent vector.
|
|
12667
|
+
"""
|
|
12565
12668
|
def xyz(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12566
12669
|
"""
|
|
12567
12670
|
Use RQ to calculate xyz angle representation.
|
|
@@ -12641,6 +12744,11 @@ class RotateFactor(NoiseModelFactor):
|
|
|
12641
12744
|
"""
|
|
12642
12745
|
class SL4:
|
|
12643
12746
|
@staticmethod
|
|
12747
|
+
def Dim() -> int:
|
|
12748
|
+
"""
|
|
12749
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
12750
|
+
"""
|
|
12751
|
+
@staticmethod
|
|
12644
12752
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SL4:
|
|
12645
12753
|
...
|
|
12646
12754
|
@staticmethod
|
|
@@ -12685,6 +12793,10 @@ class SL4:
|
|
|
12685
12793
|
...
|
|
12686
12794
|
def deserialize(self, serialized: str) -> None:
|
|
12687
12795
|
...
|
|
12796
|
+
def dim(self) -> int:
|
|
12797
|
+
"""
|
|
12798
|
+
Provided fixed dimension indim()if needed.
|
|
12799
|
+
"""
|
|
12688
12800
|
def equals(self, sl4: SL4, tol: float) -> bool:
|
|
12689
12801
|
"""
|
|
12690
12802
|
assert equality up to a tolerance
|
|
@@ -12719,6 +12831,12 @@ class SL4:
|
|
|
12719
12831
|
...
|
|
12720
12832
|
def serialize(self) -> str:
|
|
12721
12833
|
...
|
|
12834
|
+
def vec(self) -> numpy.ndarray[tuple[typing.Literal[16], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12835
|
+
"""
|
|
12836
|
+
Vectorize the matrix representation of a Lie group element.
|
|
12837
|
+
|
|
12838
|
+
The derivative H is the (N*N) x D Jacobian of this vectorization map. It is given by the formula H = (I_N ⊗ T) * P, where T is the N x N matrix of this group element, ⊗ is the Kronecker product, and P is the (N*N) x D matrix whose columns are the vectorized Lie algebra generators vec(Hat(e_j)). This can be computed efficiently via block-wise multiplication.
|
|
12839
|
+
"""
|
|
12722
12840
|
class SO3:
|
|
12723
12841
|
@staticmethod
|
|
12724
12842
|
def AxisAngle(axis: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], theta: float) -> SO3:
|
|
@@ -12727,6 +12845,9 @@ class SO3:
|
|
|
12727
12845
|
def ClosestTo(M: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> SO3:
|
|
12728
12846
|
...
|
|
12729
12847
|
@staticmethod
|
|
12848
|
+
def Dim() -> int:
|
|
12849
|
+
...
|
|
12850
|
+
@staticmethod
|
|
12730
12851
|
def Expmap(v: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SO3:
|
|
12731
12852
|
...
|
|
12732
12853
|
@staticmethod
|
|
@@ -12736,9 +12857,14 @@ class SO3:
|
|
|
12736
12857
|
def FromMatrix(R: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> SO3:
|
|
12737
12858
|
...
|
|
12738
12859
|
@staticmethod
|
|
12860
|
+
@typing.overload
|
|
12739
12861
|
def Hat(xi: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
|
|
12740
12862
|
...
|
|
12741
12863
|
@staticmethod
|
|
12864
|
+
@typing.overload
|
|
12865
|
+
def Hat(xi: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
|
|
12866
|
+
...
|
|
12867
|
+
@staticmethod
|
|
12742
12868
|
def Identity() -> SO3:
|
|
12743
12869
|
...
|
|
12744
12870
|
@staticmethod
|
|
@@ -12748,8 +12874,13 @@ class SO3:
|
|
|
12748
12874
|
def LogmapDerivative(omega: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
|
|
12749
12875
|
...
|
|
12750
12876
|
@staticmethod
|
|
12877
|
+
@typing.overload
|
|
12751
12878
|
def Vee(xi: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12752
12879
|
...
|
|
12880
|
+
@staticmethod
|
|
12881
|
+
@typing.overload
|
|
12882
|
+
def Vee(X: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12883
|
+
...
|
|
12753
12884
|
@typing.overload
|
|
12754
12885
|
def __init__(self) -> None:
|
|
12755
12886
|
...
|
|
@@ -12764,6 +12895,8 @@ class SO3:
|
|
|
12764
12895
|
...
|
|
12765
12896
|
def compose(self, R: SO3) -> SO3:
|
|
12766
12897
|
...
|
|
12898
|
+
def dim(self) -> int:
|
|
12899
|
+
...
|
|
12767
12900
|
def equals(self, other: SO3, tol: float) -> bool:
|
|
12768
12901
|
...
|
|
12769
12902
|
def expmap(self, v: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SO3:
|
|
@@ -12784,11 +12917,9 @@ class SO3:
|
|
|
12784
12917
|
...
|
|
12785
12918
|
class SO4:
|
|
12786
12919
|
@staticmethod
|
|
12787
|
-
|
|
12788
|
-
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SO4:
|
|
12920
|
+
def Dim() -> int:
|
|
12789
12921
|
...
|
|
12790
12922
|
@staticmethod
|
|
12791
|
-
@typing.overload
|
|
12792
12923
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SO4:
|
|
12793
12924
|
...
|
|
12794
12925
|
@staticmethod
|
|
@@ -12804,7 +12935,7 @@ class SO4:
|
|
|
12804
12935
|
def Logmap(p: SO4) -> numpy.ndarray[tuple[typing.Literal[6], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12805
12936
|
...
|
|
12806
12937
|
@staticmethod
|
|
12807
|
-
def Vee(
|
|
12938
|
+
def Vee(X: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[6], typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12808
12939
|
...
|
|
12809
12940
|
@typing.overload
|
|
12810
12941
|
def __init__(self) -> None:
|
|
@@ -12820,6 +12951,8 @@ class SO4:
|
|
|
12820
12951
|
...
|
|
12821
12952
|
def compose(self, Q: SO4) -> SO4:
|
|
12822
12953
|
...
|
|
12954
|
+
def dim(self) -> int:
|
|
12955
|
+
...
|
|
12823
12956
|
def equals(self, other: SO4, tol: float) -> bool:
|
|
12824
12957
|
...
|
|
12825
12958
|
def expmap(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SO4:
|
|
@@ -12840,6 +12973,9 @@ class SO4:
|
|
|
12840
12973
|
...
|
|
12841
12974
|
class SOn:
|
|
12842
12975
|
@staticmethod
|
|
12976
|
+
def Dim() -> int:
|
|
12977
|
+
...
|
|
12978
|
+
@staticmethod
|
|
12843
12979
|
@typing.overload
|
|
12844
12980
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SOn:
|
|
12845
12981
|
...
|
|
@@ -12863,7 +12999,7 @@ class SOn:
|
|
|
12863
12999
|
def Logmap(p: SOn) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12864
13000
|
...
|
|
12865
13001
|
@staticmethod
|
|
12866
|
-
def Vee(
|
|
13002
|
+
def Vee(X: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
12867
13003
|
...
|
|
12868
13004
|
def __getstate__(self) -> tuple:
|
|
12869
13005
|
...
|
|
@@ -12881,6 +13017,8 @@ class SOn:
|
|
|
12881
13017
|
...
|
|
12882
13018
|
def deserialize(self, serialized: str) -> None:
|
|
12883
13019
|
...
|
|
13020
|
+
def dim(self) -> int:
|
|
13021
|
+
...
|
|
12884
13022
|
def equals(self, other: SOn, tol: float) -> bool:
|
|
12885
13023
|
...
|
|
12886
13024
|
def expmap(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SOn:
|
|
@@ -13483,7 +13621,7 @@ class Similarity2:
|
|
|
13483
13621
|
@staticmethod
|
|
13484
13622
|
def Dim() -> int:
|
|
13485
13623
|
"""
|
|
13486
|
-
|
|
13624
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
13487
13625
|
"""
|
|
13488
13626
|
@staticmethod
|
|
13489
13627
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Similarity2:
|
|
@@ -13535,7 +13673,7 @@ class Similarity2:
|
|
|
13535
13673
|
...
|
|
13536
13674
|
def dim(self) -> int:
|
|
13537
13675
|
"""
|
|
13538
|
-
|
|
13676
|
+
Provided fixed dimension indim()if needed.
|
|
13539
13677
|
"""
|
|
13540
13678
|
def equals(self, sim: Similarity2, tol: float) -> bool:
|
|
13541
13679
|
"""
|
|
@@ -13609,7 +13747,7 @@ class Similarity3:
|
|
|
13609
13747
|
@staticmethod
|
|
13610
13748
|
def Dim() -> int:
|
|
13611
13749
|
"""
|
|
13612
|
-
|
|
13750
|
+
Static method to get the dimension (compile-time or dynamic)
|
|
13613
13751
|
"""
|
|
13614
13752
|
@staticmethod
|
|
13615
13753
|
def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Similarity3:
|
|
@@ -13666,7 +13804,7 @@ class Similarity3:
|
|
|
13666
13804
|
...
|
|
13667
13805
|
def dim(self) -> int:
|
|
13668
13806
|
"""
|
|
13669
|
-
|
|
13807
|
+
Provided fixed dimension indim()if needed.
|
|
13670
13808
|
"""
|
|
13671
13809
|
def equals(self, sim: Similarity3, tol: float) -> bool:
|
|
13672
13810
|
"""
|
|
@@ -14911,16 +15049,10 @@ class StereoCamera:
|
|
|
14911
15049
|
...
|
|
14912
15050
|
class StereoPoint2:
|
|
14913
15051
|
@staticmethod
|
|
14914
|
-
def Expmap(d: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> StereoPoint2:
|
|
14915
|
-
...
|
|
14916
|
-
@staticmethod
|
|
14917
15052
|
def Identity() -> StereoPoint2:
|
|
14918
15053
|
"""
|
|
14919
15054
|
identity
|
|
14920
15055
|
"""
|
|
14921
|
-
@staticmethod
|
|
14922
|
-
def Logmap(p: StereoPoint2) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
14923
|
-
...
|
|
14924
15056
|
def __add__(self, arg0: StereoPoint2) -> StereoPoint2:
|
|
14925
15057
|
...
|
|
14926
15058
|
def __getstate__(self) -> tuple:
|
|
@@ -14942,26 +15074,16 @@ class StereoPoint2:
|
|
|
14942
15074
|
...
|
|
14943
15075
|
def __sub__(self, arg0: StereoPoint2) -> StereoPoint2:
|
|
14944
15076
|
...
|
|
14945
|
-
def between(self, p2: StereoPoint2) -> StereoPoint2:
|
|
14946
|
-
...
|
|
14947
|
-
def compose(self, p1: StereoPoint2) -> StereoPoint2:
|
|
14948
|
-
...
|
|
14949
15077
|
def deserialize(self, serialized: str) -> None:
|
|
14950
15078
|
...
|
|
14951
15079
|
def equals(self, q: StereoPoint2, tol: float) -> bool:
|
|
14952
15080
|
"""
|
|
14953
15081
|
equals
|
|
14954
15082
|
"""
|
|
14955
|
-
def inverse(self) -> StereoPoint2:
|
|
14956
|
-
...
|
|
14957
|
-
def localCoordinates(self, t2: StereoPoint2) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
|
|
14958
|
-
...
|
|
14959
15083
|
def print(self, s: str = '') -> None:
|
|
14960
15084
|
"""
|
|
14961
15085
|
print
|
|
14962
15086
|
"""
|
|
14963
|
-
def retract(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> StereoPoint2:
|
|
14964
|
-
...
|
|
14965
15087
|
def serialize(self) -> str:
|
|
14966
15088
|
...
|
|
14967
15089
|
def uL(self) -> float:
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gtsam-develop
|
|
3
|
-
Version: 4.3a0.
|
|
3
|
+
Version: 4.3a0.dev202508021458
|
|
4
4
|
Summary: Georgia Tech Smoothing And Mapping library
|
|
5
5
|
Home-page: https://gtsam.org/
|
|
6
6
|
Author: Frank Dellaert et. al.
|
|
@@ -149,9 +149,9 @@ In GTSAM 4 a new and more efficient implementation, based on integrating on the
|
|
|
149
149
|
|
|
150
150
|
## Additional Information
|
|
151
151
|
|
|
152
|
-
There is a [
|
|
152
|
+
There is a [GTSAM users Google group](https://groups.google.com/forum/#!forum/gtsam-users) for general discussion.
|
|
153
153
|
|
|
154
|
-
Read about important [
|
|
154
|
+
Read about important [GTSAM-Concepts](doc/GTSAM-Concepts.md) here. A primer on GTSAM Expressions,
|
|
155
155
|
which support (superfast) automatic differentiation,
|
|
156
156
|
can be found on the [GTSAM wiki on BitBucket](https://bitbucket.org/gtborg/gtsam/wiki/Home).
|
|
157
157
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
gtsam/__init__.py,sha256=6G-WPnb_FMQEJXNDDAmrKrQPau7evtd5svhTmMqhYSI,2011
|
|
2
|
-
gtsam/__init__.pyi,sha256=
|
|
3
|
-
gtsam/gtsam.cpython-312-aarch64-linux-gnu.so,sha256=
|
|
2
|
+
gtsam/__init__.pyi,sha256=T8qhN2Wx22LkmYLriMWmwNhrjd92xR37uWjyuBpK-VA,44348
|
|
3
|
+
gtsam/gtsam.cpython-312-aarch64-linux-gnu.so,sha256=YmCoFygZzvksBpmPZZh1ADO-AmeSoBWc_sk8R5Ay-q8,22987441
|
|
4
4
|
gtsam/gtsfm.py,sha256=Udlkb6o5iUk69uxBkb88-W1GLfu1g8iSuZlLu-RRU0o,202
|
|
5
5
|
gtsam/imuBias.py,sha256=tz3bOCFl29iMycbGFoF-ud6kRsJYjA7DJ2RJoKPFRU8,209
|
|
6
6
|
gtsam/noiseModel.py,sha256=ybfIHa4sLXe78_k-Dib8nTaw34BRXqEDVtS2B9dzSO0,217
|
|
@@ -114,7 +114,7 @@ gtsam/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
114
114
|
gtsam/examples/gtsam_plotly.py,sha256=bTXAzZ3i_RunKrdGwFLsMsetYYleQrzDa50ekmrt_nQ,17073
|
|
115
115
|
gtsam/examples/plot_city10000.py,sha256=xsM1HFlcBn6TqEqQtZjlOl0WQI6tVZMgjtKdYIusbyE,3353
|
|
116
116
|
gtsam/examples/simulation.py,sha256=VAopcCosvdtXRy6xe547EDz73lXhLiYbPnFQZWjo2wU,5405
|
|
117
|
-
gtsam/gtsam/__init__.pyi,sha256=
|
|
117
|
+
gtsam/gtsam/__init__.pyi,sha256=QNuHb3aTIQgRVM-dwc8CMwigKvGqAGUIESgP4h35NyY,742250
|
|
118
118
|
gtsam/gtsam/gtsfm.pyi,sha256=Onoh4CRaSYIQ0FID0vBkZeV7ESIhc2fh4rJGgaPY-ug,702
|
|
119
119
|
gtsam/gtsam/imuBias.pyi,sha256=UqK0nLVICpnyw8B8_Q1GgX-qRd6atlCXT6OZNffZ1ao,2797
|
|
120
120
|
gtsam/gtsam/lago.pyi,sha256=-VzJaQ1ho25n7S4VjbugWmPNUtKeMsoESifX9K8l2Yo,551
|
|
@@ -247,17 +247,17 @@ gtsam_develop.libs/libboost_system-0f8f8a6a.so.1.87.0,sha256=vG7c-nCNDFk9UrmGaYj
|
|
|
247
247
|
gtsam_develop.libs/libboost_thread-e6217d1e.so.1.87.0,sha256=E2jFMpQ_xgH8mzebJPVAo9JKwZRF0cTUZx4q4aDVVKo,357745
|
|
248
248
|
gtsam_develop.libs/libboost_timer-c03b5720.so.1.87.0,sha256=C-jrqHaflQqKfg88hGhzFRof8w0WX5Lw-N56zLtD3CE,133249
|
|
249
249
|
gtsam_develop.libs/libcephes-gtsam-906422bf.so.1.0.0,sha256=aX4Q_2V2F1uwqCEdNkLhzOzgGWLf2cTeZn9OJeRcSvY,264913
|
|
250
|
-
gtsam_develop.libs/libgtsam-
|
|
251
|
-
gtsam_develop.libs/libgtsam_unstable-
|
|
250
|
+
gtsam_develop.libs/libgtsam-4bfd36cd.so.4.3a0.dev202508021458,sha256=7L0ylWWKVeespunWYsowYQAYxLVTdRhW77yRHyr_nB0,11275065
|
|
251
|
+
gtsam_develop.libs/libgtsam_unstable-c4df60a2.so.4.3a0.dev202508021458,sha256=BuC2kKDwQXmrEF9HXCzWSHBKxSZ9e3ZG4BeTMK-M94s,2585577
|
|
252
252
|
gtsam_develop.libs/libmetis-gtsam-b7310f3a.so,sha256=6Y9LebAEnr8OFCzKGxK2KADmtBGIq3XnzDpXF7jMX4A,546689
|
|
253
253
|
gtsam_unstable/__init__.py,sha256=FPc_oO5PFQZbrfpgugzQuI6LJfP1fzq82UQf_nuyGtk,30
|
|
254
|
-
gtsam_unstable/gtsam_unstable.cpython-312-aarch64-linux-gnu.so,sha256
|
|
254
|
+
gtsam_unstable/gtsam_unstable.cpython-312-aarch64-linux-gnu.so,sha256=-RAZ7oY0fb9DiU8V6Br52FV_pdJT9se9fiLSHCqqYhc,2715801
|
|
255
255
|
gtsam_unstable/examples/LocalizationExample.py,sha256=na47I1PQ_5Tenj8Wg2LBg3GaqP32O4yEb8jtRWKu0P8,2882
|
|
256
256
|
gtsam_unstable/examples/TimeOfArrivalExample.py,sha256=uky5ps4Ng83C0Q_s2EAc64Af6iztQjXXdj3ahifRXoI,3737
|
|
257
257
|
gtsam_unstable/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
258
258
|
gtsam_unstable/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
259
259
|
gtsam_unstable/tests/test_ProjectionFactorRollingShutter.py,sha256=t2l62uWoXfjrM8oH6ogV7M20WjTYKZ4CSferdurMIY0,2156
|
|
260
|
-
gtsam_develop-4.3a0.
|
|
261
|
-
gtsam_develop-4.3a0.
|
|
262
|
-
gtsam_develop-4.3a0.
|
|
263
|
-
gtsam_develop-4.3a0.
|
|
260
|
+
gtsam_develop-4.3a0.dev202508021458.dist-info/METADATA,sha256=klQnrdag_821o4Ul5Rbjx_PjwY48JPK_CLO9r1_KWYo,7767
|
|
261
|
+
gtsam_develop-4.3a0.dev202508021458.dist-info/WHEEL,sha256=29GglsfgOKni3MnvXwDNoeBjBZY4LOjl_HH3QTWETk4,153
|
|
262
|
+
gtsam_develop-4.3a0.dev202508021458.dist-info/top_level.txt,sha256=DOnqfd8DN2HpG5-V5t32TjFOB_vcYuyOWyRsgeoANEo,30
|
|
263
|
+
gtsam_develop-4.3a0.dev202508021458.dist-info/RECORD,,
|
|
index 34bbf5a..9f2f986 100755
|
|
|
Binary file
|
|
index d1f7da1..605dd74 100755
|
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
File without changes
|