grind op• Data kinds: image2d × scalar → table
• Call: import fullseye as fs; fs.ledger.particle_image_d50(image, pitch: 'float', basis: 'str' = 'volume', threshold: 'float' = 0.02, border: 'str' = 'exclude') -> 'dict' (implementation को सीधे call करना हो तो import grind; grind.particle_image_d50(image, pitch: 'float', basis: 'str' = 'volume', threshold: 'float' = 0.02, border: 'str' = 'exclude') -> 'dict', registry से लेना हो तो opsdrive.get("particle_image_d50"))
coverage image के कणों से D10 / D50 / D90 [µm]। क्षेत्रफल label के अंदर coverage का योग है (किनारे के आंशिक pixel गिने जाते हैं, threshold से फूलता नहीं)।
> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।
basis: "volume"(球と見て d³ の重み —— レーザー回折と同じ体積基準)、"number"(個数基準)。同じ画像でもこの 2 つは別の分布で、体積基準が大きく出る。border: "exclude"(縁に触れる粒子を捨てる)/ "include"。
返り: d10・d50・d90・diameters(等価円直径 µm)・n・n_border・basis。粒子が 3 未満 → ValueError。融合した粒子は 1 個に数える(分けない —— 塗れた面積の分離は別の op の仕事)。
• 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_dose_uniformity_from_grinding — py -3.11 examples/poc_dose_uniformity_from_grinding.py
• poc_powder_grinding_ae — py -3.11 examples/poc_powder_grinding_ae.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
grind)particle_size_read · particle_size_dx · particle_size_oversize · particle_size_synth · comminution_energy · comminution_law_fit · breakage_first_order_fit · replicate_compare
*Provenance: grind.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.