img_to_points — 2D bridge op

• Datenarten: image → points

• Aufruf: fullseye.apply(img, "img_to_points", a=0.5, b=0.5) (das 2-D-Modell ist ein Bild plus zwei skalare Regler a,b∈[0,1])

img_to_points: input → output

*Die Abbildung ist die tatsächliche Ausgabe auf einer synthetischen 128×128-Eingabe. Links Eingabe, rechts Ausgabe. Punktwolken als Draufsicht-Streudiagramm (Helligkeit = z), 1-D-Reihen als Linie, Volumen als Maximum-Projektion entlang z, Videos als mittleres Bild, komplexe Bilder als Betrag; Rückgabewerte, die kein Bild ergeben, werden als Werte gezeigt.*

Regler a durchfahren (0,1 / 0,5 / 0,9, der andere Regler auf Standard):

▸ img_to_points: Regler a durchfahren (Doku-Website)

Regler b durchfahren (0,1 / 0,5 / 0,9, der andere Regler auf Standard):

▸ img_to_points: Regler b durchfahren (Doku-Website)

Auf anderen Bildern (synthetische Szene / Foto / Münzen. Obere Reihe: Eingaben, untere Reihe: deren Ausgaben. Regler auf Standard):

▸ img_to_points: andere Eingaben (Doku-Website)

*Die 4. Spalte ist eine Farb-Eingabe (H,W,3). Dieser Op verarbeitet Farbe, ohne Kanäle zu vermischen (er faltet den Farbkanal nicht als dritte Raumachse).*

Verwendung

Liest das Bild als Höhenfeld und macht daraus eine (x, y, z)-Punktwolke (N,3).

Bildet jedes Pixel (row, col) auf 1 Punkt (x, y, z) = (col * 10/W, row * 10/H, value * 10 * s) ab —— Koordinaten, in denen Breite und Höhe des Bildes auf eine Box der Seitenlänge 10 normiert sind (POINTS_BOX). Die Radien, Begrenzungsboxen und Gitterauflösungen, die die Brücken der Punktwolken-Ops (tb_*) binden, setzen diesen Maßstab (den Seed des verketteten Fuzzers [0,10)^3) voraus; übergibt man Pixelkoordinaten unverändert, wird die Nachbarschaft der radiusbasierten Ops leer und das Belegungsgitter überall 0 (gemessen). Zurück zu Pixeln:

x * W / 10, y * H / 10. Die Spaltenkonvention ist dieselbe wie bei camera.depth_to_points, (x, y, z) —— umgekehrt zu (z, y, x) von reprconv; bei der Übergabe an diese Familie an einem Eingang wie tb_points_zyx_to_keypoints_uv umdeuten.

• a → Höhenfaktor s = 0.25 + 1.75 * a (1.125 bei a=0.5. Bei einem Bild mit Wertebereich [0,1] liegt z in derselben Größenordnung wie x, y, [0, 11.25], und die Punktwolken-Ops sehen "Gelände" statt "Ebene").

• b → Schrittweite der Ausdünnung stride = 1 + int(b * 3) (2 bei b=0.5. Bei 128×128 4,096 Punkte. b=0 ergibt alle Pixel, b=1 ergibt 1/16).

• Rückgabewert: (N, 3) float64, N = ceil(H/stride) * ceil(W/stride). Nie leer.

• Die Reihenfolge ist zeilenweise (row-major) und deterministisch. Gleiche Eingabe, gleiches Array.

Einsatz: der Eingang, um die Punktwolken-Ops (tb_alpha_shape_boundary / tb_estimate_point_normals / tb_points_to_voxel …) an 1 einzigen Bild auszuprobieren. Normiert man ein DEM (Höhenkarte) auf value = Höhe / maximale Höhe und übergibt es, wird es direkt zur Punktwolke des Geländes.

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie gallery2d_bridge

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.

In Studio ausprobieren

Das Programm unten ist nachweislich lauffähig (gleiche Eingabe wie die Abbildung). In der Studio-Hilfe wird dieser Block zu Schaltflächen, die es sofort laden und ausführen.

img_to_points 0.50 0.50

▸ Diese Pipeline laden  ·  Laden & ausführen

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

• gallery2d_bridge — py -3.11 examples/gallery2d_bridge.py

Typkompatible Folge-Operatoren (nehmen points als Eingabe)

identity · tb_points_to_voxel · tb_estimate_point_normals · tb_iss_keypoints · tb_project_points · tb_render_point_depth · tb_statistical_outlier_removal · tb_radius_outlier_removal

Gleiche Kategorie (bridge)

img_to_keypoints · img_to_signal · img_to_projection_profile · img_to_counts · img_to_matrix · img_to_video · img_to_volume · img_to_lightfield


*Provenance: ops.py — 2D 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.