无人机全天空数码相机的实用程序:读取和绘制
dascutils的Python项目详细描述
DASC全天空摄影机实用程序
绘图,保存,分析扑克牌平面研究范围的实用工具全天空数码相机。(其他地方也一样)。
此程序处理由于2013年数据上的RAID阵列故障而损坏的FITS文件。
原始数据适合每个文件一个图像。
安装
pip install -e .
用法
许多分析师可能直接使用api,比如:
importdascutilsasdudata=du.load('tests/PKR_DASC_0558_20151007_082351.743.FITS')
这将返回一个xarray.Dataset,它类似于一个“智能”Numpy数组。
如果图像是在数据文件中指定的,则按波长对其进行索引,否则为“未知”。
图像是三维叠加的:(时间,x,y)。
data.time
是每个图像的时间。
还包括一些元数据参数,如相机的位置。
按时间下载原始DASC文件
示例下载2015年10月7日8:23到8:54 UTC到~/data/
:
DownloadDASC 2015-10-07T08:23 2015-10-07T08:54 ~/data
-s
三个字母的网站缩写,例如PKR
用于扑克牌平台等
从DASC原始数据文件制作电影
绘制子块中的所有波长,例如:
PlotDASC tests/ -a cal/PKR_DASC_20110112
其他选项包括:
-t
指定时间限制,例如-t 2014-01-02T02:30 2014-01-02T02:35
-w
仅选择特定波长
空间配准(车牌比例尺)
cal/
目录包含对应于每个像素的AZ
和EL
文件
importdascutilsasdudata=du.load('tests/PKR_DASC_0558_20151007_082351.743.FITS',azelfn='cal/PKR_DASC_20110112')
现在data
包含数据变量az
和el
,与图像形状相同,以及相机在lat
lon
alt_m
中的位置。
- 一定要知道你使用的是磁北还是地理北,否则你会看到磁偏角的旋转。
- 请注意文件名中的日期--也许相机是在该日期之前或之后移动的?
地图投影
在极光和气辉分析中,一个常见的任务是将图像投射到一个假想的高度,也就是说,好像所有的亮度都来自这个高度。
一般来说,这个高度大约是100公里。
函数dascutils.project_altitude()
将坐标mapping_lat
mapping_lon
添加到xarray.dataset,添加方式:
importdascutilsasduimportdascutils.projectionasdpdata=du.load('myfile.FITS',azelfn='cal/PKR_DASC_20110112')data=dp.project_altitude(data,100.)# for 100 km
dascutils.projection
是一个单独的导入,因为它调用基本数据加载不需要的额外python模块。