random_scale — 3D augment op

• Data kinds: points → points

• Call: import fullseye as fs; fs.ledger.random_scale(points, lo: 'float', hi: 'float', seed: 'int' = 0) -> 'Tuple[np.ndarray, float]' (implementation को सीधे call करना हो तो import pcl_augment; pcl_augment.random_scale(points, lo: 'float', hi: 'float', seed: 'int' = 0) -> 'Tuple[np.ndarray, float]', registry से लेना हो तो ops3d.get("random_scale"))

• Ledger के ज़रिए return value: fullseye.ledger.random_scale(...) केवल घोषित out type points का value लौटाता है (मूल function सहायक जानकारी भी लौटाता है)। जो हिस्सा छोड़ दिया गया है उसकी ज़रूरत हो तो fullseye.ledger.random_scale.raw(...) का उपयोग करें, या pcl_augment.random_scale को सीधे call करें।

उपयोग

uniform scale s ~ U(lo, hi) को origin के चारों ओर लागू करता है और (scaled, s) लौटाता है।

scaled = points * s। bbox विकर्ण की लंबाई ठीक s गुना हो जाती है (s > 0 होने से max/min दोनों s गुना → विकर्ण ‖max-min‖ भी s गुना)। object scale के उतार-चढ़ाव (दूरी/sensor magnification) को training में डालता है। 0 < lo <= hi आवश्यक है (fail-closed)।

lo <= 0 या hi < lo पर ValueError (lo == hi की अनुमति है और हमेशा s = lo)। scaling origin के चारों ओर है, इसलिए cloud origin से दूर हो तो centroid भी s गुना position पर चला जाता है (position और आकार एक साथ बदलते हैं)। केवल आकार बदलना हो तो पहले centroid को origin पर ले आएँ। s Python float है, लौटाया गया point cloud float64 है। seed से deterministic। खाली input पर खाली लौटता है।

संदर्भ (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 के स्रोत।

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

• augment_pointcloud — py -3.11 examples_3d/augment_pointcloud.py

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

points_to_voxel · gaussians_to_voxel · estimate_point_normals · to_points · match_points_ncc · match_pca · moment_axes · icp_point2point_3d

इसी category के (augment)

jitter · random_rotation · random_dropout · elastic_deform · cutout


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

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