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
函数。