UAV/main.py

55 lines
1.8 KiB
Python
Raw Normal View History

2025-01-09 11:45:55 +08:00
import argparse
2025-04-11 15:38:15 +08:00
from app_plugin import ProcessConfig, ODM_Plugin
2025-01-09 11:45:55 +08:00
2025-01-09 11:45:55 +08:00
def parse_args():
parser = argparse.ArgumentParser(description='ODM预处理工具')
2025-01-09 11:45:55 +08:00
# 必需参数
parser.add_argument('--image_dir', required=True, help='输入图片目录路径')
parser.add_argument('--output_dir', required=True, help='输出目录路径')
2025-04-25 09:11:37 +08:00
# 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='输出目录路径')
2025-01-09 11:45:55 +08:00
# 可选参数
parser.add_argument('--mode', default='三维模式',
2025-04-11 17:22:11 +08:00
choices=['快拼模式', '三维模式'], help='处理模式')
2025-01-22 10:50:20 +08:00
parser.add_argument('--grid_size', type=float, default=800, help='网格大小(米)')
parser.add_argument('--grid_overlap', type=float,
default=0.1, help='网格重叠率')
2025-06-12 15:31:47 +08:00
# ODM参数
parser.add_argument('--feature_type', default='sift', help='特征类型')
parser.add_argument('--orthophoto_resolution',
type=float, default=5, help='正射影像分辨率')
2025-01-09 11:45:55 +08:00
args = parser.parse_args()
return args
2025-01-09 11:45:55 +08:00
def main():
args = parse_args()
2025-01-09 11:45:55 +08:00
# 创建配置
2025-04-11 15:38:15 +08:00
config = ProcessConfig(
2025-01-09 11:45:55 +08:00
image_dir=args.image_dir,
output_dir=args.output_dir,
mode=args.mode,
grid_size=args.grid_size,
2025-04-26 10:16:00 +08:00
grid_overlap=args.grid_overlap,
2025-06-12 15:31:47 +08:00
feature_type=args.feature_type,
orthophoto_resolution=args.orthophoto_resolution,
2025-01-09 11:45:55 +08:00
# 其他参数使用默认值
cluster_eps=0.01,
cluster_min_samples=5,
)
2025-01-09 11:45:55 +08:00
# 创建处理器并执行
2025-04-11 15:38:15 +08:00
processor = ODM_Plugin(config)
2025-01-09 11:45:55 +08:00
processor.process()
2025-01-09 11:45:55 +08:00
if __name__ == '__main__':
main()