风力激光雷达数据转换器。
lidaco的Python项目详细描述
利达科
li da co(windlidardataconverter)是一个库和可执行文件,支持数据转换器的模块化写入。
根据用户在config.yml上指定的配置,选择一个读卡器模块从输入文件导入数据。 类似地,还选择了写入程序来写入输出文件。
lidaco致力于使用unidataCommon Data Model描述的数据集。它可以用来处理单个文件或整个文件夹。
可用读卡器
* AQ500
* Galion
* WLS70
* Windcubev1
* Windcubev2
* Windscanner
* ZephIR300
* Triton
可用的写入程序
* MetadataCard
* NcML
* NetCDF4
开始
安装
pip install lidaco
在命令行(shell)中运行
lidaco --config-file=samples/Windscanner/config.yaml
用作库
fromlidaco.core.BuilderimportBuilderbuilder=Builder(config_file='path/to/config.yaml')builder.build()
转换数据
写入转换文件
* MetadataCard
* NcML
* NetCDF4
lidaco --config-file=samples/Windscanner/config.yaml
用作库
fromlidaco.core.BuilderimportBuilderbuilder=Builder(config_file='path/to/config.yaml')builder.build()
转换数据
写入转换文件
每次转换都需要一个用YAML编写的配置文件。此文件包含四组(可选)主要配置:
参数
此部分允许您指定转换器本身、所选读卡器和/或写入器的参数。 转换器参数为:
parameters:input:path:./path/to/input/folder/format:Windscanner# The name should match output:path:./path/to/output/folder# optional, defaults to ./output/format:NetCDF4# Optional, and specifies the number of input files to be concatenated per output file.# If not specified defaults to 1 (1 output per input file). The last output will contain <= output_block_size input files.# If the parameter is specified with None (the same as without any value), all input files will be concatenated into a single output file.output_block_size:3
其中一些参数可以使用命令参数重写,请运行lidaco --help
了解它们。
在指定相对路径时,用于解析其绝对值的配置文件位置是指定相对路径的配置文件位置,或者指定相对路径作为命令参数时的当前目录。
根据使用的特定读写器,可能需要其他参数。请阅读相应的可用模块文档,或尝试查看其源代码。
属性
此部分指定将添加到数据集的全局属性。你可以添加你想要的所有属性。
attributes:# e.g.,lidar_technology:'pulsed'lidar_scanning_type:'verticalprofiling'data_processing_history:'datatakenfrom.scnfilesgeneratedby...'
变量
这个部分类似于attributes但是它不是用来指定属性的读取,而是用来指定变量。
variables:# e.g.,pitch:data_type:'f4'units:'degrees'long_name:'lidar_pitch_angle'comment:''accuracy:''accuracy_info:'Noinformationonpitchaccuracyavailable.'value:0
导入
Lidaco配置系统的建立是为了激发配置的可重用性,因此每个配置文件都可以导入其他配置文件。使用此机制,您可以将配置拆分为设备、方案、活动等。 如果一个属性或变量有多个定义,则文件中的定义优先于导入的其他定义。
imports:# read in order-./general/NEWA_Kassel_general_dataset.yaml-./instruments/Windcubev2_general_instrument_description.yaml-./processing/NEWA_Kassel_data_processing_history.yaml
有关如何设置配置文件的更多示例,请查看可用的 Samples。
贡献
如果您想添加或看到正在添加,可以对转换器进行一些更改:
- Open an issue以便大家讨论。
- 和/或Submit a pull request以及所需的更改。(About pull requests)