无人机全天空数码相机的实用程序:读取和绘制

dascutils的Python项目详细描述


imageimageimageimageimageMaintainability

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
    {< CD3> }覆盖现有文件
  • -s三个字母的网站缩写,例如PKR用于扑克牌平台等

从DASC原始数据文件制作电影

绘制子块中的所有波长,例如:

PlotDASC tests/ -a cal/PKR_DASC_20110112

其他选项包括:

  • -t指定时间限制,例如-t 2014-01-02T02:30 2014-01-02T02:35
  • -w仅选择特定波长

空间配准(车牌比例尺)

cal/目录包含对应于每个像素的AZEL文件

importdascutilsasdudata=du.load('tests/PKR_DASC_0558_20151007_082351.743.FITS',azelfn='cal/PKR_DASC_20110112')

现在data包含数据变量azel,与图像形状相同,以及相机在latlonalt_m中的位置。

  • 一定要知道你使用的是磁北还是地理北,否则你会看到磁偏角的旋转。
  • 请注意文件名中的日期--也许相机是在该日期之前或之后移动的?

地图投影

在极光和气辉分析中,一个常见的任务是将图像投射到一个假想的高度,也就是说,好像所有的亮度都来自这个高度。 一般来说,这个高度大约是100公里。 函数dascutils.project_altitude()将坐标mapping_latmapping_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模块。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaI从另一个Jframe类B扩展了一个J帧类a,但在显示帧B时,它也在B中播放帧a   java适配器模式应用程序   使用并行流从java列表中获取Pojo,而不使用任何类型的索引   java更新文本文件中的双精度   java从webservice返回自定义对象   java在查找多个集合的交集时使用Retainal()的最快顺序   java如何在安卓社交媒体应用程序中应用用户对用户支付?   c代码能引发java异常吗?   Java数组填充了最后一个插槽中的内容   java JOOQ从大表中获取数据:良好实践   使用ApachePOI在JavaSwing中嵌入excel工作表   java如何使用枚举定义常量值组   java JavaFX将文本追加到TextArea引发异常   javascript JS在firefox中无法正常工作   java如何在同一片段中的片段打开后编辑该片段打开的活动中的值   对夏洛克的命令。py的解释不同于linux命令行和java进程api   php在Java中动态创建全局多维数组   html Java XML Transformer将“\n”替换为空格   Javac编译编码问题