実装済み

型・構造・意味を分ける理由#

一つのVectorと画像は、答える問いが違います。Vectorは一つの値の三成分、Imageは多数のColorが二つの軸上に配置されたデータです。値の成分数と配置する次元数を分けると、画像だけでなく波長や時刻を持つ科学データも同じ基盤で扱えます。

Type Formatから考える#

Value型形式は一つの値の型を構成します。Field型形式はそのValue型と次元数を組み合わせてFieldの型を構成します。二つの形式を持つことと、すべての実行時情報を型名へ詰め込むことは別です。

例えばGrid<Float,3>という型から分かるのは、Floatが三つのDimension上に配置されることです。実際の大きさ、軸の名前、座標の配置はField Structureが持ちます。属性を変更するたびに別のSocket Typeへ変えなくても、データの意味を追跡できます。

ImageとVideoの契約#

Grid<Color,2>には任意の二軸を付けられます。ImageはX/Yの画像解釈を持つ型です。その区別により、画像処理は色や表示領域のStandard Attributeを正式に理解できます。ただし、型が意味を定めることと、各Attributeが必ず既知であることは同じではありません。

VideoのTimeも軸の意味です。時間座標を一次情報にすると、可変フレームレートや不均一な観測時間を表現できます。Frame Rateを固定の本体にすると、こうした時刻情報を失います。

保存とアクセス#

データを扱いやすくするため、Data Wranglerは統一した読み書きのモデルを持ちます。保存ではValue、軸構造、Attributeをそれぞれ分け、編集で整合性を維持します。操作の入口が共通でも、温度のサンプル、座標の単位、色空間の解釈が同じ情報になるわけではありません。

設計はxarrayのDataArrayにある値・名前付き次元・座標の関係を参考にしています。CNLのImage/Videoの意味契約や変換規則は、CNLとして別に規定しています。

操作の状態#

未接続、入力待ち、型不一致、実行未対応はデータ型ではありません。それぞれを別に表示すると、今の問題が「線をまだ繋いでいない」「指定が矛盾している」「GPUの実行機能が足りない」のどれかを判断できます。役割・状態・性質を明確に定義する姿勢はWAI-ARIAも参考にしています。

このページを編集GitHubへのアクセス権が必要です。

CompNode Guide · 日本語製品ドキュメント仕様と実装範囲は各項目で区別しています。

ドキュメントを検索

検索語を入力してください。

    ↑ ↓ で結果を移動、Enter で開く · 検索はこの端末内だけで実行されます。