【发布时间】:2021-03-09 14:50:55
【问题描述】:
我正在处理沿着图像中的车道插入点的任务。包含带注释点的示例图像(图像不是来自实际数据集,点之间的间距也不是实际的)包含在here。
我正在尝试使用来自 scipy 的slprep,以下是我正在采取的步骤。
import numpy as np
from scipy.interpolate import splrep, splev
#### example coordinates of annotated pts
x = ([138.614, 161.404, 184.507, 207.297, 230.4, 407.726])
y = ([231.230, 209.741, 188.058, 166.531, 144.739, 249.985])
#### interpolation function
interpl_fun = splrep(x, y, k=3) ### k=4
query_y = np.linspace(y.min(), y.max(), 20) #### y for which x coordinates should be interpolated
#### obtaining interpolated x coordinates
interpolated_x = splev(query_y, interp_fun)
我目前的观察是:
- 当我绘制 (interpolated_x 和 query_y) 的像素标记时,结果坐标确实 不在输入(x 和 y)坐标的标记之间。
我的问题是:
-
谁能告诉我我做错了什么?
-
如何定义来自 splrep 的节点参数,以便 插值样条通过最大输入点??
-
我看到的大多数相关线程都使用插值函数 计算 y = f(x) 其中 x 是已知的并且 y 将被插值并且 我正在使用插值函数来评估 x = f(y)。这是 有什么问题吗??
【问题讨论】:
标签: python scipy interpolation