Python代码将HDF文件批量转为TIFF遥感影像

Python代码将HDF文件批量转为TIFF遥感影像

本文介绍基于PythonArcPy模块,实现大量HDF格式栅格图像文件批量转换TIFF格式的方法。

首先,来看看我们想要实现的需求。

在一个名为HDF的文件夹下,有五个子文件夹;每一个子文件夹中,都存储了大量的.hdf格式的栅格遥感影像数据。

今日霍州(www.jrhz.info)©️

我们在其中任选一个子文件夹,来看看其中所含的文件。

今日霍州(www.jrhz.info)©️

我们要做的,就是将HDF文件夹下的全部子文件夹中全部.hdf格式图像文件,一次性转换为.tif格式的图像文件,并存储在另一个名为TIFF的文件夹中。

知道了具体需求,就可以开始操作了。首先,这里用到的代码如下。

# -*- coding: utf-8 -*-"""Created on Fri Apr 15 11:13:27 2022@author: fkxxgis"""import osimport arcpyhdf_file_path="E:/LST/Data/MODIS/HDF/"tif_file_path="E:/LST/Data/MODIS/TIFF/"hdf_file_name_list=os.listdir(hdf_file_path)for hdf_file in hdf_file_name_list: if os.path.isdir(hdf_file_path+hdf_file): file_name_temp=hdf_file hdf_file_name_list_new=os.listdir(hdf_file_path+hdf_file) for hdf_file in hdf_file_name_list_new: tif_file_name=hdf_file[8:23]+".tif" data=arcpy.ExtractSubDataset_management(hdf_file_path+file_name_temp+'/'+hdf_file,tif_file_path+tif_file_name,"0;4") else: tif_file_name=hdf_file[8:23]+".tif" data=arcpy.ExtractSubDataset_management(hdf_file_path+hdf_file,tif_file_path+tif_file_name,"0;4")

其中,hdf_file_path是.hdf格式文件的存储路径,tif_file_path是.tif格式文件的存储路径,换句话说也就是我们的结果保存路径。

首先,通过os.listdir()函数获取HDF文件夹下全部文件;由于我们的.hdf格式文件并不是直接保存在HDF这个大文件夹下的,而是HDF下属的多个子文件夹下,所以进一步通过os.path.isdir()函数进入这些子文件夹,并遍历其中的.hdf格式文件,保存在hdf_file_name_list_new中;随后,依据每一个.hdf格式文件的名称,依次配置之后我们生成的.tif格式文件的名称。

接下来,我们就可以通过arcpy.ExtractSubDataset_management()函数来实现图像格式的转换了。其中,这一函数的第一个参数是原有.hdf文件的路径及名称,第二个参数是我们希望生成的.tif文件的路径及名称,第三个参数是我们希望在格式转换时,保存的具体波段。

需要着重说明一下这里保存波段的选取。在本文中,我需要转换格式的是MODIS的地表温度产品MOD11A2,其第一个波段(编号为0)是地表白天的温度,第五个波段(编号为4)是地表夜晚的温度,如下图所示。

今日霍州(www.jrhz.info)©️

假如在后续处理中,我只需要白天、夜晚这两个波段,也就是编号为0和4的这两个波段,那么我就只需要在arcpy.ExtractSubDataset_management()函数的第三个参数中输入"0;4"就好了;其他情况以此类推。

以上便是本次操作的全部代码。我们这里选择在 IDLE (Python GUI) 中运行代码。

今日霍州(www.jrhz.info)©️

得到结果文件如下图;可以看到,所有图像都已经以.tif的格式保存了。

今日霍州(www.jrhz.info)©️

至此,大功告成。

特别声明:[Python代码将HDF文件批量转为TIFF遥感影像] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

朱媛媛去世后辛柏青首露正脸,状态不对劲,眼神空洞憔悴到不敢认(朱媛媛的丈夫是谁)

网友镜头里,辛柏青穿着黑色羽绒服,头戴鸭舌帽🧢,身边是17岁女儿本本,还有老友李乃文、唐旭——朱媛媛抗癌时期就常来陪伴的"铁三角"。 刘天池在采访里回忆朱媛媛离世那天,她给辛柏青发去长文安慰,&qu

朱媛媛去世后辛柏青首露正脸,状态不对劲,眼神空洞憔悴到不敢认(朱媛媛的丈夫是谁)

洗牙有哪些优缺点(洗牙的利与弊有哪些)

洗牙能够有效清除牙结石和牙菌斑,预防牙龈炎和牙周病,但可能会引起牙齿敏感或牙龈出血等短期不适。通过超声波或手工器械去除牙齿表面的牙结石和牙菌斑,可以减少口腔细菌滋生,从而降低牙龈炎和牙周炎的发生概率

洗牙有哪些优缺点(洗牙的利与弊有哪些)

经济下行了,我居然都可以爱光头老男人了!(经济下行了吗)

以往的节目中,男嘉宾往往成为网友批评的对象,但这一次,大部分网友站在了路行一方,因为他并没有做出太多引起争议的举动。 总结来说,尽管路行的外形和性格可能不符合许多人的理想,但他提供的生活保障与经济支持,正是许…

经济下行了,我居然都可以爱光头老男人了!(经济下行了吗)

假如东方闻樱真的演了贾宝玉,谁能演贾探春呢(东方闻樱现在干什么)

她在87版《红楼梦》中饰演贾探春,而她与剧组的关系却有些特别。东方闻樱在剧组中的身份与背景也注定让她显得与众不同。事实上,东方闻樱不仅仅是为演绎这角色而去塑造,她早在《红楼梦》剧组时就曾多次“演过”贾宝玉,虽…

假如东方闻樱真的演了贾宝玉,谁能演贾探春呢(东方闻樱现在干什么)

小儿复方麝香草酚撒粉会产生哪些不良反应吗(复方麝香草酚洗剂)

小儿复方麝香草酚撒粉是一种具有止痒作用的皮肤用药,主要成分为薄荷脑、樟脑、水杨酸甲酯等。该药主要用于治疗小儿痱子引起的不适症状,如瘙痒、红肿等。使用小儿复方麝香草酚撒粉可能会引起皮肤刺激和过敏反应。

小儿复方麝香草酚撒粉会产生哪些不良反应吗(复方麝香草酚洗剂)