add_frame_corners — SHAPE2D morph op

• 資料種類:pairs → pairs

• 呼叫: import fullseye as fs; fs.ledger.add_frame_corners(pts, shape)(要直接呼叫實作,import imagemorph; imagemorph.add_frame_corners(pts, shape);從台帳取用則 opsshape2d.get("add_frame_corners"))

用法

將影像的四個角(+各邊中點)作為固定點加入點集。

使變形的三角剖分覆蓋整幅影像、防止凸包外側出現空洞的常規處理。以相同順序加到 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 兩邊。

詳細使用指南

• shape_description_2d 族使用指南

參考(範例資料、文獻)

• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。

• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。

• 演算法的正典(作者、年份)與用途見上面的族使用指南。

可執行的範例(實際呼叫該運算子並已驗證的樣例)

• shape2d_morph_descriptor_tour — py -3.11 examples/shape2d_morph_descriptor_tour.py

型別可銜接的下一個運算子(可接受 pairs 作為輸入)

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

同類別(morph)

warp_tps_image · warp_piecewise_affine · blend · morph · morph_sequence


*Provenance: imagemorph.py — SHAPE2D 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*

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