# 文件输入模式使用指南 本文档介绍如何使用流星监测系统的文件输入模式,允许您使用预先录制的视频文件代替实时摄像头进行系统测试和开发。 ## 配置文件输入模式 ### 方法 1:使用配置文件 1. 创建或修改配置文件(例如 `config.toml`),启用文件输入模式: ```toml [camera] # 启用文件输入模式 file_input_mode = true # 视频文件路径 input_file_path = "/path/to/your/starsky_video.mp4" # 是否循环播放视频 loop_video = true ``` 2. 使用此配置文件运行系统: ```bash ./meteor_detect --config /path/to/config.toml ``` ### 方法 2:使用演示程序 项目包含了一个专用的文件输入演示程序,可以直接测试星图叠加功能: ```bash cargo run --bin file_input_demo ``` 程序会提示您输入视频文件路径,然后显示带有星图叠加的视频。 ## 推荐的视频素材来源 1. **公共领域星空延时摄影**: - NASA 图像和视频库 - ESA 图像和视频库 - 国家天文台提供的公共材料 2. **创作共享许可星空视频**: - Pexels (https://www.pexels.com/search/videos/night%20sky/) - Pixabay (https://pixabay.com/videos/search/night%20sky/) - Videvo (https://www.videvo.net/stock-video-footage/night-sky/) 3. **天文学家资源**: - 很多天文学家会分享用于教育目的的延时摄影 - 天文台公开的望远镜视频素材 ## 视频文件要求 为了获得最佳效果,建议使用符合以下条件的视频文件: 1. **分辨率**:建议使用720p以上分辨率的视频,最好是1080p 2. **格式**:支持常见视频格式,如MP4、AVI、MOV等(OpenCV支持的格式) 3. **帧率**:理想的帧率为每秒30帧左右 4. **曝光**:足够长的曝光时间,以便清晰捕捉星星 5. **内容**:包含相对稳定的星空视图,最好是长时间的延时摄影 6. **光污染**:尽量选择低光污染环境下拍摄的视频 ## 文件输入模式的限制 使用文件输入模式时,请注意以下限制: 1. **GPS数据**:系统将使用配置文件中的固定GPS位置,而不是实时位置 2. **时间戳**:时间戳将基于系统当前时间,而不是原始拍摄时间 3. **视频循环**:启用循环选项后,视频将在结束时自动从头开始播放 ## 示例:测试星图解算 以下是使用文件输入模式测试星图解算功能的步骤: 1. 准备一段包含清晰星空的视频文件 2. 修改配置,启用文件输入模式和星图覆盖功能: ```toml [camera] file_input_mode = true input_file_path = "/path/to/starsky_video.mp4" loop_video = true [star_chart] enabled = true solve_field_path = "/usr/local/bin/solve-field" index_path = "/usr/local/share/astrometry" update_frequency = 30.0 ``` 3. 运行系统并观察星图解算和叠加过程 4. 根据需要调整星图设置以获得最佳效果 ## 故障排除 如果在使用文件输入模式时遇到问题,请检查以下几点: 1. **视频文件不存在或无法访问**:确认文件路径正确并且有读取权限 2. **视频格式不受支持**:尝试将视频转换为MP4格式 3. **资源占用过高**:对于高分辨率视频,可能需要降低分辨率或帧率 4. **星图解算失败**:确保视频中有足够的星星,并且astrometry.net工具已正确安装 ## 开发者注意事项 当使用文件输入模式进行开发时: 1. 对于重现问题的场景测试,可以使用特定的视频片段 2. 为了测试不同条件下的性能,准备多种不同类型的星空视频 3. 在测试特定功能时,可以使用包含已知星星位置的标定视频 --- 通过文件输入模式,您可以不依赖于实时的天气条件或特殊的摄影设备,方便地开发和测试系统的各项功能。