当前位置: 首页 > news >正文

百度高德地图坐标转换

百度地图和高德地图的侧重点不太一样。同样一个地名,在百度地图网站上搜索到的地点可能是商业网点,在高德地图网站上搜索到的地点可能是自然行政地点。

高德地图api

在高德地图中,搜索地名,如“乱石头川”,该地名会出现这样的链接

https://ditu.amap.com/place/B0FFGXCDLJ​

这个高德地图连接中最后的“B0FFGXCDLJ”是什么意思?如何转化为经纬度坐标

在高德地图的链接中,B0FFGXCDLJ 是一个 地点的唯一标识符(POI ID),用于标识地图上的某个特定地点。它并不是直接的经纬度信息,而是高德地图内部用于定位和检索地点的编码。

如何将 POI ID 转换为经纬度坐标

要将 POI ID 转换为经纬度坐标,可以通过高德地图的 API 来实现。高德地图提供了丰富的API接口,其中 地理编码API逆地理编码API 可以用于查询地点的详细信息,包括经纬度。

以下是一个使用 Python 和高德地图API将 POI ID 转换为经纬度坐标的示例代码:

import requests# 高德地图API的Key(需要在高德地图开放平台申请)
AMAP_API_KEY = "你的API_KEY"# POI ID
poi_id = "B0FFGXCDLJ"# 高德地图的POI详情查询API
url = f"https://www.amap.com/detail/get/{poi_id}"# 发起请求
response = requests.get(url, params={"key": AMAP_API_KEY})
data = response.json()# 解析经纬度信息
if data.get("status") == "1" and data.get("info") == "OK":location = data["data"]["spec"]["location"]longitude, latitude = map(float, location.split(","))print(f"提取的经纬度信息:经度 = {longitude}, 纬度 = {latitude}")
else:print("无法获取经纬度信息,请检查POI ID或API Key是否正确。")

