easyidp.metashape.read_project_zip

easyidp.metashape.read_project_zip(project_folder, project_name)

解析``project.zip``文件中的XML,并获取块ID和路径

参数:
  • project_folder (str)

  • project_name (str)

返回:

project_dict -- 键=块ID,值=块路径

返回类型:

dict

备注

如果一个项目路径看起来像:/root/to/metashape/test_proj.psx,那么输入参数应该是:

  • project_folder = "/root/to/metashape/"

  • project_name = "test_proj"

并获得xml_str示例:

<document version="1.2.0">
  <chunks next_id="2">
    <chunk id="0" path="0/chunk.zip"/>
  </chunks>
  <meta>
    <property name="Info/LastSavedDateTime" value="2020:06:22 02:23:20"/>
    <property name="Info/LastSavedSoftwareVersion" value="1.6.2.10247"/>
    <property name="Info/OriginalDateTime" value="2020:06:22 02:20:16"/>
    <property name="Info/OriginalSoftwareName" value="Agisoft Metashape"/>
    <property name="Info/OriginalSoftwareVendor" value="Agisoft"/>
    <property name="Info/OriginalSoftwareVersion" value="1.6.2.10247"/>
  </meta>
</document>

示例

数据准备

>>> import easyidp as idp
>>> test_data = idp.data.TestData()

>>> project_folder = test_data.metashape.lotus_psx.parents[0]
PosixPath('/Users/<user>/Library/Application Support/easyidp.data/data_for_tests/metashape')
>>> project_name = 'Lotus'

然后使用此函数

>>> idp.metashape.read_project_zip(project_folder, project_name)
{'0': '0/chunk.zip'}