cfitsio
을 사용하여 새로운 맞는 파일에 픽셀 데이터로 이미지를 작성하고 채우려고합니다. 나는 어디에서 잘못하고 있는지 모르지만 모든 데이터가 맞는 파일에 쓰여지지 않습니다. 나는 데이터를 체크 아웃하기 위해 binary vi
을 사용했고 이미지 데이터가 제대로 생성되지 않았다. 나는 NASA website에서 두 번째 image HST WFPC 2 fits file을 사용했습니다. 이것은 내가 작성한 코드입니다.픽셀 데이터를 FITS 파일에 쓰기 Cfitsio
#include <string.h>
#include <stdio.h>
#include "fitsio.h"
int main() {
fitsfile *fptr;
int status = 0, i;
fits_open_file(&fptr, "WFPC2ASSNu5780205bx.fits", READONLY, &status);
long naxes[2];
fits_get_img_size(fptr, 3, naxes, &status);
fitsfile *ofptr;
fits_create_file(&ofptr, "o_nasa.fits", &status);
fits_copy_header(fptr, ofptr, &status);
long fp[2] = {1, 1};
long nelements = naxes[0];
float arr[nelements];
for (i = 0; i < nelements; i++) {
arr[i] = 100;
}
int ii, jj, kk;
for (ii = 1; ii <= naxes[0]; ii++) {
for (jj = 1; jj <= naxes[1]; jj++) {
fits_write_pix(ofptr, TFLOAT, fp, nelements, arr, &status); // this is not working
}
}
fits_close_file(ofptr, &status);
fits_close_file(fptr, &status);
return status;
}