Experimental SHARP 1024 Android ONNX (folded)
For testing only.
This is an experimental local adaptation of the released Apple SHARP checkpoint
sharp_2572gikvuh.pt. It is not a model trained, validated, or released by Apple.
- Contract:
sharp-fixed-1024-v1
- Input: float32 image
[1, 3, 1024, 1024] and disparity factor [1]
- Output: 524,288 Gaussians (
2 x 512 x 512)
- Precision: mixed FP16 model body with FP32 boundaries
Download bundle
Three-stage graph-only pipeline patch
sharp-android-pipeline-1024-3stage-v1.zip
- bytes:
38,807,791
- SHA-256:
dbc4ed059b7577760a5bfcf12414e766438c0429196be1910548c243e2b58053
For testing only. This ZIP has exactly four uncompressed entries: its manifest
first, followed by stage 1, stage 2, and stage 3 ONNX graphs. It does not contain
the 1.306 GB sidecar. The manifest requires the existing
sharp-adapted-1024-mixed-fp16-folded.onnx.data file (1,306,759,168 bytes,
SHA-256 2b2dcb725647381ff82efc9a2e90dfddf4d0e6ad73d32729617dfcf7dc693c18).
The graphs replace 10 shared residual Relu nodes with Max(x, fp16 zero) and
passed the full ONNX checker. On host ORT 1.25 CPU with optimizations disabled,
all 12 stage-boundary tensors matched the monolithic graph byte-for-byte, but
the five final tensors did not; this patch is not byte-identical to the
monolithic execution. A packed-scene point diagnostic on one photo retained the
same 130,818 source records and measured about 31.2 dB PSNR, with rare larger
attribute outliers, so that result is conditional rather than exact-quality
proof.
An SM-S721N probe using stock ORT 1.25, XNNPACK, and NO_OPT ran all three
stages in 98.118 seconds with correct output shapes and only finite values. The
probe used a deterministic gradient input; it proves runtime feasibility, not
monolithic equivalence or complete app visual quality.
sharp-android-model-1024-folded-conv-output-names-v2.zip
- bytes:
1,346,019,663
- SHA-256:
4a41dc6359e9a78b7e829e80f852fa2dfcc0b2e59a4f0fa4d08d56dd50d66242
- current metadata-only XNNPACK diagnostic-name experiment
sharp-android-model-1024-folded.zip
- bytes:
1,346,019,780
- SHA-256:
1d8433d40ad9183704254bd0c648f30e7db7b9d2d2b39de9098f7ac93eb93552
- previous folded 1024 graph
Each bundle contains exactly one manifest and its two ONNX artifacts, stored
without ZIP compression.
Graph-only patch for an existing v1 sidecar
sharp-adapted-1024-mixed-fp16-folded-conv-output-names.onnx
- bytes:
39,258,704
- SHA-256:
cbb29c8e4df76e18e42618fc21eeac3a8e87450c7fef2d294531ebd193102dbb
This standalone graph is a delta-migration artifact for an installation that
already has the previous v1 sidecar named
sharp-adapted-1024-mixed-fp16-folded.onnx.data (SHA-256
2b2dcb725647381ff82efc9a2e90dfddf4d0e6ad73d32729617dfcf7dc693c18).
Place the graph and that existing sidecar in the same directory; the graph's
external-data metadata intentionally refers to the existing v1 sidecar name.
Do not download or duplicate the 1.306 GB sidecar when that exact hash is
already present.
This graph-only patch has the same metadata-only 84-Conv name alignment as the
v2 bundle. Model math and weight bytes are unchanged, and Android ARM64 remains
unverified.
Adaptation and graph optimization
The local 1024 adaptation changes the two ViT positional grids from 24x24 to
16x16 using bicubic antialiased resampling, changes the SPN patch size from 384
to 256, and remaps SPN merge padding from 3/6 to 2/4. It was not retrained.
The folded graph additionally replaces 192 constant-weight Transpose nodes
with pre-transposed MatMul initializers. This offline transformation is
mathematically lossless: it changes constant storage layout and graph structure,
not the intended model computation.
Conv diagnostic-name alignment candidate
The v2 candidate changes only the diagnostic NodeProto.name fields of 84
Conv nodes. Each name is aligned with that node's existing first output tensor
name (for example, node_conv2d_66 becomes conv2d_66). This makes every such
diagnostic name also identify a valid produced tensor for an XNNPACK graph-rewrite
experiment.
No input or output edge, operator attribute, tensor shape, initializer, model
calculation, or weight byte is changed. The external-data artifact is byte-for-byte
identical to the previous folded 1024 release.
The exact v2 graph/data pair passed the full ONNX checker, an ONNX Runtime 1.25
CPU ORT_ENABLE_ALL session, and an Android x86_64 ONNX Runtime 1.25 XNNPACK
ALL_OPT session-creation smoke test. Android ARM64 has not been verified, so
this remains an experimental candidate rather than evidence that the ARM-specific
failure is fixed.
Reviewed artifacts
Current v2 candidate (internal bundle names):
sharp-adapted-1024-mixed-fp16-folded.onnx
- bytes:
39,258,704
- SHA-256:
cbb29c8e4df76e18e42618fc21eeac3a8e87450c7fef2d294531ebd193102dbb
sharp-adapted-1024-mixed-fp16-folded.onnx.data
- bytes:
1,306,759,168
- SHA-256:
2b2dcb725647381ff82efc9a2e90dfddf4d0e6ad73d32729617dfcf7dc693c18
Previous folded graph:
sharp-adapted-1024-mixed-fp16-folded.onnx
- bytes:
39,259,124
- SHA-256:
05796cd43b94e214fba8d355de6fa7e269d373fce98c7c4d4548b9771315bb08
sharp-adapted-1024-mixed-fp16-folded.onnx.data
- bytes:
1,306,759,168
- SHA-256:
2b2dcb725647381ff82efc9a2e90dfddf4d0e6ad73d32729617dfcf7dc693c18
The adaptation and graph folding do not replace or relax the released
checkpoint's license terms. Review those terms before redistribution or use.