grind opimage2d × scalar → tableimport fullseye as fs; fs.ledger.particle_image_d50(image, pitch: 'float', basis: 'str' = 'volume', threshold: 'float' = 0.02, border: 'str' = 'exclude') -> 'dict' (実装を直接呼ぶなら import grind; grind.particle_image_d50(image, pitch: 'float', basis: 'str' = 'volume', threshold: 'float' = 0.02, border: 'str' = 'exclude') -> 'dict'、台帳から引くなら opsdrive.get("particle_image_d50"))被覆率の画像の粒子から D10 / D50 / D90 [µm]。面積は ラベルの中の被覆率の和(縁の部分画素を数える、閾値で太らない)。
basis: "volume"(球と見て d³ の重み —— レーザー回折と同じ体積基準)、"number"(個数基準)。同じ画像でも
この 2 つは別の分布で、体積基準が大きく出る。border: "exclude"(縁に触れる粒子を捨てる)/ "include"。
返り: d10・d50・d90・diameters(等価円直径 µm)・n・n_border・basis。粒子が 3 未満 → ValueError。
融合した粒子は 1 個に数える(分けない —— 塗れた面積の分離は別の op の仕事)。
py -3.11 examples/poc_dose_uniformity_from_grinding.pypy -3.11 examples/poc_powder_grinding_ae.pytable を入力に取れる)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 ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.