easyidp.pix4d.parse_p4d_project¶
- easyidp.pix4d.parse_p4d_project(project_path: str, param_folder=None)¶
一个函数,用于自动分析pix4d项目文件夹中的相关子文件
- 参数:
project_path (str) --
pix4d项目文件的路径,该文件夹应包含以下子文件夹:
\project_path |--- 1_initial\ |--- 2_densification\ |--- 3_dsm_ortho\
- param_folder:str,默认值为None
- 如果未给出,它将作为标准pix4d项目进行解析,并尝试从``1_initial/param``文件夹获取项目名称如果它不是标准的pix4d项目(重新组织的文件夹),需要手动指定param文件夹的路径,以解析project_name以供后续使用。
- 返回:
p4d -- 一个包含每个文件路径的python字典。
{ "project_name": the prefix of whole project file. "param": the folder of parameters "pcd": the point cloud file "dom": the digital orthomosaic file "dsm": the digital surface model file "undist_raw": the undistorted images corrected by the pix4d software (when original image unable to find) }
- 返回类型:
dict
备注
项目名称可以从easyidp 2.0中的参数文件夹前缀中提取,无需手动指定。要查找输出,它将选择第一个符合预期文件格式的文件。
示例
数据准备
>>> import easyidp as idp >>> test_data = idp.data.TestData() >>> test_folder = test_data.pix4d.maize_folder PosixPath('/Users/<user>/Library/Application Support/easyidp.data/data_for_tests/pix4d/maize_tanashi/maize_tanashi_3NA_20190729_Ins1Rgb_30m_pix4d') >>> proj_name1 = "maize_tanashi_3NA_20190729_Ins1Rgb_30m_pix4d"
然后使用此函数解析给定的pix4d:
>>> p4d_p = idp.pix4d.parse_p4d_project(test_folder) >>> p4d_p.keys() dict_keys(['param', 'pcd', 'dom', 'dsm', 'undist_raw', 'project_name']) >>> p4d_p['project_name'] 'maize_tanashi_3NA_20190729_Ins1Rgb_30m_pix4d' >>> p4d_p['dom'] PosixPath('/Users/<user>/Library/Application Support/easyidp.data/data_for_tests/pix4d/maize_tanashi/maize_tanashi_3NA_20190729_Ins1Rgb_30m_pix4d/3_dsm_ortho/2_mosaic/maize_tanashi_3NA_20190729_Ins1Rgb_30m_pix4d_transparent_mosaic_group1.tif')