ykcheungab cde832eaca tools: delegate documentation checks to the workspace doc gate
`tools/lint_gate.py` now also runs `D:\orisys_ws\scripts\doc_lint.py`, the
workspace's single documentation gate, alongside Ruff:

- changed Markdown by default, the whole corpus under --all
- `--files` names Python files explicitly, so it skips the doc gate
- `--no-docs` opts out
- the docs verdict is reported even when Ruff is missing, so a missing
  linter cannot hide it (the exit code still signals the environment problem)

The doc rules live in exactly one place on purpose: this file is duplicated
across three repositories and had already drifted, so adding a fourth copy of
lint logic would repeat the mistake. Failing checks are the documentation
budget, inventory membership, a declared kind, unresolved mojibake, paragraph
walls, and duplicate explanations across documents. Emphasis density is
advisory only - measured as a continuum from 12% to 48% across the corpus, so
no threshold separates signal from noise.

Pre-existing oversized documents are recorded as budget-exempt with a written
reason in D:\orisys_ws\docs\inventory.json, and pre-existing findings are
baselined there, so this gate is red only for new regression.

With Ruff unavailable in the current environment the doc half still reports,
which is how it was verified.
2026-09-30 16:12:30 +08:00
2026-01-30 20:04:23 +08:00
2026-08-23 15:53:02 +08:00
2026-09-27 19:21:55 +08:00
2026-09-20 11:46:03 +08:00
2026-09-27 19:21:55 +08:00
2026-09-27 19:21:55 +08:00
2026-09-12 15:49:28 +08:00
2026-08-03 14:20:30 +08:00
2026-09-27 19:21:55 +08:00

Orisys SDK

Orisys SDK is a Python toolkit for optical tactile sensing. It provides image capture, stitching, dense optical flow, Helmholtz-Hodge decomposition, contact/depth estimation, and several runnable examples for camera and video-based workflows.

PyPI: https://pypi.org/project/orisys/

Repository Layout

  • src/orisys/: installable SDK package
  • config/: default and lab/runtime JSON configurations
  • examples/: runnable demos (basic_pipeline.py, mini_pipeline.py, finger_pipeline*.py) plus shared gui/, pipeline/, viz/
  • scripts/: maintenance, calibration, packaging, and demo scripts
  • tools/: non-package tooling such as patch-generation utilities
  • tests/: automated pytest suite
  • docs/: usage and API documentation

Quick Start

1. Create an environment

conda create -n orisys python=3.10
conda activate orisys

2. Install the SDK in editable mode

pip install -e .

Optional GPU extras:

pip install -e .[cuda12]

or

pip install -e .[cuda13]

3. Run tests

pytest

4. Run an example

ORY-BOX:

python examples/basic_pipeline.py -v 0 -c box

ORY-MINI:

python examples/mini_pipeline.py -v 0 -c mini

ORY-FINGER:

python examples/finger_pipeline.py --camera_id 0 --config finger

Run commands from the repository root.

Configuration

The canonical configuration files now live in the repo-level config/ folder. The package loader orisys.configs resolves configs from:

  1. an explicit JSON file path
  2. a config file stem under config/ (for example box, mini, finger)
  3. a product alias such as dd02 -> dd02-ov
  4. a backward-compatible JSON "name" match, such as "prototype"

Examples:

import orisys

sensor = orisys.Sensor(0, config_name="box")
cfg = orisys.export_config("box", "./config/exported_config.json")

Examples and Tools

  • Example entry points: examples/README.md
  • User documentation: docs/get_started.md
  • Build launcher: python build/run.py (see build/README.md)
  • Manylinux / PyPI binary wheel: docs/publishing.md
  • Specialized utilities: tools/

Publishing (Linux manylinux)

To build PyPI-compliant CPython 3.10/3.11/3.12 Linux wheels from Windows Docker Desktop:

python build/run.py manylinux

Upload candidates land in dist/repaired/. Full TestPyPI → PyPI steps: docs/publishing.md.

Notes for Collaborators

  • Generated build outputs such as build/, dist/, and SDK/ are intentionally ignored.
  • Large or generated tooling outputs should stay under ignored output folders rather than be committed.
  • If you add new images or arrays that should be versioned, review .gitignore first.
  • Never commit PyPI / TestPyPI API tokens.
S
Description
ORY系列传感器 Python/C++ SDK 内部开发仓库。包含传感器配置、数据读取、标定工具及示例代码。面向算法联调与客户集成测试,当前仅内部使用。
Readme 392 MiB
Languages
Python 99.3%
PowerShell 0.3%
Shell 0.2%
Batchfile 0.2%