repose_angle_heightmap — DRIVE granular op

• Data kinds: image2d × scalar → table

• Call: import fullseye as fs; fs.ledger.repose_angle_heightmap(hm, pitch: 'float', *, ground=None, min_rel_height: 'float' = 0.1, max_rel_height: 'float' = 0.9, bin_deg: 'float' = 0.25, method: 'str' = 'horn', smooth_cells: 'int' = 1) -> 'dict' (implementation को सीधे call करना हो तो import granular; granular.repose_angle_heightmap(hm, pitch: 'float', *, ground=None, min_rel_height: 'float' = 0.1, max_rel_height: 'float' = 0.9, bin_deg: 'float' = 0.25, method: 'str' = 'horn', smooth_cells: 'int' = 1) -> 'dict', registry से लेना हो तो opsdrive.get("repose_angle_heightmap"))

उपयोग

heightmap से angle of repose φ —— demops.dem_slope के gradients के histogram का mode।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

手順: ①ground があれば引く(datum の補正; 無ければ外周 1 画素の中央値を地面とする)②smooth_cells (奇数)の移動平均 —— 粒が見える高さ図では必須: 球の山(粒径 5.3 px)を平滑なしで測ると勾配の最頻は 62 度(球面の縁)、2 粒径 = 11 セルで 24.5 度(MuJoCo の球の山の実測)。粒が見えない粉の山では 1 のまま ③高さが最大の min_rel_height〜max_rel_height の帯のセルだけ使う(裾の丸みと頂の鈍りを除く) ④dem_slope(method) を bin_deg 刻みで数え、最頻ビンとその両隣に入る値の平均で φ(ビン中心の重心だと半ビン = 0.125 度の偏りが出た、実測)。

返り: phi_deg, phi_median_deg, frac_within_1deg(最頻 ±1 度に入るセルの割合 —— 円錐なら ≈ 1、起伏があれば下がる)、n_cells, hist_centers, hist_counts。Raises ValueError: 形・pitch・選択肢(method は "horn" / "central" のみ)/ 山が無い(地面より高いセルが無い)/ 帯に 20 セル未満。

संदर्भ (sample data, साहित्य)

• 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 में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_granular_heap_repose — py -3.11 examples/poc_granular_heap_repose.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

इसी category के (granular)

heap_volume_cone · heap_mass · heap_volume_heightmap · beverloo_rate · beverloo_fit · discharge_synth · dispense_mass_from_video · hopper_discharge_rate


*Provenance: granular.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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