piv_synth_pair — PIV synth op

• Data kinds: कोई नहीं → image2d (केवल arguments से तय होने वाला op — यह कोई image या data input नहीं लेता)

• Call: import fullseye as fs; fs.ledger.piv_synth_pair(shape, displacement, density=0.02, diameter_px=2.5, seed=0, noise_sigma=0.0, intensity=(0.6, 1.0), background=0.0) (implementation को सीधे call करना हो तो import pivops; pivops.piv_synth_pair(shape, displacement, density=0.02, diameter_px=2.5, seed=0, noise_sigma=0.0, intensity=(0.6, 1.0), background=0.0), registry से लेना हो तो opspiv.get("piv_synth_pair"))

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

• मूल function का return: (a, b, truth) -> image2d

उपयोग

ज्ञात displacement field वाला image जोड़ा बनाता है। (image_a, image_b, truth) लौटाता है।

Particles को खिसकाकर फिर 2nd image बनाई जाती है (1st image को interpolation से warp नहीं किया जाता)। Interpolation से बनाने पर, interpolation की smoothing "ऐसी तस्वीर जिस पर PIV आसानी से सही बैठे" बना देगी, और आप अपने ही implementation को उसके पक्ष वाले इनपुट पर माप रहे होंगे।

Args:

shape: (H, W)।

displacement: displacement कैसे दिया जाता है। निम्न में से एक।

• लंबाई 2 का sequence —— uniform translation (dy, dx) [px]।

• callable(rows, cols) -> (dy, dx) —— position पर निर्भर field। Arguments particles के continuous coordinates के arrays हैं।

density / diameter_px / seed / intensity / background: piv_synth_particles के समान।

noise_sigma: 2 images में से हर एक में स्वतंत्र रूप से जोड़े गए additive Gaussian noise का standard deviation।

Returns:

(a (H, W), b (H, W), truth (2, H, W))। truth प्रति pixel

सही displacement है; इसे window grid पर लाने के लिए piv_sample_at_windows इस्तेमाल करें।

उपयोग की विस्तृत guide

• piv_displacement family guide

संदर्भ (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 करते हैं)

• piv_field_analysis_tour — py -3.11 examples/piv_field_analysis_tour.py

• piv_flow_from_particles — py -3.11 examples/piv_flow_from_particles.py

• poc_strain_history — py -3.11 examples/poc_strain_history.py

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

piv_cross_correlate · piv_multipass · piv_deform_pass · strain_from_displacement · correlation_quality · speckle_quality

इसी category के (synth)

piv_synth_particles · piv_synth_sequence


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

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