代码说明
API Key:需要在高德地图开放平台(https://lbs.amap.com/)注册账号并申请一个API Key。
API 请求:通过 https://www.amap.com/detail/get/{poi_id} 接口查询POI的详细信息。
解析数据:从返回的JSON数据中提取经纬度信息。location 字段通常包含经纬度,格式为“经度,纬度”。

 在高德开放平台中,有如下功能。

坐标拾取器 | 高德地图API

示例运行
假设你已经申请了API Key并将其替换到代码中的 AMAP_API_KEY,运行代码后,输出结果可能如下:
提取的经纬度信息:经度 = 116.397428, 纬度 = 39.90923

注意事项
API Key 限制:高德地图API Key有调用次数限制,免费额度通常足够个人使用,但大量请求可能需要付费。
数据准确性:返回的经纬度信息是高德地图数据库中的数据,可能与实际位置有细微偏差。
错误处理:在实际使用中,建议添加更详细的错误处理逻辑,以应对网络请求失败、API Key无效等情况。

在拾取经纬点的时候,要选择合适的城市,防止异地重名。如下所示:

高德地图的坐标系是基于GCJ-02(火星坐标系),而WGS-84是国际上常用的地理坐标系。将高德地图的坐标转换为WGS-84坐标需要进行坐标转换。以下是一个简单的Python代码示例,使用了pyproj库来完成坐标转换。

坐标系的差异:高德地图的坐标系(GCJ-02)和WGS-84坐标系存在一定的偏差。简单的投影转换可能无法完全消除这种偏差,尤其是在高精度要求的场景中。
更精确的转换:如果需要更精确的转换,可以考虑使用专门的算法(如高斯投影反算)或调用高德地图提供的API进行转换。

代码如下:

import math
# 定义常量
PI = math.pi
A = 6378245.0
EE = 0.00669342162296594323
X_PI = PI * 3000.0 / 180.0def transformlat(lng, lat):ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * math.sqrt(math.fabs(lng))ret += (20.0 * math.sin(6.0 * lng * PI) + 20.0 * math.sin(2.0 * lng * PI)) * 2.0 / 3.0ret += (20.0 * math.sin(lat * PI) + 40.0 * math.sin(lat / 3.0 * PI)) * 2.0 / 3.0ret += (160.0 * math.sin(lat / 12.0 * PI) + 320 * math.sin(lat * PI / 30.0)) * 2.0 / 3.0return retdef transformlng(lng, lat):ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * math.sqrt(math.fabs(lng))ret += (20.0 * math.sin(6.0 * lng * PI) + 20.0 * math.sin(2.0 * lng * PI)) * 2.0 / 3.0ret += (20.0 * math.sin(lng * PI) + 40.0 * math.sin(lng / 3.0 * PI)) * 2.0 / 3.0ret += (150.0 * math.sin(lng / 12.0 * PI) + 300.0 * math.sin(lng / 30.0 * PI)) * 2.0 / 3.0return retdef out_of_china(lng, lat):return not (73.66 < lng < 135.05 and 3.86 < lat < 53.55)def gcj02_to_wgs84(gcj_lng, gcj_lat):if out_of_china(gcj_lng, gcj_lat):return gcj_lng, gcj_lat  # 不在中国范围内,直接返回原坐标dlat = transformlat(gcj_lng - 105.0, gcj_lat - 35.0)dlng = transformlng(gcj_lng - 105.0, gcj_lat - 35.0)radlat = gcj_lat / 180.0 * PImagic = math.sin(radlat)magic = 1 - EE * magic * magicsqrtmagic = math.sqrt(magic)dlat = (dlat * 180.0) / ((A * (1 - EE)) / (magic * sqrtmagic) * PI)dlng = (dlng * 180.0) / (A / sqrtmagic * math.cos(radlat) * PI)mglat = gcj_lat + dlatmglng = gcj_lng + dlngwgs84_lng = gcj_lng * 2 - mglngwgs84_lat = gcj_lat * 2 - mglatreturn wgs84_lng, wgs84_lat# 示例:高德地图的经纬度
while True:gcInfo=input("请输入高德坐标信息:")gcList=gcInfo.split(",")gcj_lng = float(gcList[0]) # 经度gcj_lat = float(gcList[1]) # 纬度# 转换为WGS-84坐标wgs84_lng, wgs84_lat = gcj02_to_wgs84(gcj_lng, gcj_lat)print(f"高德地图坐标(GCJ-02): 经度={gcj_lng}, 纬度={gcj_lat}")print(f"WGS-84坐标: 经度={wgs84_lng}, 纬度={wgs84_lat}")

即可完成。

百度地图api

百度地图点线面查询 api  huiyan,网站如下:

https://huiyan.baidu.com/github/tools/coord/

在该网站上,可以选择一个点,然后知道其经纬度坐标和墨卡托坐标。

但是需要注意如下:

#  * 各地图API坐标系统比较与转换;
#  * WGS84坐标系:即地球坐标系,国际上通用的坐标系。设备一般包含GPS芯片或者北斗芯片获取的经纬度为WGS84地理坐标系,
#  * 谷歌地图采用的是WGS84地理坐标系(中国范围除外);
#  * GCJ02坐标系:即火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。谷歌中国地图和搜搜中国地图采用的是GCJ02地理坐标系; 
#  * 3BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系;

所以,要想把百度地图上的经纬度点转换为Arcgis底图中的坐标点,还需要进行解密,将3BD09坐标系的坐标位置还原为WGS84地理坐标系的坐标位置。代码如下

import math
from decimal import *# -*- coding: utf-8 -*-
# /**
#  * 各地图API坐标系统比较与转换;
#  * WGS84坐标系:即地球坐标系,国际上通用的坐标系。设备一般包含GPS芯片或者北斗芯片获取的经纬度为WGS84地理坐标系,
#  * 谷歌地图采用的是WGS84地理坐标系(中国范围除外);
#  * GCJ02坐标系:即火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。谷歌中国地图和搜搜中国地图采用的是GCJ02地理坐标系; 
#  * 3BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系;
#  */
import math
from decimal import *class transfer:def __init__(self,key=None):self.a=6378245.0self.ee=Decimal(0.00669342162296594323)def transformLng(self,x,y):ret=Decimal()ret = 300.0+x+2.0*y+0.1*x*x+0.1*x*y+0.1*math.sqrt(math.fabs(x))ret += (20.0 * math.sin(6.0 * x * math.pi) + 20.0 * math.sin(2.0 * x * math.pi)) * 2.0 / 3.0ret += (20.0 * math.sin(x * math.pi) + 40.0 * math.sin(x / 3.0 * math.pi)) * 2.0 / 3.0ret += (150.0 * math.sin(x / 12.0 * math.pi) + 300.0 * math.sin(x / 30.0* math.pi)) * 2.0 / 3.0return retdef transformLat(self,x,y):ret = Decimal()ret = -100.0 + 2.0 * x + 3.0 * y + 0.2 * y * y + 0.1 * x * y+ 0.2 * math.sqrt(math.fabs(x))ret += (20.0 * math.sin(6.0 * x * math.pi) + 20.0 * math.sin(2.0 * x * math.pi)) * 2.0 / 3.0ret += (20.0 * math.sin(y * math.pi) + 40.0 * math.sin(y / 3.0 * math.pi)) * 2.0 / 3.0ret += (160.0 * math.sin(y / 12.0 * math.pi) + 320 * math.sin(y * math.pi / 30.0)) * 2.0 / 3.0return retdef transfrom(self,lng,lat):dLat = self.transformLat(lng - 105.0, lat - 35.0)dLng = self.transformLng(lng - 105.0, lat - 35.0)radLat = lat / 180.0 * math.pimagic = math.sin(radLat)magic = 1 - self.ee * Decimal(magic) * Decimal(magic)sqrtMagic = math.sqrt(magic)dLat = Decimal((dLat * 180.0)) / ((Decimal(self.a) * (1 - self.ee)) / (Decimal(magic) * Decimal(sqrtMagic)) * Decimal(math.pi))dLng = (dLng * 180.0) / (self.a / sqrtMagic * math.cos(radLat) * math.pi)mgLat = lat + float(dLat)mgLng = lng + dLngreturn mgLng,mgLat#gps坐标转换为gcj02坐标系def wg84_to_gcj02(self,wg84_lng,wg84_lat):dLat=self.transformLat(wg84_lng-105.0,wg84_lat-35.0)dLng=self.transformLng(wg84_lng-105.0,wg84_lat-35.0)radLat = wg84_lat / 180.0 * math.pimagic = math.sin(radLat)magic = 1 - self.ee * Decimal(magic) * Decimal(magic)sqrtMagic = math.sqrt(magic)dLat = Decimal((dLat * 180.0)) / ((Decimal(self.a) * (1 - self.ee)) / (Decimal(magic) * Decimal(sqrtMagic)) * Decimal(math.pi))dLng = (dLng * 180.0) / (self.a / sqrtMagic * math.cos(radLat) * math.pi)gcj02Lat = wg84_lat + float(dLat)gcj02Lng = wg84_lng + dLngreturn gcj02Lng,gcj02Lat#gcj02坐标转百度坐标def gcj02_to_bd09(self,gcj02_lng,gcj02_lat):x = gcj02_lngy = gcj02_latz = math.sqrt(x * x + y * y) + 0.00002 * math.sin(y * math.pi)theta = math.atan2(y, x) + 0.000003 * math.cos(x * math.pi)bd09_Lng = z * math.cos(theta) + 0.0065bd09_Lat = z * math.sin(theta) + 0.006return bd09_Lng,bd09_Lat#wg84坐标转百度坐标def wg84_to_bd09(self,wg84_lng,wg84_lat):gcj02lng,gcj02lat=self.wg84_to_gcj02(wg84_lng,wg84_lat)return self.gcj02_to_bd09(gcj02lng,gcj02lat)#百度坐标转GCJ02坐标def bd09_to_gcj02(self,bd09_lng,bd09_lat):x = bd09_lng - 0.0065y = bd09_lat - 0.006z = math.sqrt(x * x + y * y) - 0.00002 * math.sin(y * math.pi)theta = math.atan2(y, x) - 0.000003 * math.cos(x * math.pi)gcj02_lng = z * math.cos(theta)gcj02_lat = z * math.sin(theta)return gcj02_lng,gcj02_lat#GCJ坐标转WG84坐标def gcj02_to_wg84(self,gcj02_lng,gcj02_lat):mlng,mlat=self.transfrom(gcj02_lng,gcj02_lat)wg84_Lng=gcj02_lng*2-mlngwg84_Lat=gcj02_lat*2-mlatreturn wg84_Lng,wg84_Lat#将百度坐标转WG84坐标def bd09_to_wg84(self,bd09_lng,bd09_lat):gcj02_lng, gcj02_lat=self.bd09_to_gcj02(bd09_lng,bd09_lat)return self.gcj02_to_wg84(gcj02_lng,gcj02_lat)tr=transfer()
#测试,转换正确#循环输入坐标信息
while True:xyInfo=input("请输入百度坐标信息:")xyList=xyInfo.split(",")bd09_lng=float(xyList[0])bd09_lat=float(xyList[1])#输出 百度坐标转WG84坐标print("百度坐标信息:")print(bd09_lng)print(bd09_lat)print("WGS坐标信息")print(tr.bd09_to_wg84(bd09_lng,bd09_lat)[0])print(tr.bd09_to_wg84(bd09_lng,bd09_lat)[1])print()

即可转换完成。

综合代码

根据以上分析,总的代码如下:

choice=input("请选择高德坐标G 或者百度坐标B:")
choice=choice.upper()
if choice=="B":import mathfrom decimal import *# -*- coding: utf-8 -*-# /**#  * 各地图API坐标系统比较与转换;#  * WGS84坐标系:即地球坐标系,国际上通用的坐标系。设备一般包含GPS芯片或者北斗芯片获取的经纬度为WGS84地理坐标系,#  * 谷歌地图采用的是WGS84地理坐标系(中国范围除外);#  * GCJ02坐标系:即火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。谷歌中国地图和搜搜中国地图采用的是GCJ02地理坐标系; #  * 3BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系;#  */import mathfrom decimal import *class transfer:def __init__(self,key=None):self.a=6378245.0self.ee=Decimal(0.00669342162296594323)def transformLng(self,x,y):ret=Decimal()ret = 300.0+x+2.0*y+0.1*x*x+0.1*x*y+0.1*math.sqrt(math.fabs(x))ret += (20.0 * math.sin(6.0 * x * math.pi) + 20.0 * math.sin(2.0 * x * math.pi)) * 2.0 / 3.0ret += (20.0 * math.sin(x * math.pi) + 40.0 * math.sin(x / 3.0 * math.pi)) * 2.0 / 3.0ret += (150.0 * math.sin(x / 12.0 * math.pi) + 300.0 * math.sin(x / 30.0* math.pi)) * 2.0 / 3.0return retdef transformLat(self,x,y):ret = Decimal()ret = -100.0 + 2.0 * x + 3.0 * y + 0.2 * y * y + 0.1 * x * y+ 0.2 * math.sqrt(math.fabs(x))ret += (20.0 * math.sin(6.0 * x * math.pi) + 20.0 * math.sin(2.0 * x * math.pi)) * 2.0 / 3.0ret += (20.0 * math.sin(y * math.pi) + 40.0 * math.sin(y / 3.0 * math.pi)) * 2.0 / 3.0ret += (160.0 * math.sin(y / 12.0 * math.pi) + 320 * math.sin(y * math.pi / 30.0)) * 2.0 / 3.0return retdef transfrom(self,lng,lat):dLat = self.transformLat(lng - 105.0, lat - 35.0)dLng = self.transformLng(lng - 105.0, lat - 35.0)radLat = lat / 180.0 * math.pimagic = math.sin(radLat)magic = 1 - self.ee * Decimal(magic) * Decimal(magic)sqrtMagic = math.sqrt(magic)dLat = Decimal((dLat * 180.0)) / ((Decimal(self.a) * (1 - self.ee)) / (Decimal(magic) * Decimal(sqrtMagic)) * Decimal(math.pi))dLng = (dLng * 180.0) / (self.a / sqrtMagic * math.cos(radLat) * math.pi)mgLat = lat + float(dLat)mgLng = lng + dLngreturn mgLng,mgLat#gps坐标转换为gcj02坐标系def wg84_to_gcj02(self,wg84_lng,wg84_lat):dLat=self.transformLat(wg84_lng-105.0,wg84_lat-35.0)dLng=self.transformLng(wg84_lng-105.0,wg84_lat-35.0)radLat = wg84_lat / 180.0 * math.pimagic = math.sin(radLat)magic = 1 - self.ee * Decimal(magic) * Decimal(magic)sqrtMagic = math.sqrt(magic)dLat = Decimal((dLat * 180.0)) / ((Decimal(self.a) * (1 - self.ee)) / (Decimal(magic) * Decimal(sqrtMagic)) * Decimal(math.pi))dLng = (dLng * 180.0) / (self.a / sqrtMagic * math.cos(radLat) * math.pi)gcj02Lat = wg84_lat + float(dLat)gcj02Lng = wg84_lng + dLngreturn gcj02Lng,gcj02Lat#gcj02坐标转百度坐标def gcj02_to_bd09(self,gcj02_lng,gcj02_lat):x = gcj02_lngy = gcj02_latz = math.sqrt(x * x + y * y) + 0.00002 * math.sin(y * math.pi)theta = math.atan2(y, x) + 0.000003 * math.cos(x * math.pi)bd09_Lng = z * math.cos(theta) + 0.0065bd09_Lat = z * math.sin(theta) + 0.006return bd09_Lng,bd09_Lat#wg84坐标转百度坐标def wg84_to_bd09(self,wg84_lng,wg84_lat):gcj02lng,gcj02lat=self.wg84_to_gcj02(wg84_lng,wg84_lat)return self.gcj02_to_bd09(gcj02lng,gcj02lat)#百度坐标转GCJ02坐标def bd09_to_gcj02(self,bd09_lng,bd09_lat):x = bd09_lng - 0.0065y = bd09_lat - 0.006z = math.sqrt(x * x + y * y) - 0.00002 * math.sin(y * math.pi)theta = math.atan2(y, x) - 0.000003 * math.cos(x * math.pi)gcj02_lng = z * math.cos(theta)gcj02_lat = z * math.sin(theta)return gcj02_lng,gcj02_lat#GCJ坐标转WG84坐标def gcj02_to_wg84(self,gcj02_lng,gcj02_lat):mlng,mlat=self.transfrom(gcj02_lng,gcj02_lat)wg84_Lng=gcj02_lng*2-mlngwg84_Lat=gcj02_lat*2-mlatreturn wg84_Lng,wg84_Lat#将百度坐标转WG84坐标def bd09_to_wg84(self,bd09_lng,bd09_lat):gcj02_lng, gcj02_lat=self.bd09_to_gcj02(bd09_lng,bd09_lat)return self.gcj02_to_wg84(gcj02_lng,gcj02_lat)tr=transfer()#测试,转换正确#循环输入坐标信息while True:xyInfo=input("请输入百度坐标信息:")xyList=xyInfo.split(",")bd09_lng=float(xyList[0])bd09_lat=float(xyList[1])#输出 百度坐标转WG84坐标print("百度坐标信息:")elif choice=="G":import math# 定义常量PI = math.piA = 6378245.0EE = 0.00669342162296594323X_PI = PI * 3000.0 / 180.0def transformlat(lng, lat):ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * math.sqrt(math.fabs(lng))ret += (20.0 * math.sin(6.0 * lng * PI) + 20.0 * math.sin(2.0 * lng * PI)) * 2.0 / 3.0ret += (20.0 * math.sin(lat * PI) + 40.0 * math.sin(lat / 3.0 * PI)) * 2.0 / 3.0ret += (160.0 * math.sin(lat / 12.0 * PI) + 320 * math.sin(lat * PI / 30.0)) * 2.0 / 3.0return retdef transformlng(lng, lat):ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * math.sqrt(math.fabs(lng))ret += (20.0 * math.sin(6.0 * lng * PI) + 20.0 * math.sin(2.0 * lng * PI)) * 2.0 / 3.0ret += (20.0 * math.sin(lng * PI) + 40.0 * math.sin(lng / 3.0 * PI)) * 2.0 / 3.0ret += (150.0 * math.sin(lng / 12.0 * PI) + 300.0 * math.sin(lng / 30.0 * PI)) * 2.0 / 3.0return retdef out_of_china(lng, lat):return not (73.66 < lng < 135.05 and 3.86 < lat < 53.55)def gcj02_to_wgs84(gcj_lng, gcj_lat):if out_of_china(gcj_lng, gcj_lat):return gcj_lng, gcj_lat  # 不在中国范围内,直接返回原坐标dlat = transformlat(gcj_lng - 105.0, gcj_lat - 35.0)dlng = transformlng(gcj_lng - 105.0, gcj_lat - 35.0)radlat = gcj_lat / 180.0 * PImagic = math.sin(radlat)magic = 1 - EE * magic * magicsqrtmagic = math.sqrt(magic)dlat = (dlat * 180.0) / ((A * (1 - EE)) / (magic * sqrtmagic) * PI)dlng = (dlng * 180.0) / (A / sqrtmagic * math.cos(radlat) * PI)mglat = gcj_lat + dlatmglng = gcj_lng + dlngwgs84_lng = gcj_lng * 2 - mglngwgs84_lat = gcj_lat * 2 - mglatreturn wgs84_lng, wgs84_lat# 示例:高德地图的经纬度while True:gcInfo=input("请输入高德坐标信息:")gcList=gcInfo.split(",")gcj_lng = float(gcList[0]) # 经度gcj_lat = float(gcList[1]) # 纬度# 转换为WGS-84坐标wgs84_lng, wgs84_lat = gcj02_to_wgs84(gcj_lng, gcj_lat)print(f"高德地图坐标(GCJ-02): 经度={gcj_lng}, 纬度={gcj_lat}")print(f"WGS-84坐标: 经度={wgs84_lng}, 纬度={wgs84_lat}")print(bd09_lng)print(bd09_lat)print("WGS坐标信息")print(tr.bd09_to_wg84(bd09_lng,bd09_lat)[0])print(tr.bd09_to_wg84(bd09_lng,bd09_lat)[1])print()

即可完成。

一日一图

代码如下:

import turtle as t# 设置画布
t.speed('fastest')  # 设置绘图速度
t.hideturtle()      # 隐藏海龟图标
t.bgcolor('black')  # 设置背景颜色# 绘制时空隧道
i = 0
while i < 235:t.pencolor('cyan')  # 设置画笔颜色为青色t.penup()           # 提起画笔t.goto(0, 0)        # 移动到中心点t.forward(200)      # 向前移动200单位t.pendown()         # 放下画笔t.circle(100)       # 绘制半径为100的圆t.left(2)           # 左转2度i += 1# 结束绘图
t.done()
  1. 设置画布:设置背景颜色为黑色,隐藏海龟图标,设置绘图速度为最快。

  2. 绘制时空隧道:通过循环绘制多个圆形,每次绘制后稍微左转,形成螺旋效果。

  3. 颜色选择:使用青色(cyan)作为画笔颜色,以增强未来感。

  4. 循环次数:循环多次,每次绘制一个圆形并左转2度,形成螺旋状的时空隧道效果。

生成图片如下:

相关文章:

百度高德地图坐标转换

百度地图和高德地图的侧重点不太一样。同样一个地名&#xff0c;在百度地图网站上搜索到的地点可能是商业网点&#xff0c;在高德地图网站上搜索到的地点可能是自然行政地点。 高德地图api 在高德地图中&#xff0c;搜索地名&#xff0c;如“乱石头川”&#xff0c;该地名会出…...

ES 索引结构

ES 既不像 MySQL 这样有严格的 Schema&#xff0c;也不像 MongoDB 那样完全无 Schema&#xff0c;而是介于两者之间。 1️⃣ ES 的 Schema 模式 ES 默认是 Schema-less&#xff08;无模式&#xff09; 的&#xff0c;允许动态添加字段。 但 ES 也支持 Schema&#xff08;映射 …...

HPM_SDK应用本地化——基于6750evkmini

文章目录 前言一、准备工作1、下载官方的SDK2、解压SDK 二、实操1、新建目标工程文件夹2、回到SDK中将相关文件复制1、Borad文件夹2、hello_world文件夹 三、实验现象总结 前言 为什么要对sdk进行应用本地化&#xff1f;在嵌入式开发中我们一般将官方提供的SDK作为参考&#x…...

【deepseek-r1本地部署】

首先需要安装ollama,之前已经安装过了&#xff0c;这里不展示细节 在cmd中输入官网安装命令&#xff1a;ollama run deepseek-r1:32b&#xff0c;开始下载 出现success后&#xff0c;下载完成 接下来就可以使用了&#xff0c;不过是用cmd来运行使用 可以安装UI可视化界面&a…...

查询语句来提取 detail 字段中包含 xxx 的 URL 里的 commodity/ 后面的数字串

您可以使用以下 SQL 查询语句来提取 detail 字段中包含 oss.kxlist.com 的 URL 里的 commodity/ 后面的数字串&#xff1a; <p><img style"max-width:100%;" src"https://oss.kxlist.com//8a989a0c55e4a7900155e7fd7971000b/commodity/20170925/20170…...

堆排序

目录 堆排序&#xff08;不稳定&#xff09;&#xff1a; 代码实现&#xff1a; 思路分析&#xff1a; 总结&#xff1a; 堆排序&#xff08;不稳定&#xff09;&#xff1a; 如果想要一段数据从小到大进行排序&#xff0c;则要先建立大根堆&#xff0c;因为这样每次堆顶上都能…...

【MySQL】我在广州学Mysql 系列—— 数据备份与还原

ℹ️大家好&#xff0c;我是练小杰&#xff0c;今天周一&#xff0c;过两天就是元宵节了&#xff0c;今年元宵节各位又要怎么过呢&#xff01;&#xff01; 本文主要对Mysql数据库中的数据备份与还原内容进行讨论&#xff01;&#xff01; 回顾&#xff1a;&#x1f449;【MySQ…...

【LeetCode Hot100 双指针】移动零、盛最多水的容器、三数之和、接雨水

双指针 1. 移动零题目描述解题思路关键思路&#xff1a;步骤&#xff1a;时间复杂度&#xff1a;空间复杂度&#xff1a; 代码实现 2. 盛最多水的容器题目解析解题思路代码实现 3. 三数之和问题描述&#xff1a;解题思路&#xff1a;算法步骤&#xff1a;代码实现&#xff1a; …...

HTML应用指南:利用POST请求获取接入比亚迪业态的充电桩位置信息

在新能源汽车快速发展的今天,充电桩的分布和可用性成为了影响用户体验的关键因素之一。比亚迪作为全球领先的新能源汽车制造商,不仅在车辆制造方面取得了卓越成就,也在充电基础设施建设上投入了大量资源。为了帮助用户更方便地找到比亚迪充电桩的位置,本篇文章,我们将探究…...

Android车机DIY开发之软件篇(十二) AOSP12下载编译

Android车机DIY开发之软件篇(十二) AOSP12下载编译 sudo apt-get update sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib gmultilib libc6-dev-i386 lib32ncurses5-dev libx11-dev lib32z-dev ccache libgl1-mesa-…...

Jenkins+gitee 搭建自动化部署

Jenkinsgitee 搭建自动化部署 环境说明&#xff1a; 软件版本备注CentOS8.5.2111JDK1.8.0_211Maven3.8.8git2.27.0Jenkins2.319最好选稳定版本&#xff0c;不然安装插件有点麻烦 一、安装Jenkins程序 1、到官网下载相应的版本war或者直接使用yum安装 Jenkins官网下载 直接…...

【文本处理】如何在批量WORD和txt文本提取手机号码,固话号码,提取邮箱,删除中文,删除英文,提取车牌号等等一些文本提取固定格式的操作,基于WPF的解决方案

企业的应用场景 数据清洗&#xff1a;在进行数据导入或分析之前&#xff0c;往往需要对大量文本数据进行预处理&#xff0c;比如去除文本中的无关字符&#xff08;中文、英文&#xff09;&#xff0c;只保留需要的联系信息&#xff08;手机号码、固话号码、邮箱&#xff09;。…...

Linux系统引导与服务管理

目录 一、Linux引导过程 1、引导过程概述 1.1、BIOS开机自检 1.2、MBR读取 1.3、加载引导加载程序&#xff08;GRUB&#xff09; 1.4、内核加载 1.5、初始化进程&#xff08;init&#xff09; 二、服务 2.1、服务类型 2.2、服务管理工具 三、运行级别 四、systemd …...

网络工程师 (30)以太网技术

一、起源与发展 以太网技术起源于20世纪70年代&#xff0c;最初由Xerox公司的帕洛阿尔托研究中心&#xff08;PARC&#xff09;开发。最初的以太网采用同轴电缆作为传输介质&#xff0c;数据传输速率为2.94Mbps&#xff08;后发展为10Mbps&#xff09;&#xff0c;主要用于解决…...

react项目引入tailwindcss不生效解决方案

根据tailwindcss官网的操作步骤下来&#xff0c;样式未生效&#xff0c;且未报错&#xff0c;看了挺多的资料&#xff0c;还是并未解决。 后面在另一个项目尝试时&#xff0c;报了下面的问题&#xff1a; Error: PostCSS plugin tailwindcss requires PostCSS 8 根据这个链接…...

【C#】条件运算符

1.逻辑与(&&) Console.WriteLine(true && true);//true Console.WriteLine(true && false);//false Console.WriteLine(false && false);//false2.逻辑或(||) Console.WriteLine(true || true);//true Console.WriteLine(true || false);//t…...

Windows11+PyCharm利用MMSegmentation训练自己的数据集保姆级教程

系统版本&#xff1a;Windows 11 依赖环境&#xff1a;Anaconda3 运行软件&#xff1a;PyCharm 一.环境配置 通过Anaconda Prompt(anaconda)打开终端创建一个虚拟环境 conda create --name mmseg python3.93.激活虚拟环境 conda activate mmseg 4.安装pytorch和cuda tor…...

WPS计算机二级•文档的文本样式与编号

听说这是目录哦 标题级别❤️新建文本样式 快速套用格式&#x1fa77;设置标题样式 自定义设置多级编号&#x1f9e1;使用自动编号&#x1f49b;取消自动编号&#x1f49a;设置 页面边框&#x1f499;添加水印&#x1fa75;排版技巧怎么分栏&#x1f49c;添加空白下划线&#x…...

Word中Ctrl+V粘贴报错问题

Word中CtrlV粘贴时显示“文件未找到&#xff1a;MathPage.WLL”的问题 Word的功能栏中有MathType&#xff0c;但无法使用&#xff0c;显示灰色。 解决方法如下&#xff1a; 首先找到MathType安装目录下MathPage.wll文件以及MathType Commands 2016.dotm文件&#xff0c;分别复…...

python-leetcode 24.回文链表

题目&#xff1a; 给定单链表的头节点head,判断该链表是否为回文链表&#xff0c;如果是&#xff0c;返回True,否则&#xff0c;返回False 输入&#xff1a;head[1,2,2,1] 输出&#xff1a;true 方法一&#xff1a;将值复制到数组中后用双指针法 有两种常用的列表实现&#…...

数据治理双证通关经验分享 | CDGA/CDGP备考全指南

历经1个月多的系统准备&#xff0c;本人于2024年顺利通过DAMA China的CDGA&#xff08;数据治理工程师&#xff09;和CDGP&#xff08;数据治理专家&#xff09;双认证。现将备考经验与资源体系化整理&#xff0c;助力从业者高效通关。 &#x1f31f; 认证价值与政策背景 根据…...

3.4 学习UVM中的uvm_monitor类分为几步?

文章目录 前言1. 定义2. 核心功能3. 适用场景4. 使用方法5. 完整代码示例5.1 事务类定义5.2 Monitor 类定义5.3 Scoreboard 类定义5.4 测试平台 6. 代码说明7. 总结 前言 以下是关于 UVM 中 uvm_monitor 的详细解释、核心功能、适用场景、使用方法以及一个完整的代码示例&…...

Java在大数据处理中的应用:从MapReduce到Spark

Java在大数据处理中的应用&#xff1a;从MapReduce到Spark 大数据时代的到来让数据的存储、处理和分析变得前所未有的重要。随着数据量的剧增&#xff0c;传统的单机计算方式已经无法满足处理需求。为了解决这个问题&#xff0c;许多分布式计算框架应运而生&#xff0c;其中Ma…...

日常吐槽。

一、写在前面 stereopy日常出bug(github issue里得有一半的问题是我提的&#xff0c;当然也有可能是因为我菜)&#xff0c;stereopy自己生成的anndata自己不能计算空间共现关系&#xff0c;还是靠squidpy才能计算。另外还要一些函数一开并行计算就报错&#xff0c;这里留一些s…...

2025最新版Node.js下载安装~保姆级教程

1. node中文官网地址&#xff1a;http://nodejs.cn/download/ 2.打开node官网下载压缩包&#xff1a; 根据操作系统不同选择不同版本&#xff08;win7系统建议安装v12.x&#xff09; 我这里选择最新版win 64位 3.安装node ①点击对话框中的“Next”&#xff0c;勾选同意后点…...

机器学习:学习记录(二)

1. 机器学习中的常用函数 logistic函数&#xff08;sigmoid函数&#xff09;&#xff1a;非线性激活函数&#xff0c;将R区间映射到(0,1)区间 ReLU函数&#xff1a;非线性激活函数&#xff0c;简单可以写作max(0,x)&#xff0c;在0处不可导&#xff0c;但是可以人为定义其导数…...

迁移学习 Transfer Learning

迁移学习&#xff08;Transfer Learning&#xff09;是什么&#xff1f; 迁移学习是一种机器学习方法&#xff0c;它的核心思想是利用已有模型的知识来帮助新的任务或数据集进行学习&#xff0c;从而减少训练数据的需求、加快训练速度&#xff0c;并提升模型性能。 &#x1f…...

实现:多活的基础中间件

APIRouter &#xff1a; 路由分发服务 API Router 是一个 HTTP 反向代理和负载均衡器&#xff0c;部署在公有云中作为 HTTP API 流量的入口&#xff0c;它能识别 出流量的归属 shard &#xff0c;并根据 shard 将流量转发到对应的 ezone 。 API Router 支持多种路由键&am…...

Mybatis源码01 - 总体框架设计

Mybatis总体框架设计 文章目录 Mybatis总体框架设计一&#xff1a;MyBatis架构概览1&#xff1a;接口层1.1&#xff1a;使用传统的MyBatis提供的API1.2&#xff1a;使用Mapper接口 2&#xff1a;数据处理层【核心】2.1&#xff1a;参数映射和动态SQL语句生成2.2&#xff1a;SQL…...

在大型语言模型(LLM)框架内Transformer架构与混合专家(MoE)策略的概念整合

文章目录 传统的神经网络框架存在的问题一. Transformer架构综述1.1 transformer的输入1.1.1 词向量1.1.2 位置编码&#xff08;Positional Encoding&#xff09;1.1.3 编码器与解码器结构1.1.4 多头自注意力机制 二.Transformer分步详解2.1 传统词向量存在的问题2.2 详解编解码…...