lattice op• Data kinds: कोई नहीं → table (केवल arguments से तय होने वाला op — यह कोई image या data input नहीं लेता)
• Call: import fullseye as fs; fs.ledger.fly_hex_lattice(radius=15, dphi_deg=4.63, az0_deg=0.0, el0_deg=0.0, geometry='regular') (implementation को सीधे call करना हो तो import flyvision; flyvision.fly_hex_lattice(radius=15, dphi_deg=4.63, az0_deg=0.0, el0_deg=0.0, geometry='regular'), registry से लेना हो तो opsflyvision.get("fly_hex_lattice"))
hexagonal ommatidial lattice: compound eye की viewing दिशाएँ।
> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।
A hexagon of n = 3*radius*(radius+1)+1 ommatidia on axial coordinates (u, v) with -radius <= u <= radius and max(-radius, -radius-u) <= v <= min(radius, radius-u) (u outer, v inner), each given an azimuth, an elevation and a unit viewing direction in body coordinates (x forward, y left, z up; az = atan2(y, x) left positive, el = asin(z)).
geometry="regular": az = az0 + dphi*(v + u/2), el = el0 + dphi*(sqrt(3)/2)*u — an isotropic hexagon.
geometry="boxeye": the pixel-grid distortion of the connectome-derived
models, pixel (y, x) = (13*(u + v/2), 13*v) with 13 px = dphi, so az = az0 - v*dphi and el = el0 - (u + v/2)*dphi; the diagonal neighbour is 1.118x the axial spacing.
radius: the hexagon radius in ommatidia.
dphi_deg: the inter-ommatidial angle in degrees. az0_deg / el0_deg: the direction of the lattice centre (the optical axis).
geometry: one of GEOMETRIES.
Returns a dict {"uv": (n,2) int, "az_rad": (n,), "el_rad": (n,), "dirs": (n,3) unit vectors, "dphi_rad": float, "geometry": str}.
Ground truth: n == 3*radius*(radius+1)+1 exactly, every dirs row is a unit vector, and for "boxeye" the ratio of the diagonal to the axial nearest-neighbour angular spacing is 1.118 (both pinned in the tests).
Raises ValueError: a *radius* outside [1, MAX_LATTICE_RADIUS], a non-positive *dphi_deg*, a non-real / non-finite / string / bool angle, and an unknown *geometry*.
• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।
• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।
• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।
• poc_fly_optomotor_steering — py -3.11 examples/poc_fly_optomotor_steering.py
• poc_fly_vision — py -3.11 examples/poc_fly_vision.py
• poc_print_registration — py -3.11 examples/poc_print_registration.py
table को input के रूप में लेते हैं)fly_t4t5_field · fly_flow_from_directions · fly_matched_filter · fly_egomotion_from_flow · fly_eye_merge · fly_hex_resample · fly_hs_readout
lattice)—
*Provenance: flyvision.py — FLYVISION operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.