fitsiolib for MATLAB中出错:无法创建命名文件
我需要写一组图像,它们在for循环中计算。如果我使用sprintf定义路径,就会得到错误fitsiolib for MATLAB中出错:无法创建命名文件,matlab,image-processing,fits,Matlab,Image Processing,Fits,我需要写一组图像,它们在for循环中计算。如果我使用sprintf定义路径,就会得到错误 Error using fitsiolib CFITSIO library error (105): couldn't create the named file Error in matlab.io.fits.createFile (line 32) fptr = fitsiolib('create_file',filename); Error in fitswrite (line 67) fptr
Error using fitsiolib
CFITSIO library error (105): couldn't create the named file
Error in matlab.io.fits.createFile (line 32)
fptr = fitsiolib('create_file',filename);
Error in fitswrite (line 67)
fptr = fits.createFile(filename);
Error in Calculation_correction_image (line 23)
fitswrite(image_calculated, t);
你对如何避免这种情况有什么建议吗?以下是计算图像的代码部分:
k = 0;
for j=0:40
image_calculated = (image_summed_start - (image_correction*j))/image_summed_start;
t = sprintf('image_projection_%02i.fits',j)
A = j
fitswrite(image_calculated, t);
end
它可能正在写入计算机中需要权限的路径。试着把你的代码/工作目录移到你知道你有写权限的其他地方。我很确定sprintf生成的文件名是可忽略的。除了权限问题,我可以想象一个完整的硬盘或其他硬件问题。。。您是否尝试过较小的图像?我观察到类似的行为,尽管我可以成功地运行上述代码。如果我反复运行fitswriteimg,'destfile.fits',它每次都会工作,创建文件并替换它,无论是否使用完整路径。如果我尝试fitswriteimg,“destfile”-没有扩展名-如果文件存在或不存在,就会生成错误。如果我添加了路径-没有扩展-它只在第一次工作。放置任何扩展名.fi、.geo、.sthg和fitswrite的任何组合都可以。只要fitswrite.m或fits.createFile.m必须添加扩展名,代码就会失败。