簡體   English   中英

在Python中查找從曲線中最近點到有界n維空間中任意點的距離

[英]Finding distance from closest point in curve to any arbitrary point in bounded n dimensional space in Python

我正在使用 Python 解決這個問題。

假設我在 n 維(緊湊)空間中有一些點 p 和一維任意曲線。 如何在曲線中找到最接近指定點 p 的點? 我在Find minimum distance from point to complex curve 中找到了答案,但 Shapely 僅適用於平面,並且我正在處理的曲線的表達式駐留在維度數范圍為 2 到 16 的空間中,這是由於定義了曲線。 這些曲線的表達式總是明確知道的。

我也嘗試使用scipy.optimizeSLSQP來最小化距離函數,但它並不總是有效。 例如,如果曲線是np.sin(15*x) ,並且點僅位於以(0.5, 0.5)為中心的單位正方形中,則曲線的某些部分僅在兩個維度之一中位於正方形內,並且某些點的最小化失敗。

如果您知道曲線的解析形式,您總是知道從點 x(t)、y(t) 到外部點的距離。 你可以用分析形式寫出距離。 因此,您需要從距離表達式中找到導數並找到根。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM