render_volume_projection — 3D render op

Datenarten: voxelimage2d

Aufruf: import fullseye as fs; fs.ledger.render_volume_projection(vol, azimuth=0.0, elevation=0.0, mode='xray', device='cpu') (die Implementierung direkt: import match3d; match3d.render_volume_projection(vol, azimuth=0.0, elevation=0.0, mode='xray', device='cpu'); aus dem Register: ops3d.get("render_volume_projection"))

GPU: Dieser Operator hat einen GPU-Pfad (device="cuda")

Verwendung

Projiziert ein Voxelvolumen aus beliebigem Blickpunkt nach 2-D (mode = xray = Schwächungsintegral / mip = Maximum). Für DRR (Röntgen) und Weltmodell-Beobachtungen.

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

view 方向へ volume を grid_sample で回して軸投影。voxel_to_mips の任意視点版。

回転は `affine_grid(座標順 x=W, y=H, z=D)で volume 中心まわり: azimuth` は H 軸まわり

(W と D を混ぜる)、`elevation は W 軸まわり(H と D を混ぜる)、いずれも度、Rx @ Ry` の順。

回転後の volume を 軸 0(D)方向に潰すので、視線は回転後の D 軸。`mode="mip"` は最大値、

それ以外はすべて総和(`"xray"` は Beer-Lambert の指数ではなく 単純な積算。減衰像にするなら

`exp(−Σ) を呼び手で)。返り値 (H, W)` float32 numpy。

volume 外は 0 で埋まるので、回転で隅が欠けると総和が下がる(立方体に近い volume で、物体を

中心に置く)。`azimuth=elevation=0 の mip は voxel_to_mips()[0]` と同じ向き。

用途: DRR の合成、`ncc_locate 用の 2-D テンプレ生成、match_mip_2d` の任意視点化。

Hintergrundwissen (Physik und Konventionen hinter diesem Operator)

blender_interop — Blender との併用 — 形を作って fullseye で測る(軸・単位・正解データの罠)

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.

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

ct_hand_radiographpy -3.11 examples_3d/ct_hand_radiograph.py

Typkompatible Folge-Operatoren (nehmen image2d als Eingabe)

fuse_to_voxel · fit_poly_surface · eval_poly_surface · surface_form_error · background_flatten · polar_unwrap · fit_zernike · matcap_shade

Gleiche Kategorie (render)

project_points · render_point_depth · render_shaded · ambient_occlusion · cast_shadow · phong_shade · matcap_shade · supersample_mesh


*Provenance: match3d.py — 3D 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.