Physics Software Sensors — 物理実験ソフトウェアセンサーライブラリ

これは何か?

物理実験のための再利用可能なソフトウェアセンサー基盤です。 カメラフレーム、画面ピクセル、画像処理による観測を、来歴を追跡できる FramePacket と SensorEvent に統一し、将来の物理実験プロジェクトから再利用できるようにします。

Sensor の出力を処理する再利用可能な補助処理ツールも収録します。これらのツールを、新しい直接観測を行う Sensor とは扱いません。

新しい実験アプリケーションではなく、長期的に保守する基盤ライブラリです。ソースプロジェクトは変更せず、過去の実装と利用状況の事実源として維持します。

物理実験プロジェクト
      ↓
再利用可能な成熟機能
      ↓
Physics Software Sensors
      ↓
将来の物理実験プロジェクト

成熟した機能を adapter として段階的に抽出し、固定 commit に対するテスト、文書化、ベンチマークを経て再利用します。ピクセル位置、OCR 文字列、信頼度、バウンディングボックスは直接観測であり、自動的に校正済み物理量になるわけではありません。

物理的/ソフトウェア source
        ↓
Capture Sensor → FramePacket
        ↓
Processor Sensor → SensorEvent / スカラー測定値
        ↓
補助処理ツール
        ↓
物理実験アプリケーション

例:screen.capture → ocr.number → vector.compose-3d → 3次元合成ベクトル。最後の段階は既存のスカラー測定値を再構成するもので、新しい量を観測しません。

言語アクセス

repository の 3 言語コンテンツ完全性:PASS。English、简体中文、日本語の Markdown はいずれも完全な source document として維持されています。地域によって GitHub の file view が一時的に失敗しても、repository のトップから次の概要を確認できます。

Project status

7 Software Sensor · 1 Companion Processing Tool · 再利用可能な公開 capability 全 8 項 · English / 简体中文 / 日本語

7 個の adapter と本ツールはすべて experimental です。公開 v0.6.0 Release には 7 個の Sensor Bundle が含まれ、本ツールは未リリースです。最初の E5 downstream reuse は完了していますが、すべての Sensor が validated であるとは主張しません。

センサーカタログ

Sensor 用途 言語 成熟度 エビデンス Example Download
camera.capture 時刻・バックエンド情報付きカメラフレーム Python experimental E1 example bundle
screen.capture ユーザー許可済みの画面ピクセル TypeScript experimental E1 example bundle
ocr.number ROI から数値を OCR TypeScript experimental E3 example bundle
tracker.color-marker HSV・輪郭によるカラーマーカー追跡 Python experimental E2 example bundle
tracker.spot-centroid 光スポットの輝度加重重心 Python experimental E5 example bundle
tracker.template ROI 初期化型の単一物体追跡 Python experimental E3 example bundle
tracker.yolo 複数対象の検出・追跡 adapter Python experimental E2 example bundle

詳細はセンサーカタログを参照してください。エビデンスレベルと成熟度は別の概念です。

Companion Processing Tools

Tool 用途 言語 状態 Example 文書
vector.compose-3d スカラー成分から3次元ベクトルを合成・再構成 TypeScript experimental Web demo Tool Page

詳細は Companion Tool Catalogを参照してください。Companion Tool は拡張可能な測定処理 layer であり、Sensor 数には含めません。

クイックスタート

Getting Started を読み、v0.6.0 Experimental Release から Python wheel または TypeScript tgz を選びます。PyPI と npm registry には公開していません。

python -m pip install './physics_software_sensors-0.5.0-py3-none-any.whl[classical-trackers]'
npm install ./physics-software-sensors-core-0.3.0.tgz

ダウンロード

Release には Python wheel、TypeScript tgz、7 個の Sensor Bundle、release-manifest.json、SHA256SUMS が含まれます。Sensor Bundle は文書・example 用であり、共通 core を複製しません。Downloading Sensors と Installation を参照してください。

Capability Showcase

Physics Software Sensors:7 個の Software Sensor と 1 個の Companion Processing Tool

standalone、synthetic、replay の代表的なデモを 1 枚にまとめています。エビデンスレベルは capability ごとに異なり、YOLO tile は recorded detector replay であって実 YOLO inference ではありません。画像は補助表示であり、配信できない場合も下記のテキストリンクから全項目へ移動できます。

Camera Capture · Screen Capture · Number OCR · Color Marker · 光スポット重心 · Template / Single-object Tracker · YOLO Tracker · 3次元ベクトル合成

範囲:7/7 Software Sensor + 1/1 Companion Processing Tool = 再利用可能な公開 capability 8/8 項。8 枚の詳細 demo とエビデンス境界は、3 言語の Capability Showcase に掲載しています。

基本原則

  1. ソースプロジェクトを壊さず、暗黙に書き換えない。
  2. repository、完全な commit SHA、path、symbol まで来歴を固定する。
  3. 生の観測値を保存し、下流の導出値と区別する。
  4. 時刻、座標、単位、信頼度、不確かさを明示する。
  5. エビデンス、成熟度、ライセンス、モデル境界を保守的に記述する。

長期 workflow

新しい物理実験 project
      ↓
再利用可能な成熟機能
      ↓
Sensor Intake
      ↓
Physics Software Sensors
      ↓
Experimental / Validation / Release
      ↓
将来の物理実験 project

今後の作業は Sensor Intake、Add New Sensor recipe、または既存 Sensor の maintenance track から開始し、新しい Phase を自動的に作りません。最初の抽出から再利用までの完全な cycle は最初の完全な再利用ループに記録しています。

ドキュメント

開発と検証

python3 tools/validate_repo.py
pytest
npm --prefix packages/typescript test

CONTRIBUTING.md を参照してください。新しい Sensor または大規模機能のみ正式 intake が必要で、通常の bugfix には不要です。

現在の対象外

ライセンス

本 repository 固有のコードと文書は MIT です。過去のソースコード、モデル、データ、依存関係にはそれぞれのライセンス境界があります。THIRD_PARTY_NOTICES.md を参照してください。

最新 handoff: .agent-handoff/latest.md · .agent-handoff/latest.json