WO1998020399A2 - Infrastructure independent position determining system - Google Patents

Infrastructure independent position determining system Download PDF

Info

Publication number
WO1998020399A2
WO1998020399A2 PCT/US1997/019944 US9719944W WO9820399A2 WO 1998020399 A2 WO1998020399 A2 WO 1998020399A2 US 9719944 W US9719944 W US 9719944W WO 9820399 A2 WO9820399 A2 WO 9820399A2
Authority
WO
WIPO (PCT)
Prior art keywords
images
features
image
map
comparing
Prior art date
Application number
PCT/US1997/019944
Other languages
French (fr)
Other versions
WO1998020399A3 (en
Inventor
Alonzo James Kelly
Robert Craig Coulter
Original Assignee
Carnegie Mellon University
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 Carnegie Mellon University filed Critical Carnegie Mellon University
Priority to EP97946462A priority Critical patent/EP0937284B1/en
Priority to DE69712906T priority patent/DE69712906T2/en
Priority to AT97946462T priority patent/ATE218221T1/en
Priority to AU51624/98A priority patent/AU5162498A/en
Publication of WO1998020399A2 publication Critical patent/WO1998020399A2/en
Publication of WO1998020399A3 publication Critical patent/WO1998020399A3/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels

Definitions

  • the present invention is directed generally to position determining systems used for navigation and, more particularly, to systems of the type in which vision is used by a robot to determine its position so that it may autonomously travel and perform preprogrammed tasks within a particular environment.
  • the least expensive positioning systems are so-called dead reckoning systems produced from low cost wheel encoders and a compass. Those systems produce an estimate of position based on the integration of rate measurements. Thus, they suffer from significant error accumulation in the estimate.
  • High end dead reckoning systems such as military grade inertial systems, reduce that problem by using rate sensors with very low error bias, but at a cost that is order of magnitudes higher than those acceptable to flat floor markets.
  • Triangulation systems do not perform integration, and thus are not affected by sensor bias. However, they suffer from dilution of precision problems that arise during the conversion of their measurements to the coordinate system of interest, e.g., a range and orientation of the sensor is converted to Cartesian space (xy) . Triangulation systems take measurements with respect to external beacons or other items of infrastructure which make them vulnerable to sabotage. In certain industrial applications, sabotage is a key concern. Furthermore, the placement of beacons or other items of infrastructure represents a significant additional overhead cost to the end user. In certain applications, approximately one-third of the total cost of the system is due to the installation of beacons or other items of infrastructure .
  • U.S. Patent No. 4,847,769 entitled “Automated Vehicle Drift Correction” discloses a navigation system which carries out a dead reckoning calculation of the vehicles position based on inputs from sensors and the motion of a steering wheel in the preceding time interval.
  • U.S. Patent No. 5,170,352 entitled “Multi-Purpose Autonomous Vehicle With Path Plotting” is an example of an autonomous vehicle which operates in conjunction with a plurality of laser, sonic, and optical sensors. Such sensors detect targets and obstacles in the work area and provide coded signals which direct vehicles over a most expedient route to a target while avoiding any obstacles .
  • U.S. Patent No. 5,363,305 entitled “Navigation System For A Mobile Robot” discloses an apparatus for creating and maintaining a map of an environment the mobile autonomous robot is to transverse. A credibility measure is increased or decreased whenever a map feature assigned to a location matches or does not match, respectively, a geometric beacon corresponding to such location.
  • U.S. Patent No. 4,979,113 entitled “Automated Vehicle Control” discloses a system in which data identifying locations of notational points on the floor of the area of interest are entered into a computer together with a look-up table specifying pairs of those points between which movements of vehicles may be required.
  • Navigating A Free-Ranging Vehicle discloses a system in which the surface to be traversed carries a grid of passive marker elements with the vehicle being provided with detectors for detecting such elements.
  • Guidance and Control System discloses a system in which vehicles determine their own position in relation to marker boards consisting of patterns of reflective coded strips by scanning a narrow laser beam in a predetermined direction across the strips. Positions can be determined by using triangulation.
  • U.S. Patent No. 4,727,492 entitled “Vehicle Control And Guidance System” discloses a vehicle guidance system which uses dead reckoning to predict the position of the vehicle. At the end of predetermined intervals, the dead reckoning is corrected by an independent fixed- target detection system using a scanning laser.
  • Other low cost alternatives are based on the use of vision systems to take range readings, e.g., stereo vision, of known features in an environment, such as doorways and room corners. A position is determined based on such readings.
  • that method does not require the placement of infrastructure, it suffers from the significant problem of shape dependence. Briefly, what a feature looks like depends upon the angle from which it is viewed. That problem entails such computational complexity that commercially practical vision systems that operate on natural features have never been produced.
  • robots relying upon such infrastructure can easily be sabotaged.
  • Dead reckoning systems do not provide the repeatability required by today's commercial application. Combining dead reckoning systems with some form of triangulation or other correction method introduces infrastructure, and all of the problems associated therewith.
  • the present invention is directed to a method and apparatus for determining position, comprising the steps of capturing an image related to the present position.
  • the image related to the present position is compared with one or more images from an iconic map.
  • the position is determined based upon the image from the map which provides the highest correlation.
  • the iconic map of the present invention is a map which stores features from the particular environment in which the robot is to operate.
  • Features as used herein refers to randomly occurring characteristics such as the fibers in a carpet, brush marks appearing in brushed concrete, and the like. Such randomly occurring natural features occur in all surfaces except shiny metallic surfaces or other surfaces where steps have been taken to remove such naturally occurring features. Although such naturally occurring features are essentially random, when analyzed in small enough images, each image becomes unique. That is, no two images will have exactly the same distribution of randomly occurring features such as brush marks in concrete.
  • the word features does not refer to the kind of features referred to in the prior art, e.g. a doorway, a stairway, etc.
  • the method and apparatus of the present invention may be employed in a number of ways. If the initial position is known, the vehicle may follow a map of features to move from its initial position to a desired location. Alternatively, to save time and computing resources, a dead reckoning system may be used to provide a gross estimate of the robot's position. A plurality of images within a predetermined area bounding the gross location are compared to an image of the actual location. The image within the searched boundary that provides the highest correlation with the image of the actual location is selected and identified as the actual location of the robot. The method and the apparatus of the present invention may be used to allow a robot to navigate within a predetermined area. Additionally, because the robot can be precisely positioned, i.e.
  • the robot may be equipped with arms, tools, or other devices to perform a task upon reaching the assigned location.
  • the precise repeatability results from the fact that the correlation between images allows the position of the robot to be precisely determined.
  • the comparison may be performed using any standard mathematical technique such that substantial computing resources are not required.
  • the hardware needed to produce the image which is compared with images from a map is standard imaging hardware which is relatively inexpensive in today's market.
  • the apparatus of the present invention can be produced in a cost effective manner yet provide repeatable placement of the robot within three millimeters of a desired position.
  • the operation of the robot does not depend upon infrastructure or the ability to recognize gross features such as doorways, stairwells, etc. Because no infrastructure such as beacons, markers, etc.
  • FIG. 1 illustrates a robot carrying a vision system providing input to a position determining system constructed according to the teachings of the present invention
  • FIG. 2 is a block diagram illustrating the basic components of a position determining system constructed according to the teachings of the present invention
  • FIG. 3 illustrates the naturally occurring features in a floor or other substantially flat surface
  • FIG. 3a illustrates two images from the flat surface of FIG. 3 which are correlated with an image representative of the actual position of the robot;
  • FIG. 4 is a block diagram illustrating a position determining system constructed according to the teachings of the present invention and which has mapping capability;
  • FIGs . 5a, 5b, and 5c illustrate the position of a vehicle at times t l t t 2 , and t 3 , respectively; and FIG. 6 illustrates the images of the road at times tl, t2, and t3 , respectively.
  • FIG. 1 illustrates a robot 10 carrying a vision system 12 which provides an input signal to a microprocessor based system 14.
  • a position estimator 15 preferably implemented in software and constructed according to the teachings of the present invention.
  • the robot 10 is conventional in construction and is comprised of a frame 16 and a plurality of wheels 18. Certain of the wheels 18 receive power and steering commands from a power and steering module 20 under control of the microprocessor based system 14 so that the robot 10 is capable of self propulsion.
  • the frame 16 may carry a robot arm 22 which may carry a tool 24 on its end for performing various functions under the control of the microprocessor based system 14.
  • the arm 22 and tool 24 may be manipulated according to stored programs to perform predetermined functions such as picking up a work piece, positioning the work piece, inserting a bolt or screw, lifting a pallet, returning a box to storage, vacuuming a carpet, emptying a trash can, etc.
  • the frame 16 may also carry an odometer 28 which provides a signal input to position estimator 15 for purposes of performing calculations, such as dead reckoning, as will be described hereinbelow.
  • the vision system 12 may be of any commercially available type which is comprised of a camera and means for digitizing the image produced by the camera. The digitized image is then input to the position estimator
  • the camera 12 is mounted in a manner so that it may be focused straight down or at an angle with respect to a substantially flat surface 11.
  • the camera 12 may be carried by the frame 16 at the bottom thereof between wheels 18 to make it more difficult to interfere with the operation of robot 10.
  • wheels 18, power and steering module 20, robot arm 22, tool 24, odometer 28, and the vision system 12 are of standard construction and operation. Accordingly, those elements are not further described herein.
  • the inventive features of the present invention lie within the position estimator 15 and the manner in which the position estimator 15 produces signals used by the other components carried by the robot 10.
  • the images produced by the vision system 12 are digital images which are input to an image preprocessor 30.
  • the image preprocessor 30 is comprised of a set of standard preprocessing routines which remove shadows, enhance texture, and remove lens distortion. Bias and scale may also be removed. Such image preprocessing is well-known in the art and is therefore not further described.
  • the output of image preprocessor 30 represents ideal images which are input to an iconic matcher 32.
  • the iconic matcher 32 performs a correlation between the ideal images and one or more images retrieved from a map storage area 34.
  • Map storage area 34 contains an iconic map which may be thought of as a single electronic picture of the entire surface upon which the robot moves. The manner in which the image is retrieved depends upon the mode of operation of the system as will be described in greater detail hereinbelow. In general, if the position of the robot can be estimated by dead reckoning or from an independent signal representing positioning information, then the portion of the map representative of that estimated position is supplied to the iconic matcher 32 for correlation with the ideal images.
  • the iconic matcher 32 uses substantially all of the data in both the real image, which is representative of the actual position of the robot, and substantially all of the data from the image selected from the map, which is representative of the position where the robot believes it is located.
  • One way to use all or substantially all of the data is through a cross correlation function.
  • other mathematical techniques may be used such as a sum of absolute differences, sum of squared differences, a sign correlation, etc.
  • the particular mathematical technique used is of no particular significance to the overall theory of the present invention.
  • the particular technique selected may have an impact on the operation of the present invention, depending upon how the particular mathematic technique is implemented in the software.
  • the iconic matcher 32 outputs a signal which is a disparity vector. In one mode of operation, if the disparity vector has a value of zero, then the robot is at the position represented by the image taken from map storage 34.
  • the dead reckoning element 36 is a set of routines which compute the robot's position by adding successive disparity vectors to an initial position.
  • the dead reckoning element 36 also establishes the degree of uncertainty in the position estimate.
  • the position estimator 15 operates by using naturally occurring features in flat floors as landmarks. Concrete, asphalt, tile, carpet, and many other surfaces all contain features such as cracking patterns, wave-like patterns from the original material flow, small rock inclusions, stains and discolorations, nicks, scratches, fibers, and the like. Such natural features are usually small and random, which make them uniquely identifiable in an image taken close to the floor.
  • FIG. 3 a portion of the floor 11 is illustrated. Assume that the robot 10 is located at a certain starting location on floor 11 and takes an image 38 of the floor at that location. The robot then moves to some other location. Upon the robot's 10 return to the same approximate location, the robot 10 takes a second image 40. Image 40 is then used to define a target area 42, which is an ellipse of uncertainty. The target area is then broken up into a plurality of images, two of which, 40 and 44, are illustrated in FIG. 3a. Images 40, 44, and all of the other images from target area 42, are matched with image 38 using, according to a preferred embodiment, a correlation function to determine the transform between pairs of images.
  • a correlation function to determine the transform between pairs of images.
  • the image from the target area, in this example 44, having the highest correlation with the original image 38 provides an indication of how far off the robot is from the original position as represented by image 38.
  • the likely dimensions and stand-off distances of such an image correlation process quickly show that submillimeter repeatabilities are calculable.
  • the method described above in conjunction with FIGS. 3 and 3a is only one of a variety of methods by which the present invention may be operated.
  • the method as detailed above required the mobile robot to return to within an image frame of its original location. If, instead, images of an entire building were taken, then the system 15 could systematically search through those images calculating correlations.
  • Sufficient storage is currently available with current technologies so that one square kilometer can be represented. One square kilometer represents approximately 10 gigabytes, before the use of data reduction techniques.
  • FIG. 4 a position estimator 44 constructed according to the teachings of the present invention is illustrated.
  • the position estimator 44 is similar to the position estimator 15, and elements performing the same function are provided with the same reference numerals.
  • the system 44 includes a map update element 46.
  • the map update element 46 is a set of routines which adds images to the map when the position estimator 44 is operating in the mapping mode. The image is shifted by the negative of the disparity vector and then placed into map storage 34.
  • Map update element 46 may be activated so as to create a map or may be activated when it is necessary to update a map because of changed surface features .
  • a navigational data filter 48 is provided which is a set of routines that process all available information to provide the best possible estimate of position.
  • a Kalman filter is one possible implementation, but any technique for estimation of state from various measurements will suffice.
  • the initial position which is input into dead reckoning element 36 is the position to be associated with where the robot 10 was started.
  • the initial position serves to locate the entire map. It can be an input to the system or a default value can be used.
  • the initial position is used to restrict the initial search for a match with the iconic map. Thereafter, the system maintains a lock on the map as the robot moves such that only a small amount of searching is required for each successive ideal image.
  • An external position estimate is input to navigational data filter 48.
  • the external position estimate is an estimate of system position that it supplied externally by a wholly separate positioning device such as odometer 28.
  • the external position estimate is used as a redundant position indicator in both navigation and mapping modes. In both cases it is an optional input, but system absolute accuracy is expected to be improved when an external estimate is available .
  • the system position estimate is the estimate of position provided by the system, and the primary system output.
  • the disparity output is the vector difference between the current estimate of vehicle position and the true position of the image in the map. When no external position is supplied, it measures differential displacement, which is easily converted to velocity by dividing by the time increment. If an external position is supplied, it is a measure of wheel slippage.
  • the position estimate may be used by other programs in microprocessor 14 to determine a course as is known in the art .
  • the position estimator 44 may be operated in a variety of modes.
  • One mode of operation can be either mapping or navigation. Those modes are distinguished only by what is considered known and unknown.
  • the mapping mode the position estimator 44 is being taught the map which is being stored in map storage 34. In that mode, the position estimate is supplied or internally generated and the map is created.
  • the navigation mode it is the map which is supplied and the position which is created.
  • the position estimator 44 is akin to a record player. The record is written only once by the position estimator 44 but can be read many times when the position estimator 44 is in the navigator mode. If the map update element 46 is activated, the system is in the mapping mode, otherwise it is in the navigation mode.
  • the navigation mode has two submodes, absolute and relative.
  • the externally stored iconic map is used by the iconic matcher 32.
  • the last ideal image is correlated with the current ideal image. It is expected that the relative submode will exhibit poorer absolute accuracies than the absolute mode .
  • the position estimator 44 can be operated in an aided or unaided mode. At all times, the estimator 44 can compute its position simply by adding each successive disparity vector to the initial position. That is classically known as dead reckoning. In the aided mode, the navigational data filter element 48 and the external position estimate are activated.
  • the absolute and the relative modes are distinguished by the optional initial position input. If the initial position is supplied, the system can generate position relative to an external reference. If not, a default initial position is used.
  • the estimator 44 can also be operated in a differential enabled or differential disabled mode. Those mode states are distinguished by the availability of the optional disparity output. At present, that signal can be used as a velocity signal, as a measure of wheel slip, or for such other purposes as desired by the user. That aspect of the invention is described in further detail in conjunction with FIGS. 5a, 5b, 5c, and FIG. 6.
  • FIGs. 5a, 5b, and 5c the position of a vehicle 50 carrying a system 44 of the type illustrated in FIG. 4 is illustrated at times t 1# t 2 , and t 3 .
  • FIG. 6 an image 52 taken at time t x , an image 53 taken at time t 2 , and an image 54 taken at time t 3 are illustrated.
  • the system 44 is operated in the differential enable mode, the disparity signal is provided as an output.
  • iconic matcher 32 is operated in a mode so as to compare successive images, e.g. comparing image 53 to image 52, comparing image 54 to image 53, etc., an indication of the actual distance traveled can be ascertained from the disparity signal.
  • the disparity signal can be used to calculate a number of parameters. For example, the distance traveled, which is the spatial difference between frames 52 and 53 , over a known period of time provides an indication of speed. If the distance traveled as determined by system 44 is compared to the distance traveled as indicated by an odometer, any difference between the two calculations indicates wheel slippage.
  • the concepts of the present invention as set forth in the disclosed method and apparatus can be used for purposes other than navigation. While the present invention has been described in conjunction with preferred embodiments thereof, many modifications and variations will be apparent to those of ordinary skill in the art. The foregoing description and the following claims are intended to cover all such modifications and variations.

Abstract

A method and apparatus for determining position is comprised of the steps of capturing an image (30) related to the present position and comparing the captured image (32) with one or more images from an iconic map. The iconic map is a map which stores images of a substantially flat surface over which a robot or vehicle is to operate. The stored images contain randomly occurring characteristics such as the fibers in a carpet, brush marks appearing in brushed concrete, and the like. Although such naturally occurring features are essentially random, when analyzed in small enough images, each image becomes unique. The position is determined based upon the image from the map which provides the highest correlation. Speed, wheel slippage, and other parameters can be calculated using the disclosed method.

Description

INFRASTRUCTURE INDEPENDENT POSITION DETERMINING SYSTEM BACKGROUND OF THE INVENTION
Field of the Invention
The present invention is directed generally to position determining systems used for navigation and, more particularly, to systems of the type in which vision is used by a robot to determine its position so that it may autonomously travel and perform preprogrammed tasks within a particular environment.
Description of the Background
High repeatability, position estimation is a key technology for mobile robotics applications such as seaport and manufacturing facility automation. Near term operations in those applications requires positioning repeatabilities of approximately three millimeters. Three millimeters represents a significant improvement over the current industry standard of approximately five millimeters. The three millimeter repeatability must be achieved at an acceptable cost per unit. High end laser and inertial units are capable of meeting the technical specifications. However, their $20,000 to $100,000 plus per unit cost is far too high to be economically justifiable for most applications. Thus, a significant tradeoff exists between price and performance which prohibits flat floor mobile robotics companies from servicing existing demands in the market.
The least expensive positioning systems are so- called dead reckoning systems produced from low cost wheel encoders and a compass. Those systems produce an estimate of position based on the integration of rate measurements. Thus, they suffer from significant error accumulation in the estimate. High end dead reckoning systems, such as military grade inertial systems, reduce that problem by using rate sensors with very low error bias, but at a cost that is order of magnitudes higher than those acceptable to flat floor markets.
One low cost alternative is to combine the low cost dead reckoning system with a triangulation system, which can be used to reset the accumulated error by calculating a fix on the position. Triangulation systems do not perform integration, and thus are not affected by sensor bias. However, they suffer from dilution of precision problems that arise during the conversion of their measurements to the coordinate system of interest, e.g., a range and orientation of the sensor is converted to Cartesian space (xy) . Triangulation systems take measurements with respect to external beacons or other items of infrastructure which make them vulnerable to sabotage. In certain industrial applications, sabotage is a key concern. Furthermore, the placement of beacons or other items of infrastructure represents a significant additional overhead cost to the end user. In certain applications, approximately one-third of the total cost of the system is due to the installation of beacons or other items of infrastructure .
U.S. Patent No. 4,847,769 entitled "Automated Vehicle Drift Correction" discloses a navigation system which carries out a dead reckoning calculation of the vehicles position based on inputs from sensors and the motion of a steering wheel in the preceding time interval. U.S. Patent No. 5,307,278 entitled "Method Of Determining The Position Of A Vehicle, Arrangement For
Determining The Position Of A Vehicle, As Well As A Vehicle Provided With Such An Arrangement", also relies upon dead reckoning.
U.S. Patent No. 5,170,352 entitled "Multi-Purpose Autonomous Vehicle With Path Plotting" is an example of an autonomous vehicle which operates in conjunction with a plurality of laser, sonic, and optical sensors. Such sensors detect targets and obstacles in the work area and provide coded signals which direct vehicles over a most expedient route to a target while avoiding any obstacles . U.S. Patent No. 5,363,305 entitled "Navigation System For A Mobile Robot" discloses an apparatus for creating and maintaining a map of an environment the mobile autonomous robot is to transverse. A credibility measure is increased or decreased whenever a map feature assigned to a location matches or does not match, respectively, a geometric beacon corresponding to such location.
U.S. Patent No. 4,979,113 entitled "Automated Vehicle Control" discloses a system in which data identifying locations of notational points on the floor of the area of interest are entered into a computer together with a look-up table specifying pairs of those points between which movements of vehicles may be required. U.S. Patent No. 4,847,773 entitled "System For
Navigating A Free-Ranging Vehicle" discloses a system in which the surface to be traversed carries a grid of passive marker elements with the vehicle being provided with detectors for detecting such elements. U.S. Patent No. 4,647,784 entitled "Vehicle
Guidance and Control System" discloses a system in which vehicles determine their own position in relation to marker boards consisting of patterns of reflective coded strips by scanning a narrow laser beam in a predetermined direction across the strips. Positions can be determined by using triangulation.
U.S. Patent No. 4,727,492 entitled "Vehicle Control And Guidance System" discloses a vehicle guidance system which uses dead reckoning to predict the position of the vehicle. At the end of predetermined intervals, the dead reckoning is corrected by an independent fixed- target detection system using a scanning laser. Other low cost alternatives are based on the use of vision systems to take range readings, e.g., stereo vision, of known features in an environment, such as doorways and room corners. A position is determined based on such readings. Although that method does not require the placement of infrastructure, it suffers from the significant problem of shape dependence. Briefly, what a feature looks like depends upon the angle from which it is viewed. That problem entails such computational complexity that commercially practical vision systems that operate on natural features have never been produced.
Thus, while substantial work has been directed at solving the aforementioned problems, it is seen from the prior art discussed above that such problems have not been solved. Many position determining systems are still dependent upon infrastructure which is expensive. Furthermore, once the infrastructure is in place, the facility can usually not be modified without the additional expense of modifying the infrastructure.
Additionally, robots relying upon such infrastructure can easily be sabotaged.
Dead reckoning systems do not provide the repeatability required by today's commercial application. Combining dead reckoning systems with some form of triangulation or other correction method introduces infrastructure, and all of the problems associated therewith.
Vision systems, which can provide higher accuracy than dead reckoning systems and which are typically free of artificially imposed infrastructure, are difficult and costly to implement. If a feature is unrecognizable because it is approached from a different angle, the robot may become disorganized and cease to function. Thus, the need exists for a position determining system which is highly accurate, independent of all infrastructure, relatively immune to sabotage, and which provides the high repeatability demanded in today's marketplace at a competitive cost.
SUMMARY OF THE INVENTION The present invention is directed to a method and apparatus for determining position, comprising the steps of capturing an image related to the present position. The image related to the present position is compared with one or more images from an iconic map. The position is determined based upon the image from the map which provides the highest correlation.
The iconic map of the present invention is a map which stores features from the particular environment in which the robot is to operate. Features as used herein refers to randomly occurring characteristics such as the fibers in a carpet, brush marks appearing in brushed concrete, and the like. Such randomly occurring natural features occur in all surfaces except shiny metallic surfaces or other surfaces where steps have been taken to remove such naturally occurring features. Although such naturally occurring features are essentially random, when analyzed in small enough images, each image becomes unique. That is, no two images will have exactly the same distribution of randomly occurring features such as brush marks in concrete. Thus, as used herein, the word features does not refer to the kind of features referred to in the prior art, e.g. a doorway, a stairway, etc.
The method and apparatus of the present invention may be employed in a number of ways. If the initial position is known, the vehicle may follow a map of features to move from its initial position to a desired location. Alternatively, to save time and computing resources, a dead reckoning system may be used to provide a gross estimate of the robot's position. A plurality of images within a predetermined area bounding the gross location are compared to an image of the actual location. The image within the searched boundary that provides the highest correlation with the image of the actual location is selected and identified as the actual location of the robot. The method and the apparatus of the present invention may be used to allow a robot to navigate within a predetermined area. Additionally, because the robot can be precisely positioned, i.e. within three millimeters or better of a desired location, the robot may be equipped with arms, tools, or other devices to perform a task upon reaching the assigned location. The precise repeatability results from the fact that the correlation between images allows the position of the robot to be precisely determined. The comparison may be performed using any standard mathematical technique such that substantial computing resources are not required. Furthermore, the hardware needed to produce the image which is compared with images from a map is standard imaging hardware which is relatively inexpensive in today's market. Thus, the apparatus of the present invention can be produced in a cost effective manner yet provide repeatable placement of the robot within three millimeters of a desired position. The operation of the robot does not depend upon infrastructure or the ability to recognize gross features such as doorways, stairwells, etc. Because no infrastructure such as beacons, markers, etc. is required, the overall cost of the system is competitive with existing navigational systems. Finally, because the system relies upon randomly occurring natural features, it is extremely difficult to sabotage the robot. Those advantages and benefits of the present invention, and others, will become apparent from the Description of the Preferred Embodiments hereinbelow. BRIEF DESCRIPTION OF THE DRAWINGS For the present invention to be clearly understood and readily practiced, the present invention will be described in conjunction with the following figures wherein :
FIG. 1 illustrates a robot carrying a vision system providing input to a position determining system constructed according to the teachings of the present invention;
FIG. 2 is a block diagram illustrating the basic components of a position determining system constructed according to the teachings of the present invention;
FIG. 3 illustrates the naturally occurring features in a floor or other substantially flat surface;
FIG. 3a illustrates two images from the flat surface of FIG. 3 which are correlated with an image representative of the actual position of the robot;
FIG. 4 is a block diagram illustrating a position determining system constructed according to the teachings of the present invention and which has mapping capability;
FIGs . 5a, 5b, and 5c illustrate the position of a vehicle at times tl t t2, and t3, respectively; and FIG. 6 illustrates the images of the road at times tl, t2, and t3 , respectively.
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 illustrates a robot 10 carrying a vision system 12 which provides an input signal to a microprocessor based system 14. Part of the microprocessor based system 14 is a position estimator 15 preferably implemented in software and constructed according to the teachings of the present invention. The robot 10 is conventional in construction and is comprised of a frame 16 and a plurality of wheels 18. Certain of the wheels 18 receive power and steering commands from a power and steering module 20 under control of the microprocessor based system 14 so that the robot 10 is capable of self propulsion.
The frame 16 may carry a robot arm 22 which may carry a tool 24 on its end for performing various functions under the control of the microprocessor based system 14. When the robot 10 arrives at a predetermined location, which position is known by virtue of signals output by position estimator 15, the arm 22 and tool 24 may be manipulated according to stored programs to perform predetermined functions such as picking up a work piece, positioning the work piece, inserting a bolt or screw, lifting a pallet, returning a box to storage, vacuuming a carpet, emptying a trash can, etc. For certain tasks, it is necessary that the robot 10 be precisely positioned, i.e. positioned with a repeatability of three millimeters or less. The frame 16 may also carry an odometer 28 which provides a signal input to position estimator 15 for purposes of performing calculations, such as dead reckoning, as will be described hereinbelow.
The vision system 12 may be of any commercially available type which is comprised of a camera and means for digitizing the image produced by the camera. The digitized image is then input to the position estimator
15. The camera 12 is mounted in a manner so that it may be focused straight down or at an angle with respect to a substantially flat surface 11. The camera 12 may be carried by the frame 16 at the bottom thereof between wheels 18 to make it more difficult to interfere with the operation of robot 10.
The reader should recognize that the robot frame
16, wheels 18, power and steering module 20, robot arm 22, tool 24, odometer 28, and the vision system 12 are of standard construction and operation. Accordingly, those elements are not further described herein. The inventive features of the present invention lie within the position estimator 15 and the manner in which the position estimator 15 produces signals used by the other components carried by the robot 10.
Turning to Figure 2, a block diagram of the position estimator 15 is illustrated. The images produced by the vision system 12 are digital images which are input to an image preprocessor 30. The image preprocessor 30 is comprised of a set of standard preprocessing routines which remove shadows, enhance texture, and remove lens distortion. Bias and scale may also be removed. Such image preprocessing is well-known in the art and is therefore not further described.
The output of image preprocessor 30 represents ideal images which are input to an iconic matcher 32. The iconic matcher 32 performs a correlation between the ideal images and one or more images retrieved from a map storage area 34. Map storage area 34 contains an iconic map which may be thought of as a single electronic picture of the entire surface upon which the robot moves. The manner in which the image is retrieved depends upon the mode of operation of the system as will be described in greater detail hereinbelow. In general, if the position of the robot can be estimated by dead reckoning or from an independent signal representing positioning information, then the portion of the map representative of that estimated position is supplied to the iconic matcher 32 for correlation with the ideal images. Alternatively, if the starting position with respect to the stored map is known, then a lock may be kept on the position so that successive ideal images are compared with successive images from the map in a manner such that the robot continuously knows its position as shown by the feedback loop 37. Those modes of operation will be described in greater detail herein below. The iconic matcher 32 uses substantially all of the data in both the real image, which is representative of the actual position of the robot, and substantially all of the data from the image selected from the map, which is representative of the position where the robot believes it is located. One way to use all or substantially all of the data is through a cross correlation function. However, other mathematical techniques may be used such as a sum of absolute differences, sum of squared differences, a sign correlation, etc. The particular mathematical technique used is of no particular significance to the overall theory of the present invention. The particular technique selected may have an impact on the operation of the present invention, depending upon how the particular mathematic technique is implemented in the software. The iconic matcher 32 outputs a signal which is a disparity vector. In one mode of operation, if the disparity vector has a value of zero, then the robot is at the position represented by the image taken from map storage 34.
The last element illustrated in FIG. 2 is the dead reckoning element 36. The dead reckoning element 36 is a set of routines which compute the robot's position by adding successive disparity vectors to an initial position. The dead reckoning element 36 also establishes the degree of uncertainty in the position estimate.
The position estimator 15 operates by using naturally occurring features in flat floors as landmarks. Concrete, asphalt, tile, carpet, and many other surfaces all contain features such as cracking patterns, wave-like patterns from the original material flow, small rock inclusions, stains and discolorations, nicks, scratches, fibers, and the like. Such natural features are usually small and random, which make them uniquely identifiable in an image taken close to the floor.
Turning to FIG. 3, a portion of the floor 11 is illustrated. Assume that the robot 10 is located at a certain starting location on floor 11 and takes an image 38 of the floor at that location. The robot then moves to some other location. Upon the robot's 10 return to the same approximate location, the robot 10 takes a second image 40. Image 40 is then used to define a target area 42, which is an ellipse of uncertainty. The target area is then broken up into a plurality of images, two of which, 40 and 44, are illustrated in FIG. 3a. Images 40, 44, and all of the other images from target area 42, are matched with image 38 using, according to a preferred embodiment, a correlation function to determine the transform between pairs of images. The image from the target area, in this example 44, having the highest correlation with the original image 38 provides an indication of how far off the robot is from the original position as represented by image 38. The likely dimensions and stand-off distances of such an image correlation process quickly show that submillimeter repeatabilities are calculable. The method described above in conjunction with FIGS. 3 and 3a is only one of a variety of methods by which the present invention may be operated. The method as detailed above required the mobile robot to return to within an image frame of its original location. If, instead, images of an entire building were taken, then the system 15 could systematically search through those images calculating correlations. Sufficient storage is currently available with current technologies so that one square kilometer can be represented. One square kilometer represents approximately 10 gigabytes, before the use of data reduction techniques. If an approximate position is available, then the search can be pruned to within an area covered by the position uncertainty ellipse 42. Even with a fairly poor independent position indication, the search can be pruned to one or a few images . Turning to FIG. 4, a position estimator 44 constructed according to the teachings of the present invention is illustrated. The position estimator 44 is similar to the position estimator 15, and elements performing the same function are provided with the same reference numerals. In FIG. 4, the system 44 includes a map update element 46. The map update element 46 is a set of routines which adds images to the map when the position estimator 44 is operating in the mapping mode. The image is shifted by the negative of the disparity vector and then placed into map storage 34. Map update element 46 may be activated so as to create a map or may be activated when it is necessary to update a map because of changed surface features . A navigational data filter 48 is provided which is a set of routines that process all available information to provide the best possible estimate of position. A Kalman filter is one possible implementation, but any technique for estimation of state from various measurements will suffice.
Before discussing the various modes of operation of position estimator 44, it is useful to identify the data used within position estimator 44. The initial position which is input into dead reckoning element 36 is the position to be associated with where the robot 10 was started. In the mapping mode, the initial position serves to locate the entire map. It can be an input to the system or a default value can be used. In the navigation mode, the initial position is used to restrict the initial search for a match with the iconic map. Thereafter, the system maintains a lock on the map as the robot moves such that only a small amount of searching is required for each successive ideal image. An external position estimate is input to navigational data filter 48. The external position estimate is an estimate of system position that it supplied externally by a wholly separate positioning device such as odometer 28. The external position estimate is used as a redundant position indicator in both navigation and mapping modes. In both cases it is an optional input, but system absolute accuracy is expected to be improved when an external estimate is available .
The system position estimate is the estimate of position provided by the system, and the primary system output. The disparity output is the vector difference between the current estimate of vehicle position and the true position of the image in the map. When no external position is supplied, it measures differential displacement, which is easily converted to velocity by dividing by the time increment. If an external position is supplied, it is a measure of wheel slippage. The position estimate may be used by other programs in microprocessor 14 to determine a course as is known in the art .
The position estimator 44 may be operated in a variety of modes. One mode of operation can be either mapping or navigation. Those modes are distinguished only by what is considered known and unknown. In the mapping mode, the position estimator 44 is being taught the map which is being stored in map storage 34. In that mode, the position estimate is supplied or internally generated and the map is created. In the navigation mode, it is the map which is supplied and the position which is created. In operation, the position estimator 44 is akin to a record player. The record is written only once by the position estimator 44 but can be read many times when the position estimator 44 is in the navigator mode. If the map update element 46 is activated, the system is in the mapping mode, otherwise it is in the navigation mode. The navigation mode has two submodes, absolute and relative. In the absolute mode, the externally stored iconic map is used by the iconic matcher 32. In the relative mode, the last ideal image is correlated with the current ideal image. It is expected that the relative submode will exhibit poorer absolute accuracies than the absolute mode . The position estimator 44 can be operated in an aided or unaided mode. At all times, the estimator 44 can compute its position simply by adding each successive disparity vector to the initial position. That is classically known as dead reckoning. In the aided mode, the navigational data filter element 48 and the external position estimate are activated. The absolute and the relative modes are distinguished by the optional initial position input. If the initial position is supplied, the system can generate position relative to an external reference. If not, a default initial position is used. The default is usually zero, in which case the system reports position relative to the point where power was first applied to the system. The estimator 44 can also be operated in a differential enabled or differential disabled mode. Those mode states are distinguished by the availability of the optional disparity output. At present, that signal can be used as a velocity signal, as a measure of wheel slip, or for such other purposes as desired by the user. That aspect of the invention is described in further detail in conjunction with FIGS. 5a, 5b, 5c, and FIG. 6.
In FIGs. 5a, 5b, and 5c, the position of a vehicle 50 carrying a system 44 of the type illustrated in FIG. 4 is illustrated at times t1# t2, and t3. In FIG. 6, an image 52 taken at time tx, an image 53 taken at time t2, and an image 54 taken at time t3 are illustrated. When the system 44 is operated in the differential enable mode, the disparity signal is provided as an output. When iconic matcher 32 is operated in a mode so as to compare successive images, e.g. comparing image 53 to image 52, comparing image 54 to image 53, etc., an indication of the actual distance traveled can be ascertained from the disparity signal.
The disparity signal can be used to calculate a number of parameters. For example, the distance traveled, which is the spatial difference between frames 52 and 53 , over a known period of time provides an indication of speed. If the distance traveled as determined by system 44 is compared to the distance traveled as indicated by an odometer, any difference between the two calculations indicates wheel slippage. Thus, the concepts of the present invention as set forth in the disclosed method and apparatus can be used for purposes other than navigation. While the present invention has been described in conjunction with preferred embodiments thereof, many modifications and variations will be apparent to those of ordinary skill in the art. The foregoing description and the following claims are intended to cover all such modifications and variations.

Claims

What is claimed is:
1. A method of determining position, comprising the steps of : capturing an image containing features related to the present position; comparing features from said captured image to features from images stored in a map, said stored images each being representative of a known position; and determining position based on said comparing step.
2. The method of claim 1 wherein said comparing step includes the step of comparing the features from said captured image to the features from a plurality of images taken from said map, and wherein said determining step incudes the step of selecting one of said plurality of images based on the degree of correlation between said features from said captured image and said features from said plurality of images.
3. The method of claim 2 additionally comprising the step of estimating position, and wherein said plurality of images are selected based on said estimated position.
4. The method of claim 3 additionally comprising the step of identifying a target area around said estimated position, and wherein said plurality of images are selected from said target area.
5. The method of claim 2 additionally comprising the step of maintaining a lock on the present position, and wherein said plurality of images are selected based on the lock on the present position.
6. The method of claim 1 wherein said step of capturing an image includes the step of capturing an image with a camera positioned perpendicular to a substantially flat surface.
7. The method of claim 1 wherein said step of capturing an image includes the step of capturing an image with a camera positioned at an angle with respect to a substantially flat surface.
8. The method of claim 1 wherein said comparing step incudes the step of correlating features from said captured image to features from said stored images.
9. The method of claim 8 wherein said step of correlating includes the step of performing a cross- correlation.
10. The method of claim 1 additionally comprising the step of updating the images stored in the map.
11. The method of claim 1 additionally comprising the step of adding images to the map.
12. The method of claim 1 additionally comprising the step of selecting a course based on the determined position.
13. A method of determining the speed of a vehicle with respect to a surface, comprising the steps of: capturing successive images of the surface, each image containing features related to a position of the vehicle; comparing features from successive images to determine the degree of disparity between successive images; and dividing the degree of disparity by the elapsed time between successive images to determine the speed of the vehicle .
14. A method of determining wheel slippage of a vehicle relative to a surface, comprising the steps of: capturing successive images of the surface, each image containing features related to a position of the vehicle; comparing features from successive images to determine the degree of disparity between said successive images in a given amount of time; independently determining the distance expected to be traveled in said given amount of time; and comparing the expected distance traveled to the degree of disparity to determine the amount of wheel slippage .
15. Apparatus for determining position, comprising: means for capturing an image containing features related to the present position; means for storing a map; means for comparing features from said captured image to features from images stored in said means for storing a map, said stored images each being representative of a known position; and means for determining position in response to said means for comparing.
16. The apparatus of claim 15 wherein said means for comparing compares the features from said captured image to the features from a plurality of images taken from said map, and wherein said means for determining selects one of said plurality of images based on the degree of correlation between said features from said captured image and said features from said plurality of images .
17. The apparatus of claim 16 additionally comprising means for estimating position, and wherein said plurality of images are selected based on said estimated position.
18. The apparatus of claim 17 additionally comprising means for identifying a target area around said estimated position, and wherein said plurality of images are selected from said target area.
19. The apparatus of claim 16 additionally comprising means for maintaining a lock on the present position, and wherein said plurality of images are selected based on the lock on the present position.
20. The apparatus of claim 15 wherein said means for capturing an image includes a camera having a known relationship with a substantially flat surface.
21. The apparatus of claim 15 additionally comprising means for updating the images stored in the map.
22. The apparatus of claim 15 additionally comprising means responsive to the determined position for selecting a course.
23. Apparatus for determining the speed of a vehicle with respect to a surface, comprising: means for capturing successive images of the surface, each image containing features related to a position of the vehicle; means for comparing features from successive images to determine the degree of disparity between successive images; and means for dividing the degree of disparity by the elapsed time between successive images to determine the speed of the vehicle.
24. Apparatus for determining wheel slippage of a vehicle relative to a surface, comprising: means for capturing successive images of the surface, each image containing features related to a position of the vehicle; means for comparing features from successive images to determine the degree of disparity between said successive images in a given amount of time; means for independently determining the distance expected to be traveled in said given amount of time; and means for comparing the expected distance traveled to the degree of disparity to determine the amount of wheel slippage.
PCT/US1997/019944 1996-11-05 1997-11-05 Infrastructure independent position determining system WO1998020399A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP97946462A EP0937284B1 (en) 1996-11-05 1997-11-05 Infrastructure independent position determining system
DE69712906T DE69712906T2 (en) 1996-11-05 1997-11-05 POSITION DETECTION SYSTEM INDEPENDENT FROM THE SURROUNDINGS
AT97946462T ATE218221T1 (en) 1996-11-05 1997-11-05 POSITIONING SYSTEM INDEPENDENT OF THE ENVIRONMENT
AU51624/98A AU5162498A (en) 1996-11-05 1997-11-05 Infrastructure independent position determining system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/744,053 US5999866A (en) 1996-11-05 1996-11-05 Infrastructure independent position determining system
US08/744,053 1996-11-05

Publications (2)

Publication Number Publication Date
WO1998020399A2 true WO1998020399A2 (en) 1998-05-14
WO1998020399A3 WO1998020399A3 (en) 1998-06-25

Family

ID=24991241

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/019944 WO1998020399A2 (en) 1996-11-05 1997-11-05 Infrastructure independent position determining system

Country Status (6)

Country Link
US (2) US5999866A (en)
EP (1) EP0937284B1 (en)
AT (1) ATE218221T1 (en)
AU (1) AU5162498A (en)
DE (1) DE69712906T2 (en)
WO (1) WO1998020399A2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010006352A1 (en) * 2008-07-16 2010-01-21 Zeno Track Gmbh Method and apparatus for capturing the position of a vehicle in a defined region
EP2376869A1 (en) * 2008-12-10 2011-10-19 Deere & Company Method and system for determining a position of a vehicle
WO2011144710A1 (en) 2010-05-21 2011-11-24 Alfred Kärcher Gmbh & Co. Kg Floor-treating device and method for treating a floor area having basic patterns

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6941199B1 (en) 1998-07-20 2005-09-06 The Procter & Gamble Company Robotic system
US7474760B2 (en) * 1998-10-22 2009-01-06 Trimble Ab Contactless measuring of position and orientation
US6577906B1 (en) * 1999-08-05 2003-06-10 Sandia Corporation Distributed optimization system and method
US6459955B1 (en) 1999-11-18 2002-10-01 The Procter & Gamble Company Home cleaning robot
SE519435C2 (en) * 2000-03-21 2003-02-25 Anoto Ab Floors and vehicles and method for controlling a vehicle using a position coding pattern
US6481515B1 (en) 2000-05-30 2002-11-19 The Procter & Gamble Company Autonomous mobile surface treating apparatus
AU2002243168A1 (en) * 2001-03-21 2002-10-03 Anoto Ab Communications services, methods and systems
US20020152094A1 (en) * 2001-03-21 2002-10-17 Christer Fahraeus Method and system for supporting infrastructure delivery in a computer network
US20020198847A1 (en) * 2001-03-21 2002-12-26 Christer Fahraeus Communications services, methods and systems
JP4672190B2 (en) * 2001-04-26 2011-04-20 三菱電機株式会社 Video navigation device
FI111414B (en) * 2001-05-14 2003-07-15 Sandvik Tamrock Oy Method and apparatus for determining the position of a mining machine as its wheels spin
US6952488B2 (en) * 2001-08-27 2005-10-04 Carnegie Mellon University System and method for object localization
JP2003263104A (en) * 2002-03-11 2003-09-19 Mitsubishi Electric Corp Imaging information recognition system
US6766245B2 (en) * 2002-03-14 2004-07-20 Microsoft Corporation Landmark-based location of users
JP4032793B2 (en) * 2002-03-27 2008-01-16 ソニー株式会社 Charging system, charging control method, robot apparatus, charging control program, and recording medium
WO2003102706A1 (en) * 2002-05-31 2003-12-11 Fujitsu Limited Remotely-operated robot, and robot self position identifying method
US9875414B2 (en) 2014-04-15 2018-01-23 General Electric Company Route damage prediction system and method
US9919723B2 (en) 2002-06-04 2018-03-20 General Electric Company Aerial camera system and method for determining size parameters of vehicle systems
US10110795B2 (en) 2002-06-04 2018-10-23 General Electric Company Video system and method for data communication
US11124207B2 (en) 2014-03-18 2021-09-21 Transportation Ip Holdings, Llc Optical route examination system and method
US20150235094A1 (en) 2014-02-17 2015-08-20 General Electric Company Vehicle imaging system and method
US9873442B2 (en) 2002-06-04 2018-01-23 General Electric Company Aerial camera system and method for identifying route-related hazards
US6842692B2 (en) * 2002-07-02 2005-01-11 The United States Of America As Represented By The Department Of Veterans Affairs Computer-controlled power wheelchair navigation system
US20080300777A1 (en) * 2002-07-02 2008-12-04 Linda Fehr Computer-controlled power wheelchair navigation system
DE10234730A1 (en) * 2002-07-30 2004-02-19 Josef Schreiner Position determination method for use with industrial trucks, e.g. forklift trucks, within a defined area, wherein the positions of transport and reference fixed objects are known and truck positions are determined from them
WO2004018159A1 (en) * 2002-08-26 2004-03-04 Sony Corporation Environment identification device, environment identification method, and robot device
EP1587725B1 (en) * 2002-08-30 2013-12-25 Aethon, Inc. Robotic cart pulling vehicle
KR100500842B1 (en) * 2002-10-31 2005-07-12 삼성광주전자 주식회사 Robot cleaner, system thereof and method for controlling the same
US7015831B2 (en) 2002-12-17 2006-03-21 Evolution Robotics, Inc. Systems and methods for incrementally updating a pose of a mobile device calculated by visual simultaneous localization and mapping techniques
KR100485696B1 (en) * 2003-02-07 2005-04-28 삼성광주전자 주식회사 Location mark detecting method for a robot cleaner and a robot cleaner using the same method
AU2003900861A0 (en) * 2003-02-26 2003-03-13 Silverbrook Research Pty Ltd Methods,systems and apparatus (NPS042)
US7071970B2 (en) * 2003-03-10 2006-07-04 Charles Benton Video augmented orientation sensor
US6923510B2 (en) * 2003-09-17 2005-08-02 Delphi Technologies, Inc. Control of brake-and steer-by-wire systems during brake failure
DE102004001198A1 (en) * 2004-01-07 2005-08-04 Daimlerchrysler Ag Operation of an autonomous transportation vehicle in a warehouse or storage location, whereby processed image information is additionally used to access the stock levels with the information being transmitted to a central location
US7689321B2 (en) * 2004-02-13 2010-03-30 Evolution Robotics, Inc. Robust sensor fusion for mapping and localization in a simultaneous localization and mapping (SLAM) system
US20050222710A1 (en) * 2004-04-06 2005-10-06 Schell Steven E Mechanical arrangement and components for reducing error in deduced reckoning
KR100763234B1 (en) * 2004-06-11 2007-10-04 삼성전자주식회사 System and method for detecting a state of travelling
US7499775B2 (en) * 2004-10-22 2009-03-03 Irobot Corporation System and method for terrain feature tracking
GB2419430B (en) * 2004-10-22 2008-05-21 Irobot Corp Systems and Methods for Control of a Vehicle
US7499774B2 (en) * 2004-10-22 2009-03-03 Irobot Corporation System and method for processing safety signals in an autonomous vehicle
US7499776B2 (en) * 2004-10-22 2009-03-03 Irobot Corporation Systems and methods for control of an unmanned ground vehicle
US7499804B2 (en) * 2004-10-22 2009-03-03 Irobot Corporation System and method for multi-modal control of an autonomous vehicle
US8078338B2 (en) 2004-10-22 2011-12-13 Irobot Corporation System and method for behavior based control of an autonomous vehicle
MX2007006208A (en) 2004-11-23 2008-01-22 Johnson & Son Inc S C Device and methods of providing air purification in combination with cleaning of surfaces.
US7845560B2 (en) * 2004-12-14 2010-12-07 Sky-Trax Incorporated Method and apparatus for determining position and rotational orientation of an object
US7191056B2 (en) * 2005-01-04 2007-03-13 The Boeing Company Precision landmark-aided navigation
GB0503392D0 (en) * 2005-02-18 2005-03-23 King S College London Vehicle location
US7389166B2 (en) * 2005-06-28 2008-06-17 S.C. Johnson & Son, Inc. Methods to prevent wheel slip in an autonomous floor cleaner
CA2864027C (en) 2005-10-14 2017-05-02 Aldo Zini Robotic ordering and delivery apparatuses, systems and methods
US8381982B2 (en) * 2005-12-03 2013-02-26 Sky-Trax, Inc. Method and apparatus for managing and controlling manned and automated utility vehicles
US8666711B2 (en) 2006-03-17 2014-03-04 Canberra Industries, Inc. Radiation analysis system and method
WO2007109226A2 (en) * 2006-03-17 2007-09-27 Canberra Industries, Inc. Probabilistic uncertainty estimator
JP5132138B2 (en) * 2006-11-28 2013-01-30 キヤノン株式会社 Position and orientation measurement method, position and orientation measurement device
US7826969B2 (en) * 2006-12-21 2010-11-02 Deere & Company Determining position of a vehicle with reference to a landmark
US7865285B2 (en) * 2006-12-27 2011-01-04 Caterpillar Inc Machine control system and method
US8285475B2 (en) * 2007-03-02 2012-10-09 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Combined beacon and scene navigation system
EP1972893A1 (en) * 2007-03-21 2008-09-24 Universiteit Gent System and method for position determination
US8351684B2 (en) * 2008-02-13 2013-01-08 Caterpillar Inc. Terrain map updating system
US8213706B2 (en) * 2008-04-22 2012-07-03 Honeywell International Inc. Method and system for real-time visual odometry
SE532430C2 (en) * 2008-05-30 2010-01-19 Atlas Copco Rock Drills Ab Method and apparatus for determining the reliability of an estimated position for a mining and / or construction machine
US8755997B2 (en) * 2008-07-30 2014-06-17 Honeywell International Inc. Laser ranging process for road and obstacle detection in navigating an autonomous vehicle
US8364334B2 (en) * 2008-10-30 2013-01-29 Honeywell International Inc. System and method for navigating an autonomous vehicle using laser detection and ranging
US8237389B2 (en) * 2008-11-12 2012-08-07 Irobot Corporation Multi mode safety control module
US8774970B2 (en) 2009-06-11 2014-07-08 S.C. Johnson & Son, Inc. Trainable multi-mode floor cleaning device
US20140379254A1 (en) * 2009-08-25 2014-12-25 Tomtom Global Content B.V. Positioning system and method for use in a vehicle navigation system
AU2011305154B2 (en) 2010-09-24 2015-02-05 Irobot Corporation Systems and methods for VSLAM optimization
AU2012243484B2 (en) 2011-04-11 2014-10-30 Crown Equipment Corporation Method and apparatus for efficient scheduling for multiple automated non-holonomic vehicles using a coordinated path planner
US20130016584A1 (en) * 2011-07-15 2013-01-17 Teledyne Scientific & Imaging Llc Methods and apparatus for obtaining sensor motion and position data from underwater acoustic signals
US20140058634A1 (en) 2012-08-24 2014-02-27 Crown Equipment Limited Method and apparatus for using unique landmarks to locate industrial vehicles at start-up
JP5494597B2 (en) * 2011-09-16 2014-05-14 株式会社安川電機 Robot system
US8798840B2 (en) 2011-09-30 2014-08-05 Irobot Corporation Adaptive mapping with spatial summaries of sensor data
DE102011115354B4 (en) * 2011-10-07 2017-01-05 Telejet Kommunikations Gmbh Navigation based on random patterns
GB201202344D0 (en) 2012-02-10 2012-03-28 Isis Innovation Method of locating a sensor and related apparatus
GB2501466A (en) 2012-04-02 2013-10-30 Univ Oxford Localising transportable apparatus
US9223312B2 (en) 2012-06-08 2015-12-29 Irobot Corporation Carpet drift estimation using differential sensors or visual measurements
US8949024B2 (en) * 2012-10-25 2015-02-03 Massachusetts Institute Of Technology Vehicle localization using surface penetrating radar
EP2917849A4 (en) * 2012-11-12 2016-08-17 Canberra Ind Inc Radiation analysis system and method
JP5874618B2 (en) * 2012-12-05 2016-03-02 トヨタ自動車株式会社 Mobile device
US9541420B2 (en) * 2013-04-03 2017-01-10 Caterpillar Inc. System for determining error in a sensed machine position
US9488483B2 (en) 2013-05-17 2016-11-08 Honda Motor Co., Ltd. Localization using road markings
JP2015055534A (en) * 2013-09-11 2015-03-23 株式会社リコー Information processing apparatus, control program thereof, and control method thereof
DE102013020851A1 (en) 2013-12-12 2015-06-18 Grenzebach Maschinenbau Gmbh Driverless transport vehicle for transporting heavy loads on carriages and method for operating the transport vehicle
GB201407643D0 (en) 2014-04-30 2014-06-11 Tomtom Global Content Bv Improved positioning relatie to a digital map for assisted and automated driving operations
DE102014210770A1 (en) 2014-06-05 2015-12-17 Conti Temic Microelectronic Gmbh METHOD AND SYSTEM FOR DETERMINING A VEHICLE POSITION OF A VEHICLE
CN104083258B (en) * 2014-06-17 2016-10-05 华南理工大学 A kind of method for controlling intelligent wheelchair based on brain-computer interface and automatic Pilot technology
US11137255B2 (en) 2015-08-03 2021-10-05 Tomtom Global Content B.V. Methods and systems for generating and using localization reference data
US9937625B2 (en) 2015-12-29 2018-04-10 The Boeing Company Self-locating robots
GB201612528D0 (en) 2016-07-19 2016-08-31 Machines With Vision Ltd Vehicle localisation using the ground or road surface
US10317901B2 (en) 2016-09-08 2019-06-11 Mentor Graphics Development (Deutschland) Gmbh Low-level sensor fusion
US10520904B2 (en) 2016-09-08 2019-12-31 Mentor Graphics Corporation Event classification and object tracking
US10678240B2 (en) 2016-09-08 2020-06-09 Mentor Graphics Corporation Sensor modification based on an annotated environmental model
US11067996B2 (en) 2016-09-08 2021-07-20 Siemens Industry Software Inc. Event-driven region of interest management
US10444347B2 (en) * 2016-11-30 2019-10-15 GM Global Technology Operations LLC Accurate self localization using automotive radar synthetic aperture radar
JP6837690B2 (en) 2017-01-27 2021-03-03 マサチューセッツ インスティテュート オブ テクノロジー Vehicle locating method and system using surface penetration radar
US10990829B2 (en) * 2017-04-28 2021-04-27 Micro Focus Llc Stitching maps generated using simultaneous localization and mapping
US10884409B2 (en) 2017-05-01 2021-01-05 Mentor Graphics (Deutschland) Gmbh Training of machine learning sensor data classification system
DE102017220291A1 (en) * 2017-11-14 2019-05-16 Robert Bosch Gmbh Method for automatically guiding a vehicle along a virtual rail system
US10638906B2 (en) * 2017-12-15 2020-05-05 Neato Robotics, Inc. Conversion of cleaning robot camera images to floorplan for user interaction
US11145146B2 (en) 2018-01-31 2021-10-12 Mentor Graphics (Deutschland) Gmbh Self-diagnosis of faults in an autonomous driving system
US10553044B2 (en) 2018-01-31 2020-02-04 Mentor Graphics Development (Deutschland) Gmbh Self-diagnosis of faults with a secondary system in an autonomous driving system
DE102018130720A1 (en) * 2018-12-03 2020-06-04 Ima Schelling Deutschland Gmbh Infrastructure system
DE102018221142A1 (en) * 2018-12-06 2020-06-10 Robert Bosch Gmbh Localization in complex traffic scenarios using markings
US10890918B2 (en) 2019-04-24 2021-01-12 Innovation First, Inc. Performance arena for robots with position location system
JP2022547580A (en) * 2019-09-13 2022-11-14 ウェーブセンス, インコーポレイテッド Improved navigation and positioning using surface-seeking radar and deep learning
DE102020201501A1 (en) 2020-02-07 2021-08-12 Zf Friedrichshafen Ag Method for determining the position of a vehicle when creating a map of the surroundings
US20210353804A1 (en) * 2020-05-14 2021-11-18 Pratt & Miller Engineering and Fabrication, Inc. Large area autonomous disinfectant/decontamination vehicle
DE102020214002B3 (en) * 2020-11-08 2022-04-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Device and method for determining a position of a detection unit and method for storing extraction information in a database

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0050101A1 (en) * 1980-10-02 1982-04-21 Ab Volvo Method for updating in a wheeled vehicle steered by dead reckoning
EP0190742A2 (en) * 1985-02-08 1986-08-13 Hitachi, Ltd. Guidance system for a mobile robot
EP0390052A2 (en) * 1989-03-31 1990-10-03 Honeywell Inc. Landmark recognition system and process
DE4138270A1 (en) * 1991-11-21 1993-05-27 Rheinmetall Gmbh Navigating self-propelled land vehicle, esp. road sweeper - acquiring video images of natural landmarks and comparing with stored data from learning journey
US5249126A (en) * 1989-09-27 1993-09-28 Nissan Motor Company, Limited System and method for controlling steering response according to vehicle speed applicable to autonomous vehicle
EP0681230A1 (en) * 1994-05-02 1995-11-08 General Electric Company Navigation system
EP0706105A1 (en) * 1994-10-04 1996-04-10 Consorzio Telerobot Navigation system for an autonomous mobile robot

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3788201A (en) * 1970-12-14 1974-01-29 F Abell Method for establishing vehicle identification, speed and conditions of visibility
JPS5975357A (en) * 1982-10-22 1984-04-28 Hitachi Ltd Picture processing device
GB8313339D0 (en) * 1983-05-14 1983-06-22 Gen Electric Co Plc Vehicle guidance
GB8313338D0 (en) * 1983-05-14 1983-06-22 Gen Electric Co Plc Vehicle control
GB8501012D0 (en) * 1985-01-16 1985-02-20 Gen Electric Co Plc Automated vehicle drift correction
NL8500529A (en) * 1985-02-25 1986-09-16 Ind Contractors Holland Bv SYSTEM FOR DETERMINING THE POSITION OF A VEHICLE NOT BONDED TO A FIXED TRACK.
JPS63314618A (en) * 1987-06-17 1988-12-22 Nissan Motor Co Ltd Controller for self-traveling vehicle
US4965499A (en) * 1987-12-31 1990-10-23 Westinghouse Electric Corp Parametric path modeling for an optical automatic seam tracker and real time robotic control system
GB2218538B (en) * 1988-05-13 1992-09-16 Gen Electric Co Plc Automated vehicle control
JPH0324606A (en) * 1989-06-22 1991-02-01 Yutaka Kanayama Method for specifying route of moving robot
US5067081A (en) * 1989-08-30 1991-11-19 Person Carl E Portable electronic navigation aid
US5170352A (en) * 1990-05-07 1992-12-08 Fmc Corporation Multi-purpose autonomous vehicle with path plotting
JPH04227507A (en) * 1990-07-02 1992-08-17 Nec Corp Method for forming and keeping map for moving robot
JP2792210B2 (en) * 1990-07-03 1998-09-03 富士電機株式会社 Control method and control device for automatic guided vehicle
JP2623157B2 (en) * 1990-07-13 1997-06-25 株式会社イセキ開発工機 Control device for moving objects
NL9001810A (en) * 1990-08-13 1992-03-02 Philips Nv METHOD FOR DETERMINING THE POSITION OF A VEHICLE, DEVICE FOR DETERMINING THE POSITION OF A VEHICLE AND VEHICLE PROVIDED WITH THE DEVICE.
US5245422A (en) * 1991-06-28 1993-09-14 Zexel Corporation System and method for automatically steering a vehicle within a lane in a road
JP3176701B2 (en) * 1992-04-15 2001-06-18 本田技研工業株式会社 Mobile object current position recognition processor
US5436839A (en) * 1992-10-26 1995-07-25 Martin Marietta Corporation Navigation module for a semi-autonomous vehicle
US5369589A (en) * 1993-09-15 1994-11-29 Trimble Navigation Limited Plural information display for navigation
US5525883A (en) * 1994-07-08 1996-06-11 Sara Avitzour Mobile robot location determination employing error-correcting distributed landmarks
JPH08314540A (en) * 1995-03-14 1996-11-29 Toyota Motor Corp Vehicle travel guide system
US6047234A (en) * 1997-10-16 2000-04-04 Navigation Technologies Corporation System and method for updating, enhancing or refining a geographic database using feedback

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0050101A1 (en) * 1980-10-02 1982-04-21 Ab Volvo Method for updating in a wheeled vehicle steered by dead reckoning
EP0190742A2 (en) * 1985-02-08 1986-08-13 Hitachi, Ltd. Guidance system for a mobile robot
EP0390052A2 (en) * 1989-03-31 1990-10-03 Honeywell Inc. Landmark recognition system and process
US5249126A (en) * 1989-09-27 1993-09-28 Nissan Motor Company, Limited System and method for controlling steering response according to vehicle speed applicable to autonomous vehicle
DE4138270A1 (en) * 1991-11-21 1993-05-27 Rheinmetall Gmbh Navigating self-propelled land vehicle, esp. road sweeper - acquiring video images of natural landmarks and comparing with stored data from learning journey
EP0681230A1 (en) * 1994-05-02 1995-11-08 General Electric Company Navigation system
EP0706105A1 (en) * 1994-10-04 1996-04-10 Consorzio Telerobot Navigation system for an autonomous mobile robot

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010006352A1 (en) * 2008-07-16 2010-01-21 Zeno Track Gmbh Method and apparatus for capturing the position of a vehicle in a defined region
EP2376869A1 (en) * 2008-12-10 2011-10-19 Deere & Company Method and system for determining a position of a vehicle
EP2376869A4 (en) * 2008-12-10 2012-10-31 Deere & Co Method and system for determining a position of a vehicle
WO2011144710A1 (en) 2010-05-21 2011-11-24 Alfred Kärcher Gmbh & Co. Kg Floor-treating device and method for treating a floor area having basic patterns
DE102010029241A1 (en) * 2010-05-21 2011-11-24 Alfred Kärcher Gmbh & Co. Kg Soil cultivation device and method for processing a floor surface

Also Published As

Publication number Publication date
ATE218221T1 (en) 2002-06-15
EP0937284A2 (en) 1999-08-25
WO1998020399A3 (en) 1998-06-25
AU5162498A (en) 1998-05-29
US6453223B1 (en) 2002-09-17
DE69712906D1 (en) 2002-07-04
EP0937284B1 (en) 2002-05-29
DE69712906T2 (en) 2003-04-24
US5999866A (en) 1999-12-07

Similar Documents

Publication Publication Date Title
US5999866A (en) Infrastructure independent position determining system
Gutmann et al. An experimental comparison of localization methods
US6442476B1 (en) Method of tracking and sensing position of objects
Kurazume et al. Study on cooperative positioning system: optimum moving strategies for CPS-III
Ohya et al. Vision-based navigation by a mobile robot with obstacle avoidance using single-camera vision and ultrasonic sensing
CA2968561C (en) Adaptive mapping with spatial summaries of sensor data
Fox et al. A hybrid collision avoidance method for mobile robots
Kurazume et al. Study on cooperative positioning system (basic principle and measurement experiment)
US5957984A (en) Method of determining the position of a landmark in the environment map of a self-propelled unit, the distance of the landmark from the unit being determined dynamically by the latter
JP2003015739A (en) External environment map, self-position identifying device and guide controller
RU2740229C1 (en) Method of localizing and constructing navigation maps of mobile service robot
Jenkin et al. Global navigation for ARK
Mäkelä Outdoor navigation of mobile robots
Reina et al. A two-stage mobile robot localization method by overlapping segment-based maps
D'Orazio et al. Mobile robot navigation by multi-sensory integration
WO1995029380A1 (en) Navigation system for fast automated vehicles and mobile robots
Xu et al. Sensor fusion and positioning of the mobile robot LiAS
Podsedkowski et al. Online navigation of mobile robots using laser scanner
JPH06259131A (en) Mobile robot guidance controller
Jensfelt et al. A mobile robot system for automatic floor marking
Kelly Pose determination and tracking in image mosaic based vehicle position estimation
Bais et al. Location tracker for a mobile robot
Kim Localization of a mobile robot using a laser range finder in a hierarchical navigation system
Roumeliotis et al. Reliable mobile robot localization
Drunk Sensors for mobile robots

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN AM AZ BY KG KZ MD RU TJ TM

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH KE LS MW SD SZ UG ZW AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF

AK Designated states

Kind code of ref document: A3

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN AM AZ BY KG KZ MD RU TJ TM

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH KE LS MW SD SZ UG ZW AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1997946462

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1997946462

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: CA

WWG Wipo information: grant in national office

Ref document number: 1997946462

Country of ref document: EP