world opなし → table(引数だけで決まる op —— 画像やデータの入力を取らない)import fullseye as fs; fs.ledger.world_parts_with_shadow(seed: 'int' = 0, *, size=(200, 260), n_parts: 'int' = 3, light_angle: 'float' = 35.0, shadow_length: 'float' = 9.0, noise: 'float' = 0.02) -> 'Dict[str, object]' (実装を直接呼ぶなら import segworld; segworld.world_parts_with_shadow(seed: 'int' = 0, *, size=(200, 260), n_parts: 'int' = 3, light_angle: 'float' = 35.0, shadow_length: 'float' = 9.0, noise: 'float' = 0.02) -> 'Dict[str, object]'、台帳から引くなら opssegmentation.get("world_parts_with_shadow"))工業部品(回転した矩形 + 円の穴)と、斜めの照明による影・面の明暗・ハイライトの世界。真値 = 部品(穴は背景、影は背景)。
光は light_angle(度、画像の x 軸から y 軸へ)の向きに差す平行光。影 = 部品のマスクを光の向きに shadow_length
だけずらした集合から部品を除いた画素(穴は光を通す)。部品の面は光に向く側が明るく、遠い側は影と同じくらい暗い
(閾値が欺かれる理由)。ハイライトは光に向く側の縁の近くのガウス。
返り値: image、labels(部品 1..n)、shadow(bool)、truth = {n_parts、parts(center, w, h, angle, holes)、
areas(w h − Σ π r²)、shadow_offset (dy, dx)、shadow_area(測った画素数)、light_angle}。
py -3.11 examples/poc_active_contours.pypy -3.11 examples/poc_graph_hierarchy_segmentation.pypy -3.11 examples/poc_segmentation_gauntlet.pytable を入力に取れる)class_ndim_norm · fisher_lda_score
world)world_blobs_touching · world_grains_voronoi · world_texture_regions · world_gradient_illumination · world_thin_structures · lens_area · voronoi_cells
Provenance: segworld.py — SEGMENTATION operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.