CN113449058B - 一种地图数据传输方法、清洁机器人及存储介质 - Google Patents
一种地图数据传输方法、清洁机器人及存储介质 Download PDFInfo
- Publication number
- CN113449058B CN113449058B CN202110711712.4A CN202110711712A CN113449058B CN 113449058 B CN113449058 B CN 113449058B CN 202110711712 A CN202110711712 A CN 202110711712A CN 113449058 B CN113449058 B CN 113449058B
- Authority
- CN
- China
- Prior art keywords
- map
- data
- map layer
- layer data
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 122
- 230000005540 biological transmission Effects 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000004891 communication Methods 0.000 claims description 18
- 238000005192 partition Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 238000009877 rendering Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 3
- 238000010408 sweeping Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/0011—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
- G05D1/0044—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement by providing the operator with a computer generated representation of the environment of the vehicle, e.g. virtual reality, maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4011—Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/0011—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
- G05D1/0022—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement characterised by the communication link
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Instructional Devices (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Navigation (AREA)
- Electric Vacuum Cleaner (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明涉及一种地图数据传输方法、清洁机器人及存储介质,其中,应用于清洁机器人的地图数据传输方法包括:获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据,第一地图数据和第二地图数据均预先被划分为至少两个地图层;在第一地图数据中提取各地图层的第一地图层数据,在第二地图数据中提取各地图层的第二地图层数据;获取相对于同一地图层的第二地图层数据发生变化的第一地图层数据;向云端发送发生变化的第一地图层数据。本发明实施例仅传输相对于同一地图层的第二地图层数据发生变化的第一地图层数据,相对于传输所有地图数据,可以使地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
Description
技术领域
本申请涉及清洁机器人技术领域,尤其涉及一种地图数据传输方法、清洁机器人及存储介质。
背景技术
在清洁机器人领域,机器人可以预先通过自身的传感器构建地图,清洁机器人在清洁的过程中会随着清洁机器人位置的变化不停更新地图,导致地图数据在清洁过程中实时变化。为了便于用户了解清洁进度,在清洁过程中,清洁机器人需要将实时变化的地图数据传输给用户终端,用户终端对变化的地图数据进行渲染展示,以便用户观看。
然而,传输实时变化的地图数据需要占用大量网络带宽,由于网络带宽有限,每次传输完整的地图数据不仅会消耗大量网络带宽,而且传输的实效性较差,无法满足用户需求。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种地图数据传输方法、清洁机器人及存储介质。
第一方面,本申请提供了一种地图数据传输方法,应用于清洁机器人,包括:
获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据;
获取相对于同一所述地图层的所述第二地图层数据发生变化的所述第一地图层数据;
向云端发送发生变化的所述第一地图层数据。
可选地,至少两个所述地图层包括:包含清洁地图的地图参数的参数层、包含所述清洁地图中各像素点的像素数据的像素层、包含清洁轨迹的轨迹数据的轨迹层、包含清洁姿态的姿态数据的姿态层、清洁分区房间的分区房间信息、清洁禁区的禁区信息、所述清洁地图中地图虚拟墙的虚拟墙信息和所述清洁分区房间的房间标识中的一个或多个。
可选地,当相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据为像素层的第一地图层数据时;所述获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据,包括:
在所述第一地图数据中获取所述像素层的多维的第一地图层数据,在所述第二地图数据中获取同一所述像素层的多维的第二地图层数据;
将所述多维的第一地图层数据进行维度转换,得到一维的第一地图层数据,将所述多维的第二地图层数据进行维度转换,得到一维的第二地图层数据;
将所述一维的第一地图层数据分割成多个数据块大小的第一地图数据块,将所述一维的第二地图层数据分割成多个数据块大小的第二地图数据块;
获取相对于同一数据块大小的所述第二地图数据块发生变化的第一地图数据块。
可选地,向云端发送发生变化的所述第一地图层数据,包括:
获取上一次发送所述第一地图层数据时使用的第一编码方式;
获取与所述第一编码方式不同的第二编码方式;
对获取的所述第一地图层数据利用所述第二编码方式进行编码;
向所述云端发送经过所述第二编码方式编码后的第一地图层数据。
可选地,所述第一地图层数据包括:地图标识、地图层标识、数据类型、数据偏移量和数据长度。
第二方面,本申请提供了一种地图数据传输方法,应用于云端,所述方法包括:
接收清洁机器人发送的第一地图层数据,所述第一地图层数据相对于同一地图层的第二地图层数据发生变化,所述第一地图层数据是对所述清洁机器人的当前清洁位置对应的第一地图数据进行地图层提取得到的,所述第二地图层数据是对所述清洁机器人的上一清洁位置对应的第二地图数据进行地图层提取得到的,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
确定所述云端是否存在第三地图数据且所述第三地图数据中是否存在与所述第一地图层数据对应的第三地图层数据;
在所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
可选地,在所述云端的第三地图数据中,确定所述云端是否存在第三地图数据且所述第三地图数据中是否存在与所述第一地图层数据对应的第三地图层数据,包括:
在所述第一地图层数据中提取地图标识和地图层标识;
确定所述云端是否存在与所述地图标识对应的第三地图数据;
在所述云端存在与所述地图标识对应的第三地图数据时,确定所述第三地图数据中是否存在与所述地图层标识对应的第三地图层数据;
在所述第三地图数据中存在与所述地图层标识对应的第三地图层数据时,确定所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据。
可选地,所述方法还包括:
在所述云端存在第三地图数据且所述第三地图数据中不存在与所述第一地图层数据对应的第三地图层数据时,创建与第一地图层数据对应的第三地图层数据;
将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
可选地,所述方法还包括:
在所述云端不存在第三地图数据时,创建所述第三地图数据;
在所述第三地图数据中创建与所述第一地图层数据对应的第三地图层数据;
将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
可选地,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
在所述第一地图层数据中提取数据类型、数据偏移位置、数据长度及数据内容;
在所述数据类型为增加/插入时,将所述数据长度的数据内容增加/插入至所述第三地图层数据的所述数据偏移位置处。
可选地,在所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
在所述第一地图层数据中提取数据类型、数据偏移位置、数据长度及数据内容;
在所述数据类型为删除时,删除所述第三地图层数据中的至少部分数据;
在所述数据类型为插入时,将所述数据偏移位置处的数据内容移动所述数据长度的距离,将所述数据长度的数据内容插入所述第三地图层数据中的所述数据偏移位置处;
在所述数据类型为增加时,将所述数据长度的数据内容插入到所述第三地图层数据中的所述数据偏移位置处。
可选地,若相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据为像素层的第一地图层数据;将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
获取对上一次接收到的第一地图层数据进行解码的第一解码方式;
获取与所述第一解码方式不同的第二解码方式;
利用所述第二解码方式对所述第一地图层数据进行解码,得到解码后的第一地图层数据;
对所述解码后的第一地图层数据进行维度转换,得到第一多维地图数据;
利用所述第一多维地图数据对所述第三地图层数据进行更新。
第三方面,本申请提供了一种地图数据传输方法,应用于用户终端,所述方法包括:
接收云端发送的第一地图层数据,所述第一地图层数据为所述云端在将第二地图层数据更新为所述第一地图层数据后发送的,所述第一地图层数据相对于同一地图层的第二地图层数据发生变化,所述第一地图层数据是对所述清洁机器人的当前清洁位置对应的第一地图数据进行地图层提取得到的,所述第二地图层数据是对所述清洁机器人的上一清洁位置对应的第二地图数据进行地图层提取得到的,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
确定所述用户终端是否存在第四地图数据且所述第四地图数据中是否存在与所述第一地图层数据对应的第四地图层数据;
在所述用户终端存在第四地图数据且所述第四地图数据中存在与所述第一地图层数据对应的第四地图层数据时,将所述第四地图数据中的所述第四地图层数据更新为所述第一地图层数据;
对更新后的所述第四地图数据进行数据渲染。
第四方面,本申请提供了一种清洁机器人,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的地图数据传输方法、第二方面任一所述的地图数据传输方法或者第三方面所述地图数据传输方法。
第五方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有地图数据传输方法的程序,所述地图数据传输方法的程序被处理器执行时实现第一方面任一所述的地图数据传输方法、第二方面任一所述的地图数据传输方法或者第三方面所述地图数据传输方法的步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本发明实施例通过首先获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据,其中,第一地图数据和所述第二地图数据预先被划分为至少两个地图层,然后在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据,再获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据,最后可以向云端发送发生变化的所述第一地图层数据。本发明实施例通过仅向云端发送相对于同一地图层的第二地图层数据发生变化的第一地图层数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
以及,本发明实施例通过接收清洁机器人发送的相对于同一地图层的第二地图层数据发生变化的第一地图层数据时,利用第一地图层数据更新云端的第三地图层数据,实现地图数据的拼接,以及实现在云端保存完整的地图数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
以及,本发明实施例通过接收云端发送的相对于同一地图层的第二地图层数据发生变化的第一地图层数据时,利用第一地图层数据更新用户终端本地的第四地图层数据,实现用户终端中地图数据的拼接,以及实现在用户终端渲染完整的地图数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种地图数据传输方法的流程图;
图2为本申请实施例提供的一种第一地图数据或者第二地图数据的示意图;
图3为本申请实施例提供的一种像素层的示意图;
图4为本申请实施例提供的一种轨迹层的示意图;
图5为本申请实施例提供的一种姿态层的示意图;
图6为本申请实施例提供的一种分区房间信息的示意图;
图7为本申请实施例提供的一种禁区信息的示意图;
图8为本申请实施例提供的一种虚拟墙信息的示意图;
图9为本申请实施例提供的一种分区房间标识的示意图;
图10为本申请实施例提供的一种对一维地图数据分割的示意图;
图11为本申请实施例提供的另一种地图数据传输方法的流程图;
图12为本申请实施例提供的另一种地图数据传输方法的流程图;
图13为本申请实施例提供的一种第一地图、第二地图、第三地图和第四地图之间的关系示意图;
图14为本申请实施例提供的一种清洁机器人的结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
由于相关技术中,清洁机器人传输实时变化的地图数据需要占用大量网络带宽,而网络带宽有限,每次传输完整的地图数据不仅会消耗大量网络带宽,而且传输的实效性较差,无法满足用户需求。为此,本发明实施例提供了一种地图数据传输方法、清洁机器人及存储介质。
如图1所示,可以应用于清洁机器人中的地图数据传输方法可以包括以下步骤:
步骤S101,获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据;
本发明实施例中,当前清洁位置是指当前清洁时刻清洁机器人所在的位置,上一清洁位置是指上一清洁时刻清洁机器人所在的位置,当前清洁时刻与上一清洁时刻之间的时间间隔可以根据实际应用需要设置,如1秒、3秒或者10秒等等。
第一地图数据是指清洁机器人在当前清洁位置构建的地图数据,第二地图数据是指清洁机器人在上移清洁位置构建的地图数据,每次清洁机器人在构建完地图数据后,可以将构建的地图数据存储至存储记录中,以便于后续使用,如图2所示,第一地图数据或者第二地图数据中未知单元表示未扫描到的区域,自由单元表示可自由清洁的区域,清洁单元表示已清洁的区域,障碍物表示无法清洁的区域。
第一地图数据和第二地图数据预先被划分为至少两个地图层,至少两个地图层包括:包含清洁地图的地图参数的参数层、包含所述清洁地图中各像素点的像素数据的像素层(像素数据如图3所示)、包含清洁轨迹的轨迹数据的轨迹层(清洁轨迹如图4所示)、包含清洁姿态的姿态数据的姿态层(姿态数据如图5所示)、清洁分区房间的分区房间信息(分区房间如图6所示)、清洁禁区的禁区信息(禁区如图7所示)、所述清洁地图中地图虚拟墙的虚拟墙信息(地图虚拟墙如图8所示)和所述清洁分区房间的房间标识(房间标识如图9所示)中的一个或多个。如用数字标识各个地图层:参数层:0,像素层:0~64,轨迹层:100,分区房间:101,禁区:102,地图虚拟墙:103,姿态层:104,地图房间名:105等。
每个地图层的地图层数据中均包括数据头和地图层数据,数据头中包括:地图标识、地图层标识、数据类型、数据偏移量和数据长度等信息,地图标识用于区分不同的地图数据,各个地图层标识用于区分不同的地图层数据,数据类型用于标识当前数据是增加类型、删除类型或者插入类型等,如:删除类型用于表示清除当前地图层的部分或所有数据,增加类型用于表示根据偏移位置填充数据,数据长度为数据内容的长度,插入类型用于表示将偏移位置处的数据按照数据偏移量的距离进行移动,并在数据移动后的空白位置填充当前数据,数据偏移量为数据存储的位置,云端会根据数据偏移量选择存储位置。
第一地图层数据和第二地图层数据的数据头相应的也包括:地图标识、地图层标识、数据类型、数据偏移量和数据长度等信息。
在该步骤中,可以在清洁机器人基于当前清洁位置构建完地图后直接获取第一地图数据,在地图数据的存储记录内获取上一清洁位置对应的第二地图数据。
步骤S102,在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据;
本发明实施例由于预先对第一地图数据和第二地图数据划分出至少两个地图层,所以在该步骤中,可以在第一地图数据中提取每个地图层对应的第一地图层数据,在第二地图数据中提取每个地图层对应的第二地图层数据。
步骤S103,获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据;
在该步骤中,可以针对任一地图层,将该地图层的第一地图层数据与第二地图层数据比较,若第一地图层数据与第二地图层数据不同,则可以确定该第一地图层数据相对于第二地图层数据发生变化,获取该第一地图层数据。
若存在多个地图层的第一地图层数据相对于同一地图层的第二地图层数据发生变化,则可以获取多个地图层的第一地图层数据。
步骤S104,向云端发送发生变化的所述第一地图层数据。
本发明实施例中,可以根据各个地图层数据的数据特性定义各个地图层数据的数据格式,变化少和数据量少的数据可以直接全量传输(即全部数据传输),如:参数层和姿态层等,每次变动的数据与上一次变动的数据无关的可以用增量传输的方式(即只传输增加的内容),如:轨迹层,变动的数据与上一次变动有关的采用数据分段全量+差分传输的方式(此种传输方式请详见下文传输像素层对应的第一地图层数据的实施例),如:像素层等。
本发明实施例通过首先获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据,其中,第一地图数据和所述第二地图数据预先被划分为至少两个地图层,然后在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据,再获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据,最后可以向云端发送发生变化的所述第一地图层数据。
本发明实施例通过仅向云端发送相对于同一地图层的第二地图层数据发生变化的第一地图层数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
在扫地机机器人领域,机器人在通过自身的传感器构建地图,机器人在清洁的过程中不停更新地图,地图像素单元。地图像素单元分为自由区域,障碍物区域,未知区域,已清洁区域等。现有地图整体更新方式传输需要把整张的地图数据打包传输,如地图更新过于频繁,需要频繁更新传输整张地图,地图数据量大,需要机器人较大的网络带宽,传输时间也对应的会延长。为此,在本发明的又一实施例中,当相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据为像素层的第一地图层数据时,可以对完整的地图数据进行固定大小分割,分割成固定大小的块,地图更新的时候只传输有数据变化的块,由于每一块的地图数据变小,对变化的数据进行差分比较进行差分传输,这样传输地图类似增量的方式,只传输更新地图变化的部分,从而大幅度减少地图数据的传输。
具体地,所述步骤103获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据,包括:
步骤201,在所述第一地图数据中获取所述像素层的多维的第一地图层数据,在所述第二地图数据中获取同一所述像素层的多维的第二地图层数据;
在本发明实施例中,像素层的地图层数据中包含完整的栅格地图数据,地图层数据中包含二维地图数据,地图大小为w*h,w为地图的宽度,h为地图的高度。
由于步骤S102中已在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据,所以在该步骤中,可以获取像素层的第一地图层数据和第二地图层数据,第一地图层数据和第二地图层数据均为多维的。
步骤202,将所述多维的第一地图层数据进行维度转换,得到一维的第一地图层数据,将所述多维的第二地图层数据进行维度转换,得到一维的第二地图层数据;
本发明实施例中,可以将地图层数据划分为自由区域、障碍物区域、未知区域和已清洁区域等,各像素单元可以位于自由区域、障碍物区域、未知区域或者已清洁区域中。
利用P(x,y)=s为多维的地图层数据中的像素单元,w为地图的宽度,h为地图的高度,x的范围为0≤x<w,y的范围为0≤y<h,地图所有像素的大小为size(P)=w*h,将多维的地图层数据转化为一维的地图层数据:
其中,i=x*w+y,i表示一维的地图层数据中的最小单位,多个最小单位i组成了一维的地图层数据。
步骤203,将所述一维的第一地图层数据分割成多个数据块大小的第一地图数据块,将所述一维的第二地图层数据分割成多个数据块大小的第二地图数据块;
在本发明实施例中,如图10所示,可以预先定义数据块大小为N,可以按照下式将一维的地图层数据分割成n份,n可以按照下式计算得到:
n=(size(P)+N)/N
分割得到的每个地图数据块可以表示为B(b,k),其中,b表示地图数据块编号,k表示地图数据块的大小,将一维的地图层数据分割成多个数据块大小的地图数据块:
R(i)=B(i/N,i%N)
b的取值范围:0≤b<n,k的取值范围:0≤k<(size(P)+N)%N。
地图数据块的大小可以采用8*8,16*16,32*32,64*64等固定大小,根据机器人建图最大分辨率来决定,若地图不大可用使用较小的地图数据块大小。
步骤204,获取相对于同一数据块大小的所述第二地图数据块发生变化的第一地图数据块。
本发明实施例中,可以获取像素层的地图层数据中,相对于同一地图块大小的第二地图数据块发生变化的第一地图数据块,将该第一地图数据块作为像素层的第一地图层数据,本发明实施例通过对完整的地图数据进行固定大小分割,分割成固定大小的块,地图更新的时候只传输有数据变化的块,由于每一块的地图数据变小,对变化的数据进行差分比较进行差分传输,这样传输地图类似增量的方式,只传输更新地图变化的部分,从而大幅度减少地图数据的传输。
在本发明的又一实施例中,步骤S104向云端发送发生变化的所述第一地图层数据,包括:
步骤301,获取上一次发送所述第一地图层数据时使用的第一编码方式;
本发明实施例中,清洁机器人可以记录每次向云端发送第一地图层数据时对第一地图层数据使用的第一编码方式,第一编码方式可以指全量数据编码方式或者差分数据编码方式。
在该步骤中,在本次为首次向云端发送第一地图层数据,可以可以确定全量数据编码方式为第一编码方式,若本次为非首次向云端发送第一地图层数据,则可以获取记录的上一次发送第一地图层数据时使用的第一编码方式。
步骤302,获取与所述第一编码方式不同的第二编码方式;
本发明实施例中,可以预先设置若干种用于对第一地图层数据进行编码的编码方式,在需要获取与第一编码方式不同的第二编码方式时,在若干个编码方式中查找除第一编码方式之外的编码方式,将该查找到的编码方式确定为第二编码方式。
示例性的,可以预先定义全量数据编码方式BP以及差分数据编码方式DP,假设上一次使用的第一编码方式为BP,则第二编码方式为DP,若上一次使用的第一编码方式为DP,则第二编码方式为BP,这样,将实现BP+DP+BP+DP传输机制。
步骤303,对获取的所述第一地图层数据利用所述第二编码方式进行编码;
本发明实施例可以按照如下方式对第一地图层数据进行编码:
数据打包方式:地图数据块编号b+消息类型+全量数据/差分数据。
消息类型为:分为全量/差分。数据内容对全量数据或差分数据进行第二编码方式的编码,如全量数据可用采用分段压缩方式。
步骤304,向所述云端发送经过所述第二编码方式编码后的第一地图层数据。
本发明实施例能够对第一地图层数据进行第二编码方式的编码,该第二编码方式与上一次发送第一地图层数据使用的第一编码方式不同,相邻两次发送第一地图层数据采用不同的编码方式,可以便于相邻次发送的第一地图层数据可以相互参考借鉴,地图数据变化时,只需更新传输对应地图数据块部分,未变化的地图数据块不进行传输,两个相邻的变化分割单元数据变化较小,只传输对应的差分包,减少一次全量传输,减少地图数据传输的流量。
在本发明的又一实施例中,还提供一种地图数据传输方法,应用于云端,如图11所示,所述方法包括:
步骤S401,接收清洁机器人发送的第一地图层数据。
本发明实施例中,所述第一地图层数据相对于同一地图层的第二地图层数据发生变化,所述第一地图层数据是对所述清洁机器人的当前清洁位置对应的第一地图数据进行地图层提取得到的,所述第二地图层数据是对所述清洁机器人的上一清洁位置对应的第二地图数据进行地图层提取得到的,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层。
步骤S402,确定所述云端是否存在第三地图数据且所述第三地图数据中是否存在与所述第一地图层数据对应的第三地图层数据;
本发明实施例中,第三地图层数据为上一次从清洁机器人接收到的地图数据,第三地图层数据的数据内容可以与第二地图层数据相同。
步骤S403,在所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
可以利用第一地图层数据替换掉第三地图数据中的第三地图层数据,即删除原始的第三地图层数据,保留第一地图层数据,实现地图层数据的更新。
本发明实施例通过接收清洁机器人发送的相对于同一地图层的第二地图层数据发生变化的第一地图层数据时,利用第一地图层数据更新云端的第三地图层数据,实现地图数据的拼接,以及实现在云端保存完整的地图数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
在本发明的又一实施例中,确定所述云端是否存在第三地图数据且所述第三地图数据中是否存在与所述第一地图层数据对应的第三地图层数据,包括:
步骤501,在所述第一地图层数据中提取地图标识和地图层标识;
在所述云端查找与所述地图标识对应的第三地图数据;
步骤502,确定所述云端是否存在与所述地图标识对应的第三地图数据;
步骤503,在所述云端存在与所述地图标识对应的第三地图数据时,确定所述第三地图数据中是否存在与所述地图层标识对应的第三地图层数据。
步骤504,在所述第三地图数据中存在与所述地图层标识对应的第三地图层数据时,确定所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据。
由于第一地图层数据中携带地图标识及地图层标识,所以本发明实施例可以基于地图标识在云端确定相应的第三地图数据,以及在第三地图数据中确定相应的第三地图层数据,可以便于实现地图层数据的更新。
在本发明的又一实施例中,在所述云端的第三地图数据中,查找与所述第一地图层数据对应的第三地图层数据,还包括:
步骤601,在所述云端存在第三地图数据且所述第三地图数据中不存在与所述第一地图层数据对应的第三地图层数据时,创建与第一地图层数据对应的第三地图层数据;
步骤602,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
本发明实施例在云端不存在与地图层标识对应的第三地图层数据时,创建与第一地图层数据对应的第三地图层数据,这样,在云端将会存在与第一地图层数据对应的第三地图层数据,可以便于实现地图层数据的更新。
在本发明的又一实施例中,在所述云端的第三地图数据中,查找与所述第一地图层数据对应的第三地图层数据,还包括:
步骤701,在所述云端不存在第三地图数据时,创建所述第三地图数据;
步骤702,在所述第三地图数据中创建与所述第一地图层数据对应的第三地图层数据;
步骤703,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
本发明实施例能够在云端不存在与地图标识对应的第三地图数据时,创建与地图标识对应的第三地图数据以及与第一地图层数据对应的第三地图层数据,这样,在云端将会存在与地图标识对应的地图数据及与第一地图层数据对应的第三地图层数据,可以便于实现地图层数据的更新。
在本发明的又一实施例中,在所述云端存在第三地图数据且所述第三地图数据中不存在与所述第一地图层数据对应的第三地图层数据,或者,在所述云端不存在第三地图数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
步骤801,在所述第一地图层数据中提取数据类型、数据偏移位置、数据长度及数据内容;
步骤802,在所述数据类型为增加/插入时,将所述数据长度的数据内容增加/插入至所述第三地图层数据的所述数据偏移位置处。
本发明实施例中,增加是指在第三地图层数据的末尾(也即数据偏移位置处)增加数据内容,插入是指根据数据便宜位置在第三地图层数据中间插入数据内容。
由于第一地图层数据中携带数据类型、数据偏移位置、数据长度及数据内容,而在所述云端存在第三地图数据且所述第三地图数据中不存在与所述第一地图层数据对应的第三地图层数据,或者,在所述云端不存在第三地图数据时,在利用第一地图层数据更新第三地图层数据时,可以直接依据第一地图层数据对创建的地图层数据中的相应内容进行更新,实现云端实现地图数据的拼接,以及实现在云端保存完整的地图数据,本发明实施例由于只传输了发生变化的第一地图层数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
在本发明的又一实施例中,在所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
步骤901,在所述第一地图层数据中提取数据类型、数据偏移位置、数据长度及数据内容;
步骤902,在所述数据类型为删除时,删除所述第三地图层数据中的至少部分数据;示例性的,删除的第三地图层数据可以是部分数据,也可以是所有数据。
在本实施例中,在所述数据类型为插入时,将所述数据偏移位置处的数据内容移动所述数据长度的距离,将所述数据长度的数据内容插入所述第三地图层数据中的所述数据偏移位置处;
在所述数据类型为增加时,将所述数据长度的数据内容插入到所述第三地图层数据中的所述数据偏移位置处。
本发明实施例中,删除是指删除第三地图层数据中的所有数据内容,增加是指在第三地图层数据的末尾(相当于是数据偏移位置处)增加数据内容,插入是指根据数据偏移位置在第三地图层数据中间插入数据内容。
由于第一地图层数据中携带数据类型、数据偏移位置、数据长度及数据内容,而云端原始存在第三地图层数据,在利用第一地图层数据更新第三地图层数据时,可以直接依据第一地图层数据对云端的第三地图层数据中的相应内容进行更新,实现云端实现地图数据的拼接,以及实现在云端保存完整的地图数据,本发明实施例由于只传输了发生变化的第一地图层数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
在本发明的又一实施例中,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
步骤1001,获取对上一次接收到的第一地图层数据进行解码的第一解码方式;
步骤1002,获取与所述第一解码方式不同的第二解码方式;
步骤1003,利用所述第二解码方式对所述第一地图层数据进行解码,得到解码后的第一地图层数据;
步骤1004,对所述解码后的第一地图层数据进行维度转换,得到第一多维地图数据;
步骤1005,利用所述第一多维地图数据对所述第三地图层数据进行更新。
本发明实施例能够对第一地图层数据进行第二解码方式的解码,该第二解码方式与上一次解码第一地图层数据使用的第一解码方式不同,相邻两次发送第一地图层数据采用不同的解码方式,可以便于相邻次发送的第一地图层数据可以相互参考借鉴,地图数据变化时,只需更新传输对应地图数据块部分,未变化的地图数据块不进行传输,两个相邻的变化划分单元数据变化较小,只传输对应的差分包,减少一次全量传输,减少地图数据传输的流量。
在本发明的又一实施例中,还提供一种地图数据传输方法,应用于用户终端,如图12所示,所述方法包括:
步骤1101,接收云端发送的第一地图层数据;
本发明实施例中,所述第一地图层数据为所述云端在将第二地图层数据更新为所述第一地图层数据后发送的,所述第一地图层数据相对于同一地图层的第二地图层数据发生变化,所述第一地图层数据是对所述清洁机器人的当前清洁位置对应的第一地图数据进行地图层提取得到的,所述第二地图层数据是对所述清洁机器人的上一清洁位置对应的第二地图数据进行地图层提取得到的,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
步骤1102,确定所述用户终端是否存在第四地图数据且所述第四地图数据中是否存在与所述第一地图层数据对应的第四地图层数据;
步骤1103,在所述用户终端存在第四地图数据且所述第四地图数据中存在与所述第一地图层数据对应的第四地图层数据时,将所述第四地图数据中的所述第四地图层数据更新为所述第一地图层数据;
步骤1104,对更新后的所述第四地图数据进行数据渲染。
本发明实施例通过接收云端发送的相对于同一地图层的第二地图层数据发生变化的第一地图层数据时,利用第一地图层数据更新用户终端本地的第四地图层数据,实现用户终端中地图数据的拼接,以及实现在用户终端渲染完整的地图数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
基于以上实施例,为了便于理解,图13示出了一种在实际应用中,第一地图、第二地图、第三地图和第四地图之间的关系示意图,清洁机器人在上一清洁位置构建了第二地图数据,在当前清洁位置构建了第一地图数据,在第一地图数据相对于第二地图数据发生变化时,将第一地图数据相对于第二地图数据发生变化的地图层数据发送至云端,云端原始存储有第三地图数据,在接收到发生变化的地图层数据时,利用该发生变化的地图层数据对第三地图数据进行更新,之后云端再将发生变化的地图层数据发送至用户终端,用户终端原始存储有第四地图数据,在接收到发生变化的地图层数据时,利用该发生变化的地图层数据对第四地图数据进行更新,最后用户终端可以对更新后的第四地图数据进行渲染展示。
在本发明的又一实施例中,还提供一种清洁机器人,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现应用于清洁机器人的任一方法实施例所述的地图数据传输方法、应用于云端的任一方法实施例所述的地图数据传输方法或者应用于用户终端的方法实施例所述地图数据传输方法。
本发明实施例提供的清洁机器人,可以是扫地机器人,也可以是拖地机器人,还可以是扫拖一体式机器人,这里不做唯一限定,处理器通过首先获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据,其中,第一地图数据和所述第二地图数据预先被划分为至少两个地图层,然后在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据,再获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据,最后可以向云端发送发生变化的所述第一地图层数据。本发明实施例通过仅向云端发送相对于同一地图层的第二地图层数据发生变化的第一地图层数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
或者,本发明实施例通过接收清洁机器人发送的相对于同一地图层的第二地图层数据发生变化的第一地图层数据时,利用第一地图层数据更新云端的第三地图层数据,实现地图数据的拼接,以及实现在云端保存完整的地图数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
或者,本发明实施例通过接收云端发送的相对于同一地图层的第二地图层数据发生变化的第一地图层数据时,利用第一地图层数据更新用户终端本地的第四地图层数据,实现用户终端中地图数据的拼接,以及实现在用户终端渲染完整的地图数据,相对于传输所有的地图数据,可以使得地图数据的传输量减少,减少传输地图数据占用的带宽资源,避免地图数据的传输延迟。
上述清洁机器人提到的通信总线1140可以是外设部件互连标准(PeripheralComponentInterconnect,简称PCI)总线或扩展工业标准结构(ExtendedIndustryStandardArchitecture,简称EISA)总线等。该通信总线1140可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1120用于上述清洁机器人与其他设备之间的通信。
存储器1130可以包括随机存取存储器(RandomAccessMemory,简称RAM),也可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器1110可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DigitalSignalProcessing,简称DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-ProgrammableGateArray,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明的又一实施例中,还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有地图数据传输方法的程序,所述地图数据传输方法的程序被处理器执行时实现应用于清洁机器人的任一方法实施例所述的地图数据传输方法、应用于云端的任一方法实施例所述的地图数据传输方法或者应用于用户终端的方法实施例所述地图数据传输方法的步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (15)
1.一种地图数据传输方法,其特征在于,应用于清洁机器人,包括:
获取当前清洁位置对应的第一地图数据及上一清洁位置对应的第二地图数据,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
在所述第一地图数据中提取各地图层的第一地图层数据,在所述第二地图数据中提取各所述地图层的第二地图层数据;
获取相对于同一所述地图层的所述第二地图层数据发生变化的所述第一地图层数据,相对于同一所述地图层的所述第二地图层数据发生变化的所述第一地图层数据是通过以下方式获取到的:当至少两个地图层中的任一地图层的第一地图层数据与第二地图层数据不同时,获取该第一地图层数据;
向云端发送发生变化的所述第一地图层数据。
2.根据权利要求1所述的地图数据传输方法,其特征在于,至少两个所述地图层包括:包含清洁地图的地图参数的参数层、包含所述清洁地图中各像素点的像素数据的像素层、包含清洁轨迹的轨迹数据的轨迹层、包含清洁姿态的姿态数据的姿态层、清洁分区房间的分区房间信息、清洁禁区的禁区信息、所述清洁地图中地图虚拟墙的虚拟墙信息和所述清洁分区房间的房间标识中的一个或多个。
3.根据权利要求2所述的地图数据传输方法,其特征在于,当相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据为像素层的第一地图层数据时,所述获取相对于同一所述地图层的所述第二地图层数据发生变化的第一地图层数据,包括:
在所述第一地图数据中获取所述像素层的多维的第一地图层数据,在所述第二地图数据中获取同一所述像素层的多维的第二地图层数据;
将所述多维的第一地图层数据进行维度转换,得到一维的第一地图层数据,将所述多维的第二地图层数据进行维度转换,得到一维的第二地图层数据;
将所述一维的第一地图层数据分割成多个数据块大小的第一地图数据块,将所述一维的第二地图层数据分割成多个数据块大小的第二地图数据块;
获取相对于同一数据块大小的所述第二地图数据块发生变化的第一地图数据块。
4.根据权利要求1至3任一所述的地图数据传输方法,其特征在于,向云端发送发生变化的所述第一地图层数据,包括:
获取上一次发送所述第一地图层数据时使用的第一编码方式;
获取与所述第一编码方式不同的第二编码方式;
对获取的所述第一地图层数据利用所述第二编码方式进行编码;
向所述云端发送经过所述第二编码方式编码后的第一地图层数据。
5.根据权利要求1所述的地图数据传输方法,其特征在于,所述第一地图层数据包括:地图标识、地图层标识、数据类型、数据偏移量和数据长度。
6.一种地图数据传输方法,其特征在于,应用于云端,所述方法包括:
接收清洁机器人发送的第一地图层数据,所述第一地图层数据相对于同一地图层的第二地图层数据发生变化,相对于同一所述地图层的所述第二地图层数据发生变化的所述第一地图层数据是通过以下方式获取到的:当至少两个地图层中的任一地图层的第一地图层数据与第二地图层数据不同时,获取该第一地图层数据,所述第一地图层数据是对所述清洁机器人的当前清洁位置对应的第一地图数据进行地图层提取得到的,所述第二地图层数据是对所述清洁机器人的上一清洁位置对应的第二地图数据进行地图层提取得到的,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
确定所述云端是否存在第三地图数据且所述第三地图数据中是否存在与所述第一地图层数据对应的第三地图层数据;
在所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
7.根据权利要求6所述的地图数据传输方法,其特征在于,确定所述云端是否存在第三地图数据且所述第三地图数据中是否存在与所述第一地图层数据对应的第三地图层数据,包括:
在所述第一地图层数据中提取地图标识和地图层标识;
确定所述云端是否存在与所述地图标识对应的第三地图数据;
在所述云端存在与所述地图标识对应的第三地图数据时,确定所述第三地图数据中是否存在与所述地图层标识对应的第三地图层数据;
在所述第三地图数据中存在与所述地图层标识对应的第三地图层数据时,确定所述云端存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据。
8.根据权利要求6所述的地图数据传输方法,其特征在于,所述方法还包括:
在所述云端存在第三地图数据且所述第三地图数据中不存在与所述第一地图层数据对应的第三地图层数据时,创建与第一地图层数据对应的第三地图层数据;
将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
9.根据权利要求6所述的地图数据传输方法,其特征在于,所述方法还包括:
在所述云端不存在第三地图数据时,创建所述第三地图数据;
在所述第三地图数据中创建与所述第一地图层数据对应的第三地图层数据;
将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据。
10.根据权利要求6-9任一项所述的地图数据传输方法,其特征在于,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
在所述第一地图层数据中提取数据类型、数据偏移位置、数据长度及数据内容;
在所述数据类型为增加/插入时,将所述数据长度的数据内容增加/插入至所述第三地图层数据的所述数据偏移位置处。
11.根据权利要求6所述的地图数据传输方法,其特征在于,在所述云端本地存在第三地图数据且所述第三地图数据中存在与所述第一地图层数据对应的第三地图层数据时,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
在所述第一地图层数据中提取数据类型、数据偏移位置、数据长度及数据内容;
在所述数据类型为删除时,删除所述第三地图层数据中的至少部分数据。
12.根据权利要求6所述的地图数据传输方法,其特征在于,将所述第三地图数据中的所述第三地图层数据更新为所述第一地图层数据,包括:
获取对上一次接收到的第一地图层数据进行解码的第一解码方式;
获取与所述第一解码方式不同的第二解码方式;
利用所述第二解码方式对所述第一地图层数据进行解码,得到解码后的第一地图层数据;
对所述解码后的第一地图层数据进行维度转换,得到第一多维地图数据;
利用所述第一多维地图数据对所述第三地图层数据进行更新。
13.一种地图数据传输方法,其特征在于,应用于用户终端,所述方法包括:
接收云端发送的第一地图层数据,所述第一地图层数据为所述云端在将第二地图层数据更新为所述第一地图层数据后发送的,所述第一地图层数据相对于同一地图层的第二地图层数据发生变化,相对于同一所述地图层的所述第二地图层数据发生变化的所述第一地图层数据是通过以下方式获取到的:当至少两个地图层中的任一地图层的第一地图层数据与第二地图层数据不同时,获取该第一地图层数据,所述第一地图层数据是对清洁机器人的当前清洁位置对应的第一地图数据进行地图层提取得到的,所述第二地图层数据是对所述清洁机器人的上一清洁位置对应的第二地图数据进行地图层提取得到的,所述第一地图数据和所述第二地图数据均预先被划分为至少两个地图层;
确定所述用户终端是否存在第四地图数据且所述第四地图数据中是否存在与所述第一地图层数据对应的第四地图层数据;
在所述用户终端存在第四地图数据且所述第四地图数据中存在与所述第一地图层数据对应的第四地图层数据时,将所述第四地图数据中的所述第四地图层数据更新为所述第一地图层数据;
对更新后的所述第四地图数据进行数据渲染。
14.一种清洁机器人,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1~5任一所述的地图数据传输方法、权利要求6~12任一所述的地图数据传输方法或者权利要求13所述地图数据传输方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有地图数据传输方法的程序,所述地图数据传输方法的程序被处理器执行时实现权利要求1~5任一所述的地图数据传输方法、权利要求6~12任一所述的地图数据传输方法或者权利要求13所述地图数据传输方法的步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711712.4A CN113449058B (zh) | 2021-06-25 | 2021-06-25 | 一种地图数据传输方法、清洁机器人及存储介质 |
JP2022081649A JP7350938B2 (ja) | 2021-06-25 | 2022-05-18 | マップデータ伝送方法、清掃ロボット及び記憶媒体 |
EP22179524.8A EP4109192B1 (en) | 2021-06-25 | 2022-06-17 | Map data communication for cleaning device |
US17/848,753 US20220408998A1 (en) | 2021-06-25 | 2022-06-24 | Map data communication for cleaning device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711712.4A CN113449058B (zh) | 2021-06-25 | 2021-06-25 | 一种地图数据传输方法、清洁机器人及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113449058A CN113449058A (zh) | 2021-09-28 |
CN113449058B true CN113449058B (zh) | 2023-06-02 |
Family
ID=77812829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110711712.4A Active CN113449058B (zh) | 2021-06-25 | 2021-06-25 | 一种地图数据传输方法、清洁机器人及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220408998A1 (zh) |
EP (1) | EP4109192B1 (zh) |
JP (1) | JP7350938B2 (zh) |
CN (1) | CN113449058B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114466088B (zh) * | 2022-01-07 | 2023-12-08 | 深圳华芯信息技术股份有限公司 | 扫地机器人的数据传输方法、装置、存储介质及终端 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103035164A (zh) * | 2012-12-24 | 2013-04-10 | 广东威创视讯科技股份有限公司 | 一种地理信息系统渲染方法及系统 |
CN112515556A (zh) * | 2020-10-20 | 2021-03-19 | 深圳市银星智能科技股份有限公司 | 一种环境地图的处理方法及其装置、电子设备 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9304005B2 (en) * | 2009-12-04 | 2016-04-05 | GM Global Technology Operations LLC | Application programming interface (API) for navigation applications that merges incremental updates with existing map database |
CN103473293B (zh) * | 2013-09-03 | 2016-09-07 | 沈阳美行科技有限公司 | 一种导航数据分区方法 |
US20150092048A1 (en) * | 2013-09-27 | 2015-04-02 | Qualcomm Incorporated | Off-Target Tracking Using Feature Aiding in the Context of Inertial Navigation |
JP6846897B2 (ja) | 2016-03-24 | 2021-03-24 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 位置指示方法、位置指示装置、自走式装置及びプログラム |
JP2017194527A (ja) | 2016-04-19 | 2017-10-26 | トヨタ自動車株式会社 | 環境地図のデータ構造、環境地図の作成システム及び作成方法、並びに、環境地図の更新システム及び更新方法 |
EP4160150A1 (en) * | 2016-08-26 | 2023-04-05 | Panasonic Intellectual Property Corporation of America | Three-dimensional information processing method and three-dimensional information processing apparatus |
CN106595682B (zh) * | 2016-12-16 | 2020-12-04 | 上海博泰悦臻网络技术服务有限公司 | 一种地图数据的差分更新方法、系统及服务器 |
EP3563265B1 (en) | 2016-12-30 | 2021-06-02 | DeepMap Inc. | High definition map updates |
US10583561B2 (en) | 2017-08-31 | 2020-03-10 | Neato Robotics, Inc. | Robotic virtual boundaries |
CN108123997A (zh) * | 2017-11-21 | 2018-06-05 | 武汉中海庭数据技术有限公司 | 一种基于差分更新的导航数据包更新方法及系统 |
DE102018121365A1 (de) | 2018-08-31 | 2020-04-23 | RobArt GmbH | Exploration eines robotereinsatzgebietes durch einen autonomen mobilen roboter |
US11911908B2 (en) | 2018-12-21 | 2024-02-27 | Intrinsic Innovation Llc | Dynamic probabilistic motion planning |
CN109918463A (zh) * | 2019-02-22 | 2019-06-21 | 广州多益网络股份有限公司 | 地图数据处理方法、装置、设备及存储介质 |
CN111202472B (zh) * | 2020-02-18 | 2021-04-23 | 深圳市愚公科技有限公司 | 扫地机器人的终端地图构建方法、终端设备及清扫系统 |
-
2021
- 2021-06-25 CN CN202110711712.4A patent/CN113449058B/zh active Active
-
2022
- 2022-05-18 JP JP2022081649A patent/JP7350938B2/ja active Active
- 2022-06-17 EP EP22179524.8A patent/EP4109192B1/en active Active
- 2022-06-24 US US17/848,753 patent/US20220408998A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103035164A (zh) * | 2012-12-24 | 2013-04-10 | 广东威创视讯科技股份有限公司 | 一种地理信息系统渲染方法及系统 |
CN112515556A (zh) * | 2020-10-20 | 2021-03-19 | 深圳市银星智能科技股份有限公司 | 一种环境地图的处理方法及其装置、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
JP2023004888A (ja) | 2023-01-17 |
US20220408998A1 (en) | 2022-12-29 |
EP4109192B1 (en) | 2024-01-31 |
EP4109192A1 (en) | 2022-12-28 |
JP7350938B2 (ja) | 2023-09-26 |
CN113449058A (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113449058B (zh) | 一种地图数据传输方法、清洁机器人及存储介质 | |
CN102667864B (zh) | 图像文件生成装置、图像处理装置、图像文件生成方法、图像处理方法 | |
WO2019001006A1 (zh) | 一种图像数据的编码、解码方法及装置 | |
CN101667843B (zh) | 嵌入式系统的数据压缩、及解压缩方法与装置 | |
WO2011082650A1 (zh) | 空间数据处理方法及装置 | |
JP2022519462A (ja) | ホモグラフィ変換を使用した点群符号化 | |
CN103858095A (zh) | 一种图像显示方法和装置 | |
CN103793496A (zh) | 一种瓦片图的处理方法及系统 | |
CN107979766B (zh) | 内容串流系统及方法 | |
CN111459723A (zh) | 终端数据处理系统 | |
CN112515556B (zh) | 一种环境地图的处理方法及其装置、电子设备 | |
CN112560529A (zh) | 一种基于二维码的绑定方法和系统 | |
US7456844B2 (en) | Image transmission method, computer-readable image transmission program, recording medium, and image transmission apparatus | |
CN116820651A (zh) | 一种界面显示方法、装置、电子设备及存储介质 | |
CN111885417B (zh) | Vr视频播放方法、装置、设备以及存储介质 | |
CN110740326A (zh) | 图像编码方法及装置 | |
CN106790466B (zh) | 用于推送的方法、服务器和终端设备 | |
CN112527929B (zh) | 一种栅格地图编码方法及其装置、电子设备 | |
US10949087B2 (en) | Method for rapid reference object storage format for chroma subsampled images | |
CN113282475A (zh) | 用于评价交互系统交互性能的方法和装置 | |
WO2020194958A1 (ja) | 画像表示制御装置、送信装置、画像表示制御方法及びプログラム | |
CN113645008A (zh) | 一种基于链表的报文协议超时重发方法及系统 | |
JPWO2017141339A1 (ja) | 処理制御プログラム、処理制御方法、情報処理装置、および通信装置 | |
US7382922B2 (en) | Creation of remarkable regions in a digital image | |
JP2009044595A (ja) | ディジタル・コンテンツ送信装置およびその動作制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |