小编Tor*_*and的帖子

具有 3D 向量的两个 numpy 数组的点积

我的目标是找到最接近单个点的段(在段数组中)。获取 2D 坐标数组之间的点积有效,但使用 3D 坐标会出现以下错误:

*ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 2 is different from 3)*


A = np.array([[1,1,1],[2,2,2]])
B = np.array([[3,3,3], [4,4,4]])

dp = np.dot(A,B)
Run Code Online (Sandbox Code Playgroud)

dp应该返回2个值的点积[1,1,1]@[3,3,3][2,2,2]@[4,4,4]

// 谢谢大家。

这是找到最接近单个点的线段的最终解决方案。
欢迎任何优化。

import numpy as np
import time

#find closest segment to single point

then = time.time()

#random line segment
l1 = np.random.rand(1000000, 3)*10   
l2 = np.random.rand(1000000, 3)*10

#single point
p = np.array([5,5,5]) #only single …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy vectorization dot-product

2
推荐指数
1
解决办法
2125
查看次数

标签 统计

arrays ×1

dot-product ×1

numpy ×1

python ×1

vectorization ×1