데이터 포인트가 x, y, z 형식입니다. 그들은 닫힌 매니 폴드의 점 구름을 형성합니다. R-Project 또는 Python을 사용하여 어떻게 그들을 보간 할 수 있습니까? (다항식 스플라인과 유사)3D 좌표 보간법
답변
"콤팩트 매니 폴드"란 궤도 또는 3d에 포함 된 서페이스와 같은 낮은 차원의 기능을 의미합니까? "파라 메트릭"또는 "비 파라 메트릭"방법에 따라 R의 표면 문제에 대한 여러 가지 대안이 있습니다. 다양한 종류의 회귀 스플라인은 평균 f (x, y)를 추정하는 틀 내에서 적용될 수 있으며 이러한 값이 "단단히"이격 된 경우 상대적으로 정확하고 간단한 요약 추정을 얻을 수 있습니다. 패키지 'locfit', 'akima'및 'mgcv'와 같은 여러 가지 매개 변수가없는 메소드가 있습니다. (3 차원 공간에서 통계적으로 1 차원 다양체를 추정하는 방법에 대해 어떻게 확신 할 수 있을지 모르겠다.)
편집 :하지만 3D 분포를보고 아이디어가 무엇인지 알고 싶다면 파라 메 트릭 곡선 또는 궤적을 사용하면 패키지 : rgl에 도달하고 회전 가능한 3D 프레임에 플롯 할 수 있습니다.
대신에 (보간법 단어가 잘못된 선택 인) 볼록 선체를 만들려고한다면 2 차원 솔루션이 있으며 3 차원 솔루션도 찾을 수 있다고 생각합니다. 올바른 검색 전략을 수립하는 것은 지금까지 2 개의 의견이 반영되지 않은 세부 사항에 달려 있습니다.나는 경계를 만들기 위해 회귀 노력을 사용하고 싶다면 (x, y)의 함수로서 1 백 99 번째 백분위 수와 같은 더 낮은 및 더 높은 차수의 통계를 모델링하려고 시도 할 수 있다고 추측하고있다. Roger Koenker의 'rq'는 잘 지원되는 quantile regression 패키지입니다.
원래 어떤 점을 나타내 었는지에 따라 다릅니다. 포인트 배열을 가지고있는 것은 일반적으로 원래 매니 폴드를 파생시키기에 충분하지 않습니다. 어느 지점이 함께 있는지 알아야합니다.
가장 일반적인 저수준 경계 표현 ("brep")은 삼각형 집합입니다. 예 : OpenGL과 Directx가 입력으로 얻는 것. 나는 STL 형식의 삼각형 메쉬를 예를 들어로 변환 할 수있는 파이썬 software을 작성했습니다. PDF 이미지. 어쩌면 당신은 당신의 목적에 맞게 적응할 수 있습니다. 삼각형을 보간하는 것은 일반적으로 필요하지 않지만 오히려 할일이 있습니다. 원래의 두 점 사이의 중간에 세 개의 새로운 점을 만듭니다. 이 세 점은 내부 삼각형을 형성하고 나머지 표면은 삼각형을 형성합니다. 그래서 이것으로 하나의 삼각형을 네 개의 삼각형으로 변형 시켰습니다.
포인트가 스플라인 서페이스 패치 (예 : NURBS 또는 Bézier surfaces)의 조절 점인 경우 어떤 점이 함께 패치를 형성해야 하는지를 알아야합니다. 이들이 파라 메트릭 서페이스이기 때문에 일단 컨트롤 포인트를 알게되면 서페이스상의 모든 점을 결정할 수 있습니다. 아래는 베 지어 표면의 함수입니다. 매개 변수 u 및 v는 표면의 파라 메트릭 좌표입니다. 패치의 두 인접 에지를 따라 0에서 1까지 실행됩니다. 제어점은 k_ij입니다.
상기 B 함수는 각각의 제어 포인트에 대한 가중치 함수이다;
는 10 × 10 점의 격자에 의해 베 지어 표면에 근접한다고 가정. 이를 수행하려면 u 및 v가 0에서 1까지 10 단계로 실행되는 함수 p을 평가해야합니다 (단계 생성은 numpy.linspace
으로 쉽게 수행됩니다).
각 (u, v) 쌍에 대해 p은 3D 점을 반환합니다.
이러한 점을 시각화하려면 matplotlib에서 mplot3d을 사용할 수 있습니다.
닫힌 매니 폴드는 토폴로지 상 구체와 동일합니다. 구멍이나 가장자리가 없습니까? 일반적인 접근법은 표면을 삼각 측량하는 것입니다. 먼저 삼각형을 만듭니다 ... 이것을 위해 3D 시각화 패키지를 보셨습니까? – Spacedman
다양한 방법이 있습니다. x, y, z 형식을 사용하면 어떤 의미인지 알 수 없습니다. 함수 f (x, y) = z를 설명하고 동일한 수의 x와 y를 가진 것이 좋으면 akima 패키지를 사용해보십시오. http://cran.r-project.org/web/packages /akima/index.html –