@manycore/aholo-splat-transform 1.2.8 → 1.2.9

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.
Files changed (97) hide show
  1. package/CHANGELOG.md +120 -113
  2. package/README.md +39 -39
  3. package/THIRD_PARTY_LICENSES.txt +1373 -1373
  4. package/bin/cli.js +125 -118
  5. package/dist/SplatData.d.ts +67 -67
  6. package/dist/SplatData.js +167 -150
  7. package/dist/constant.d.ts +3 -3
  8. package/dist/constant.js +13 -13
  9. package/dist/file/IFile.d.ts +5 -5
  10. package/dist/file/IFile.js +1 -1
  11. package/dist/file/esz.d.ts +11 -11
  12. package/dist/file/esz.js +337 -322
  13. package/dist/file/index.d.ts +8 -8
  14. package/dist/file/index.js +7 -7
  15. package/dist/file/ksplat.d.ts +12 -12
  16. package/dist/file/ksplat.js +293 -231
  17. package/dist/file/lcc.d.ts +11 -11
  18. package/dist/file/lcc.js +161 -158
  19. package/dist/file/ply.d.ts +13 -13
  20. package/dist/file/ply.js +439 -390
  21. package/dist/file/sog.d.ts +80 -80
  22. package/dist/file/sog.js +525 -494
  23. package/dist/file/splat.d.ts +6 -6
  24. package/dist/file/splat.js +119 -99
  25. package/dist/file/spz.d.ts +11 -11
  26. package/dist/file/spz.js +597 -583
  27. package/dist/file/voxel.d.ts +43 -37
  28. package/dist/file/voxel.js +411 -280
  29. package/dist/index.d.ts +33 -33
  30. package/dist/index.js +54 -54
  31. package/dist/native/index.d.ts +54 -54
  32. package/dist/native/index.js +122 -129
  33. package/dist/native/utils.d.ts +1 -0
  34. package/dist/native/utils.js +54 -0
  35. package/dist/tasks/AutoChunkLodTask.d.ts +13 -13
  36. package/dist/tasks/AutoChunkLodTask.js +117 -117
  37. package/dist/tasks/AutoLodTask.d.ts +10 -10
  38. package/dist/tasks/AutoLodTask.js +20 -20
  39. package/dist/tasks/BaseTask.d.ts +15 -15
  40. package/dist/tasks/BaseTask.js +5 -5
  41. package/dist/tasks/FlexLodTask.d.ts +12 -12
  42. package/dist/tasks/FlexLodTask.js +54 -44
  43. package/dist/tasks/ModifyTask.d.ts +9 -9
  44. package/dist/tasks/ModifyTask.js +166 -156
  45. package/dist/tasks/ReadTask.d.ts +9 -9
  46. package/dist/tasks/ReadTask.js +29 -29
  47. package/dist/tasks/SkeletonLodTask.d.ts +10 -10
  48. package/dist/tasks/SkeletonLodTask.js +176 -156
  49. package/dist/tasks/VoxelTask.d.ts +35 -30
  50. package/dist/tasks/VoxelTask.js +40 -37
  51. package/dist/tasks/WriteTask.d.ts +12 -12
  52. package/dist/tasks/WriteTask.js +70 -70
  53. package/dist/utils/BufferReader.d.ts +12 -12
  54. package/dist/utils/BufferReader.js +45 -45
  55. package/dist/utils/Logger.d.ts +11 -11
  56. package/dist/utils/Logger.js +40 -40
  57. package/dist/utils/StreamChunkDecoder.d.ts +16 -16
  58. package/dist/utils/StreamChunkDecoder.js +31 -31
  59. package/dist/utils/index.d.ts +27 -27
  60. package/dist/utils/index.js +101 -101
  61. package/dist/utils/k-means.d.ts +4 -4
  62. package/dist/utils/k-means.js +340 -341
  63. package/dist/utils/math.d.ts +46 -46
  64. package/dist/utils/math.js +350 -346
  65. package/dist/utils/quantize-1d.d.ts +4 -4
  66. package/dist/utils/quantize-1d.js +164 -164
  67. package/dist/utils/sh-rotate.d.ts +2 -2
  68. package/dist/utils/sh-rotate.js +236 -175
  69. package/dist/utils/splat.d.ts +21 -21
  70. package/dist/utils/splat.js +397 -387
  71. package/dist/utils/voxel/binary.d.ts +8 -0
  72. package/dist/utils/voxel/binary.js +176 -0
  73. package/dist/utils/voxel/common.d.ts +178 -162
  74. package/dist/utils/voxel/common.js +1752 -1682
  75. package/dist/utils/voxel/coplanar-merge.d.ts +63 -63
  76. package/dist/utils/voxel/coplanar-merge.js +818 -819
  77. package/dist/utils/voxel/filter-cluster.d.ts +20 -0
  78. package/dist/utils/voxel/filter-cluster.js +628 -0
  79. package/dist/utils/voxel/gpu-dilation.d.ts +2 -2
  80. package/dist/utils/voxel/gpu-dilation.js +677 -656
  81. package/dist/utils/voxel/marching-cubes.d.ts +42 -42
  82. package/dist/utils/voxel/marching-cubes.js +1645 -1657
  83. package/dist/utils/voxel/mesh.d.ts +3 -3
  84. package/dist/utils/voxel/mesh.js +130 -130
  85. package/dist/utils/voxel/nav.d.ts +29 -29
  86. package/dist/utils/voxel/nav.js +1068 -1043
  87. package/dist/utils/voxel/postprocess.d.ts +23 -23
  88. package/dist/utils/voxel/postprocess.js +408 -375
  89. package/dist/utils/voxel/voxel-faces.d.ts +18 -18
  90. package/dist/utils/voxel/voxel-faces.js +662 -663
  91. package/dist/utils/voxel/voxelize.d.ts +34 -33
  92. package/dist/utils/voxel/voxelize.js +1208 -1193
  93. package/dist/utils/webgpu.d.ts +8 -8
  94. package/dist/utils/webgpu.js +122 -122
  95. package/package.json +37 -39
  96. package/dist/native/cpp/bin/linux/binding.node +0 -0
  97. package/dist/native/cpp/bin/windows/binding.node +0 -0
