Robot welcome target identification method and device and storage medium
By acquiring point cloud data of the robot's operating environment and identifying and classifying dynamic points, the problem of low target recognition accuracy of the welcoming robot in complex environments was solved, achieving higher recognition accuracy and lower misrecognition rate.
Patent Information
- Application Number
- CN202510637732.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-16
- Publication Date
- 2025-09-19
AI Technical Summary
Due to the influence of environmental factors, the welcoming robot's recognition accuracy of the welcoming target is reduced and the misrecognition rate is high.
By acquiring point cloud data of the robot's operating environment, dynamic points are identified and divided into primary dynamic points and secondary dynamic points according to their displacement and preset thresholds. Only primary dynamic points are used to determine the welcoming target.
The recognition accuracy of the welcoming target is improved, the misrecognition rate is reduced, and the robot's target recognition ability in complex environments is enhanced.
Smart Images

Figure CN120672791A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of robotics technology, and in particular to a method, device, and storage medium for robot guest reception target recognition. Background Art
[0002] Welcoming robots are commonly found in places such as hotels, shopping malls, banks, and airports that require efficient customer service and guided tours. They not only enhance the sense of technology and modernity of the venue, but also provide customers with a more convenient and comfortable experience through their intelligent and humane service methods.
[0003] When the robot welcome system collects images through a built-in camera or an externally connected camera device, it can only determine whether the target in the image has moved by comparing and analyzing consecutive multiple frames of images, but cannot determine the displacement of the moving target. Therefore, objects that move slightly due to the influence of fans and air conditioning airflow are also identified as welcome targets, thereby reducing the recognition accuracy of the welcome target.
[0004] The above content is only used to assist in understanding the technical solution of this application and does not constitute an admission that the above content is prior art. Summary of the Invention
[0005] The main purpose of this application is to provide a robot welcome target recognition method, device and storage medium, aiming to solve the technical problem of how to solve the high misrecognition rate of welcome targets due to the influence of environmental factors.
[0006] To achieve the above objectives, the present application proposes a robot welcoming target recognition method, which includes:
[0007] Obtaining point cloud data corresponding to the robot's operating environment, and determining dynamic points from the point cloud data;
[0008] According to the comparison result of the displacement corresponding to each of the dynamic points and the preset first displacement threshold, the dynamic points are divided into primary dynamic points and secondary dynamic points;
[0009] The welcoming target is determined according to the main dynamic points.
[0010] In one embodiment, the step of classifying the dynamic points into primary dynamic points and secondary dynamic points according to a comparison result between the displacement corresponding to each dynamic point and a preset first displacement threshold comprises:
[0011] If the displacement of the dynamic point is greater than the preset first displacement threshold, the dynamic point is the main dynamic point;
[0012] If the displacement of the dynamic point is less than or equal to the preset first displacement threshold, the dynamic point is the secondary dynamic point.
[0013] In one embodiment, the step of obtaining point cloud data corresponding to the robot operating environment and determining dynamic points from the point cloud data includes:
[0014] Acquiring the point cloud data, and determining a dynamic frame based on a comparison result between the point cloud data and a reference static frame;
[0015] The dynamic point is determined according to the dynamic frame.
[0016] In one embodiment, after the step of acquiring the point cloud data and determining the dynamic frame according to the comparison result of the point cloud data with the reference static frame, the method further includes:
[0017] It is determined whether there is a dynamic point whose displacement value within a preset time range is less than a preset second displacement threshold. If so, the frame corresponding to the dynamic point is reset to a static frame.
[0018] In one embodiment, before the step of determining the welcome target point according to the main dynamic point, the method further includes:
[0019] defining different color labels for the primary dynamic point and the secondary dynamic point, and performing color coding according to the color labels;
[0020] The secondary dynamic points are obtained according to the color labels of the secondary dynamic points, and the secondary dynamic points are filtered.
[0021] In one embodiment, the step of determining the welcoming target according to the main dynamic points includes:
[0022] The main dynamic points are grouped, and a welcoming target is determined according to the grouping result, wherein a group of main dynamic points obtained after grouping corresponds to one welcoming target.
[0023] In one embodiment, after the step of determining the welcoming target according to the main dynamic points, the method further includes:
[0024] generating a motion trajectory according to the position change of the welcoming target;
[0025] Calculating a moving speed of the welcoming target based on the motion trajectory;
[0026] Based on the motion trajectory and the moving speed, it is determined whether the welcoming target meets the preset welcoming conditions. If so, the welcoming process is triggered.
[0027] In one embodiment, the step of triggering the welcoming process includes:
[0028] The robot plays a preset welcome voice based on the speaker set inside the robot and responds interactively.
[0029] In addition, to achieve the above-mentioned purpose, the present application also proposes a robot welcoming target recognition device, which includes: a memory, a processor, and a computer program stored on the memory and executable on the processor, and the computer program is configured to implement the steps of the robot welcoming target recognition method as described above.
[0030] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium. A computer program is stored on the storage medium, and when the computer program is executed by the processor, the steps of the robot welcoming target recognition method as described above are implemented.
[0031] This application proposes a robot welcome target recognition method. This method acquires point cloud data corresponding to the robot's operating environment and identifies dynamic points from this point cloud data. For each dynamic point, its displacement in consecutive frames is calculated. A dynamic point whose displacement exceeds a threshold is considered a primary dynamic point; otherwise, it is considered a secondary dynamic point. Determining the welcome target based on the primary dynamic point addresses the high misidentification rate of welcome targets, which can be mistakenly identified as welcome targets due to environmental factors. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0033] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0034] Figure 1 The first flow chart of the robot welcoming target recognition method provided in this application;
[0035] Figure 2 A second flow chart of the target recognition method for welcoming guests provided by the robot in this application;
[0036] Figure 3 A third flow chart of the robot welcoming target recognition method provided in this application;
[0037] Figure 4 Schematic diagram of the device structure of the hardware operating environment involved in the robot welcoming target recognition method in the embodiment of the present application.
[0038] The purpose, features and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0039] It should be understood that the specific embodiments described herein are merely used to explain the technical solutions of the present application and are not intended to limit the present application.
[0040] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0041] The main solution of the embodiment of the present application is: obtaining point cloud data corresponding to the robot's operating environment, and determining dynamic points from the point cloud data; dividing the dynamic points into primary dynamic points and secondary dynamic points based on the comparison results of the displacement corresponding to each of the dynamic points and the preset first displacement threshold; and determining the welcoming target based on the primary dynamic points.
[0042] Welcoming robots are commonly found in places such as hotels, shopping malls, banks, and airports that require efficient customer service and guided tours. They not only enhance the sense of technology and modernity of the venue, but also provide customers with a more convenient and comfortable experience through their intelligent and humane service methods.
[0043] When the robot welcome system collects images through a built-in camera or an externally connected camera device, it can only determine whether the target in the image has moved by comparing and analyzing consecutive multiple frames of images, but cannot determine the displacement of the moving target. Therefore, objects that move slightly due to the influence of fans and air conditioning airflow are also identified as welcome targets, thereby reducing the recognition accuracy of the welcome target.
[0044] This application provides a solution to obtain point cloud data corresponding to the robot's operating environment and determine dynamic points from the point cloud data; for each dynamic point, its displacement in consecutive frames is calculated. If the displacement of the dynamic point exceeds the threshold, it is a primary dynamic point, otherwise it is a secondary dynamic point.
[0045] The welcoming target is determined only based on the main dynamic points, which solves the problem in the existing technology that the welcoming target is easily affected by environmental factors (such as air conditioning wind, surrounding mechanical noise, etc.), resulting in a high misrecognition rate.
[0046] It should be noted that the execution subject of this embodiment can be a computing service device with network communication and program execution capabilities, such as a tablet computer, personal computer, mobile phone, robot, server, server cluster, etc., or an electronic device or device capable of implementing the above functions. The following uses a robot welcome target recognition device as an example to illustrate this embodiment and the following embodiments.
[0047] Based on this, the embodiment of the present application provides a robot welcoming target recognition method, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the robot welcoming target recognition method of this application.
[0048] In this embodiment, the robot welcoming target recognition method includes steps S10 to S30:
[0049] Step S10: acquiring point cloud data corresponding to the robot's operating environment, and determining dynamic points from the point cloud data.
[0050] It should be noted that a dynamic point refers to a point whose position changes significantly during continuous scanning.
[0051] In this embodiment, the surrounding environment is scanned by a laser radar sensor installed on the robot. The sensor scans continuously at a fixed frequency (e.g., 20 Hz), and each scan returns a frame of point cloud data. The acquired point cloud data in the environment is stored as an ordered point cloud. The ordered point cloud can be an array sorted by angle to facilitate subsequent frame comparison. The collected point cloud data is then filtered to remove noise, such as using median filtering or Gaussian filtering techniques, to improve data quality. Dynamic points are identified by comparing the point cloud data in consecutive frames.
[0052] Optionally, outlier noise can be removed using a median filter, and then the data can be smoothed using a Gaussian filter. Median filtering preserves edges, while Gaussian filtering optimizes smoothness, achieving a balanced approach to denoising and edge preservation. When using a median filter to remove outlier noise, for each point's radial distance to the lidar sensor or scan center, the median of all points in its neighborhood is taken as the new value. The neighborhood size can be 2 points before and after the point, for a total of 5 points. Using a circular filling method, the point cloud data is treated as a ring structure connected end to end, with the points at the other end filling in the missing neighborhoods at the boundary. For each point, the distance values within the neighborhood are extracted, sorted, and the median value is used to replace the original value. For example, if the neighborhood distances are [4.8, 5.2, 10.0, 5.1, 4.9], the median value is 5.1, replacing the original value of 10.0. When smoothing the data using a Gaussian filter, the distance values of each point are weighted according to a Gaussian distribution, and a weighted average is calculated. The weights of the points within the neighborhood are calculated based on a predefined Gaussian kernel and standard deviation. For each point, replace the original value with the weighted average of the points in the neighborhood. For example, if the neighborhood weights are [0.1, 0.2, 0.4, 0.2, 0.1] and the distances are [4.8, 5.0, 5.2, 5.1, 4.9], then the new value is 4.8*0.1+5.0*0.2+5.2*0.4+5.1*0.2+4.9*0.1=5.06.
[0053] In this embodiment, a suitable displacement threshold is set according to the monitoring target and environmental characteristics, usually ranging from a few centimeters to tens of centimeters. The position changes of points between consecutive frames are analyzed by point cloud registration technology or coordinate comparison. The timestamps of consecutive frame point clouds are synchronized by GPS, PTP (Precision Time Protocol) or hardware trigger signal synchronization sensor. If there is a slight deviation in the timestamp, the point cloud time can be adjusted by linear interpolation, and each point in the point cloud is weighted averaged by time. If the position change of a point in consecutive frames exceeds the preset displacement threshold, it is identified as a dynamic point.
[0054] Optionally, the threshold can be dynamically adjusted based on point cloud density or local noise levels. For example, a smaller threshold can be used in dense areas and a larger threshold in sparse areas. For each point p, the point cloud density within its neighborhood is calculated. A KD tree or octree is used to accelerate the neighborhood search. The number of neighboring points n within a radius r is counted, or the average distance d from the neighboring points to point p is calculated, with density = 1 / n or density = 1 / d. If the calculated density is greater than a preset density threshold, the area is considered dense.
[0055] In a feasible implementation, dynamic points are determined by comparing the coordinate differences of corresponding points in two consecutive frames of point clouds. First, motion compensation is performed. The movement of the sensor between the two frames (rotation R and translation t) is obtained through odometry, IMU or visual odometry (VO), and the current frame point cloud is converted to the reference frame coordinate system. Given the current frame point cloud P1 and the estimated motion (R, t), the transformed point cloud P2 is P2 = R*P1+t, where R is a 3×3 rotation matrix and t is a 3×1 translation vector. By converting the current frame point cloud to the reference frame coordinate system, the influence of sensor motion is eliminated. Secondly, for each point in the reference frame, find the spatially nearest point in the current frame. For example, using the PCL library's pcl::KdTreeFLANN, a KD tree is constructed for the point cloud of the current frame. For each point in the reference frame, its nearest neighbor is queried through the KD tree. The Euclidean distance between each point in the reference frame and its nearest neighbor is calculated. The calculated distance is compared with a preset displacement threshold. If the calculated distance is greater than the preset displacement threshold, the point is considered a dynamic point.
[0056] In a feasible implementation, the position changes of points between consecutive frames are analyzed by point cloud registration technology or coordinate comparison.
[0057] First, representative key points (such as edges and corners) are extracted from the point cloud to reduce computational complexity. Key points can be calculated by calculating the curvature of the point, selecting points with greater curvature; or they can be points where the normal vector changes dramatically. For these key points, descriptors such as FPFH and SHOT are calculated. FPFH (Fast Point Feature Histogram) is used to calculate the distribution of normal vector angles at a point and its neighborhood, while SHOT (Signature of Histograms of Orientations) is a normal vector histogram based on spatial partitioning.
[0058] Secondly, the initial transformation matrix T is estimated by feature matching initial . Exemplarily, key point pairs are randomly sampled from two frames of point clouds, and the Hamming distance of the similarity FPFH of the feature descriptors is calculated. The descriptors of the key points in the two frames of point clouds are compared using the Hamming distance. The smaller the Hamming distance, the more similar the two descriptors are, and the higher the credibility of the matching pair. Point pairs with a Hamming distance less than a certain value are determined as matching point pairs. For each group of randomly sampled matching point pairs, the rigid transformation is solved by SVD decomposition, and the initial transformation matrix T is calculated. For all matching point pairs, the current transformation matrix T is used to transform the source point cloud to the target point cloud coordinate system, and the distance between the transformed point and the nearest neighbor in the target point cloud is calculated. If the distance is less than the preset threshold, the point pair is considered to be an inlier. Repeat the above steps of random sampling, transformation estimation, and inlier verification until the maximum number of iterations is reached or enough inliers are found. The transformation matrix with the largest number of inliers is retained as the coarse alignment result. Finally, the current frame point cloud is transformed into the reference frame coordinate system through the estimated transformation matrix, and the distance between the transformed point and the reference frame point is calculated. If the calculated distance threshold is greater than the preset unique threshold, the point is considered to be a dynamic point.
[0059] Step S20 , classifying the dynamic points into primary dynamic points and secondary dynamic points according to a comparison result between the displacement corresponding to each of the dynamic points and a preset first displacement threshold.
[0060] It should be noted that the displacement of the main dynamic point is larger, generally corresponding to high-speed moving objects (such as vehicles and pedestrians). The displacement of the secondary dynamic point is smaller, which may correspond to low-speed motion or small disturbances (such as swaying leaves and sensor noise).
[0061] Please refer to Figure 2 In a feasible implementation, step S20 may include steps S21 to S22:
[0062] In step S21 , if the displacement of the dynamic point is greater than the preset first displacement threshold, the dynamic point is the main dynamic point.
[0063] Step S22: If the displacement of the dynamic point is less than or equal to the preset first displacement threshold, the dynamic point is the secondary dynamic point.
[0064] In this implementation, if the displacement of a dynamic point is greater than a preset first displacement threshold, the point is marked as a primary dynamic point. If the displacement of a dynamic point is less than or equal to the preset first displacement threshold, the point is marked as a secondary dynamic point. Secondary dynamic points may be caused by sensor noise, minor environmental disturbances (such as swaying leaves), or low-speed motion (such as falling dust). Threshold classification can filter out these low-confidence dynamic points, reducing false detections.
[0065] Step S30: determining a welcoming target according to the main dynamic points.
[0066] In this embodiment, the main dynamic points are aggregated, and the dynamic points aggregated into a group are used as a welcoming target. Alternatively, the welcoming target is determined based on target detection and dynamic point fusion.
[0067] In a feasible implementation, clustering algorithms such as DBSCAN and K-Means are used to group dynamic points according to their spatial coordinates. The neighborhood radius and the minimum number of points are preset. The neighborhood radius is used to define the maximum distance threshold around the dynamic point, and the minimum number of points is the minimum number of dynamic points required in the neighborhood, otherwise it is regarded as noise. Traverse all major dynamic points. If the neighborhood of a point P contains at least M points, then P is the core point. Starting from the core point, all points in the neighborhood are recursively added to the same cluster, and points not included in any cluster are marked as noise. For example, in the scenario of the hotel lobby entrance, 10 major dynamic points are detected, which are clustered into 3 groups by DBSCAN, and it is determined that there are 3 welcoming targets.
[0068] In one feasible implementation, deep learning models such as YOLO and Faster R-CNN are used to detect pedestrians, vehicles, and other objects, outputting bounding boxes. Dynamic points are then associated with the detected bounding boxes. For each major dynamic point, the system checks whether it lies within a certain bounding box. If the number of points within a bounding box exceeds a threshold, the object is marked as a welcome target.
[0069] In this embodiment, point cloud data corresponding to the robot's operating environment is acquired and dynamic points are identified from this point cloud data. For each dynamic point, its displacement in consecutive frames is calculated. If the displacement exceeds a threshold, the point is considered a primary dynamic point; otherwise, it is considered a secondary dynamic point. By determining the welcome target based solely on primary dynamic points, the system eliminates the problem of environmental factors such as air conditioning wind and surrounding mechanical noise being mistakenly identified as welcome targets, leading to a high misidentification rate for welcome targets.
[0070] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above embodiment 1 can be referred to the above introduction and will not be described in detail later. Figure 2 , step S10 may include steps S11 to S12:
[0071] Step S11 , acquiring the point cloud data, and determining a dynamic frame based on a comparison result between the point cloud data and a reference static frame.
[0072] Step S12: determining the dynamic point according to the dynamic frame.
[0073] In this embodiment, a baseline static frame is first determined as a background reference. After each data scan, it is compared with the static frame to identify new dynamic frames. If an area does not change significantly within a certain period of time, the data in that area can be reclassified as a static frame.
[0074] Specifically, a buffer is created to store the most recently collected point cloud frames, and the sampling frequency, difference threshold, and minimum number of frames are pre-set. The sampling frequency is set according to the sensor performance, such as 10Hz, that is, 10 frames per second; the difference threshold represents the tolerance range of the difference between frames, such as ±5% change in the number of point clouds, ±10% change in regional density; the minimum number of frames represents at least 60 frames collected. Within the preset time period after the system is started, point cloud data is continuously collected through lidar or depth camera, stored in the buffer, and pre-processed such as denoising, coordinate system alignment, and downsampling. Exemplarily, statistical filtering or radius filtering is used to remove outliers; voxel grid filtering (such as 0.1m 3 Voxels) reduce the amount of data and improve computational efficiency; multiple frames are registered to the same coordinate system through ICP or NDT algorithms.
[0075] After preprocessing, the difference between each two frames is calculated to find the most stable frame. i , first, count the number of points N i , calculate the point number change rate ΔN between adjacent frames i,i+1 =|N i+1 -N i | / N i , if the point number change rate is greater than the preset point number change rate threshold, the frame is marked as a potential dynamic frame. Secondly, the regional density difference is calculated. The point cloud space is divided into voxel grids. For each voxel v, according to its position in F i and F i+1 The number of points n in i(v) and n {i+1}(v) , calculate the density change rate Δρ v =|n {i+1}(v) -n i(v)i | / n i(v)If the density change rate is greater than the preset density change rate threshold, the voxel is marked as a dynamic area. Finally, the comprehensive difference score of each frame is determined based on the density change rate and the point number change rate. The score calculation formula is: Where M is the number of frames to compare (e.g., the next five frames), and α is a weight coefficient used to balance the influence of point number and density. The frame with the smallest difference score is selected as the static frame. For each point in the current frame, the Euclidean distance d between it and its nearest neighbor in the static frame is calculated. If the distance d is greater than a preset threshold, the point is marked as a dynamic point.
[0076] In a feasible implementation, after step S11, the following step is further included: determining whether there is a dynamic point whose displacement value within a preset time range is less than a preset second displacement threshold; if so, resetting the frame corresponding to the dynamic point to a static frame.
[0077] In this implementation, for each dynamic point, its position and timestamp in consecutive frames are recorded, and a displacement value is calculated based on the position and timestamp. If the displacement value of a dynamic point within a preset time period is less than a preset threshold, the point is considered to have transitioned from dynamic to static. The voxel or region containing the point is removed from the dynamic frame and updated to the static frame. This displacement threshold avoids misclassifying briefly stationary dynamic objects as static frames, improving the accuracy of static frames.
[0078] In this embodiment, dynamic points represent objects that move or change in the environment (such as pedestrians, vehicles, and robots), while static points represent the background (such as buildings and the ground). By comparing the current point cloud data with a baseline static frame to identify the dynamic frame and further extracting dynamic points, the background can be quickly filtered out, retaining only the dynamic targets.
[0079] Based on the first embodiment of the present application, in the third embodiment of the present application, the same or similar contents as those in the first embodiment can be referred to above and will not be described in detail. On this basis, steps A10 to A20 may be further included before step S30:
[0080] Step A10: defining different color labels for the primary dynamic point and the secondary dynamic point, and performing color coding according to the color labels.
[0081] In this embodiment, after distinguishing primary and secondary dynamic points, different color labels are defined for each. For example, primary dynamic points are assigned a red color label, while secondary dynamic points are assigned a yellow color label. An empty list or array, equal to the number of rows in the dynamic point cloud, is created to store the color labels. Each dynamic point is iterated over, and a color label is assigned to each point based on whether it is a dynamic point.
[0082] Step A20 : acquiring the secondary dynamic points according to the color labels of the secondary dynamic points, and filtering the secondary dynamic points.
[0083] In this embodiment, each point in the color-coded dynamic point cloud contains coordinates (x, y) and a color label in RGB format. The color labels are traversed, and secondary dynamic points are extracted and filtered based on the color labels. Secondary dynamic points (such as fluttering leaves or slightly swaying objects) may introduce noise. By filtering secondary dynamic points, the algorithm focuses more on objects that have a greater impact on the robot's motion, avoiding incorrect decisions in path planning or obstacle avoidance due to the short movement of secondary dynamic points. In addition, the number of point clouds that need to be processed is reduced, saving computing resources.
[0084] Based on the first embodiment of the present application, in the fourth embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can be referred to the above introduction and will not be described in detail later. Figure 3 After step S30, the robot welcoming target recognition method further includes steps B10 to B30:
[0085] Step B10: generating a motion trajectory according to the position change of the welcoming target.
[0086] In this embodiment, the nearest neighbor search or deep learning method is used to match the dynamic points in the current frame with the previous frame. A unique identifier is assigned to each dynamic point, and its position sequence in consecutive frames is stored. The motion trajectory is generated based on the position sequence.
[0087] In a feasible implementation, a deep learning model such as PointTrack is used for point cloud feature extraction and cross-frame matching. The point cloud sequence is input into the deep learning model, and the feature vector of each point is output. The feature vector is used for similarity calculation. For each point in the current frame, the cosine similarity (or Euclidean distance) of its features and all features of the previous frame is calculated. The best matching pair is found using the Hungarian algorithm or the greedy matching algorithm. The trajectory is stored in a dictionary. If the current frame point successfully matches the previous frame point, its ID is inherited; otherwise, a new ID is assigned. The trajectory dictionary is updated to record the continuous position of each ID.
[0088] Step B20: Calculate the moving speed of the welcoming target based on the motion trajectory.
[0089] In this example, the instantaneous velocity of an object is estimated by comparing its position changes in two consecutive point cloud frames. The Euclidean distance between the target point clouds in the two frames is calculated, and the instantaneous velocity is obtained by dividing the distance by the time difference between the two frames. A time window (e.g., 5 frames) is selected, and the average of all instantaneous velocities within the window is calculated. This average velocity is used to analyze the overall motion trend of the object over time.
[0090] Step B30: Based on the motion trajectory and the moving speed, determine whether the welcoming target meets the preset welcoming conditions. If so, trigger the welcoming process.
[0091] In this embodiment, the intention of the welcoming target is determined by analyzing the relative position relationship between the target speed direction and the robot. When the target speed direction points to the robot and the target speed exceeds a certain threshold, it indicates that the welcoming target is actively approaching. When the speed direction of the welcoming target is away from the robot, or the speed exceeds the threshold but in the opposite direction, it indicates that the welcoming target is actively moving away or passing by quickly. For each dynamic target in the scene, its behavior category is marked as stationary, approaching, or moving away based on its speed and position relationship. By analyzing the speed direction and position relationship, it is clear whether the welcoming target is approaching or moving away from the robot. When it is determined that the welcoming target is approaching the robot, the welcoming process is triggered.
[0092] Based on the first embodiment of the present application, in the fifth embodiment of the present application, the same or similar contents as those in the first embodiment can be referred to above and will not be repeated hereafter. On this basis, the robot welcoming target recognition method can further include the steps of playing a preset welcome voice based on a speaker provided inside the robot and performing an interactive response.
[0093] In this embodiment, when it is detected that one or more targets meet the welcoming conditions, the welcoming process is triggered.
[0094] Optionally, the welcoming process can be triggered when the welcoming target meets both a distance threshold and a speed threshold. The robot obtains the distance between the welcoming target and the robot and the target's real-time speed. If the distance between the welcoming target and the robot is less than or equal to a preset distance threshold, and the target's real-time speed is greater than or equal to a preset speed threshold, the welcoming process is triggered. Automatically triggering the process based on preset thresholds avoids manual intervention and saves labor costs.
[0095] Optionally, the condition for triggering the welcoming process may also be the residence time of the welcoming target. If the welcoming target resides near the robot for more than a certain time, the welcoming process is triggered.
[0096] In this embodiment, after the welcome process is triggered, the robot plays a preset welcome voice message through the built-in speaker, such as "Welcome" or other customized greetings. Depending on the needs of the scenario, the robot can further interact with the guest, such as providing directions, displaying the menu, or providing other customer services.
[0097] For example, when providing directions to guests, a predefined location map (such as a shopping mall, hotel, or restaurant) is used, with key points marked (e.g., elevator A, restroom B). The A* algorithm or Dijkstra algorithm is used to calculate the shortest path from the current location to the destination. Multimodal guidance is provided, including voice and visual guidance, with real-time directions announced, such as "Please walk forward 10 meters and turn right to enter the elevator hall." A 2D or 3D map is displayed on the screen, highlighting the path, or using AR projection to display arrows on the ground to indicate the direction.
[0098] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the robot welcoming target recognition method of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.
[0099] The present application provides a robot welcome target recognition device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the robot welcome target recognition method in the above-mentioned embodiment one.
[0100] Reference below Figure 4 , which shows a schematic structural diagram of a robot welcoming target recognition device suitable for implementing the embodiments of the present application. The robot welcoming target recognition device in the embodiments of the present application may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, personal digital assistants (PDAs), tablet computers (PADs, portable Android devices), etc., as well as fixed terminals such as digital TVs and desktop computers. Figure 4 The robot welcoming target recognition device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0101] like Figure 4As shown, the robot welcome target recognition device may include a processing device 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes based on a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The random access memory 1004 also stores various programs and data required for the operation of the robot welcome target recognition device. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are connected to each other via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to I / O interface 1006: input device 1007 including, for example, a touch screen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output device 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage device 1003 including, for example, a magnetic tape, hard disk, etc.; and communication device 1009. Communication device 1009 can allow the robotic greeter target recognition device to communicate with other devices wirelessly or by wire to exchange data. Although the figure shows a robotic greeter target recognition device with various systems, it should be understood that implementation or presence of all the illustrated systems is not required. More or fewer systems may alternatively be implemented or present.
[0102] In particular, according to the embodiments disclosed in the present application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, the embodiments disclosed in the present application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program comprising program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via a communication device, or installed from a storage device 1003, or installed from a read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are performed.
[0103] The robot welcome target recognition device provided in this application, utilizing the robot welcome target recognition method described in the aforementioned embodiment, can address the technical issue of how to mitigate the high misidentification rate of welcome targets caused by environmental factors such as air conditioning wind and surrounding mechanical noise. Compared to the prior art, the beneficial effects of the robot welcome target recognition device provided in this application are the same as those of the robot welcome target recognition method described in the aforementioned embodiment. Other technical features of this robot welcome target recognition device are the same as those disclosed in the aforementioned embodiment and are not further elaborated here.
[0104] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0105] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
[0106] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, a computer program) stored thereon, and the computer-readable program instructions are used to execute the robot welcoming target recognition method in the above-mentioned embodiment.
[0107] The computer-readable storage medium provided in the present application can be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination thereof. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM, Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM, CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present embodiment, the computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in combination with an instruction execution system or device. The program code contained on the computer-readable storage medium can be transmitted using any appropriate medium, including but not limited to: an electric wire, an optical cable, a radio frequency (RF, Radio Frequency), etc., or any suitable combination thereof.
[0108] The computer-readable storage medium may be included in the robot guest-welcoming target recognition device; or it may exist independently without being assembled into the robot guest-welcoming target recognition device.
[0109] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by the robot welcome target recognition device, the robot welcome target recognition device is enabled to: obtain point cloud data corresponding to the robot operating environment, and determine dynamic points from the point cloud data; divide the dynamic points into primary dynamic points and secondary dynamic points based on the comparison results of the displacement corresponding to each of the dynamic points and the preset first displacement threshold; and determine the welcome target based on the primary dynamic points.
[0110] Computer program code for performing the operations of the present application can be written in one or more programming languages, or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0111] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a module, program segment or a part of code, and the module, program segment or a part of code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order than that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented by a dedicated hardware-based system that performs the specified function or operation, or can be implemented by a combination of dedicated hardware and computer instructions.
[0112] The modules described in the embodiments of the present application may be implemented in software or hardware, wherein the name of a module does not necessarily limit the unit itself.
[0113] The computer-readable storage medium provided in this application stores computer-readable program instructions (i.e., a computer program) for executing the aforementioned robot welcome target recognition method. This computer-readable storage medium addresses the technical problem of addressing the high misidentification rate of welcome targets caused by environmental factors such as air conditioning wind and surrounding mechanical noise. Compared to the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the robot welcome target recognition method provided in the aforementioned embodiments, and are not further elaborated here.
[0114] The present application also provides a computer program product, comprising a computer program, which, when executed by a processor, implements the steps of the above-mentioned robot welcoming target recognition method.
[0115] The computer program product provided in this application addresses the technical problem of how to mitigate the high misidentification rate of welcome targets caused by environmental factors such as air conditioning wind and surrounding mechanical noise. Compared to the prior art, the beneficial effects of the computer program product provided in this application are similar to those of the robot welcome target recognition method provided in the aforementioned embodiments, and are not further elaborated here.
[0116] The above description is only part of the embodiments of the present application and does not limit the patent scope of the present application. All equivalent structural transformations made by using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect application in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A robot welcoming target recognition method, characterized in that: The robot welcoming target recognition method comprises: Obtaining point cloud data corresponding to the robot's operating environment, and determining dynamic points from the point cloud data; According to the comparison result of the displacement corresponding to each of the dynamic points and the preset first displacement threshold, the dynamic points are divided into primary dynamic points and secondary dynamic points; The welcoming target is determined according to the main dynamic points.
2. The method according to claim 1, wherein The step of dividing the dynamic points into primary dynamic points and secondary dynamic points according to the comparison result of the displacement corresponding to each dynamic point and the preset first displacement threshold comprises: If the displacement of the dynamic point is greater than the preset first displacement threshold, the dynamic point is the main dynamic point; If the displacement of the dynamic point is less than or equal to the preset first displacement threshold, the dynamic point is the secondary dynamic point.
3. The method according to claim 1, wherein The step of obtaining point cloud data corresponding to the robot operating environment and determining dynamic points from the point cloud data includes: Acquiring the point cloud data, and determining a dynamic frame based on a comparison result between the point cloud data and a reference static frame; The dynamic point is determined according to the dynamic frame.
4. The method according to claim 3, wherein After the step of determining the dynamic frame according to the comparison result of the point cloud data and the reference static frame, the method further includes: It is determined whether there is a dynamic point whose displacement value within a preset time range is less than a preset second displacement threshold. If so, the frame corresponding to the dynamic point is reset to a static frame.
5. The method according to claim 1, wherein Before the step of determining the welcoming target point according to the main dynamic point, the method further includes: defining different color labels for the primary dynamic point and the secondary dynamic point, and performing color coding according to the color labels; The secondary dynamic points are obtained according to the color labels of the secondary dynamic points, and the secondary dynamic points are filtered.
6. The method according to claim 1, wherein The step of determining the welcoming target according to the main dynamic points comprises: The main dynamic points are grouped, and a welcoming target is determined according to the grouping result, wherein a group of main dynamic points obtained after grouping corresponds to one welcoming target.
7. The method according to claim 1, wherein After the step of determining the welcoming target according to the main dynamic points, the method further includes: generating a motion trajectory according to the position change of the welcoming target; Calculating a moving speed of the welcoming target based on the motion trajectory; Based on the motion trajectory and the moving speed, it is determined whether the welcoming target meets the preset welcoming conditions. If so, the welcoming process is triggered.
8. The method according to claim 7, wherein The steps of triggering the welcoming process include: The robot plays a preset welcome voice based on the speaker set inside the robot and responds interactively.
9. A robot welcoming target recognition device, characterized in that: The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the robot guest welcoming target recognition method according to any one of claims 1 to 8.
10. A storage medium, characterized in that: The storage medium is a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the steps of the robot welcoming target recognition method according to any one of claims 1 to 8 are implemented.