morph op• Datenarten: pairs → pairs
• Aufruf: import fullseye as fs; fs.ledger.add_frame_corners(pts, shape) (die Implementierung direkt: import imagemorph; imagemorph.add_frame_corners(pts, shape); aus dem Register: opsshape2d.get("add_frame_corners"))
> Für diesen Operator gibt es noch keine Übersetzung. Es folgt der Originaltext unverändert.
点群に画像の四隅(+辺の中点)を固定点として足す。
ワープの三角形分割が画像全体を覆い、凸包の外側にできる穴を防ぐための定番処置。
src/dst の両方に同じ順序で足せば、四隅は「動かない対応点」として働く。
足す 8 点は画素中心座標 `(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 = 列、y = 行)、有限。(row, col)` を渡すと
x と y が入れ替わったまま通る(例外は出ない)。
• `shape: 画像の shape((H, W) でも (H, W, C)` でも先頭 2 つを使う)。
• 返り値: `(N + 8, 2)` float64。
• 元の点が既に枠上や枠外にあっても検査しない。枠外の対応点は Delaunay 分割で
枠の三角形と交差し、ワープが歪む。
`morph / morph_sequence は with_corners=True` で内部的にこれを両方の
点群に掛ける。`warp_piecewise_affine / warp_tps_image` を直接呼ぶときは
自分で `src と dst` の両方に足すこと。
• Leitfaden zur Familie shape_description_2d
• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).
• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.
• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.
• shape2d_morph_descriptor_tour — py -3.11 examples/shape2d_morph_descriptor_tour.py
pairs als Eingabe)elliptic_fourier · fourier_smooth · warp_tps_image · warp_piecewise_affine · morph · morph_sequence
morph)warp_tps_image · warp_piecewise_affine · blend · morph · morph_sequence
*Provenance: imagemorph.py — SHAPE2D Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.