package/CHANGELOG.md CHANGED
@@ -1,113 +1,120 @@
1
- # ChangeLOG
2
-
3
- ## 1.2.8
4
-
5
- - 升级`typescript@^6.0.3`
6
- - `WebP`编码防止压缩纯透明数据
7
- - 支持`spz v4`输入和输出(默认还是v3)
8
- - 支持`esz`格式输入和输出
9
-
10
- ## 1.2.7
11
-
12
- - `ReadTask`支持`maxShDegree`参数
13
-
14
- ## 1.2.6
15
-
16
- - 体素化新增 cpu 实现以及部分算法优化
17
- - 体素化输出格式优化
18
-
19
- ## 1.2.5
20
-
21
- - 修复 SplatData.counts = 0 时构造 lod 异常
22
-
23
- ## 1.2.4
24
-
25
- - 支持生成体素碰撞体
26
- - avif 编解码支持多任务
27
- - 使用 glibc 构建 linux 版本
28
- - 修复小文件生成 lod chunk 失败
29
- - 优化 logger
30
-
31
- ## 1.2.3
32
-
33
- - 优化内部代码,移除无用实现
34
- - 修改 chunk-lod forward box 计算逻辑,匹配业务需求
35
-
36
- ## 1.2.2
37
-
38
- - 添加`libavif`
39
- - 整理文件结构,删除 IData 结构
40
- - 修复 modify 和 chunk-lod 冲突造成删除失败
41
-
42
- ## 1.2.1
43
-
44
- - 支持`GPU`设备选择
45
- - write 支持 MortonSort 用以提升压缩率
46
-
47
- ## 1.2.0
48
-
49
- - 重构 cli 命令
50
- - 底层修改成 pipeline task 支持组合,减少文件保存数量
51
- - 过程计算采用双精度,移除无效代码
52
- - 增加`getOrCreateDevice`用于共享 GPU 设备
53
- - 改进`auto-lod`使其更接近目标值
54
- - 优化输出
55
-
56
- ## 1.1.2
57
-
58
- - 加入 nanogs 检索算法
59
- - 增加 --max-chunk-counts 参数
60
-
61
- ## 1.1.1
62
-
63
- - 优化 lod 参数,防止出现长时间执行
64
-
65
- ## 1.1.0
66
-
67
- - 修改 cli 调用参数
68
- - 优化 lod:auto 时内存无法及时释放导致 oom 的情况
69
- - 新增 lod:auto-chunk 命令
70
- - 多级 lod 支持指数步进
71
- - auto-chunk 优化输出结果
72
-
73
- ## 1.0.8
74
-
75
- - 优化高斯空间分割
76
- - 优化高斯包围盒,移除偏移过大的数据
77
- - 修复`webP`有损编码`quality`读取错误的问题
78
- - 修复 lod 命令异常
79
- - 优化`cluster_average`并行粒度
80
-
81
- ## 1.0.7
82
-
83
- - 支持 SOG 格式输出
84
-
85
- ## 1.0.6
86
-
87
- - 优化 lod 内置参数
88
-
89
- ## 1.0.5
90
-
91
- - 优化 lod 内置参数
92
-
93
- ## 1.0.4
94
-
95
- - 修复`create`解析`deletedIndicesBitMap`异常
96
-
97
- ## 1.0.3
98
-
99
- - 优化`autoLod`效果和实现
100
-
101
- ## 1.0.2
102
-
103
- - 支持流式解析和写入,减少内存占用
104
- - 支持`autoLod`对 3dgs 生成 lod 结果
105
- - `splat-transform lod --type auto --ratio 0.3 simiao.ply simiao-lod.spz`
106
-
107
- ## 1.0.1
108
-
109
- - 新增`bin.est`防止和`@playcanvas/splat-transform`一起使用时出现冲突
110
-
111
- ## 1.0.0
112
-
113
- - 发包正式包
1
+ # ChangeLOG
2
+
3
+ ## 1.2.9
4
+
5
+ - 改进编码风格开启`verbatimModuleSyntax` & `isolatedModules`,迁移至`OXC`
6
+ - 改进native模块加载方式
7
+ - 体素输出更新版本号至1.2,新增支持 gzip 压缩以及一种紧凑的编码方式, 默认均不启用
8
+ - 体素输出默认启用 `filterCluster` 预过滤
9
+
10
+ ## 1.2.8
11
+
12
+ - 升级`typescript@^6.0.3`
13
+ - `WebP`编码防止压缩纯透明数据
14
+ - 支持`spz v4`输入和输出(默认还是v3)
15
+ - 支持`esz`格式输入和输出
16
+
17
+ ## 1.2.7
18
+
19
+ - `ReadTask`支持`maxShDegree`参数
20
+
21
+ ## 1.2.6
22
+
23
+ - 体素化新增 cpu 实现以及部分算法优化
24
+ - 体素化输出格式优化
25
+
26
+ ## 1.2.5
27
+
28
+ - 修复 SplatData.counts = 0 时构造 lod 异常
29
+
30
+ ## 1.2.4
31
+
32
+ - 支持生成体素碰撞体
33
+ - avif 编解码支持多任务
34
+ - 使用 glibc 构建 linux 版本
35
+ - 修复小文件生成 lod chunk 失败
36
+ - 优化 logger
37
+
38
+ ## 1.2.3
39
+
40
+ - 优化内部代码,移除无用实现
41
+ - 修改 chunk-lod 的 forward box 计算逻辑,匹配业务需求
42
+
43
+ ## 1.2.2
44
+
45
+ - 添加`libavif`
46
+ - 整理文件结构,删除 IData 结构
47
+ - 修复 modify 和 chunk-lod 冲突造成删除失败
48
+
49
+ ## 1.2.1
50
+
51
+ - 支持`GPU`设备选择
52
+ - write 支持 MortonSort 用以提升压缩率
53
+
54
+ ## 1.2.0
55
+
56
+ - 重构 cli 命令
57
+ - 底层修改成 pipeline task 支持组合,减少文件保存数量
58
+ - 过程计算采用双精度,移除无效代码
59
+ - 增加`getOrCreateDevice`用于共享 GPU 设备
60
+ - 改进`auto-lod`使其更接近目标值
61
+ - 优化输出
62
+
63
+ ## 1.1.2
64
+
65
+ - 加入 nanogs 检索算法
66
+ - 增加 --max-chunk-counts 参数
67
+
68
+ ## 1.1.1
69
+
70
+ - 优化 lod 参数,防止出现长时间执行
71
+
72
+ ## 1.1.0
73
+
74
+ - 修改 cli 调用参数
75
+ - 优化 lod:auto 时内存无法及时释放导致 oom 的情况
76
+ - 新增 lod:auto-chunk 命令
77
+ - 多级 lod 支持指数步进
78
+ - auto-chunk 优化输出结果
79
+
80
+ ## 1.0.8
81
+
82
+ - 优化高斯空间分割
83
+ - 优化高斯包围盒,移除偏移过大的数据
84
+ - 修复`webP`有损编码`quality`读取错误的问题
85
+ - 修复 lod 命令异常
86
+ - 优化`cluster_average`并行粒度
87
+
88
+ ## 1.0.7
89
+
90
+ - 支持 SOG 格式输出
91
+
92
+ ## 1.0.6
93
+
94
+ - 优化 lod 内置参数
95
+
96
+ ## 1.0.5
97
+
98
+ - 优化 lod 内置参数
99
+
100
+ ## 1.0.4
101
+
102
+ - 修复`create`解析`deletedIndicesBitMap`异常
103
+
104
+ ## 1.0.3
105
+
106
+ - 优化`autoLod`效果和实现
107
+
108
+ ## 1.0.2
109
+
110
+ - 支持流式解析和写入,减少内存占用
111
+ - 支持`autoLod`对 3dgs 生成 lod 结果
112
+ - `splat-transform lod --type auto --ratio 0.3 simiao.ply simiao-lod.spz`
113
+
114
+ ## 1.0.1
115
+
116
+ - 新增`bin.est`防止和`@playcanvas/splat-transform`一起使用时出现冲突
117
+
118
+ ## 1.0.0
119
+
120
+ - 发包正式包
package/README.md CHANGED
@@ -1,39 +1,39 @@
1
- # splat-transform
2
-
3
- A 3DGS modifier used by aholo
4
-
5
- ## Requirement
6
-
7
- - node >= 22.22.1
8
- - system
9
- - windows: windows 22H2+, x86_64, D3D12 or Vulkan compatible GPU(When use GPU features, dedicated GPU for better performance)
10
- - linux: x86_64, glibc >= 2.34, libstdc++ >= 3.4.30, Vulkan compatible GPU(When use GPU features, dedicated GPU for better performance)
11
- - osx: Not Supported
12
-
13
- ## Usage
14
-
15
- ```bash
16
- npm install @manycore/aholo-splat-transform -g
17
-
18
- splat-transform --help
19
-
20
- Execute a task pipeline from configuration file
21
-
22
- Arguments:
23
- path pipeline config filepath
24
-
25
- Options:
26
- -V, --version output the version number
27
- -h, --help display help for command
28
-
29
- Commands:
30
- create <input> <output> Merge & Transform gaussian splat file
31
- lod:loading [options] <input> <output> Generate loading-lod for gaussian splat file
32
- lod:flex [options] <input> <output> Generate flex-lod for gaussian splat file
33
- lod:auto [options] <input> <output> Generate auto-lod for gaussian splat file
34
- lod:auto-chunk [options] <input> <output> Generate auto-chunk-lod for gaussian splat file
35
- ```
36
-
37
- ## CopyRight
38
-
39
- [CopyRight](./COPYRIGHT.md)
1
+ # splat-transform
2
+
3
+ A 3DGS modifier used by aholo
4
+
5
+ ## Requirement
6
+
7
+ - node >= 22.22.1
8
+ - system
9
+ - windows: windows 22H2+, x86_64, D3D12 or Vulkan compatible GPU(When use GPU features, dedicated GPU for better performance)
10
+ - linux: x86_64, glibc >= 2.34, libstdc++ >= 3.4.30, Vulkan compatible GPU(When use GPU features, dedicated GPU for better performance)
11
+ - osx: Not Supported
12
+
13
+ ## Usage
14
+
15
+ ```bash
16
+ npm install @manycore/aholo-splat-transform -g
17
+
18
+ splat-transform --help
19
+
20
+ Execute a task pipeline from configuration file
21
+
22
+ Arguments:
23
+ path pipeline config filepath
24
+
25
+ Options:
26
+ -V, --version output the version number
27
+ -h, --help display help for command
28
+
29
+ Commands:
30
+ create <input> <output> Merge & Transform gaussian splat file
31
+ lod:loading [options] <input> <output> Generate loading-lod for gaussian splat file
32
+ lod:flex [options] <input> <output> Generate flex-lod for gaussian splat file
33
+ lod:auto [options] <input> <output> Generate auto-lod for gaussian splat file
34
+ lod:auto-chunk [options] <input> <output> Generate auto-chunk-lod for gaussian splat file
35
+ ```
36
+
37
+ ## CopyRight
38
+
39
+ [CopyRight](./COPYRIGHT.md)