add_frame_corners — SHAPE2D morph op

• Data kinds: pairs → pairs

• Call: import fullseye as fs; fs.ledger.add_frame_corners(pts, shape) (implementation को सीधे call करना हो तो import imagemorph; imagemorph.add_frame_corners(pts, shape), registry से लेना हो तो opsshape2d.get("add_frame_corners"))

उपयोग

point set में image के चारों कोने (+ किनारों के मध्यबिंदु) fixed point के रूप में जोड़ता है।

warp का triangulation पूरी image को ढके और convex hull के बाहर बनने वाले छेद रोके, इसके लिए यह मानक उपाय है। src/dst दोनों में एक ही क्रम से जोड़ने पर चारों कोने "न हिलने वाले corresponding points" का काम करते हैं।

जोड़े जाने वाले 8 points pixel-centre coordinates (x, y) में हैं, W-1 / H-1 को किनारा मानकर:

(0,0) (xm,0) (W-1,0) (0,ym) (W-1,ym) (0,H-1) (xm,H-1) (W-1,H-1) (xm = (W-1)/2, ym = (H-1)/2)। इसी क्रम में अंत में जोड़े जाते हैं।

• pts: (N, 2) के (x, y) (x = column, y = row), finite। (row, col) देने पर x और y उलटे हुए ही गुज़र जाते हैं (exception नहीं उठता)।

• shape: image का shape ((H, W) हो या (H, W, C), पहले 2 इस्तेमाल होते हैं)।

• return value: (N + 8, 2) float64।

• मूल points पहले से frame पर या frame के बाहर हों तब भी जाँच नहीं होती। frame के बाहर के corresponding points Delaunay triangulation में frame के triangles को काटते हैं, और warp विकृत हो जाता है।

morph / morph_sequence with_corners=True पर इसे अंदर ही दोनों point sets पर लगाते हैं। warp_piecewise_affine / warp_tps_image को सीधे call करते समय इन्हें src और dst दोनों में खुद जोड़ें।

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

• shape_description_2d 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 करते हैं)

• shape2d_morph_descriptor_tour — py -3.11 examples/shape2d_morph_descriptor_tour.py

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

elliptic_fourier · fourier_smooth · contour_fourier_complex · warp_tps_image · warp_piecewise_affine · morph · morph_sequence

इसी category के (morph)

warp_tps_image · warp_piecewise_affine · blend · morph · morph_sequence


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

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