Skip to content

Operations using voxelization fail on large (volume) files #253

Description

@ayamflow

When generating a voxel, or using the --filter-floaters flag, splat-transform fails during the voxelization step with files covering a large area. You can see below my example scene is parsed as 896m x 427m x 789m requiring 2.42 trillion voxels.

I'm sure I could play with the voxel/floaters settings to not have so many voxels, until it fails again.
My expectation would be that the tool caps to a maximum non-failing number of voxels - or another suggestion ?

Possibly related to #217

dev: splat-transform v2.1.0 (e1c8619)
dev: ▸ [1/2] Input temp.ply
dev:   ▸ Reading
dev:     ▸ decoding [####################] 0.513s
dev:   · 1.92M gaussians · 0 SH bands · 102.5MB
dev:   ▸ Filter floaters
dev:     · scene: 896m x 427m x 789m, grid: 17920 x 8552 x 15780 voxels (2.42T) @ 5cm
dev:     ▸ Voxelizing [####################] 5m52.574s
dev:     ✗ RangeError: Set maximum size exceeded
dev:     at Set.add (<anonymous>)
dev:     at buildBlockLookup (file://<workingDir>/node_modules/.pnpm/@playcanvas+splat-transform@2.1.0_playcanvas@2.18.1/node_modules/@playcanvas/splat-transform/dist/cli.mjs:26990:18)
dev:     at filterFloaters (file://workingDir/node_modules/.pnpm/@playcanvas+splat-transform@2.1.0_playcanvas@2.18.1/node_modules/@playcanvas/splat-transform/dist/cli.mjs:27408:24)
dev:     at async processDataTable (file://workingDir/node_modules/.pnpm/@playcanvas+splat-transform@2.1.0_playcanvas@2.18.1/node_modules/@playcanvas/splat-transform/dist/cli.mjs:29019:26)
dev:     at async main (file://workingDir/node_modules/.pnpm/@playcanvas+splat-transform@2.1.0_playcanvas@2.18.1/node_modules/@playcanvas/splat-transform/dist/cli.mjs:30136:37)
dev:     at async file://workingDir/node_modules/.pnpm/@playcanvas+splat-transform@2.1.0_playcanvas@2.18.1/node_modules/@playcanvas/splat-transform/bin/cli.mjs:5:1
dev:     failed in 6m9.507s
dev:   failed in 6m10.034s
dev: ✗ failed in 6m10.041s  [peak 8.65GB]
dev:
dev:     at genericNodeError (node:internal/errors:983:15)
dev:     at wrappedFn (node:internal/errors:537:14)
dev:     at ChildProcess.exithandler (node:child_process:417:12)
dev:     at ChildProcess.emit (node:events:519:28)
dev:     at maybeClose (node:internal/child_process:1101:16)
dev:     at ChildProcess._handle.onexit (node:internal/child_process:304:5) {
dev:   code: 1,
dev:   killed: false,
dev:   signal: null,
dev:   cmd: 'splat-transform temp.ply --filter-floaters --filter-cluster 1,0.1,0.1 temp_filtered.ply'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions