fullseye

keypoints_to_image2d — REPRCONV keypoint op

使い方

画像座標 (N,2) = (u, v) → 計数画像 (H, W)keypoints の 2 つ目の出口。

round(v) を行、round(u) を列として 1 ずつ加算する。画素格子への 量子化が損失で、:func:keypoints_from_image2d と往復すると位置が 最大 0.5 画素ずれる(よく離れた 225 点での実測: 軸あたり RMS 0.2835 px = 一様量子化の理論値 1/sqrt(12) = 0.2887 と一致。2-D 距離では sqrt(2) 倍の 0.4009 px で、理論 sqrt(2/12) = 0.4082)。 ★ここも一度間違えた: 2-D 距離の実測を 1-D の理論値と並べて「0.29 のはずが 0.40 だ」と読みかけた —— 軸ごとの量と距離の量を混ぜると、正しい実装が 誤っているように見える。 近接した点は連結成分として融合するので、往復で点数も減りうる (実測: 60 点をランダムに置くと 54 点)。

範囲外の点は黙って捨てない —— 捨てると「検出が減った」のか 「画像が小さすぎた」のかが区別できなくなる。

Args: keypoints: (N, 2) の (u, v)。 shape: (H, W)。 Returns: (H, W) float64 の計数画像。 Raises: ValueError: 形状不正 / 非有限 / 範囲外の点がある / shape が上限超。

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(image2d を入力に取れる)

keypoints_from_image2d

同カテゴリ(keypoint)

keypoints_uv_to_points · points_zyx_to_keypoints_uv · keypoints_from_image2d · position_to_points · points_to_position


Provenance: reprconv.py — REPRCONV operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

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