You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python脚本向Metashape Chunk添加指定文件失败,求错误排查与正确代码

Metashape脚本添加照片不显示的问题修复

问题原因

你的代码错误在于手动创建Metashape.Photo对象并调用open()方法的方式不符合Metashape API的预期用法。chunk.addPhotos()方法直接接收照片路径列表即可,不需要手动实例化Photo对象,这种手动创建的方式无法正确将照片关联到Chunk中。

修正后的代码

import Metashape
import os

doc = Metashape.Document()
photo_folder = os.path.expanduser("~/Desktop/dronepics")
chunk = doc.addChunk()

# 收集所有符合格式的照片路径
photo_paths = []
for filename in os.listdir(photo_folder):
    if filename.lower().endswith((".jpg", ".jpeg")):  # 小写匹配避免大小写问题
        photo_path = os.path.join(photo_folder, filename)
        photo_paths.append(photo_path)

# 一次性添加所有照片到Chunk
if photo_paths:
    chunk.addPhotos(photo_paths)

# 保存项目
doc.save(os.path.expanduser("~/Desktop/çıktı/proje.psx"))

额外优化说明

  • 使用filename.lower()统一转小写,避免因文件名大小写(如.JPG)导致的匹配遗漏
  • 先收集所有路径再一次性调用addPhotos(),比循环中多次调用更高效,也符合Metashape API的推荐用法
  • 添加了if photo_paths:判断,避免在没有找到照片时执行无效的添加操作

内容的提问来源于stack exchange,提问作者Berke Unan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 06:34:56