簡體   English   中英

如何對2D多邊形進行二次采樣?

[英]How to subsample a 2D polygon?

我有多邊形來定義英國各縣的輪廓。 這些形狀非常詳細(每個10k到20k點),因此渲染相關計算(多邊形P?中的點X)非常昂貴。

因此,我想“子采樣”我的多邊形,以獲得相似的形狀,但點數較少。 有什么不同的技術呢?

瑣碎的一個是每N個點取一個(因此用一個因子N二次采樣),但這感覺太“粗糙”了。 我寧願做點平均值,也不想做點什么。 任何指針?

我想到兩種解決方案:

1)由於英國的地圖是合理的方形,你可以選擇用縣渲染位圖。 為每個特定顏色指定顏色,然后使用1或2像素粗黑線渲染邊框。 這意味着如果樣品恰好位於邊界上,您只需執行昂貴的內部/外部計算。 位圖越大,發生的次數越少。

2)簡化縣概述。 您可以使用遞歸的Ramer-Douglas-Peucker算法遞歸地簡化邊界。 只需確保緩存結果即可。 可能還必須解決這個問題,不是針對整個縣界,而是針對共享邊界,以確保沒有差距。 這可能非常棘手。

在這里,您可以找到一個完全處理您的問題的項目。 雖然它主要用於由點“填充”的區域,但您可以將其設置為與您的“周邊”類型定義一起使用。

它使用k近鄰方法來計算區域。

樣品:

在此輸入圖像描述

在這里,您可以索取該文件的副本。

看起來他們計划提供一個在線服務來請求計算,但我沒有測試它,可能它沒有運行。

HTH!

多邊形三角測量應該有幫助。 您仍然需要檢查多個多邊形,但現在這些是三角形,因此它們更容易檢查,您可以使用一些優化來確定一小部分多邊形來檢查給定的區域或點。

因為看起來你擁有多邊形所需的所有算法,不僅僅是三角形,你還可以合並幾個三角形后太小的三角形或三角形數量太高的三角形。

暫無
暫無

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

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