Main Content

niftiwrite

NIfTI 형식을 사용하여 파일에 볼륨 쓰기

설명

예제

niftiwrite(V,filename)은 NIfTI(Neuroimaging Informatics Technology Initiative) 형식을 사용하여 볼륨 영상 데이터 V를 파일에 씁니다. 기본적으로 niftiwriteNIfTI1 형식을 사용하여 메타데이터와 볼륨 데이터를 모두 포함하는 결합된 NIfTI 파일을 만듭니다. niftiwrite는 파일 이름을 filename으로 명명하고 .nii 파일 확장자를 추가합니다. niftiwrite는 적절한 디폴트 값과 볼륨 속성(예: 크기 및 데이터형)을 사용하여 메타데이터를 채웁니다.

예제

niftiwrite(V,filename,info)info의 파일 메타데이터도 포함시킵니다. 메타데이터가 영상 콘텐츠 및 크기와 일치하지 않으면 niftiwrite는 오류를 반환합니다.

niftiwrite(V,filename,info,Name,Value)는 하나 이상의 이름-값 인수를 사용하여 추가 옵션을 지정합니다. 예를 들면 niftiwrite(v,filename,"Version","NIfTI2")v의 데이터를 NIfTI2 파일 형식의 파일에 씁니다.

예제

모두 축소

NIfTI 파일에서 영상 볼륨을 읽어 들입니다.

V = niftiread("brain.nii");

3×3 중앙값 필터를 사용하여 3차원 영상을 필터링합니다.

V = medfilt3(V);

디폴트 헤더 값을 사용하여 NIfTI 파일에 필터링된 영상을 씁니다.

niftiwrite(V,"outbrain.nii");

.nii 파일 이름을 사용하여 NIfTI 파일에서 메타데이터를 읽어 들입니다.

info = niftiinfo('brain.nii');

파일 메타데이터를 사용하여 파일에서 볼륨 데이터를 읽어 들입니다.

V = niftiread(info);

파일의 Description 메타데이터 필드를 편집합니다.

info.Description = 'Modified using MATLAB R2017b';

수정된 메타데이터와 함께 볼륨 데이터를 새 .nii 파일에 씁니다.

niftiwrite(V,'outbrain.nii',info);

이 예제에서는 압축된 NIfTI 파일에 볼륨 데이터를 쓰는 두 가지 방법을 보여줍니다.

NIfTI 파일에서 볼륨을 읽어 들입니다.

V = niftiread("brain.nii");

확장자 .nii.gz가 포함된 파일 이름을 지정하여 볼륨을 압축된 NIfTI 파일에 씁니다.

niftiwrite(V,"outbrain.nii.gz")

또는 Compressed 이름-값 인수를 true로 지정하여 압축된 파일을 쓸 수 있습니다.

niftiwrite(V,"outbrain","Compressed",true)

입력 인수

모두 축소

NIfTI 파일 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 기본적으로 niftiwrite는 메타데이터와 영상 데이터를 모두 포함하고 확장자가 .nii인 결합된 파일을 만듭니다.

  • 확장자가 .nii.gz인 파일 이름을 지정하거나 Compressed 이름-값 인수를 true로 지정하는 경우 niftiwrite는 확장자가 .nii.gz인 압축된 파일을 씁니다.

  • Combined 이름-값 인수를 false로 지정하면 niftiwrite는 이름은 같고 파일 확장자가 다른 파일 두 개를 만듭니다. 한 파일에는 볼륨과 연결된 메타데이터가 포함되고 파일 확장자는 .hdr입니다. 다른 파일에는 영상 데이터가 포함되고 파일 확장자는 .img입니다.

데이터형: char | string

볼륨 데이터로, 숫자형 배열로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

파일 메타데이터로, niftiinfo 함수에서 반환된 구조체로 지정됩니다.

데이터형: struct

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: niftiwrite(V,"outbrain.nii","Compressed",true)

생성할 NIfTI 파일의 유형으로, true 또는 false로 지정됩니다. 값이 true이면 niftiwrite는 파일 확장자가 .nii인 단일 파일을 만듭니다. false이면 niftiwrite는 이름은 같지만 파일 확장자가 다른 두 개 파일을 만듭니다. 메타데이터를 포함하는 파일의 확장자는 .hdr이며 볼륨 영상 데이터를 포함하는 파일의 확장자는 .img입니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

영상 데이터를 압축할지 여부로, true 또는 false로 지정됩니다. Compressedtrue이면 niftiwrite는 gzip을 사용하여 파일 확장자가 .nii.gz인 압축된 파일을 생성합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

데이터의 엔디안으로, 다음 값 중 하나로 지정됩니다.

  • "little"은 리틀 엔디안 형식을 지정합니다.

  • "big"은 빅 엔디안 형식을 지정합니다.

데이터형: char | string

NIfTI 데이터 형식으로, 다음 값 중 하나로 지정됩니다.

  • NIfTI1 - "NIfTI1" 형식을 사용하여 파일을 씁니다.

  • NIfTI2 - "NIfTI2" 형식을 사용하여 파일을 씁니다.

  • Version이 지정되지 않은 경우 디폴트 값은 입력 볼륨 데이터의 최대 차원에 따라 결정됩니다.

    • 입력값의 최대 차원이 32767보다 작거나 같으면 디폴트 값은 NIfTI1입니다.

    • 입력값의 최대 차원이 32767보다 크면 디폴트 값은 NIfTI2입니다.

데이터형: char | string

참고 문헌

[1] Cox, R. W., J. Ashburner, H. Breman, K. Fissell, C. Haselgrove, C. J. Holmes, J. L. Lancaster, D. E. Rex, S. M. Smith, J. B. Woodward, and S. C. Strother. "A (sort of) new image data format standard: NiFTI-1." 10th Annual Meeting of Organisation of Human Brain Mapping, Budapest, Hungary, June 2004.

버전 내역

R2017b에 개발됨

모두 확장

참고 항목

| | (Medical Imaging Toolbox)