matlab.io.fits.writeImg
FITS 이미지에 쓰기
구문
writeImg(fptr,data)
writeImg(fptr,data,fpixel)
설명
writeImg(fptr,data)
는 전체 이미지를 FITS 데이터 배열에 씁니다. data
의 행과 열 개수는 각각 NAXIS2 키워드와 NAXIS1 키워드의 값과 같아야 합니다. 이후의 크기는 각각 NAXIS3, NAXIS4 ... NAXISn 키워드와 일치해야 합니다.
writeImg(fptr,data,fpixel)
은 이미지의 서브셋을 FITS 데이터 배열에 씁니다. fpixel
은 이미지 영역에서 첫 번째 픽셀의 좌표를 지정합니다.
이 함수는 CFITSIO 라이브러리 C API의 fits_write_subset (ffpss)
함수에 대응합니다.
예제
import matlab.io.* fptr = fits.createFile('myfile.fits'); fits.createImg(fptr,'long_img',[256 512]); data = reshape(1:256*512,[256 512]); data = int32(data); fits.writeImg(fptr,data); fits.closeFile(fptr);
80x40 uint8
형 이미지를 만들고 가장 바깥쪽 픽셀을 제외한 모든 픽셀을 1로 설정합니다.
import matlab.io.* fptr = fits.createFile('myfile.fits'); fits.createImg(fptr,'uint8',[80 40]); data = ones(78,38); fits.writeImg(fptr,data,[1 1]); fits.closeFile(fptr);
팁
MATLAB®은 원시 FITS 이미지 데이터를 주어진 순서대로 쓰지만, FITS 이미지 데이터를 읽고 쓰는 일부 소프트웨어 패키지는 이미지의 맨 아래 행부터 이미지 데이터가 저장된다고 가정합니다. 따라서 MATLAB에서 작성된 FITS 이미지 데이터는 다른 소프트웨어 패키지를 사용하여 표시했을 때와 위아래 방향(즉, 가로 축 기준)이 뒤집혀 보일 수 있습니다. MATLAB에서 이미지를 뒤집으려면,
matlab.io.fits.writeImg
함수로 이미지를 쓰기 전에 이미지 데이터에flipud
함수를 사용할 수 있습니다.