Spaces:
Running
Running
| export interface WorkerStatusMessage { | |
| type: 'status' | |
| requestId?: string | |
| stage: 'idle' | 'loading-model' | 'running-inference' | 'filtering' | 'building-ply' | |
| message: string | |
| progress?: number | |
| } | |
| export interface LoadModelRequestPayload { | |
| modelUrl: string | |
| } | |
| export interface RunInferenceRequestPayload { | |
| modelUrl: string | |
| imageTensor: ArrayBufferLike | |
| imageWidth: number | |
| imageHeight: number | |
| focalPx: number | |
| disparityFactor: number | |
| opacityThreshold: number | |
| maxGaussians: number | |
| } | |
| export interface WorkerInferenceResult { | |
| plyBuffer: ArrayBufferLike | |
| selectedGaussians: number | |
| totalGaussians: number | |
| outputName?: string | |
| } | |
| export type WorkerRequest = | |
| | { | |
| type: 'load-model' | |
| requestId: string | |
| payload: LoadModelRequestPayload | |
| } | |
| | { | |
| type: 'run-inference' | |
| requestId: string | |
| payload: RunInferenceRequestPayload | |
| } | |
| export type WorkerReply = | |
| | { | |
| type: 'reply' | |
| requestId: string | |
| ok: true | |
| result: { modelUrl: string } | |
| } | |
| | { | |
| type: 'reply' | |
| requestId: string | |
| ok: true | |
| result: WorkerInferenceResult | |
| } | |
| | { | |
| type: 'reply' | |
| requestId: string | |
| ok: false | |
| error: string | |
| } | |
| export type WorkerMessage = WorkerStatusMessage | WorkerReply | |