You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
2.8 KiB
97 lines
2.8 KiB
1#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
"""
|
|
无人机战场态势感知系统 - 启动脚本
|
|
让用户选择运行模式
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
|
|
def show_menu():
|
|
"""显示菜单"""
|
|
print("=" * 60)
|
|
print("🚁 无人机战场态势感知系统")
|
|
print("=" * 60)
|
|
print()
|
|
print("请选择运行模式:")
|
|
print()
|
|
print("1. 🌐 Web模式 (推荐)")
|
|
print(" • 地图作为主界面")
|
|
print(" • 通过浏览器操作")
|
|
print(" • 可视化程度更高")
|
|
print(" • 支持远程访问")
|
|
print()
|
|
print("2. 🖥️ 传统模式")
|
|
print(" • 直接显示摄像头画面")
|
|
print(" • 键盘快捷键操作")
|
|
print(" • 性能更好")
|
|
print(" • 适合本地使用")
|
|
print()
|
|
print("3. ⚙️ 配置摄像头位置")
|
|
print(" • 设置GPS坐标")
|
|
print(" • 配置朝向角度")
|
|
print(" • 设置API Key")
|
|
print()
|
|
print("4. 🧪 运行系统测试")
|
|
print(" • 检查各模块状态")
|
|
print(" • 验证系统功能")
|
|
print()
|
|
print("0. ❌ 退出")
|
|
print()
|
|
|
|
def main():
|
|
"""主函数"""
|
|
while True:
|
|
show_menu()
|
|
try:
|
|
choice = input("请输入选择 (0-4): ").strip()
|
|
|
|
if choice == "1":
|
|
print("\n🌐 启动Web模式...")
|
|
import main_web
|
|
main_web.main()
|
|
break
|
|
|
|
elif choice == "2":
|
|
print("\n🖥️ 启动传统模式...")
|
|
import main
|
|
main.main()
|
|
break
|
|
|
|
elif choice == "3":
|
|
print("\n⚙️ 配置摄像头位置...")
|
|
import sys
|
|
sys.path.append('tools')
|
|
import setup_camera_location
|
|
setup_camera_location.main()
|
|
print("\n配置完成,请重新选择运行模式")
|
|
input("按回车键继续...")
|
|
|
|
elif choice == "4":
|
|
print("\n🧪 运行系统测试...")
|
|
import sys
|
|
sys.path.append('tests')
|
|
import test_system
|
|
test_system.main()
|
|
print("\n测试完成")
|
|
input("按回车键继续...")
|
|
|
|
elif choice == "0":
|
|
print("\n👋 再见!")
|
|
sys.exit(0)
|
|
|
|
else:
|
|
print("\n❌ 无效选择,请重新输入")
|
|
input("按回车键继续...")
|
|
|
|
except KeyboardInterrupt:
|
|
print("\n\n👋 再见!")
|
|
sys.exit(0)
|
|
except Exception as e:
|
|
print(f"\n❌ 运行出错: {e}")
|
|
input("按回车键继续...")
|
|
|
|
if __name__ == "__main__":
|
|
main() |