UAV/main.py
2025-06-12 15:31:47 +08:00

55 lines
1.8 KiB
Python

import argparse
from app_plugin import ProcessConfig, ODM_Plugin
def parse_args():
parser = argparse.ArgumentParser(description='ODM预处理工具')
# 必需参数
parser.add_argument('--image_dir', required=True, help='输入图片目录路径')
parser.add_argument('--output_dir', required=True, help='输出目录路径')
# parser.add_argument('--image_dir', default=r'G:\UAV_data\test_31\project\images', help='输入图片目录路径')
# parser.add_argument('--output_dir', default=r'G:\ODM_output\test_31', help='输出目录路径')
# 可选参数
parser.add_argument('--mode', default='三维模式',
choices=['快拼模式', '三维模式'], help='处理模式')
parser.add_argument('--grid_size', type=float, default=800, help='网格大小(米)')
parser.add_argument('--grid_overlap', type=float,
default=0.1, help='网格重叠率')
# ODM参数
parser.add_argument('--feature_type', default='sift', help='特征类型')
parser.add_argument('--orthophoto_resolution',
type=float, default=5, help='正射影像分辨率')
args = parser.parse_args()
return args
def main():
args = parse_args()
# 创建配置
config = ProcessConfig(
image_dir=args.image_dir,
output_dir=args.output_dir,
mode=args.mode,
grid_size=args.grid_size,
grid_overlap=args.grid_overlap,
feature_type=args.feature_type,
orthophoto_resolution=args.orthophoto_resolution,
# 其他参数使用默认值
cluster_eps=0.01,
cluster_min_samples=5,
)
# 创建处理器并执行
processor = ODM_Plugin(config)
processor.process()
if __name__ == '__main__':
main()