Buckets:
| """cwm3/baselines_dms/omz_convert.py — reproduce the ONE locally converted OMZ IR: open-closed-eye-0001 (an OMZ *public* model | |
| distributed as ONNX + PyTorch source, so no pre-built FP16 IR exists on storage.openvinotoolkit.org; checked 2026-09-14 over the | |
| full filetree.json — 0 FP16 directories for it in any release, while the six Intel models are pre-built under 2023.0/models_bin/1). | |
| Conversion follows models/public/open-closed-eye-0001/model.yml (OMZ master 6697dead54ed1cdd664b0313189c2cb52ee6335e): | |
| --mean_values=[127,127,127] --scale_values=[255,255,255] --output=19 (19 is already the ONNX graph output) | |
| implemented with openvino.preprocess.PrePostProcessor (layout NCHW) + ov.save_model(compress_to_fp16=True). | |
| Deterministic: two saves give byte-identical xml/bin (checked). Input `input.1` [1,3,32,32] float32 in 0..255; output `19` [1,2,1,1] | |
| softmax over (open, closed) — class order per OMZ README: 0 = open, 1 = closed. | |
| python -m baselines_dms.omz_convert # rewrites weights/omz_open_closed_eye_0001/open-closed-eye-0001.{xml,bin} | |
| """ | |
| from __future__ import annotations | |
| import hashlib | |
| import sys | |
| from pathlib import Path | |
| HERE = Path(__file__).resolve().parent | |
| SRC = HERE / "weights" / "omz_open_closed_eye_0001" / "src" / "open_closed_eye.onnx" | |
| OUT = HERE / "weights" / "omz_open_closed_eye_0001" / "open-closed-eye-0001.xml" | |
| ONNX_SHA384 = "2615bce53b55620c629db21b043057600ccc53466f053c0a8277c43577c2db21e48f330cf9b15213016d17cddb8cba27" # model.yml checksum | |
| def convert(src: Path = SRC, out: Path = OUT) -> tuple[Path, Path]: | |
| import openvino as ov | |
| from openvino.preprocess import PrePostProcessor | |
| assert hashlib.sha384(src.read_bytes()).hexdigest() == ONNX_SHA384, "open_closed_eye.onnx does not match the OMZ model.yml checksum" | |
| core = ov.Core() | |
| m = core.read_model(str(src)) | |
| ppp = PrePostProcessor(m) | |
| ppp.input().model().set_layout(ov.Layout("NCHW")) | |
| ppp.input().preprocess().mean([127.0, 127.0, 127.0]).scale([255.0, 255.0, 255.0]) | |
| m = ppp.build() | |
| out.parent.mkdir(parents=True, exist_ok=True) | |
| ov.save_model(m, str(out), compress_to_fp16=True) | |
| return out, out.with_suffix(".bin") | |
| if __name__ == "__main__": | |
| xml, binf = convert() | |
| for p in (xml, binf): | |
| print(p.name, p.stat().st_size, hashlib.sha256(p.read_bytes()).hexdigest()) | |
| sys.exit(0) | |
Xet Storage Details
- Size:
- 2.36 kB
- Xet hash:
- 220e97d2f4804f5cf602730086ee6f4e00ff19c1d98e835ebc859522958373c2
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.