如何从Parrot Anafi Thermal无人机的灰度热图中提取温度值?
Parrot Anafi Thermal热成像灰度图温度值提取问题
我正在使用搭载热成像相机的Parrot Anafi Thermal无人机,所有操作基于Python与Olympe库完成。由于Olympe库对该机型热成像功能支持较差,操作过程中遇到不少困难,最终成功获取到热成像相机拍摄的灰度图,但目前的核心问题是:不知道如何从这张灰度图中提取对应温度值——虽了解存在相关计算公式,但完全无从下手。
拍摄的两张对比图:
- 无热源场景的灰度图
- 加入火焰作为热源对比的灰度图
以下是我调试后最优的热成像拍照配置代码:
def setup_photo_burst_mode(drone): drone(set_mode(mode="standard")) # command message olympe.messages.thermal.set_mode(mode, _timeout=10, _no_expect=False, _float_tol=(1e-07, 1e-09)) # Thermal modes standard, disabled, blended. Should disable camera? cam_id 1 apparently is for video only. # No Thermal support for streaming video. drone(set_rendering(mode="thermal", blending_rate=0)) drone(set_palette_part(red=0, green=0, blue=0, index=0, list_flags="")) drone(set_palette_settings(mode="relative", lowest_temp=273, highest_temp=314, outside_colorization="limited", relative_range="unlocked", spot_type="hot", spot_threshold=290)) drone(set_sensitivity(range="low")) drone(set_emissivity(emissivity=1)) drone(set_camera_mode(cam_id=1, value="photo")).wait() drone( set_photo_mode( cam_id=1, mode="single", format="rectilinear", file_format="dng_jpeg", burst="burst_14_over_1s", bracketing="preset_1ev", capture_interval=0.0, ) ).wait().success()
我已经在Python程序中尝试过切换不同拍照模式,也进行过Gray16格式转换,但均未得到有效温度数据。
内容的提问来源于stack exchange,提问作者Kagune
相关产品推荐
相关产品推荐

