Look-Up-Table 작성을 통한 다차원 내삽문의

게시판 IDL Q&A Look-Up-Table 작성을 통한 다차원 내삽문의

이 게시글은 2개 답변과 3명 참여가 있으며 마지막으로  tlseorb0111에 의해 1 주, 2 일 전에 업데이트 됐습니다.

  • 글쓴이
  • #5190

    atm.choi
    회원

    안녕하세요
    IDL을 통해 공부하고 있는 학생입니다

    다차원 결과값에 대해서 미리 계산을 해서 Look-Up-Table 을 작성해놓고
    원하는 입력값에 대해서 파장에 대한 결과를 내삽해서 구하고 싶은데
    4차원 이상의 고차원의 내삽을 어떻게 해야 할까요?

    LUT는 5개 이상의 변수(AA,BB,CC,DD,EE)에 대해 최종 계산되는 X를 채널값별로 계산해두고
    그후, A’,B’,C’,D’,E’의 값이 주어졌을대 LUT에서 채널별 X를 구하고자 합니다.

    어떻게 내삽을 해야 LUT를 잘 사용해서 원하는 조건의 값을 뽑아 낼 수 있을까요?

  • #5192

    Sangwoo
    회원

    일반적인 선형내삽의 경우 IDL에서는 3차원까지밖에 지원이 안되므로(INTERPOLATE 함수 이용), 다른 방법이 동원되어야 할 것 같습니다. 제 짐작으로는 어쩌면 cluster analysis 기법이 필요할지도 모르겠습니다. IDL에서는 CLUSTER 함수가 이러한 기능을 담당합니다. 물론 자세한 내용은 IDL 도움말에서 관련 내용을 직접 찾아보셔야 할 것 같습니다.

  • #5194

    tlseorb0111
    회원

    안녕하세요

    IDL 외부 라이브러리에 N-D interpolation을 지원하는 함수가 있는지는 잘 모르겠습니다만, 제 생각에 가장 간단한 방법은 python을 연동시켜 사용하는 것입니다.

    python 의 scipy 에 N-D interpolation을 지원하는 함수가 몇가지 있으니 필요하신 함수를 IDL 로 불러와 사용하실 수 있습니다.

    만일 python이 익숙하지 않으시고 선형 내삽만으로 충분하시다면, Look-Up-Table 의 차원을 하나씩 줄여가면서 interpolation 하는 방법이 있습니다. 아래에 예제 코드 입니다.
    아래의 코드가 가장 효율적인지는 모르겠으나 예제를 보시면 아이디어를 얻으 실 수도 있을 것 같습니다.

    • 이 답변은  tlseorb0111에 의해 1 주, 2 일 전에 수정됐습니다.
    • 이 답변은  tlseorb0111에 의해 1 주, 2 일 전에 수정됐습니다.

답변은 로그인 후 가능합니다.