matlab.io.fits.readImg
读取 FITS 图像数据
语法
imgdata = readImg(fptr)
imgdata = readImg(fptr,fpixel,lpixel)
imgdata = readImg(fptr,fpixel,lpixel,inc)
说明
imgdata = readImg(fptr) 读取当前整个图像。imgdata 中的行数对应于 NAXIS2 关键字的值,列数则对应于 NAXIS1 关键字的值。imgdata 的所有后续维度将对应于 NAXIS3、NAXIS4 等等。
imgdata = readImg(fptr,fpixel,lpixel) 读取像素坐标 fpixel 和 lpixel 定义的子图像。fpixel 参量是第一个像素的坐标,lpixel 是最后一个像素的坐标。fpixel 和 lpixel 均从 1 开始。
imgdata = readImg(fptr,fpixel,lpixel,inc) 读取 fpixel、lpixel 和 inc 定义的子图像。inc 参量表示沿每个范围的元素间间距。
此函数对应于 CFITSIO 库 C API 中的 fits_read_subset (ffgsv) 函数。
示例
读取整个图像。
import matlab.io.* fptr = fits.openFile('tst0012.fits'); data = fits.readImg(fptr); fits.closeFile(fptr);
读取 70x80 图像子集。
import matlab.io.* fptr = fits.openFile('tst0012.fits'); img = fits.readImg(fptr,[11 11],[80 90]); fits.closeFile(fptr);
提示
MATLAB® 按照 FITS 图像数据在文件中出现的顺序读取该图像数据,但一些用于读取和写入 FITS 图像数据的软件包假定图像数据按照图像的底行在前的顺序存储。因此与使用其他软件包显示的相同数据相比,MATLAB 中显示的 FITS 图像数据可能会出现上下方向的翻转(即绕水平轴翻转)。要在 MATLAB 中翻转图像,您可以在显示图像之前对
matlab.io.fits.readImg的输出使用flipud函数。