python - 使用单应投影计算轨迹
问题描述
我有单应矩阵,并使用该单应矩阵投影了一个场景。现在我有 2D 轨迹,我想将它们转换为投影场景。
我正在尝试在一个图像中进行对象检测,并对该图像的轨迹进行单应性计算,我不知道如何将检测到的第一张图像的边界框中心的坐标转换为转换后的单应性坐标图像
p = np.array(((trk[1] + trk[3]) / 2, (trk[0] + trk[2]) / 2, 1)).reshape((3, 1))
temp_p = H.dot(p)
sum = np.sum(temp_p, 1)
px = int(round(sum[0] / sum[2]))
py = int(round(sum[1] / sum[2]))
point_lists[trk[4]].append((px, py))
x = [i[0] for i in point_lists[trk[4]]]
y = [i[1] for i in point_lists[trk[4]]]
p = np.polyfit(x, y, deg=1)
y = p[1] + p[0] * np.array(x)
fitted = list(zip(x, y))
cv2.polylines(dst, np.int32([fitted]), False, color=(255, 0, 0))
解决方案
推荐阅读
- angularjs - 如何使用 angularjs 中的绑定从父级调用子函数
- php - 如何使用不同/多个@param
- docker - iptable 规则阻止我连接到在 localhost 上运行的 docker 代理
- influxdb - InfluxDB 连续查询:保留标签
- javascript - 是否可以在没有 jQuery 的情况下切换 div?
- python - Python从其他文件夹(在同一个项目中)导入文件?
- python - 根据 QCombobox 中选择的选项替换复选框
- php - 重新分配信封后无法检索选项卡数据
- c++ - 互斥锁在 mingw 中停止程序,但在 linux 上没有
- ios - 从真实 iOS 设备获取剪贴板