import requests
from PIL import Image, ImageEnhance
from io import BytesIO

# 百度地图API密钥
ak = 'qf1GuEVTWoUawbNABUHAYXxFY8voeq8l'
# 区域范围
bounds = '39.757751,116.115095,40.124753,116.7096'

# 请求百度地图API获取实时路况图
url = f'http://api.map.baidu.com/staticimage/v2?ak={ak}&width=400&height=400&bounds={bounds}&traffic=1'
response = requests.get(url)

# 读取图片并增强清晰度和对比度
image = Image.open(BytesIO(response.content)).convert('RGB')
enhancer = ImageEnhance.Sharpness(image)
image = enhancer.enhance(3)  # 2倍清晰度
enhancer = ImageEnhance.Contrast(image)
image = enhancer.enhance(1.5)  # 1.5倍对比度

# 保存图片到指定路径
save_path = 'C:/Users/jh/Desktop/data/images/traffic_map.png'
image.save(save_path)

为什么此代码获取的不是交通实况图内容:

这个代码通过百度地图的API获取实时路况图,并对图像进行了清晰度和对比度的增强处理。根据代码逻辑,获取的应该是交通实况图。可能出现以下几种问题导致没有获取到交通实况图:

  1. 检查API密钥是否正确:请确保你的百度地图API密钥(ak)是有效的,可以在百度地图开发者平台上获取。

  2. 检查区域范围是否正确:请确保bounds参数的范围是你所需要的实时路况图的区域范围。

  3. 检查网络连接是否正常:请确保你的网络连接正常,可以访问百度地图API。

如果以上问题都没有解决,可以尝试打印出获取到的图片,查看是否是你期望的交通实况图。可以添加以下代码打印图片:

image.show()

如果图片显示的不是交通实况图,可能是百度地图API返回的数据没有包含交通实况信息,或者获取到的数据有误。你可以通过检查API文档或者联系百度地图API支持团队来获取更多帮助。

Python 获取百度地图实时路况图并增强图像 - 代码分析与问题排查

原文地址: https://www.cveoy.top/t/topic/lXzQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录