transport_plan_1d — COLORTRANSPORT transport op

Datenarten: signal × signaltransport_plan

Aufruf: import fullseye as fs; fs.ledger.transport_plan_1d(u_values, v_values) (die Implementierung direkt: import colortransport; colortransport.transport_plan_1d(u_values, v_values); aus dem Register: opscolortransport.get("transport_plan_1d"))

Verwendung

Der exakte 1-D-Transportplan (Nordwest-Ecken-Regel). Liefert eine `(n, m)`-Massenmatrix.

> Die ausführliche Beschreibung unten ist der Originaltext — Zusammenfassung und Überschriften sind übersetzt.

行和が `1/n、列和が 1/m` になる ―― これは構成上厳密で、

数値誤差以外でずれることはない(テストで固定)。

手順: `u(n 個)と v(m` 個)をそれぞれ昇順に並べ、小さいほうから

順に質量 `min(残り u, 残り v)` を割り当てる(単調な結合)。各標本の質量は

等しく `1/n1/m`(重み付きは受けない)。1 次元では距離の凸関数

コストとする限りこの単調結合が最適解なので、`wasserstein_1d` と同じ

輸送を「どの標本がどこへ行くか」の行列として得られる。

• `u_values, v_values: 1 次元に潰す(ravel`)。長さは違ってよい。

空なら `MetricContractError`。有限性は検査しない(NaN はソートで末尾に

回り、黙って結合される)。

• 返り値: `(n, m) の float64(transport_plan 型)。plan[i, j]` は入力の

元の並びで `u[i] から v[j] へ運ぶ質量。非零要素は高々 n + m - 1`。

`n == m なら置換行列 / n`(一対一対応)。

• 計算量は `O((n + m) log) のソート + O(n + m)` の走査だが、返す行列は

`n × m` の密行列なので画素数規模の標本には向かない(その場合は

`histogram_matchsinkhorn`)。

`apply_transport(plan, v)u` 側の各標本の行き先の値(重心)を、

`transport_cost(plan, cost)` で総コストを取る。

Hintergrundwissen (Physik und Konventionen hinter diesem Operator)

colorimetry — 測色と分光の知識 — 色は「分光 × 光源 × 観測者」でしか決まらない

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

color_transportpy -3.11 examples/color_transport.py

Typkompatible Folge-Operatoren (nehmen transport_plan als Eingabe)

transport_cost · apply_transport

Gleiche Kategorie (transport)

wasserstein_1d · sinkhorn · sinkhorn_distance · sinkhorn_divergence


*Provenance: colortransport.py — COLORTRANSPORT Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.