hdf5 여러 파일 읽기

게시판 IDL Q&A hdf5 여러 파일 읽기

태그: 

4 답변 글타래를 보이고 있습니다
  • 글쓴이
    • #944 Reply
      jungwoo27
      회원

      시간별로 있는 hdf5 형식의 여러개의 파일을 읽으려고 합니다 ㅜㅜ

      파일 제목은 대충 201201010000.h5 201201010200.h5……… 이런 형식입니다

      hdf5 형식이 hdf와는 또다른 형식이라 일단 읽는거 자체가 너무 힘들고요 ㅜㅜ

      거기다가 여러 파일이다 보니 어렵습니다 ㅜㅜ

      도와주세요 ㅜㅜ

    • #945 Reply
      JongHyeon
      회원

      우선 HDF5포맷에 대해서는 IDL에서 F1을 하신다음 도움말에서 HDF5를 검색하시면 설명이 나옵니다.

      여러개의 파일을 읽는다는 것은 파일을 열고 읽고 닫는 일련의 작업을 파일의 갯수만큼 반복한다는 것인데, 여러 파일을 동시에 찾는 작업은 http://idl.selab.re.kr/?p=668 를 보시면 아실 수 있을 겁니다.

    • #950 Reply
      Jonghyuk
      회원

      HDF5 여러개를 읽는 다는 것은 앞의 답변대로 하나의 HDF5을 읽는 작업을 반복하는 것이고, 파일의 목록을 구성하는 것은 FILE_SEARCH 함수를 이용합니다. 이것은 HDF5라고 다른 점은 없습니다.

      HDF5(또는 HDF도 마찬가지입니다)는 HDF5 입출력 루틴을 만드는 사람들(분명히 우리같은 일반 사용자는 아닙니다)에게는 뭔가 거창한 세계이지만, 우리같은 사용자들은 기본적인 규칙과, 이 파일 안에 어떤 내용이 어떤 계층으로 들어 있는지를 아는 것이 중요합니다. 천리안 위성영상 HDF5와 천문 분광 DB HDF5는 같은 HDF5 형식이지만 열어보면 완전히 다른 내용이 들어 있습니다. 그러므로 사용자가 열어 보고 싶은 HDF5의 구조를 확인하는 것이 중요합니다.

      H5_BROWSER 함수가 좋은 도구가 될 것입니다. 이를 이용해서 관심있는 HDF5의 저장 형태를 확인하십시오. 같은 시리즈의 HDF5는 모두 같은 구조로 저장되어 있을 것입니다.
      그 이후에 H5_ 로 시작하는 다양한 루틴들을 이용해서 원하는 데이터만 뽑아 쓰시면 됩니다. HDF5 안에 있는 모든 데이터를 다 뽑아 써야 할 이유도 없습니다. 어떤 필드 하나만 필요한 거라면, 그것만 뽑아서 사용하시면 됩니다.

      H5_PARSE 함수는 HDF5 파일을 통채로 IDL의 구조체로 가지고 오는 것으로 HDF5 파일 크기가 별로 크지 않다면 (몇 GB 안쪽이라면) 유용하게 쓰실 수도 있습니다. 일단 이 함수 한줄이면 HDF5 파일을 HDD에서 IDL의 메모리(구조체)로 가져올 수 있습니다. 그 이후에 구조체의 계층을 타고 필요한 필드를 꺼내올 수 있을 것입니다.

    • #953 Reply
      Jonghyuk
      회원

      http://www.spweather.com/idluser/bbs/view.php?id=idltip&page=4&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=89

      하나의 HDF5을 읽는 간단한 방법으로 위 링크를 검토해 보십시오. 앞서 답변드린, H5_Browser와 H5_Parse를 사용하는 예제입니다.

      여러개의 HDF5라고 해도

      1. H5_Browser로 하나의 파일의 형식을 확인한다. (나머지는 같을 거라고 가정)
      2. File_search로 목록을 확보한다.
      3. 반복해서 파일을 읽고 처리한다 (i=0~N-1)
      3-1. i 번 파일에 대해 H5_Parse로 HDD에서 메모리로 읽어 들인다.
      3-2. 원하는 작업을 수행한다.

      이쯤이 될 거라고 생각합니다.

    • #954 Reply
      jungwoo27
      회원

      정말 감사합니다!!

      많은 도움이 됐습니다 ㅜㅜ

4 답변 글타래를 보이고 있습니다
'hdf5 여러 파일 읽기'에 답변달기
글쓴이 정보: