三角剖分(delaunay)拓扑结构 高维近邻
? ? ?? ? ?在高維數據中,如果想要找到高維數據間的近鄰,如果僅僅是使用k-nearnest采樣點,由于沒有考慮高維數據間的拓撲結構,這樣得到的近鄰是不準確的,尤其是在進行高維數據間的數據預測(線性插值)時。所以我們要得到的近鄰必須保持高維數據間的拓撲結構。
? ? ? ? 由于在高維空間的拓撲結構是很復雜的,但是在低維數據的拓撲結構是很容易得到的,所以我們可以根據低維數據的拓撲結構得到高維數據的拓撲結構。但是如果二者等價,則必須建立一種相關關系,就是低維數據與高維數據之間有一定的直接聯系,就是每一個高位數據對應一個低維數據,一一對應的,假設人眼圖像與人眼注視點,由于人眼圖像是高維特征,我們想要找到人眼圖像的拓撲結構,我們可以根據人眼的注視點坐標得到,因為每個人眼圖像對應著一個注視點的坐標(頭部靜止的情況下),所以我們可以用注視點的坐標之間的拓撲結構表示人眼圖像之間的拓撲結構。
? ? ? 在我們得到注視點坐標之間的拓撲結構后,我們會得到每個三角的地址(就是每個三角形有哪幾個點構成的),由于注視點坐標和人眼圖像是對應的關系,所以我們亦可以得到人眼圖像的拓撲結構。
? ? ? ?下面是怎么求得最近鄰,首先我們有一test人眼圖像,目的就是找到這個test的最近鄰的人眼圖像,為得到近鄰,我們計算test人眼圖像與樣本人眼圖像之間的歐式距離,找到距離最小的三個點(能構成三角形的三個點),然后根據找到K個近鄰,我們可以采用與三角形點相連接的點,可以認為是test的近鄰,知道找到K個近鄰。
? ? ??
load seamount plot(x,y,'.','markersize',12) xlabel('Longitude'), ylabel('Latitude') grid ontri = delaunay(x,y); hold on, triplot(tri,x,y), hold off
找到的低維的拓撲結構。
? ? ?
? ?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的三角剖分(delaunay)拓扑结构 高维近邻的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 模拟退火求函数最值问题求解
- 下一篇: 图像中添加二项式分布噪声