function 질문있습니다.

게시판 IDL Q&A function 질문있습니다.

1 답변 글타래를 보이고 있습니다
  • 글쓴이
    • #1626 Reply
      js0515
      회원

      제가 인공위성 다루고 있는데 워낙 초보라서;;;

      sdsid_ji = hdf_sd_select(sd_file, 0)

      저 함수가 의미하는 것이랑 숫자 0 이 의미하는바 를 좀 알려주세요ㅜ.ㅜ
      또한,

      envi_write_envi_file(ji, outname=aa, r_fid=bb)
      envi_file_query, aa, ns, nl, nb
      이 두 함수가 의미하는 바랑 r_fid가 무엇인지 좀 알려주세요~~~

    • #1628 Reply
      Jonghyuk Yi
      회원

      보여주신 3개의 문장 중, 첫번째 문장에 있는 hdf_sd_select() 함수는 IDL 함수로 IDL만 있으면 실행할 수 있습니다. sd_file 은 파일을 상징하는 번호이고, 0는 그 파일 안에서 SD 데이터셋 번호입니다. HDF 파일 안에는 여러개의 SD 데이터셋이 들어 있을 수 있습니다.
      아마도 sd_file 변수는 HDF_SD_START() 함수의 리턴값일 것입니다. 소스코드에서 약간 앞쪽 부분을 찾아 보세요.

      이후에 나오는 두 문장은 ENVI라는 영상처리 소프트웨어에서 지원하는 프로시저입니다. ENVI는 IDL로 만들어져서 IDL에서 기능 호출이 됩니다. 이를 ENVI API라고 하는데, ENVI가 설치되어 있는 IDL 환경에서 사용할 수 있습니다.

      envi_write_envi_file, ji, outname=aa, r_fid=bb
      과 같이 프로시저 형태로 사용되는 것이 맞을텐데요, ji 배열(일반적으로 영상입니다)을 aa라는 파일 이름으로 저장하라는 의미입니다. 프로시저 이름처럼, ENVI 표준 포맷으로 저장하고요, 저장된 이후 이 파일을 가리키기 위한 번호를 bb 변수로 받겠다는 의미입니다. (r_fid : Return File ID) bb 안에 어떤 숫자가 들어갈지는 프로그램이 실행될 때마다 다르지만 어쨌든 이 때 생성되는 파일을 가리킵니다.

      envi_file_query, aa, ns=n1, nl=n2, nb=n3
      과 같은 형태로 씌였을 것 같은데요, 프로시저 이름대로, ENVI 파일(보통 영상입니다, ENVI는 영상처리 플랫폼이니까요)의 속성을 알아내는 프로시저입니다. aa는 File ID입니다. 앞 문장의 r_fid 같은 것으로 받아내는 값이죠. 이후 ns= 이후에 나오는 변수에 # of Samples(가로크기), nl= 이후에 나오는 변수에 # of Lines(세로크기), nb= 이후 나오는 변수에 # of Bands (밴드 개수)를 받아냅니다.

1 답변 글타래를 보이고 있습니다
'function 질문있습니다.'에 답변달기
글쓴이 정보: