WO2021189783A1 - 一种场景建立方法、系统、装置及自移动机器人 - Google Patents

一种场景建立方法、系统、装置及自移动机器人 Download PDF

Info

Publication number
WO2021189783A1
WO2021189783A1 PCT/CN2020/115920 CN2020115920W WO2021189783A1 WO 2021189783 A1 WO2021189783 A1 WO 2021189783A1 CN 2020115920 W CN2020115920 W CN 2020115920W WO 2021189783 A1 WO2021189783 A1 WO 2021189783A1
Authority
WO
WIPO (PCT)
Prior art keywords
pose
current
self
mobile robot
motion state
Prior art date
Application number
PCT/CN2020/115920
Other languages
English (en)
French (fr)
Inventor
梁振振
于元隆
黄志勇
张涵
Original Assignee
南京科沃斯机器人技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 南京科沃斯机器人技术有限公司 filed Critical 南京科沃斯机器人技术有限公司
Publication of WO2021189783A1 publication Critical patent/WO2021189783A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures

Definitions

  • This application relates to the field of data processing technology, and in particular to a scene establishment method, system, device and self-moving robot.
  • a camera can be used to obtain images of the scene, and the matching image features can be obtained by means of extracting image features, using image features for feature matching, and so on. Then, sparse reconstruction can be performed based on the matched image features to obtain the camera pose of each image. Finally, dense reconstruction can be performed based on the camera pose to obtain a dense point cloud, which can then be used to reconstruct a three-dimensional scene.
  • the purpose of this application is to provide a scene establishment method, system, device and self-moving robot, which can improve the accuracy and robustness of scene establishment.
  • one aspect of the present application provides a scene establishment method, the method includes: acquiring image data and inertial measurement data, wherein the image data is used to generate the first pose of the mobile robot, the inertial The measurement data is used to generate the second pose of the self-mobile robot; obtain the current motion state of the self-mobile robot; select the first pose or the second pose suitable for the current moment according to the current motion state of the self-mobile robot, and The scene model is established according to the selected first pose and/or second pose; wherein, the first pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment Posture.
  • the system includes: a data acquisition unit for acquiring image data and inertial measurement data, wherein the image data is used to generate data from a mobile robot.
  • the first position, the inertial measurement data is used to generate the second position of the self-moving robot;
  • the motion state acquisition unit is used to acquire the current motion state of the self-mobile robot;
  • the scene model establishment unit is used to generate the second position of the self-moving robot
  • the current motion state of the robot selects the first pose or the second pose suitable for the current moment, and establishes a scene model according to the selected first pose and/or the second pose; wherein, the first pose The pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the scene establishment device includes a memory and a processor.
  • the memory is used to store a computer program.
  • the computer program is executed by the processor, Used to achieve the following functions: acquiring image data and inertial measurement data, where the image data is used to generate the first pose of the self-mobile robot, and the inertial measurement data is used to generate the second pose of the self-mobile robot ; Acquired from the current motion state of the mobile robot; according to the current motion state of the self-mobile robot, select the first pose or the second pose suitable for the current moment, and according to the selected first pose and/or the first pose A scene model is established with two poses; wherein, the first pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • another aspect of the present application also provides a self-moving robot
  • the self-moving robot includes a memory and a processor
  • the memory is used to store a computer program
  • the computer program is executed by the processor, Used to achieve the following functions: acquiring image data and inertial measurement data, where the image data is used to generate the first pose of the self-mobile robot, and the inertial measurement data is used to generate the second pose of the self-mobile robot ; Acquired from the current motion state of the mobile robot; according to the current motion state of the self-mobile robot, select the first pose or the second pose suitable for the current moment, and according to the selected first pose and/or the first pose A scene model is established with two poses; wherein, the first pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • another aspect of the present application provides a scene establishment method, the method includes: acquiring image data and inertial measurement data, wherein the image data is used to generate the first pose of the mobile robot, so The inertial measurement data is used to generate the second pose of the self-moving robot; select the first pose or the second pose suitable for the current moment, and establish it according to the selected first pose and/or second pose Scene model; wherein, the first pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the system includes: a data acquisition unit for acquiring image data and inertial measurement data, wherein the image data is used to generate data from a mobile robot.
  • the first pose, the inertial measurement data is used to generate the second pose of the self-mobile robot;
  • the scene model establishment unit is used to select the first pose and/or the second pose suitable for each different time, And establish a scene model according to the selected first pose and/or the second pose; wherein, the first pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose at the current moment.
  • the pose corresponding to the inertial measurement data is the pose corresponding to the image frame at the current moment.
  • the scene establishment device includes a memory and a processor.
  • the memory is used to store a computer program.
  • the computer program is executed by the processor, Used to achieve the following functions: acquiring image data and inertial measurement data, where the image data is used to generate the first pose of the self-mobile robot, and the inertial measurement data is used to generate the second pose of the self-mobile robot ; Select the first pose and/or the second pose suitable for each different moment, and establish a scene model according to the selected first pose and/or the second pose; wherein, the first pose The pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • another aspect of the present application also provides a self-moving robot
  • the self-moving robot includes a memory and a processor
  • the memory is used to store a computer program
  • the computer program is executed by the processor, Used to achieve the following functions: acquiring image data and inertial measurement data, where the image data is used to generate the first pose of the self-mobile robot, and the inertial measurement data is used to generate the second pose of the self-mobile robot ; Select the first pose and/or the second pose suitable for each different moment, and establish a scene model according to the selected first pose and/or the second pose; wherein, the first pose The pose is the pose corresponding to the image frame at the current moment, and the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the technical solutions provided by one or more embodiments of the present application can acquire image data and inertial measurement data when creating a scene.
  • the image data can be used to generate the first posture of the self-mobile robot
  • the inertial measurement data can be used to generate the second posture of the self-mobile robot.
  • the scene details contained in the image data are relatively rich.
  • the first pose generated based on the image data is more accurate.
  • the camera's field of view changes rapidly, which causes the generated first pose to be inaccurate.
  • a second pose based on inertial measurement data that can guarantee basic accuracy can be selected.
  • the scene model can be established according to the selected first pose and/or second pose, which can improve the establishment of the scene. Accuracy and robustness.
  • FIG. 1 is a schematic diagram of the steps of a scene establishment method in an embodiment of the present invention
  • FIG. 2 is a flowchart of scene establishment based on speed information in an embodiment of the present invention
  • FIG. 3 is a flowchart of scene establishment based on similarity in the embodiment of the present invention.
  • FIG. 4 is a flowchart of scene establishment according to the pose difference in the embodiment of the present invention.
  • FIG. 5 is a schematic diagram of functional modules of a scene establishment system in an embodiment of the present invention.
  • Fig. 6 is a schematic structural diagram of a scene establishment apparatus in an embodiment of the present invention.
  • an image sensor can be installed on the equipment for 3D scene reconstruction, and the image sensor has an image acquisition function.
  • the image sensor Through the image sensor, the image data corresponding to the indoor scene can be collected during the traveling of the device.
  • the image sensor may be an RGB-D sensor. Through the RGB-D sensor, RGB-D data can be collected, and the RGB-D data can include RGB images and depth images.
  • the image data collected by the image sensor can be processed to establish a three-dimensional scene.
  • Dense SLAM (Dense SLAM) algorithm can be used to process image data to generate a three-dimensional scene model.
  • the operating efficiency of the existing dense SLAM algorithm is usually 10Hz-30Hz, so the data collection frame rate of the image sensor installed on the device is often 10Hz-30Hz.
  • the device turns too fast or the moving speed is too fast the change between adjacent frames will increase greatly, and the scene information that the image sensor can capture will drastically reduce, resulting in a higher error rate of the dense SLAM algorithm based on frame matching.
  • the accuracy of 3D scene creation is reduced. Therefore, only relying on the image data collected by the image sensor may not be able to establish a high-precision scene.
  • one embodiment of the present application provides a scene establishment method, which can be executed by a device that performs three-dimensional scene reconstruction, or can be executed by a server that is specifically responsible for data processing.
  • the equipment that performs 3D scene reconstruction can be a sweeping robot, an autonomous car, virtual reality glasses, and so on.
  • the device can collect various data required, and then use the built-in operating system to process the collected data to complete the process of scene establishment.
  • the device can communicate with devices with data processing functions such as Tmall Genie, cloud server, etc., so as to upload various collected data to the device with data processing function, so that the device with data processing function can The data is processed to complete the process of scene establishment.
  • the scenario establishment method provided by an embodiment of the present application may include the following multiple steps.
  • S1 Acquire image data and inertial measurement data, where the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot.
  • an image sensor and an inertial measurement unit can be installed on the self-moving robot.
  • the image sensor may be an RGB-D sensor.
  • the image sensor may also be a sensor in other image formats.
  • it can be a CMYK sensor, CMY sensor, HSL sensor, HSV sensor, YUV sensor, etc.
  • the inertial measurement unit may include an accelerometer and a gyroscope, where the accelerometer can measure the acceleration components of the self-mobile robot in three orthogonal directions, and the gyroscope can measure the angular velocity components of the self-mobile robot in three orthogonal directions.
  • the image sensor can collect the image data of the indoor scene, and the IMU can generate corresponding inertial measurement data according to the motion state of the self-moving robot.
  • the self-moving robot can read image data from the image sensor, and can read inertial measurement data from the IMU.
  • the image data and inertial measurement data can be processed by the server or the data processing module in the mobile robot.
  • the image data may include color images and depth images (Depth Image).
  • the format of the color image can be consistent with the image format supported by the image sensor.
  • the color image may be an RGB image.
  • the pixel points in the depth image can represent the distance between the image sensor and each point in the scene.
  • the inertial measurement data can include the acceleration and angular velocity of the self-moving robot at different moments.
  • the image data collected by the image sensor may contain rich environmental details.
  • the first pose generated based on the image data tends to have higher accuracy.
  • the self-mobile robot turns or has a sudden change in speed, due to the low data acquisition frame rate of the image sensor, the difference between the acquired adjacent image frames is large, and the feature matching cannot be performed well. At this time, it will cause the generated The accuracy of the first position is lower. Since the frame rate of IMU data collected is usually about 100 frames, the collected inertial measurement data can accurately indicate the movement state of the self-mobile robot, and the second pose generated at this time is often more accurate.
  • the image sensor and IMU have better complementary characteristics in generating poses, so image data and inertial measurement data can be combined to create a three-dimensional scene.
  • the first pose may be the pose corresponding to the image frame at the current moment
  • the second pose may be the pose corresponding to the inertial measurement data at the current moment.
  • S3 Obtain the current motion state of the mobile robot; select the first pose or the second pose suitable for the current moment according to the current motion state of the self-mobile robot, and select the first pose and/or second pose according to the selected first pose and/or second pose Build a scene model.
  • the pose of the self-mobile robot can be calculated flexibly according to the movement state of the self-mobile robot at the current moment.
  • the motion state of the self-mobile robot can be obtained from inertial measurement data or calculated based on inertial measurement data.
  • the movement state of the self-moving robot may be represented by speed information, and the speed information may be, for example, the running speed or angular velocity of the self-moving robot.
  • the angular velocity at different moments can be directly read from the inertial measurement data, and the operating speed at different moments can be obtained by processing the inertial measurement data using inertial navigation technology.
  • the current speed information of the self-mobile robot can be determined in the inertial measurement data in the above-mentioned manner, and then the current movement state of the self-mobile robot can be judged according to the obtained speed information. Specifically, if the value represented by the speed information is greater than or equal to the specified speed threshold, it means that the running speed of the self-mobile robot at the current moment is too fast, or the turning speed is too fast, and the self-mobile robot may be in an unstable motion state. The accuracy of may not be high, so the current second pose can be used as the pose suitable for the current moment.
  • the value represented by the speed information is less than the specified speed threshold, it indicates that the self-moving robot is currently in a stable motion state, and the current first pose may be used as the pose applicable to the current moment.
  • the above specified speed threshold may be consistent with the type represented by the speed information. If the speed information characterizes the angular speed, then the specified speed threshold can be the angular speed threshold, and if the speed information characterizes the running speed, then the specified speed threshold can be the running speed threshold.
  • the motion state of the self-mobile robot can also be determined by the similarity between two adjacent image frames.
  • the image sensor is limited by the frame rate of data collection, which will make the difference between two adjacent image frames collected larger.
  • the current image frame at the current moment can be read in the image data, and the target image located before the current image frame and adjacent to the current image frame can be read frame. Then, the similarity between the current image frame and the target image frame can be calculated, and the motion state of the self-mobile robot can be determined according to the similarity.
  • both the current image frame and the target image frame can be represented by digitized feature vectors.
  • the feature vector may be constructed based on the pixel value of the pixel in the image frame.
  • the pixel value may be a value within a specified interval.
  • the pixel value can be any value from 0 to 255.
  • the size of the value can indicate the depth of the color.
  • the 81-dimensional vector can be used as the feature vector of the image frame.
  • the feature vector may also be constructed based on the Convolutional Neural Network (CNN) feature of the image frame.
  • CNN Convolutional Neural Network
  • the image frame can be input to the convolutional neural network, and then the convolutional neural network can output the feature vector corresponding to the image frame.
  • the current image frame can be obtained by calculating the vector angle between the two feature vectors or the Pearson correlation coefficient.
  • the similarity between the frame and the target image If the calculated similarity is greater than or equal to the specified similarity threshold, it indicates that the current image frame and the target image frame are relatively similar.
  • the self-mobile robot is in a stable motion state, so the current first pose can be used as Applies to the pose at the current moment.
  • the similarity is less than the specified similarity threshold, it indicates that the difference between the two image frames is large.
  • the self-mobile robot may run too fast and is in an unstable motion state.
  • the calculated The first pose is usually not accurate enough, so the current second pose may be used as the pose suitable for the current moment.
  • the image data and the inertial measurement data can be processed separately at the same time to obtain the corresponding first pose and second pose.
  • the IMU usually has good stability, so the calculated second pose is usually relatively stable.
  • the first pose and the second pose at the current moment can be obtained, and the difference between the first pose at the current moment and the second pose at the current moment can be calculated, and subsequently, The motion state of the self-moving robot can be determined according to the calculated difference.
  • the pose can be a parameter matrix associated with two adjacent image frames. Through this parameter matrix, a pixel at a certain position in the first image frame can be mapped to the other in the second image frame. In this way, the pixels in two adjacent image frames can be mapped to each other through poses.
  • the element difference value can always be a value greater than or equal to 0. If the first pose is used to subtract the second pose and the element value at some positions is negative, then Take the absolute value of the negative value, and use the absolute value as the element difference value. In this way, the size of the element difference can correspond to the difference of the elements between the two poses. Subsequent, the difference of each element can be added to obtain the pose difference between the first pose and the second pose. The difference can be used as the difference between the first pose and the second pose at the current moment.
  • the first pose or the second pose suitable for the current moment can be selected according to the difference. Specifically, if the difference is greater than or equal to the specified difference threshold, it means that the gap between the first pose and the second pose is too large. At this time, the motion state of the self-mobile robot may change significantly, so you can change The current second pose is used as the pose applicable to the current moment. And if the difference is less than the specified difference threshold, it means that the difference between the first pose and the second pose is not large. In this case, the more accurate current first pose can be used as the current The pose of the moment.
  • the image features of the image frame in the image data can be extracted, and the image features can be used for feature matching, so as to obtain the matched image features. Then, sparse establishment can be performed based on the matched image features to obtain the first pose of the image frame.
  • the first pose calculated in the above manner can be further corrected. Specifically, the Iterative Closest Point (ICP) algorithm can be used to correct the calculated first pose, so as to obtain the final first pose of any image frame.
  • ICP Iterative Closest Point
  • conventional error elimination and pre-integration processing may be performed on the inertial measurement data, so as to generate the corresponding second pose based on the inertial measurement data.
  • the motion increment between two adjacent frames can be calculated through pre-integration, and then the second pose of the next frame can be calculated based on the second pose of the current frame. Posture.
  • the selected pose can be processed according to the existing technology, so as to complete the process of scene establishment.
  • the sparse feature point cloud can be densely established according to the selected pose to obtain a dense point cloud, and the dense point cloud can be used for scene creation.
  • loop detection may be performed during the scene establishment process. Specifically, after the current scene is established, the current scene can be encoded and stored, and from the historically established scenes, it can be identified whether there is a historical scene similar to the current scene. If it exists, it means a loopback has occurred. Later, the loop detection technology can be used to directly calculate the pose of the current scene directly from the historical scene, so that the result of the pose is more accurate, and thus the accuracy of scene establishment is improved.
  • the Dibao robot can maintain a communication connection with the cloud server after completing the network configuration.
  • the Dibao robot can collect indoor image data through the RGB-D camera, and at the same time collect inertial measurement data through the inertial measurement unit. Both image data and inertial measurement data can be uploaded to a server in the cloud on a regular basis.
  • the cloud server can combine the two aspects of data to establish an indoor scene, and can send the built indoor model or indoor map to the Dibao robot, so that the Dibao robot can better plan the cleaning path.
  • the movement state may change significantly, which may cause the first pose generated based on the image data to be insufficiently accurate.
  • the second pose generated by the inertial measurement data can be combined to correct the first pose generated by the image data, so as to ensure the modeling accuracy of the indoor scene, so that the Dibao robot can plan more accurately based on the generated map. Sweep the path.
  • the Dibao robot can directly process the collected image data and inertial measurement data to establish an indoor scene, and can store the indoor model or indoor map obtained locally. Later, the user can directly view the indoor map stored in the Dibao robot through the APP, and issue an area cleaning instruction to the Dibao robot.
  • an autonomous vehicle can reconstruct the three-dimensional scene around the driving path by collecting image data in the driving path and the vehicle's own inertial measurement data, and can perform path planning and navigation based on the reconstructed scene.
  • the vehicle may suddenly accelerate or turn.
  • the error of the first pose generated based on the image data will be large.
  • the second pose generated by the inertial measurement data can be used for pose correction, so that The reconstructed 3D scene is more accurate, thereby ensuring the accuracy of path planning and the safety of autonomous driving.
  • the virtual reality eyes can simultaneously collect image data in the user’s environment and the inertial measurement data generated when the user moves, and the virtual reality eyes can be based on the collection
  • the obtained data reconstructs the user's environment. While playing the game, the user is likely to suddenly turn around or move by a large amount. At this time, the difference between adjacent image frames of the image data is large, and the first pose generated based on the image data may not be accurate enough. Therefore, the first pose generated by the image data can be corrected in combination with the second pose generated by the inertial measurement data, so as to ensure the modeling accuracy of the indoor scene.
  • this application also provides a scenario establishment system, which includes:
  • a data acquisition unit for acquiring image data and inertial measurement data, wherein the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot ;
  • the motion state acquisition unit is used to acquire the current motion state of the mobile robot
  • the scene model establishment unit is used to select the first pose or the second pose suitable for the current moment according to the current motion state of the self-mobile robot, and according to the selected first pose and/or the second pose Build a scene model;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the motion state acquiring unit includes:
  • the speed information determination module is used to determine the speed information of the self-mobile robot at the current moment in the inertial measurement data, and determine the current movement state of the self-mobile robot according to the obtained speed information.
  • the motion state acquiring unit includes:
  • An image frame reading module configured to read the current image frame at the current moment in the image data, and read the target image frame that is located before the current image frame and is adjacent to the current image frame;
  • the similarity determination module is used to calculate the similarity between the current image frame and the target image frame, and determine the current motion state of the self-moving robot according to the similarity.
  • the motion state acquiring unit includes:
  • a difference calculation module configured to obtain the first pose and the second pose at the current moment, and calculate the difference between the first pose at the current moment and the second pose at the current moment;
  • the difference determination module is used to determine the current motion state of the self-moving robot according to the calculated difference.
  • the present application also provides a scene establishment device, the scene establishment device includes a memory and a processor, the memory is used to store a computer program, when the computer program is executed by the processor, is used to implement The following functions:
  • Acquiring image data and inertial measurement data where the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the present application also provides a self-moving robot, the self-moving robot includes a memory and a processor, the memory is used to store a computer program, and when the computer program is executed by the processor, it is used to implement the following functions:
  • Acquiring image data and inertial measurement data where the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the corresponding first pose or second pose may be selected according to the specific situation at the current moment. For example, when the self-moving robot moves smoothly, or there is no sudden change in the light in the collected image data or the image features are obvious, the first pose can be selected. On the contrary, if the movement state of the self-mobile robot changes greatly, or the light in the collected image data has sudden changes or the image features are not obvious, resulting in the inaccuracy of the first pose, the second pose can be selected.
  • this application can provide a scenario establishment method, which includes:
  • Acquiring image data and inertial measurement data where the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • selecting the first pose or the second pose suitable for the current moment includes:
  • selecting the first pose or the second pose suitable for the current moment according to the speed information includes:
  • the current first pose is taken as the pose applicable to the current moment.
  • selecting the first pose and/or the second pose suitable for each different moment includes:
  • selecting the first pose or the second pose suitable for the current moment according to the similarity includes:
  • the current second pose is taken as the pose applicable to the current moment.
  • selecting the first pose and/or the second pose suitable for each different moment includes:
  • calculating the difference between the first pose at the current moment and the second pose at the current moment includes:
  • selecting the first pose or the second pose suitable for the current moment according to the calculated difference includes:
  • the current first pose is taken as the pose applicable to the current moment.
  • An embodiment of the present application may also provide a scenario establishment system, the system including:
  • a data acquisition unit for acquiring image data and inertial measurement data, wherein the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot ;
  • the scene model establishment unit is used to select the first pose and/or the second pose suitable for each different time, and establish a scene model according to the selected first pose and/or the second pose;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • An embodiment of the present application may further provide a scene establishment device, the scene establishment device includes a memory and a processor, the memory is used to store a computer program, and when the computer program is executed by the processor, it is used to implement the following Function:
  • Acquiring image data and inertial measurement data where the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • An embodiment of the present application may also provide a self-moving robot, the self-moving robot includes a memory and a processor, the memory is used to store a computer program, and when the computer program is executed by the processor, it is used to implement the following Function:
  • Acquiring image data and inertial measurement data where the image data is used to generate a first pose of the self-mobile robot, and the inertial measurement data is used to generate a second pose of the self-mobile robot;
  • the first pose is the pose corresponding to the image frame at the current moment
  • the second pose is the pose corresponding to the inertial measurement data at the current moment.
  • the memory may include a physical device for storing information, which is usually digitized and then stored in a medium using electrical, magnetic, or optical methods.
  • the memory may include: devices that use electrical energy to store information, such as RAM, ROM, etc.; devices that use magnetic energy to store information, such as hard disks, floppy disks, magnetic tapes, magnetic core memories, bubble memory, and U disks; use optical methods to store information Device such as CD or DVD.
  • devices that use electrical energy to store information such as RAM, ROM, etc.
  • devices that use magnetic energy to store information such as hard disks, floppy disks, magnetic tapes, magnetic core memories, bubble memory, and U disks
  • use optical methods to store information Device such as CD or DVD.
  • there are other types of memory such as quantum memory, graphene memory, and so on.
  • the processor can be implemented in any suitable manner.
  • the processor may take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program codes (for example, software or firmware) executable by the (micro)processor, logic gates, switches, special-purpose integrated Circuit (Application Specific Integrated Circuit, ASIC), programmable logic controller and embedded microcontroller form, etc.
  • program codes for example, software or firmware
  • the technical solutions provided by one or more embodiments of the present application can acquire image data and inertial measurement data when creating a scene.
  • the image data can be used to generate the first posture of the self-mobile robot
  • the inertial measurement data can be used to generate the second posture of the self-mobile robot.
  • the scene details contained in the image data are relatively rich.
  • the first pose generated based on the image data is more accurate.
  • the camera's field of view changes rapidly, resulting in insufficient accuracy of the first pose generated.
  • a second pose based on inertial measurement data that can guarantee basic accuracy can be selected.
  • the scene model can be established according to the selected first pose and/or second pose, which can improve the establishment of the scene. Accuracy and robustness.
  • the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention may adopt a form of a complete hardware implementation, a complete software implementation, or a combination of software and hardware implementations. Moreover, the present invention may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • the computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-permanent memory in computer readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of computer readable media.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • Computer-readable media include permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology.
  • the information can be computer-readable instructions, data structures, program modules, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media can be used to store information that can be accessed by computing devices. According to the definition in this article, computer-readable media does not include transitory media, such as modulated data signals and carrier waves.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

一种场景建立方法、系统、装置及自移动机器人,其中,所述方法包括:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;获取自移动机器人的当前运动状态;根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的第一位姿和/或第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿,因此能够提高场景建立的准确性和鲁棒性。

Description

一种场景建立方法、系统、装置及自移动机器人
交叉引用
本申请引用于2020年03月23日递交的名称为“一种场景建立方法、系统、装置及自移动机器人”的第202010207847.2号中国专利申请,其通过引用被部分并入本申请。
技术领域
本申请涉及数据处理技术领域,特别涉及一种场景建立方法、系统、装置及自移动机器人。
背景技术
在当前的三维场景重建技术中,可以利用相机获取场景的图像,并通过提取图像特征、利用图像特征进行特征匹配等手段得到匹配的图像特征。然后,可以基于匹配的图像特征进行稀疏重建,从而得到各个图像的相机位姿。最终,可以基于相机位姿进行稠密重建,得到稠密点云,该稠密点云便可以用于重建三维场景。
目前的三维重建过程中,由于室内场景比较复杂,基于相机获取的图像来重建室内场景时,可能会导致准确性和鲁棒性较低的情况。
发明内容
本申请的目的在于提供一种场景建立方法、系统、装置及自移动机器人,能够提高场景建立的准确性和鲁棒性。
为实现上述目的,本申请一方面提供一种场景建立方法,所述方法包 括:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;获取自移动机器人的当前运动状态;根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的第一位姿和/或第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种场景建立系统,所述系统包括:数据获取单元,用于获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;运动状态获取单元,用于获取自移动机器人的当前运动状态;场景模型建立单元,用于根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种场景建立装置,所述场景建立装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;获取自移动机器人的当前运动状态;根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种自移动机器人,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所 述惯性测量数据用于生成所述自移动机器人的第二位姿;获取自移动机器人的当前运动状态;根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种场景建立方法,所述方法包括:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;选择适用于当前时刻的第一位姿或第二位姿,并根据选择的第一位姿和/或第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种场景建立系统,所述系统包括:数据获取单元,用于获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;场景模型建立单元,用于选择适用于各个不同时刻的第一位姿和/或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种场景建立装置,所述场景建立装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;选择适用于各个不同时刻的第一位姿和/或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
为实现上述目的,本申请另一方面还提供一种自移动机器人,所述自 移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;选择适用于各个不同时刻的第一位姿和/或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
由上可见,本申请一个或者多个实施方式提供的技术方案,在建立场景时,可以获取图像数据和惯性测量数据。其中,图像数据可以用于生成自移动机器人的第一位姿,惯性测量数据则可以用于生成自移动机器人的第二位姿。图像数据中包含的场景细节比较丰富,在有足够多的高质量匹配信息时,基于图像数据生成的第一位姿更为精确。然而,在某些时刻,例如自移动机器人转弯、旋转或者移动速度过快时,相机视野快速变化,从而导致生成的第一位姿不够准确。此时可以选用可以保证基本准确性的基于惯性测量数据生成的第二位姿。这样,根据不同时刻的实际情况,选用对应的第一位姿或者第二位姿,最终可以根据选用的第一位姿和/或第二位姿进行场景模型的建立,从而能够提高场景建立的准确性和鲁棒性。
附图说明
为了更清楚地说明本发明实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中场景建立方法的步骤示意图;
图2是本发明实施方式中根据速度信息进行场景建立的流程图;
图3是本发明实施方式中根据相似度进行场景建立的流程图;
图4是本发明实施方式中根据位姿差值进行场景建立的流程图;
图5是本发明实施方式中场景建立系统的功能模块示意图;
图6是本发明实施方式中场景建立装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施方式及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施方式仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
在实际应用中,进行三维场景重建的设备上可以安装图像传感器,该图像传感器具备图像采集功能。通过该图像传感器,可以在设备的行进过程中采集室内场景对应的图像数据。在一个具体应用示例中,该图像传感器可以是RGB-D传感器。通过该RGB-D传感器,可以采集到RGB-D数据,在该RGB-D数据中,可以包括RGB图像和深度图像。
在现有技术中,可以通过对图像传感器采集的图像数据进行处理,从而进行三维场景建立。例如,可以采用稠密定位与建图(Dense SLAM)算法对图像数据进行处理,从而生成三维场景模型。然而现有的Dense SLAM算法的运行效率通常是在10Hz-30Hz,因此设备上安装的图像传感器的数据采集帧率也往往是10Hz-30Hz。当设备转向过快或者移速过快时,相邻帧之间的变化大幅度增大,图像传感器能够捕捉的场景信息便会急剧减少,导致基于帧匹配的Dense SLAM算法的误差率较高,进而使得三维场景建立的精度降低。因此,仅仅依靠图像传感器采集的图像数据,可能无法进行高精度的场景建立。
鉴于此,本申请一个实施方式提供一种场景建立方法,该方法可以由进行三维场景重建的设备执行,也可以由专门负责数据处理的服务器执行。其中,进行三维场景重建的设备可以是扫地机器人、自动驾驶汽车、虚拟现实眼镜等。举例来说,设备在行进过程中,可以采集所需的各项数据,然后利 用内置的操作系统对采集的数据进行处理,从而完成场景建立的过程。又例如,设备可以与天猫精灵、云端服务器等具备数据处理功能的设备进行通信,从而将采集的各项数据上传至具备数据处理功能的设备中,从而通过具备数据处理功能的设备对采集的数据进行处理,进而完成场景建立的过程。
请参阅图1,本申请一个实施方式提供的场景建立方法,可以包括以下多个步骤。
S1:获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿。
在本实施方式中,自移动机器人上可以安装图像传感器和惯性测量单元(Inertial Measurement Unit,IMU)。其中,图像传感器可以是RGB-D传感器。当然,随着技术的发展和可替代方案的出现,图像传感器还可以是其它图像格式的传感器。例如可以是CMYK传感器、CMY传感器、HSL传感器、HSV传感器、YUV传感器等。惯性测量单元中可以包括加速度计和陀螺仪,其中,加速度计可以测量自移动机器人在正交的三个方向的加速度分量,陀螺仪可以测量自移动机器人在正交的三个方向的角速度分量。图像传感器可以采集室内场景的图像数据,IMU则可以根据自移动机器人的运动状态,生成对应的惯性测量数据。
在本实施方式中,自移动机器人可以从图像传感器中读取图像数据,并且可以从IMU中读取惯性测量数据。图像数据和惯性测量数据可以由服务器或者自移动机器人中的数据处理模块处理。具体地,图像数据中可以包括彩色图像和深度图像(Depth Image)。其中,彩色图像的格式可以与图像传感器所支持的图像格式保持一致。例如,对于RGB-D传感器而言,彩色图像可以是RGB图像。深度图像中的像素点,可以表征图像传感器与场景中各个点的距离。惯性测量数据中则可以包含自移动机器人在不同时刻的加速度和角速度。
在本实施方式中,当自移动机器人在平稳行进时,图像传感器采集的图 像数据中可以包含丰富的环境细节,在这种情况下基于图像数据生成的第一位姿往往精度较高。而当自移动机器人转弯或者速度突变时,由于图像传感器的数据采集帧率较低,导致采集的相邻图像帧之间的差别较大,无法很好地进行特征匹配,此时会导致生成的第一位姿的精度较低。而由于IMU采集数据的帧率通常在100帧左右,因此采集的惯性测量数据能够精确地表明自移动机器人的运动状态,此时生成的第二位姿往往比较精确。可见,图像传感器和IMU在生成位姿方面,具备较好的互补特性,因此可以结合图像数据和惯性测量数据来进行三维场景的建立。由上可见,第一位姿可以是当前时刻的图像帧对应的位姿,第二位姿可以是当前时刻的惯性测量数据对应的位姿。
S3:获取自移动机器人的当前运动状态;根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的第一位姿和/或第二位姿建立场景模型。
在本实施方式中,可以根据当前时刻自移动机器人的运动状态,灵活地计算自移动机器人的位姿。其中,自移动机器人的运动状态可以从惯性测量数据中获取或者根据惯性测量数据推算得到。例如,自移动机器人的运动状态可以通过速度信息来表示,该速度信息例如可以是自移动机器人的运行速度或者角速度。其中,不同时刻的角速度可以直接从惯性测量数据中读取,不同时刻的运行速度则可以利用惯性导航技术,对惯性测量数据进行处理得到。
请参阅图2,在一个实施方式中,可以按照上述的方式,在所述惯性测量数据中确定当前时刻自移动机器人的速度信息,然后可以根据获得的速度信息判断当前自移动机器人的运动状态。具体地,如果速度信息表征的数值大于或者等于指定速度阈值,则表示当前时刻自移动机器人的运行速度过快,或者转向速度过快,自移动机器人可能处于非稳定的运动状态,第一位姿的精度可能不高,因此可以将当前的第二位姿作为适用于所述当前时刻的位姿。而如果所述速度信息表征的数值小于所述指定速度阈值,则表示自移动机器 人当前处于稳定的运动状态,此时可以将当前的第一位姿作为适用于所述当前时刻的位姿。上述的指定速度阈值,可以与速度信息表征的类型保持一致。如果速度信息表征的是角速度,那么指定速度阈值便可以是角速度阈值,而如果速度信息表征的是运行速度,那么指定速度阈值便可以是运行速度阈值。
在另一个实施方式中,还可以通过相邻两个图像帧之间的相似度来确定自移动机器人的运动状态。通常而言,当自移动机器人平稳运行时,图像传感器采集的相邻两个图像帧之间往往是比较相似的。而当自移动机器人非平稳运行时,图像传感器受限于数据采集帧率,会使得采集的相邻两个图像帧之间的差异较大。鉴于此,请参阅图3,在本实施方式中,可以在图像数据中读取当前时刻的当前图像帧,并读取位于所述当前图像帧之前且与所述当前图像帧相邻的目标图像帧。然后,可以计算所述当前图像帧和所述目标图像帧之间的相似度,并根据所述相似度确定所述自移动机器人的运动状态。
具体地,当前图像帧和目标图像帧均可以通过数字化的特征向量来表示。所述特征向量可以是基于图像帧中像素点的像素值进行构建的。所述像素值可以是处于指定区间内的数值。例如,所述像素值可以是0至255中的任意一个数值。数值的大小可以表示色彩的深浅。在本实施方式中,可以获取图像帧各个像素点的像素值,并通过获取的像素值构成该图像帧的特征向量。例如,对于具备9*9=81个像素点的图像帧而言,可以依次获取其中像素点的像素值,然后根据从左向右从上至下的顺序,将获取的像素值依次排列,从而构成81维的向量。该81维的向量便可以作为图像帧的特征向量。在本实施方式中,所述特征向量还可以是基于图像帧的卷积神经网络(Convolutional Neural Network,CNN)特征进行构建的。具体地,可以将图像帧输入卷积神经网络中,然后该卷积神经网络便可以输出图像帧对应的特征向量。
在本实施方式中,按照上述的方式确定出当前图像帧和目标图像帧的特征向量后,可以通过计算两个特征向量之间的向量夹角或者皮尔逊(Pearson)相关系数来得到当前图像帧和目标图像帧之间的相似度。如果计算得到的相似度大于或者等于指定相似度阈值,则表明当前图像帧和目标图像帧之间比 较相似,此时说明自移动机器人处于稳定的运动状态,因此可以将当前的第一位姿作为适用于所述当前时刻的位姿。而如果所述相似度小于所述指定相似度阈值,则表明两个图像帧之间的差别较大,此时自移动机器人可能运行速度过快,处于非稳定的运动状态,此时计算得到的第一位姿通常不够准确,因此可以将当前的第二位姿作为适用于所述当前时刻的位姿。
在另一个实施方式中,可以同时对图像数据和惯性测量数据分别进行处理,从而得到对应的第一位姿和第二位姿。在自移动机器人运行过程中,IMU通常会具备较好的稳定性,因此计算出的第二位姿也通常比较稳定。此时,可以将当前时刻的第一位姿和第二位姿进行比较,如果两者相差较小,说明当前时刻的第一位姿也比较准确。由于第一位姿基于比较丰富的场景细节推算得到,更为精确,因此在这种情况下可以选用第一位姿。而如果当前时刻的第一位姿和第二位姿相差较大,由于第二位姿是基本准确的,说明此时第一位姿可能不够准确,在这种情况下则可以选用第二位姿。
具体地,请参阅图4,可以获取当前时刻的第一位姿和第二位姿,并计算所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值,后续,可以根据计算的所述差值确定所述自移动机器人的运动状态。其中,位姿可以是与相邻的两个图像帧相关联的参数矩阵,通过该参数矩阵,第一个图像帧中某个位置的像素点可以被映射至第二个图像帧中的另一个位置处,这样,相邻的两个图像帧中的像素点便可以通过位姿相互映射。在计算当前时刻的第一位姿和第二位姿的差值时,由于第一位姿和第二位姿均为矩阵,两个矩阵相减时,相当于是计算第一位姿和第二位姿中相同位置处的元素差值。需要说明的是,在实际应用中,该元素差值可以始终为大于或者等于0的数值,如果利用第一位姿减去第二位姿,得到部分位置处的元素值为负值,那么可以取该负值的绝对值,并将该绝对值作为元素差值。这样,元素差值的大小可以对应两个位姿之间元素的差异,后续,可以将各个元素差值相加,从而得到第一位姿和第二位姿的位姿差值,该位姿差值便可以作为当前时刻的第一位姿和第二位姿的差值。
在本实施方式中,在计算得到当前时刻的第一位姿和第二位姿的差值后,可以根据该差值选择适用于所述当前时刻的第一位姿或第二位姿。具体地,如果所述差值大于或者等于指定差值阈值,则表示第一位姿和第二位姿之间的差距过大,此时自移动机器人的运动状态可能变化较大,因此可以将当前的第二位姿作为适用于所述当前时刻的位姿。而如果所述差值小于所述指定差值阈值,则表示第一位姿和第二位姿之间差距不大,此时可以将比较准确的当前的第一位姿作为适用于所述当前时刻的位姿。
在一个实施方式中,在根据图像数据生成第一位姿时,可以提取图像数据中图像帧的图像特征,并利用图像特征进行特征匹配,从而得到匹配的图像特征。然后,可以基于匹配的图像特征进行稀疏建立,从而得到图像帧的第一位姿。在实际应用中,按照上述方式计算出的第一位姿还可以进一步地进行修正。具体地,可以采用问题引入迭代最近点(Iterative Closest Point,ICP)算法对计算出的第一位姿进行修正,从而得到任意图像帧的最终的第一位姿。
在一个实施方式中,在根据惯性测量数据生成第二位姿时,可以对惯性测量数据进行常规的误差消除和预积分处理,从而基于惯性测量数据生成对应的第二位姿。具体地,可以根据惯性测量数据,通过预积分计算出相邻两帧之间的运动增量,然后可以在当前帧的第二位姿的基础上,计算出下一帧自移动机器人的第二位姿。
在本实施方式中,针对不同时刻选用了对应的第一位姿或者第二位姿后,便可以按照现有的技术,对选用的位姿进行处理,从而完成场景建立的过程。具体地,可以根据选用的位姿对稀疏的特征点云进行稠密建立,从而得到稠密点云,便可以利用该稠密点云进行场景建立。
在一个实施方式中,为了使得建立的场景更加精确,可以在场景建立过程中进行回环检测。具体地,在建立出当前场景之后,可以对该当前场景进行编码存储,并可以从历史建立的场景中,识别是否存在与该当前场景相似的历史场景。如果存在,则表示产生了回环。后续,可以通过回环检测技术,直接由历史场景直接推算当前场景的位姿,从而使得位姿的结果更加精确, 进而提高了场景建立的精确度。
在一个具体应用场景中,地宝机器人在完成配网之后,可以与云端的服务器保持通信连接。这样,地宝机器人在清扫室内的过程中,可以通过RGB-D相机采集室内的图像数据,同时可以通过惯性测量单元采集惯性测量数据。图像数据和惯性测量数据均可以定期上传至云端的服务器中。这样,云端的服务器可以结合这两方面的数据进行室内场景建立,并可以将建立得到的室内模型或者室内地图发送至地宝机器人处,从而使得地宝机器人能够更好地规划清扫路径。具体地,地宝机器人在采集图像数据时,可能由于运动状态发生较大改变,从而导致基于图像数据生成的第一位姿可能会不够准确。鉴于此,可以结合惯性测量数据生成的第二位姿,对图像数据生成的第一位姿进行校正,从而保证室内场景的建模精度,进而使得地宝机器人能够根据生成的地图更加准确地规划清扫路径。
在另一个具体应用场景中,地宝机器人可以直接对采集的图像数据和惯性测量数据进行处理,从而进行室内场景建立,并可以将建立得到的室内模型或者室内地图存储在本地。后续,用户可以通过APP直接查看地宝机器人中存储的室内地图,并向地宝机器人下达区域清扫指令。
在另一个具体应用场景中,自动驾驶车辆可以通过采集行驶路径中的图像数据和车辆自身的惯性测量数据,从而进行行驶路径周边的三维场景重建,并可以基于重建的场景进行路径规划和导航。在车辆行驶过程中,很可能会遇到运动状态突变的情况。例如,车辆可能会突然加速或者转弯,在这种情况下,基于图像数据生成的第一位姿误差会较大,此时可以利用惯性测量数据生成的第二位姿进行位姿校正,从而使得重建的三维场景更加准确,进而保证路径规划的准确性和自动驾驶的安全性。
在另一个具体应用场景中,当用户戴着虚拟现实眼镜玩游戏时,虚拟现实眼睛可以同时采集用户所处环境中的图像数据以及用户运动时产生的惯性测量数据,并且虚拟现实眼睛可以基于采集到的数据进行用户所处环境的重建。用户在玩游戏过程中,很可能会突然转身或者大幅度移动,此时,图像 数据的相邻图像帧之间差异较大,基于图像数据生成的第一位姿可能会不够准确。因此,可以结合惯性测量数据生成的第二位姿,对图像数据生成的第一位姿进行校正,从而保证室内场景的建模精度。
请参阅图5,本申请还提供一种场景建立系统,所述系统包括:
数据获取单元,用于获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
运动状态获取单元,用于获取自移动机器人的当前运动状态;
场景模型建立单元,用于根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
在一个实施方式中,所述运动状态获取单元包括:
速度信息确定模块,用于在所述惯性测量数据中确定当前时刻所述自移动机器人的速度信息,根据获得的速度信息判断当前自移动机器人的运动状态。
在一个实施方式中,所述运动状态获取单元包括:
图像帧读取模块,用于在所述图像数据中读取当前时刻的当前图像帧,并读取位于所述当前图像帧之前且与所述当前图像帧相邻的目标图像帧;
相似度确定模块,用于计算所述当前图像帧和所述目标图像帧之间的相似度,并根据所述相似度确定所述自移动机器人的当前运动状态。
在一个实施方式中,所述运动状态获取单元包括:
差值计算模块,用于获取当前时刻的第一位姿和第二位姿,并计算所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值;
差值判定模块,用于根据计算的所述差值确定所述自移动机器人的当前运动状态。
请参阅图6,本申请还提供一种场景建立装置,所述场景建立装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
获取自移动机器人的当前运动状态;
根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
本申请还提供一种自移动机器人,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
获取自移动机器人的当前运动状态;
根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
在本申请的其它实施方式中,针对不同的时刻,可以根据当前时刻的具体情形,选择对应的第一位姿或者第二位姿。例如,当自移动机器人运动状态平稳,或者采集的图像数据中光线没有突变或者图像特征比较明显时,可以选择第一位姿。相反,如果自移动机器人运动状态变化较大,或者采集的图像数据中光线发生突变或者图像特征不太明显,导致第一位姿不太准确时,可以选择第二位姿。鉴于此,本申请可以提供一种场景建立方法,所述方法包括:
获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
选择适用于当前时刻的第一位姿或第二位姿,并根据选择的第一位姿和/或第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
在一个实施方式中,选择适用于当前时刻的第一位姿或第二位姿包括:
在所述惯性测量数据中确定当前时刻所述自移动机器人的速度信息,并根据所述速度信息选择适用于所述当前时刻的第一位姿或第二位姿。
在一个实施方式中,根据所述速度信息选择适用于所述当前时刻的第一位姿或第二位姿包括:
若所述速度信息表征的数值大于或者等于指定速度阈值,将当前的第二位姿作为适用于所述当前时刻的位姿;
若所述速度信息表征的数值小于所述指定速度阈值,将当前的第一位姿作为适用于所述当前时刻的位姿。
在一个实施方式中,选择适用于各个不同时刻的第一位姿和/或第二位姿包括:
在所述图像数据中读取当前时刻的当前图像帧,并读取位于所述当前图像帧之前且与所述当前图像帧相邻的目标图像帧;
计算所述当前图像帧和所述目标图像帧之间的相似度,并根据所述相似度选择适用于所述当前时刻的第一位姿或第二位姿。
在一个实施方式中,根据所述相似度选择适用于所述当前时刻的第一位姿或第二位姿包括:
若所述相似度大于或者等于指定相似度阈值,将当前的第一位姿作为适用于所述当前时刻的位姿;
若所述相似度小于所述指定相似度阈值,将当前的第二位姿作为适用于所述当前时刻的位姿。
在一个实施方式中,选择适用于各个不同时刻的第一位姿和/或第二位姿包括:
获取当前时刻的第一位姿和第二位姿,并计算所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值;
根据计算的所述差值选择适用于所述当前时刻的第一位姿或第二位姿。
在一个实施方式中,计算所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值包括:
计算所述当前时刻的第一位姿和所述当前时刻的第二位姿中相同位置处的元素差值,并将各个所述元素差值相加,并将相加的结果作为所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值。
在一个实施方式中,根据计算的所述差值选择适用于所述当前时刻的第一位姿或第二位姿包括:
若所述差值大于或者等于指定差值阈值,将当前的第二位姿作为适用于所述当前时刻的位姿;
若所述差值小于所述指定差值阈值,将当前的第一位姿作为适用于所述当前时刻的位姿。
本申请一个实施方式还可以提供一种场景建立系统,所述系统包括:
数据获取单元,用于获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
场景模型建立单元,用于选择适用于各个不同时刻的第一位姿和/或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
本申请一个实施方式还可以提供一种场景建立装置,所述场景建立装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
选择适用于各个不同时刻的第一位姿和/或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
本申请一个实施方式还可以提供一种自移动机器人,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
选择适用于各个不同时刻的第一位姿和/或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
在本实施方式中,所述存储器可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方法的媒体加以存储。该存储器可以包括:利用电能方式存储信息的装置,如RAM、ROM等;利用磁能方式存储信息的装置,如硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置,如CD或DVD。当然,还有其他方式的存储器,例如量子存储器、石墨烯存储器等等。
在本实施方式中,所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间 相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。
由上可见,本申请一个或者多个实施方式提供的技术方案,在建立场景时,可以获取图像数据和惯性测量数据。其中,图像数据可以用于生成自移动机器人的第一位姿,惯性测量数据则可以用于生成自移动机器人的第二位姿。图像数据中包含的场景细节比较丰富,在有足够多的高质量匹配信息时,基于图像数据生成的第一位姿更为精确。然而,在某些时刻,例如自移动机器人转弯、旋转或者移动速度过快时,相机视野快速变化,从而导致生成的第一位姿不够准确。此时可以选用可以保证基本准确性的基于惯性测量数据生成的第二位姿。这样,根据不同时刻的实际情况,选用对应的第一位姿或者第二位姿,最终可以根据选用的第一位姿和/或第二位姿进行场景模型的建立,从而能够提高场景建立的准确性和鲁棒性。
本领域内的技术人员应明白,本发明的实施方式可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施方式的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或 多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(Transitory Media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施方式而已,并不用于限制本申请。对于本领 域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (15)

  1. 一种场景建立方法,其特征在于,所述方法包括:
    获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
    获取自移动机器人的当前运动状态;
    根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的第一位姿和/或第二位姿建立场景模型;
    其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
  2. 根据权利要求1所述的方法,其特征在于,所述图像数据从图像传感器中获取,所述惯性测量数据从惯性测量单元中获取。
  3. 根据权利要求1所述的方法,其特征在于,所述获取自移动机器人的运动状态包括:
    根据所述惯性测量数据确定当前时刻所述自移动机器人的速度信息,根据获得的速度信息判断当前自移动机器人的运动状态。
  4. 根据权利要求3所述的方法,其特征在于,根据自移动机器人的当前运动状态选择适用于所述当前时刻的第一位姿或第二位姿包括:
    若所述速度信息表征的数值大于或者等于指定速度阈值,则所述自移动机器人处于非稳定的运动状态,将当前的第二位姿作为适用于所述当前时刻的位姿;
    若所述速度信息表征的数值小于所述指定速度阈值,则所述自移动机器人处于稳定的运动状态,将当前的第一位姿作为适用于所述当前时刻的位姿。
  5. 根据权利要求2或3所述的方法,其特征在于,速度信息为运行速度或角速度。
  6. 根据权利要求1所述的方法,其特征在于,获取自移动机器人的当前运动状态包括:
    在所述图像数据中读取当前时刻的当前图像帧,并读取位于所述当前图像帧之前且与所述当前图像帧相邻的目标图像帧;
    计算所述当前图像帧和所述目标图像帧之间的相似度,并根据所述相似度确定所述自移动机器人的当前运动状态。
  7. 根据权利要求6所述的方法,其特征在于,根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿包括:
    若所述相似度大于或者等于指定相似度阈值,则所述自移动机器人处于稳定的运动状态,将当前的第一位姿作为适用于所述当前时刻的位姿;
    若所述相似度小于所述指定相似度阈值,则所述自移动机器人处于非稳定的运动状态,将当前的第二位姿作为适用于所述当前时刻的位姿。
  8. 根据权利要求1所述的方法,其特征在于,获取自移动机器人的当前运动状态包括:
    获取当前时刻的第一位姿和第二位姿,并计算所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值;
    根据计算的所述差值确定所述自移动机器人的当前运动状态。
  9. 根据权利要求8所述的方法,其特征在于,根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿包括:
    若所述差值大于或者等于指定差值阈值,则所述自移动机器人处于非稳定的运动状态,将当前的第二位姿作为适用于所述当前时刻的位姿;
    若所述差值小于所述指定差值阈值,则所述自移动机器人处于稳定的运动状态,将当前的第一位姿作为适用于所述当前时刻的位姿。
  10. 一种场景建立系统,其特征在于,所述系统包括:
    数据获取单元,用于获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
    运动状态获取单元,用于获取自移动机器人的当前运动状态;
    场景模型建立单元,用于根据自移动机器人的当前运动状态选择适用于 当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
    其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
  11. 根据权利要求10所述的系统,其特征在于,所述运动状态获取单元包括:
    速度信息确定模块,用于在所述惯性测量数据中确定当前时刻所述自移动机器人的速度信息,根据获得的速度信息判断当前自移动机器人的当前运动状态。
  12. 根据权利要求10所述的系统,其特征在于,所述运动状态获取单元包括:
    图像帧读取模块,用于在所述图像数据中读取当前时刻的当前图像帧,并读取位于所述当前图像帧之前且与所述当前图像帧相邻的目标图像帧;
    相似度确定模块,用于计算所述当前图像帧和所述目标图像帧之间的相似度,并根据所述相似度确定所述自移动机器人的当前运动状态。
  13. 根据权利要求10所述的系统,其特征在于,所述运动状态获取单元包括:
    差值计算模块,用于获取当前时刻的第一位姿和第二位姿,并计算所述当前时刻的第一位姿和所述当前时刻的第二位姿的差值;
    差值判定模块,用于根据计算的所述差值确定所述自移动机器人的当前运动状态。
  14. 一种场景建立装置,其特征在于,所述场景建立装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
    获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
    获取自移动机器人的当前运动状态;
    根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
    其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
  15. 一种自移动机器人,其特征在于,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
    获取图像数据和惯性测量数据,其中,所述图像数据用于生成自移动机器人的第一位姿,所述惯性测量数据用于生成所述自移动机器人的第二位姿;
    获取自移动机器人的当前运动状态;
    根据自移动机器人的当前运动状态选择适用于当前时刻的第一位姿或第二位姿,并根据选择的所述第一位姿和/或所述第二位姿建立场景模型;
    其中,所述第一位姿为当前时刻的图像帧对应的位姿,第二位姿为当前时刻的惯性测量数据对应的位姿。
PCT/CN2020/115920 2020-03-23 2020-09-17 一种场景建立方法、系统、装置及自移动机器人 WO2021189783A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010207847.2 2020-03-23
CN202010207847.2A CN113436310A (zh) 2020-03-23 2020-03-23 一种场景建立方法、系统、装置及自移动机器人

Publications (1)

Publication Number Publication Date
WO2021189783A1 true WO2021189783A1 (zh) 2021-09-30

Family

ID=77753293

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/115920 WO2021189783A1 (zh) 2020-03-23 2020-09-17 一种场景建立方法、系统、装置及自移动机器人

Country Status (2)

Country Link
CN (1) CN113436310A (zh)
WO (1) WO2021189783A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113984064A (zh) * 2021-10-27 2022-01-28 山东亚历山大智能科技有限公司 一种用于室内移动机器人的定位方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108447116A (zh) * 2018-02-13 2018-08-24 中国传媒大学 基于视觉slam的三维场景重建方法和装置
CN109141433A (zh) * 2018-09-20 2019-01-04 江阴市雷奥机器人技术有限公司 一种机器人室内定位系统及定位方法
CN109583457A (zh) * 2018-12-03 2019-04-05 荆门博谦信息科技有限公司 一种机器人定位与地图构建的方法及机器人
WO2019212912A1 (en) * 2018-05-04 2019-11-07 Microsoft Technology Licensing, Llc Generating and providing platform agnostic scene files in an intermediate format
CN110766785A (zh) * 2019-09-17 2020-02-07 武汉大学 一种地下管道实时定位与三维重建装置及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108447116A (zh) * 2018-02-13 2018-08-24 中国传媒大学 基于视觉slam的三维场景重建方法和装置
WO2019212912A1 (en) * 2018-05-04 2019-11-07 Microsoft Technology Licensing, Llc Generating and providing platform agnostic scene files in an intermediate format
CN109141433A (zh) * 2018-09-20 2019-01-04 江阴市雷奥机器人技术有限公司 一种机器人室内定位系统及定位方法
CN109583457A (zh) * 2018-12-03 2019-04-05 荆门博谦信息科技有限公司 一种机器人定位与地图构建的方法及机器人
CN110766785A (zh) * 2019-09-17 2020-02-07 武汉大学 一种地下管道实时定位与三维重建装置及方法

Also Published As

Publication number Publication date
CN113436310A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN109084732B (zh) 定位与导航方法、装置及处理设备
CN107160395B (zh) 地图构建方法及机器人控制系统
CN109307508B (zh) 一种基于多关键帧的全景惯导slam方法
CN108986161B (zh) 一种三维空间坐标估计方法、装置、终端和存储介质
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
KR101776622B1 (ko) 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
Cvišić et al. Stereo odometry based on careful feature selection and tracking
JP6198230B2 (ja) 深度カメラを使用した頭部姿勢トラッキング
US20230360266A1 (en) Object pose estimation in visual data
KR101708659B1 (ko) 이동 로봇의 맵을 업데이트하기 위한 장치 및 그 방법
CN108955718B (zh) 一种视觉里程计及其定位方法、机器人以及存储介质
KR101776620B1 (ko) 검색 기반 상관 매칭을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
US11783443B2 (en) Extraction of standardized images from a single view or multi-view capture
KR20150144727A (ko) 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
US20190301871A1 (en) Direct Sparse Visual-Inertial Odometry Using Dynamic Marginalization
WO2023071790A1 (zh) 目标对象的姿态检测方法、装置、设备及存储介质
KR20210058686A (ko) 동시적 위치 추정 및 맵 작성을 구현하는 장치 및 방법
WO2021189784A1 (zh) 一种场景重建方法、系统、装置及扫地机器人
CN111220155A (zh) 基于双目视觉惯性里程计估计位姿的方法、装置与处理器
WO2021189783A1 (zh) 一种场景建立方法、系统、装置及自移动机器人
Hayakawa et al. Ego-motion and surrounding vehicle state estimation using a monocular camera
JP2018205950A (ja) 自車位置推定用環境地図生成装置、自車位置推定装置、自車位置推定用環境地図生成プログラム、及び自車位置推定プログラム
CN110009683B (zh) 基于MaskRCNN的实时平面上物体检测方法
EP3676801B1 (en) Electronic devices, methods, and computer program products for controlling 3d modeling operations based on pose metrics
US10977810B2 (en) Camera motion estimation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20926939

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20926939

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 20926939

Country of ref document: EP

Kind code of ref document: A1