Spaces:
Running
Running
File size: 1,283 Bytes
31c7d49 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | 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
|