Aspects of the disclosure relate generally to detecting road weather conditions. vehicle sensors including a laser, precipitation sensors, and/or camera may be used to detect information such as the brightness of the road, variations in the brightness of the road, brightness of the world, current precipitation, as well as the detected height of the road. Information received from other sources such as networked based weather information (forecasts, radar, precipitation reports, etc.) may also be considered. The combination of the received and detected information may be used to estimate the probability of precipitation such as water, snow or ice in the roadway. This information may then be used to maneuver an autonomous vehicle (for steering, accelerating, or braking) or identify dangerous situations.
|
1. A method comprising:
receiving laser data collected for a roadway as a vehicle is driven along the roadway, wherein the laser data includes a plurality of laser data points, each data point of the plurality of laser data points having location and intensity information associated therewith;
determining an average intensity of the plurality laser data points associated with locations within the roadway;
comparing the average intensity to a threshold value associated with an expected average intensity of the roadway under dry weather conditions;
when the average intensity is below the threshold value, identifying an indication that the roadway is wet;
estimating, by a processor, a driving condition of the roadway based on the indication the roadway is wet; and
using the estimate, by the processor, to make a driving decision for the vehicle.
12. A system comprising:
memory storing an expected average intensity of the roadway under dry weather conditions; and
a processor configured to:
receive laser data collected for a roadway as a vehicle is driven along the roadway, wherein the laser data includes a plurality of laser data points, each data point of the plurality of laser data points having location and intensity information associated therewith;
determine an average intensity of the plurality laser data points associated with locations within the roadway;
compare the average intensity to a threshold value associated with the expected average intensity of the roadway under dry weather conditions;
when the average intensity is below the threshold value, identify an indication that the roadway is wet;
estimate a driving condition of the roadway based on the indication the roadway is wet; and
using the estimate to make a driving decision for the vehicle.
2. The method of
3. The method of
determining a distribution of intensity values for the roadway;
comparing the determined distribution to an expected distribution for dry conditions;
when the determined distribution is shifted towards a darker end of an intensity scale relative to the expected distribution for dry conditions, identifying a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
4. The method of
detecting a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to a rear portion of the vehicle;
when the cloud is detected, identifying a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
5. The method of
detecting a moving object in the roadway from the plurality of laser data points;
detecting a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to the moving object;
when the cloud is detected, identifying a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
6. The method of
further comprising:
accessing detailed map information for the roadway indicating an expected elevation of the roadway;
identifying a cloud of laser data points from the received laser data points associated with location data proximate to an expected surface of the roadway;
comparing the laser data points of the cloud to a first threshold value above the expected roadway surface and a second threshold value below the expected roadway surface;
when the laser data points of the cloud include at least one laser data point above the first threshold value and at least one laser data point below the second threshold value, identifying a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
7. The method of
receiving images captured from a camera as the vehicle is driven along the roadway; and
identifying an additional indication that the roadway is wet conditions based on the images,
wherein the additional indication that the roadway is wet is used by the processor to estimate the driving conditions.
8. The method of
receiving precipitation data from a precipitation sensor associated with the vehicle; and
identifying a second indication that the roadway is wet based on the precipitation data,
wherein the second indication that the roadway is wet is used by the processor to estimate the driving condition.
9. The method of
10. The method of
accessing detailed map information for the roadway indicating an expected elevation of the roadway;
determining an average elevation for a portion of the roadway;
identifying a second indication that the roadway is wet based on whether the average elevation of the portion of the roadway is at least a second threshold value greater than the expected elevation; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving condition.
11. The method of
receiving weather information for a current location of the vehicle from a server over a network; and
identifying a second indication that the roadway is wet based on the weather related information,
wherein the second indication that the roadway is wet is used by the processor to estimate the driving condition.
13. The system of
14. The system of
determine a distribution of intensity values for the roadway;
compare the determined distribution to an expected distribution for dry conditions;
when the determined distribution is shifted towards a darker end of an intensity scale relative to the expected distribution for dry conditions, identify a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
15. The system of
detect a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to a rear portion of the vehicle;
when the cloud is detected, identify a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
16. The system of
detect a moving object in the roadway from the plurality of laser data points;
detect a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to the moving object;
when the cloud is detected, identifying a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
17. The system of
access detailed map information for the roadway indicating an expected elevation of the roadway;
identify a cloud of laser data points from the received laser data points associated with location data proximate to an expected surface of the roadway;
compare the laser data points of the cloud to a first threshold value above the expected roadway surface and a second threshold value below the expected roadway surface;
when the laser data points of the cloud include at least one laser data point above the first threshold value and at least one laser data point below the second threshold value, identify a second indication that the roadway is wet; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions.
18. The system of
receive images captured from a camera as the vehicle is driven along the roadway; and
identify an additional indication that the roadway is wet conditions based on the images,
wherein the additional indication that the roadway is wet is used by the processor to estimate the driving conditions.
19. The system of
receive precipitation data from a precipitation sensor associated with the vehicle; and
identify a second indication that the roadway is wet based on the precipitation data,
wherein the second indication that the roadway is wet is used by the processor to estimate the driving condition.
20. The system of
21. The system of
access detailed map information for the roadway indicating an expected elevation of the roadway;
determine an average elevation for a portion of the roadway;
identify a second indication that the roadway is wet based on whether the average elevation of the portion of the roadway is at least a second threshold value greater than the expected elevation; and
wherein the second indication that the roadway is wet is used by the processor to estimate the driving condition.
22. The system of
receive weather information for a current location of the vehicle from a server over a network; and
identify a second indication that the roadway is wet based on the weather related information,
wherein the second indication that the roadway is wet is used by the processor to estimate the driving condition.
|
This application is related to co-pending United States patent application Ser. No. 13/623,422, entitled “DETECTING ROAD WEATHER CONDITIONS,” filed concurrently herewith, the entire disclosure of which is incorporated herein by reference.
Autonomous vehicles use various computing systems to aid in the transport of passengers from one location to another. Some autonomous vehicles may require an initial input or continuous input from an operator, such as a pilot, driver, or passenger. Other autonomous systems, for example autopilot systems, may be used only when the system has been engaged, which permits the operator to switch from a manual mode (where the operator exercises a high degree of control over the movement of the vehicle) to an autonomous mode (where the vehicle essentially drives itself) to modes that lie somewhere in between.
Such vehicles are typically equipped with various types of sensors in order to detect objects in the surroundings. For example, autonomous vehicles may include lasers, sonar, radar, cameras, and other devices which scan and record data from the vehicle's surroundings. Sensor data from one or more of these devices may be used to detect objects and their respective characteristics (position, shape, heading, speed, etc.). This detection and identification is a critical function for the safe operation of autonomous vehicle.
One aspect of the disclosure provides a method. The method includes receiving laser data collected for a roadway as a vehicle is driven along the roadway, wherein the laser data includes a plurality of laser data points, each data point of the plurality of laser data points having location and intensity information associated therewith; determining an average intensity of the plurality laser data points associated with locations within the roadway; comparing the average intensity to a threshold value associated with an expected average intensity of the roadway under dry weather conditions; when the average intensity is below the threshold value, identifying an indication that the roadway is wet; estimating, by a processor, a driving condition of the roadway based on the indication the roadway is wet; and using the estimate, by the processor, to make a driving decision for the vehicle.
In one example, the expected average intensity of the roadway under dry weather conditions is based on a composition of the surface of the roadway. In another example, the method also includes determining a distribution of intensity values for the roadway; comparing the determined distribution to an expected distribution for dry conditions; when the determined distribution is shifted towards a darker end of an intensity scale relative to the expected distribution for dry conditions, identifying a second indication that the roadway is wet; and wherein the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the method also includes detecting a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to a rear portion of the vehicle; when the cloud is detected, identifying a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the method also includes detecting a moving object in the roadway from the plurality of laser data points; detecting a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to the moving object; when the cloud is detected, identifying a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the method also includes accessing detailed map information for the roadway indicating an expected elevation of the roadway; identifying a clouds of laser data points from the received laser data points associated with location data proximate to an expected surface of the roadway; comparing the laser data points of the cloud to a first threshold value above the expected roadway surface and a second threshold value below the expected roadway surface; when the laser data points of the cloud include at least one laser data point above the first threshold value and at least one laser data point below the second threshold value, identifying a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the method also includes receiving images captured from a camera as the vehicle is driven along the roadway; identifying an additional indication that the roadway is wet conditions based on the images; and the additional indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the method also includes receiving precipitation data from a precipitation sensor associated with the vehicle; identifying a second indication that the roadway is wet based on the precipitation data; and the second indication that the roadway is wet is used by the processor to estimate the driving condition. In another example, estimating the driving condition includes using a Bayesian estimate. In another example, the method also includes accessing detailed map information for the roadway indicating an expected elevation of the roadway; determining an average elevation for a portion of the roadway; identifying a second indication that the roadway is wet based on whether the average elevation of the portion of the roadway is at least a second threshold value greater than the expected elevation; and the second indication that the roadway is wet is used by the processor to estimate the driving condition. In another example, the method also includes receiving weather information for a current location of the vehicle from a server over a network; identifying a second indication that the roadway is wet based on the weather related information; the second indication that the roadway is wet is used by the processor to estimate the driving condition.
Another aspect of the disclosure provides a system. The system includes memory storing an expected average intensity of the roadway under dry weather conditions and a processor. The processor is configured to receive laser data collected for a roadway as a vehicle is driven along the roadway, wherein the laser data includes a plurality of laser data points, each data point of the plurality of laser data points having location and intensity information associated therewith; determine an average intensity of the plurality laser data points associated with locations within the roadway; compare the average intensity to a threshold value associated with the expected average intensity of the roadway under dry weather conditions; when the average intensity is below the threshold value, identify an indication that the roadway is wet; estimate a driving condition of the roadway based on the indication the roadway is wet; and using the estimate to make a driving decision for the vehicle.
In one example, the expected average intensity of the roadway under dry weather conditions is based on a composition of the surface of the roadway. In another example, the processor is also configured to determine a distribution of intensity values for the roadway; compare the determined distribution to an expected distribution for dry conditions; when the determined distribution is shifted towards a darker end of an intensity scale relative to the expected distribution for dry conditions, identify a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the processor is also configured to detect a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to a rear portion of the vehicle; when the cloud is detected, identify a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the processor is also configured to detect a moving object in the roadway from the plurality of laser data points; detect a cloud of laser data points of the plurality of laser data points which do not indicate a particular structure located proximate to the moving object; when the cloud is detected, identifying a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the processor is also configured to access detailed map information for the roadway indicating an expected elevation of the roadway; identify a clouds of laser data points from the received laser data points associated with location data proximate to an expected surface of the roadway; compare the laser data points of the cloud to a first threshold value above the expected roadway surface and a second threshold value below the expected roadway surface; when the laser data points of the cloud include at least one laser data point above the first threshold value and at least one laser data point below the second threshold value, identify a second indication that the roadway is wet; and the second indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the processor is also configured to receive images captured from a camera as the vehicle is driven along the roadway; identify an additional indication that the roadway is wet conditions based on the images; and the additional indication that the roadway is wet is used by the processor to estimate the driving conditions. In another example, the processor is also configured to receive precipitation data from a precipitation sensor associated with the vehicle; identify a second indication that the roadway is wet based on the precipitation data; and the second indication that the roadway is wet is used by the processor to estimate the driving condition. In another example, estimating the driving condition the processor is configured to use a Bayesian estimate. In another example, the processor is also configured to access detailed map information for the roadway indicating an expected elevation of the roadway; determine an average elevation for a portion of the roadway; identify a second indication that the roadway is wet based on whether the average elevation of the portion of the roadway is at least a second threshold value greater than the expected elevation; and the second indication that the roadway is wet is used by the processor to estimate the driving condition. In another example, the processor is also configured to receive weather information for a current location of the vehicle from a server over a network; identify a second indication that the roadway is wet based on the weather related information; and the second indication that the roadway is wet is used by the processor to estimate the driving condition.
In one aspect of the disclosure, laser scan data including data points collected along a roadway may be received by a computer. The laser scan data may include data points indicating the location and intensity of objects, roadway features, etc. in the laser's surroundings including the roadway, and in some examples, the world beyond the boundaries of the roadway. This information may be used to identify one or more road weather conditions as described in detail below. In addition, images captured from a camera may be received by the computer. Like the laser data, the images may include information about the camera's surroundings including the roadway. The images may be then used to identify an indication of road weather conditions. Data from a precipitation sensor may be received by the computer, and may be used to identify an indication of road weather conditions. Weather related information may be received by the computer from a server over a network. The weather related information may be used to identify an indication of road weather conditions. The identified indications may then be used to estimate the driving conditions of the roadway. The estimate may be used to make a driving decision as described in more detail below.
As shown in
The memory 130 stores information accessible by processor 120, including instructions 132 and data 134 that may be executed or otherwise used by the processor 120. The memory 130 may be of any type capable of storing information accessible by the processor, including a computer-readable medium, or other medium that stores data that may be read with the aid of an electronic device, such as a hard-drive, memory card, ROM, RAM, DVD or other optical disks, as well as other write-capable and read-only memories. Systems and methods may include different combinations of the foregoing, whereby different portions of the instructions and data are stored on different types of media.
The instructions 132 may be any set of instructions to be executed directly (such as machine code) or indirectly (such as scripts) by the processor. For example, the instructions may be stored as computer code on the computer-readable medium. In that regard, the terms “instructions” and “programs” may be used interchangeably herein. The instructions may be stored in object code format for direct processing by the processor, or in any other computer language including scripts or collections of independent source code modules that are interpreted on demand or compiled in advance. Functions, methods and routines of the instructions are explained in more detail below.
The data 134 may be retrieved, stored or modified by processor 120 in accordance with the instructions 132. For instance, although the system and method is not limited by any particular data structure, the data may be stored in computer registers, in a relational database as a table having a plurality of different fields and records, XML documents or flat files. The data may also be formatted in any computer-readable format. By further way of example only, image data may be stored as bitmaps comprised of grids of pixels that are stored in accordance with formats that are compressed or uncompressed, lossless (e.g., BMP) or lossy (e.g., JPEG), and bitmap or vector-based (e.g., SVG), as well as computer instructions for drawing graphics. The data may comprise any information sufficient to identify the relevant information, such as numbers, descriptive text, proprietary codes, references to data stored in other areas of the same memory or different memories (including other network locations) or information that is used by a function to calculate the relevant data.
The processor 120 may be any conventional processor, such as commercially available CPUs. Alternatively, the processor may be a dedicated device such as an ASIC. Although
In various aspects described herein, the processor may be located remotely from the vehicle and communicate with the vehicle wirelessly. In other aspects, some of the processes described herein are executed on a processor disposed within the vehicle while others are executed by a remote processor, including taking the steps necessary to execute a single maneuver.
Computer 110 may include all of the components normally used in connection with a computer such as a central processing unit (CPU), memory (e.g., RAM and internal hard drives) storing data 134 and instructions such as a web browser, an electronic display 142 (e.g., a monitor having a screen, a small LCD touch-screen or any other electrical device that is operable to display information), user input 140 (e.g., a mouse, keyboard, touch screen and/or microphone), as well as various sensors (e.g., a video camera) for gathering the explicit (e.g., a gesture) or implicit (e.g., “the person is asleep”) information about the states and desires of a person.
In one example, computer 110 may be an autonomous driving computing system incorporated into vehicle 101.
Vehicle 101 may also include one or more additional displays. For example, the vehicle may include a display 225 for displaying information regarding the status of the autonomous vehicle or its computer. In another example, the vehicle may include a status indicating apparatus such as status bar 230, to indicate the current status of vehicle 101. In the example of
The autonomous driving computing system may capable of communicating with various components of the vehicle. For example, returning to
The vehicle may also include a geographic position component 144 in communication with computer 110 for determining the geographic location of the device. For example, the position component may include a GPS receiver to determine the device's latitude, longitude and/or altitude position. Other location systems such as laser-based localization systems, inertial-aided GPS, or camera-based localization may also be used to identify the location of the vehicle. The location of the vehicle may include an absolute geographical location, such as latitude, longitude, and altitude as well as relative location information, such as location relative to other cars immediately around it which can often be determined with less noise that absolute geographical location.
The vehicle may also include other features in communication with computer 110, such as an accelerometer, gyroscope or another direction/speed detection device 146 to determine the direction and speed of the vehicle or changes thereto. By way of example only, device 146 may determine its pitch, yaw or roll (or changes thereto) relative to the direction of gravity or a plane perpendicular thereto. The device may also track increases or decreases in speed and the direction of such changes. The device's provision of location and orientation data as set forth herein may be provided automatically to the user, computer 110, other computers and combinations of the foregoing.
The computer may control the direction and speed of the vehicle by controlling various components. By way of example, if the vehicle is operating in a completely autonomous mode, computer 110 may cause the vehicle to accelerate (e.g., by increasing fuel or other energy provided to the engine), decelerate (e.g., by decreasing the fuel supplied to the engine or by applying brakes) and change direction (e.g., by turning the front two wheels).
The vehicle may also include components 148 for detecting objects and conditions external to the vehicle such as other vehicles, obstacles in the roadway, traffic signals, signs, trees, etc. The detection system may include lasers, sonar, radar, cameras, precipitation sensors, or any other detection devices which record data which may be processed by computer 110. For example, if the vehicle is a small passenger vehicle, the car may include a laser mounted on the roof or other convenient location. As shown in
As noted above, the vehicle may also include one or more cameras. The cameras may be mounted at predetermined distances so that the parallax from the images of 2 or more cameras may be used to compute the distance to various objects. As shown in
The vehicle may also include one or more precipitation sensors. In one example, as with typical vehicles, a precipitation sensor 340 may be mounted under or incorporated into the windshield 330. Precipitation sensors may also be mounted at various other locations, such as at or near the location of headlamps, etc. In one example, a precipitation sensor may include a set of one or more infrared light-emitting diodes (LEDs) and a photodetector such as a photodiode. Light emitted by the LEDs may be reflected by the windshield back to the photodiode. The less light the photodiode receives, the more precipitation outside of the vehicle. The amount of reflected light or some other indicator of the detected amount of precipitation may be passed to computer 110.
The aforementioned sensors may allow the vehicle to understand and potentially respond to its environment in order to maximize safety for passengers as well as objects or people in the environment. It will be understood that the vehicle types, number and type of sensors, the sensor locations, the sensor fields of view, and the sensors' sensor fields are merely exemplary. Various other configurations may also be utilized.
In addition to the sensors described above, the computer may also use input from sensors typical non-autonomous vehicles. For example, these sensors may include tire pressure sensors, engine temperature sensors, brake heat sensors, brake pad status sensors, tire tread sensors, fuel sensors, oil level and quality sensors, air quality sensors (for detecting temperature, humidity, or particulates in the air), etc.
Many of these sensors provide data that is processed by the computer in real-time, that is, the sensors may continuously update their output to reflect the environment being sensed at or over a range of time, and continuously or as-demanded provide that updated output to the computer so that the computer can determine whether the vehicle's then-current direction or speed should be modified in response to the sensed environment.
In addition to processing data provided by the various sensors, the computer may rely on environmental data that was obtained at a previous point in time and is expected to persist regardless of the vehicle's presence in the environment. For example, returning to
The detailed map information 136 may also include lane marker information identifying the location, elevation, and shape of lane markers. The lane markers may include features such as solid or broken double or single lane lines, solid or broken lane lines, reflectors, etc. A given lane may be associated with left and right lane lines or other lane markers that define the boundary of the lane. Thus, most lanes may be bounded by a left edge of one lane line and a right edge of another lane line.
Again, although the detailed map information is depicted herein as an image-based map, the map information need not be entirely image based (for example, raster). For example, the detailed map information may include one or more roadgraphs or graph networks of information such as roads, lanes, intersections, and the connections between these features. Each feature may be stored as graph data and may be associated with information such as a geographic location and whether or not it is linked to other related features, for example, a stop sign may be linked to a road and an intersection, etc. In some examples, the associated data may include grid-based indices of a roadgraph to allow for efficient lookup of certain roadgraph features.
Computer 110 may also receive or transfer information to and from other computers. For example, the map information stored by computer 110 may be received or transferred from other computers and/or the sensor data collected from the sensors of vehicle 101 may be transferred to another computer for processing as described herein. As shown in
In one example, computer 320 may comprise a server having a plurality of computers, e.g., a load balanced server farm, that exchange information with different nodes of a network for the purpose of receiving, processing and transmitting the data from computer 110. The server may be configured similarly to the computer 110, with a processor 330, memory 350, instructions 360, and data 370.
In one example, data 370 of server 320 may include provide weather related information. For example, server 320 may receive, monitor, store, update, and transmit various information related to weather. This information may include, for example, precipitation, cloud, and/or temperature information in the form of reports, radar information, forecasts, etc.
In addition to the operations described above and illustrated in the figures, various operations will now be described. It should be understood that the following operations do not have to be performed in the precise order described below. Rather, various steps can be handled in a different order or simultaneously, and steps may also be added or omitted.
A vehicle including one or more sensors may be driven along a roadway. For example, the sensors may include a laser. The laser may be an off board sensor attached to a typical vehicle or a part of an autonomous driving system, such as vehicle 101.
As the vehicle's laser or lasers are moved along, the vehicle may collect data points including range and intensity information for the same location (point or area) from several directions and/or at different times. For example, each data point may include an intensity value indicative of the reflectivity of the object from which the light was received by the laser as well as location information. For example, highly reflective surfaces such as lane markers would be associated with an intensity value which is greater than less reflective surfaces such as blacktop, cement, or other roadway surfaces. Similarly, darker objects (black, navy blue, brown, etc.) which absorb more light would be associated with a much lower intensity value than lighter colored objects which would reflect more light (white, cream, silver, etc.). In this regard, when an object is wet, it may actually become darker and therefore, rather than increasing the intensity value of an object, the water may decrease the intensity value.
In some examples, the intensity values may be scaled, for example, from 0-250, where 0 is very dark to and 250 very bright. Thus, more reflective, brighter surfaces may be associated with intensity values closer to 250, while less reflective, darker surfaces may be associated with intensity values closer to 0.
For example, the laser scan data may be received and processed by computer 110 (or computer 320) to generate geographic location coordinates. These geographic location coordinates may include GPS latitude and longitude coordinates (x,y) with an elevation component (z), or may be associated with other coordinate systems. The result of this processing is a set of data point. Each data point of this set may include an intensity value indicative of the reflectivity of the object from which the light was received by the laser as well as location information: (x,y,z).
In addition to identifying objects and roadway features in the vehicle's surroundings, the computer 110 may also detect indications of weather conditions which may affect computer 110's ability to safely control vehicle 101 (“road weather conditions”). These road weather conditions may include conditions such as wet or icy conditions, snowy conditions, foggy conditions, etc.
In some aspects of the disclosure, computer 110 may detect indications of wet roadway conditions. In one example, the computer may examine the average intensity of the laser data points for a roadway and compare this to a threshold to identify an indication of whether the roadway is wet. For example, as noted above, the water covering wet or icy areas of the roadway may decrease the intensity of the roadway. Thus, a wet roadway may have average intensity values that are somewhat lower that of dry roadways (such as cement, blacktop, brick, etc.) as well as other expected roadway features such as lane markers, etc. that appear in the map information.
When determining the average intensity of the laser data points, all of the laser data points and intensity values associated with or within the roadway or some portion of the roadway may be examined. For example, the vehicle may examine data points associate with an area directly in front of the vehicle in the vehicle's lane, all lanes which move traffic in the same general direction as the vehicle's current lane, all data points within the roadway associated with the field of view of the vehicle's laser or lasers, etc. If some percentage of the examined laser data points have intensity values below a certain threshold value, the computer may determine that the roadway is wet. For example, using the 0 to 250 scale described above, if there are 1000 laser data points in the roadway and at least 850 of these 1000 points (or at least 85% of these laser data points) have an intensity below a threshold of 10, the roadway is very dark. As noted above, a lower intensity value may indicate a high probability that the roadway is wet. Other thresholds and percentages may also be used, for example, based on the expected intensity or the composition of the roadway. In this regard, the threshold value used for blacktop may be lower than the threshold value used for cement or brick roadways.
Flow diagram 700 of
In another example, the computer may examine variations in the intensity of the roadway to identify an indication of whether the roadway is wet. For example, computer 110 may compute the standard deviation or distribution of intensity values along a portion of the roadway. During dry conditions, the distribution of intensity values may be close to a Gaussian model centered around an expected intensity value for a dry roadway. For example, no matter where the roadway is located, in dry conditions, the intensity values would be expected to cluster around similar values. If the distribution of the intensity values has shifted from close to that expected for dry conditions towards a lower intensity, the computer may determine that the roadway is darker. This may indicate that the roadway is wet, for example, if the roadway includes wet areas of the roadway such as puddles or wet tire tracks.
Flow diagram 1000 of
In a further example, the computer may identify an indication that the roadway is wet by detecting whether water is being kicked up by a vehicle's tires. For example, when the roadway surface is so wet that the water is being kicked up by the tires of the autonomous vehicle, the computer 110 may detect random laser points behind the wheels. In this regard, computer 110 may detect a cloud or clouds 1110, 1112 of random data points directly behind the rear tires 1120 and/or bumper 1130 of vehicle 101 as shown in
Flow diagram 1200 of
In yet another example, the location of the laser data points may be used by computer 110 to identify an indication that the roadway is wet. For example, when a roadway is very wet, such as where there is a deep puddle, the water may have a glassy appearance. In this regard, some of the water may act as a mirror reflecting laser light while some of the laser light may travel through the water and be reflected by the roadway surface. As shown in the example of
Flow diagram 1400 of
As indicated above, in addition to identifying indications that the roadway is wet, computer 110 may also identify indications of snowy conditions such as when the roadway is at least partially snow covered. For example, because of its color and reflectivity snow may have a higher intensity that than of the surface of the roadway. As noted above, during dry conditions, the distribution of intensity values may be close to a Gaussian model centered around an expected intensity value for a dry (non snow-covered) roadway. For example, no matter where the roadway is located, in dry conditions, the intensity values would be expected to cluster around similar values. Thus, if the distribution of the intensity values has shifted from close to that expected for dry conditions towards a higher intensity, the computer may determine that the roadway is brighter. This may indicate that the roadway is at least partially snow covered.
Flow diagram 1600 of
In another example, computer 110 may use the average intensity of the roadway to identify an indication of that the roadway is at least partially snow covered. For example, as shown in
Flow diagram 1800 of
In another example, computer 110 may use the average intensity of the world, in other words, areas including as well as outside of the roadway, to identify an indication of snowy conditions. Often, snow can collect beyond the bounds of the roadway before doing so on the roadway itself. For example, snow on the ground outside of the roadway (such as beyond the boundaries of the lanes, shoulders, curbs, etc.) may also be lighter, brighter, and more highly reflective than the roadway, shoulder, curbs, sidewalks, etc. The highly reflective, white snow may cause the laser intensity data collected from these areas to be significantly higher than expected from the detailed map information. Again, if the average intensity of the world outside of the roadway is at least some threshold value or number of standard deviations greater than the expected intensity as defined in the detailed map information, this may indicate that the world has at least some snow covering which is likely to also collect (or has already begun collecting) on the roadway.
Flow diagram 1900 of
In addition to, or instead of, considering brightness or intensity values, the computer 100 may also examine the elevation or height of the roadway as well as a threshold value to identify indications of road weather conditions. For example, if the elevation of the surface of the roadway is detected to be above that expected from the detailed map 136, this may indicate the accumulation of snow or flood waters on the roadway. In this regard, computer 110 may use data provided or generated by the various vehicle's sensors, including the lasers, radar, sonar, multiple cameras, etc., for an area of the roadway to determine the location of the roadway surface. This information may then be compared to the elevation expected at that particular area of roadway from the detailed map information. If the average height of the roadway is at least some threshold value or number of standard deviations above the expected elevation, this may indicate that the roadway is flooded or has a covering of accumulated snow.
Flow diagram 2100 of
In addition to snowy and wet road weather conditions, computer 110 may also detect indications of other road weather conditions such as fog. For example, radar sensors of the vehicle may penetrate fog very well, but the laser light may not. If computer 110 observes laser obstacles at a certain distance for some threshold period of time, but no radar targets, the computer 110 may identify an indication that the roadway is foggy.
In another example, in addition to, or instead of, the laser data, the computer 110 may rely on camera information to identify road weather conditions such as wet or snowy road conditions. For example, variations in the brightness, the brightness of the roadway, and the brightness of the world may also be determined from camera images. Similar to the examples described above with regard to the laser intensity data, images captured by cameras 320-21 may be processed to determine if the brightness or reflectivity of the roadway captured by the camera is some threshold value or number of standard deviations greater than that expected from the detailed map information. If so, these camera images may indicate that the roadway is wet, icy, snowy etc. In another example, camera images may be used to determine whether the tires of other vehicles with range of vehicle 101's cameras are kicking up water. If so, these camera images may indicate that the roadway is wet.
In addition to cameras and lasers, information from other sensors, such as the precipitation sensors described above, may also be used by the computer 110 to identify indications of road weather conditions. As noted above, the precipitation sensors may provide computer 110 with current information about precipitation, for example, by identifying amount of reflected light received at the photodetector or some other indicator of the detected amount of precipitation. As with the brightness, elevation, and intensity information, data from one or more precipitation sensors may also be used to identify an indication of a road weather condition such as current precipitation.
The brightness, intensity, elevation, and current precipitation information may also be combined with weather information received from computer 320. The received weather information may be used to identify a road weather condition, for example, if it has just precipitated or is currently precipitating in the area where the vehicle 101 is driving (or will soon be driving), computer 110 may determine that the roadway is likely to be wet, icy, etc.
As noted above, computer 110 may send and receive information with computer 320. In this regard, computer 320 may provide computer 110 with precipitation, cloud, and/or temperature information in the form of reports, radar information, forecasts, etc. This information may be received periodically, for example, every few minutes, hours, or as needed, or may be provided to computer 110 upon request. For example, if computer 110 identifies a road weather condition, such as in the examples described above, the computer 110 may transmit a request including information about the current location of vehicle 101 over a network to computer 320. In response to the request, computer 320 may provide computer 110 with the relevant weather related information for the current location of the vehicle 101. In another example, computer 110 may simply send the aforementioned requests periodically. In yet another example, computer 320 may broadcast information to autonomous vehicles within certain geographic areas as it becomes pertinent. This may be especially useful where the weather related information is providing severe weather warnings, etc.
The various identified indications of road weather conditions may be processed as a set of inputs by computer 110 in order to estimate the driving conditions of the roadway along which the vehicle is traveling. In one example, a Bayesian estimate may be used to determine the current state of the roadway surface. In this regard, the vehicle may determine whether it is currently or has just been precipitating (raining, sleeting, snowing, etc.) and how this weather is affecting the conditions of the roadway (puddles, wet, icy, snow covered, mixed, etc.).
This estimate may then be used by computer 110 to make various driving decisions. For example, if a road weather condition exists, the computer 110 may use the estimate to make more informed determinations for safe maneuvering of vehicle 101. For example, computer 110 may continue to navigate vehicle 110, but also increase the distances between vehicle 101 and other objects on the roadway, slow vehicle 101 down, leave the particular roadway, or move to a particular lane. For example, computer 101 may move to a center lane or side lane that is expected to be less affected by the road weather conditions. In another example, under certain conditions certain driving features may be disabled or altered. For example, if it is raining, the vehicle's lane changing and passing capabilities may be disabled. Similarly, if it is raining or snowing, the braking profiles may be adjusted, such as to apply the brakes periodically to keep them active.
In addition or as an alternative to making a driving decision, the road weather conditions and/or road surface conditions are determined to be extreme or dangerous, the computer 110 may send an alert to the driver. The alert may request the driver take control of the vehicle 101. The alert may be an aural signal, a visual signal, a haptic or tactile and/or any other signal that gets the attention of the driver. The alert may also request that the driver take control of the vehicle. In this example, after alerting the driver, the computer 110 may receive input from the driver. For example, the driver may take control of the vehicle 101 by turning the steering wheel, applying the brake, applying the accelerator, pressing an emergency shut-off, etc. If the computer 110 does not receive input (or sufficient input) from the driver, the computer 110 may navigate the vehicle 101 to the side of the road (i.e., pull the vehicle over), reduce the speed of the vehicle 101, or bring the vehicle 101 to a complete stop.
Flow diagram 2200 of
As these and other variations and combinations of the features discussed above can be utilized without departing from the subject matter as defined by the claims, the foregoing description of exemplary implementations should be taken by way of illustration rather than by way of limitation of the subject matter as defined by the claims. It will also be understood that the provision of the examples described herein (as well as clauses phrased as “such as,” “e.g.”, “including” and the like) should not be interpreted as limiting the claimed subject matter to the specific examples; rather, the examples are intended to illustrate only some of many possible aspects.
Zhu, Jiajun, Urmson, Christopher Paul, Montemerlo, Michael Steven
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
5699056, | Dec 28 1994 | OMRON AUTOMOTIVE ELECTRONICS CO , LTD | Traffic information system |
5736957, | May 28 1996 | The Johns Hopkins University | Delay compensated doppler radar altimeter |
5991460, | Feb 12 1998 | TELEDYNE SCIENTIFIC & IMAGING, LLC | Navigation system using hybrid sensor correlation system |
6370475, | Oct 22 1997 | AMERICAN VEHICULAR SCIENCES LLC | Accident avoidance system |
6405132, | May 23 1994 | AMERICAN VEHICULAR SCIENCES LLC | Accident avoidance system |
6526352, | Jul 19 2001 | AMERICAN VEHICULAR SCIENCES LLC | Method and arrangement for mapping a road |
6606035, | Nov 17 2000 | KAPADIA, VIRAF | System and method for airport runway monitoring |
6768944, | Apr 09 2002 | AMERICAN VEHICULAR SCIENCES LLC | Method and system for controlling a vehicle |
6817740, | Dec 27 2000 | Koito Manufacturing Co., Ltd. | Vehicle headlamp apparatus |
7085637, | Oct 22 1997 | AMERICAN VEHICULAR SCIENCES LLC | Method and system for controlling a vehicle |
7184889, | Nov 13 2003 | Denso Corporation | Collision-prediction unit for a vehicle |
7202776, | Oct 22 1997 | AMERICAN VEHICULAR SCIENCES LLC | Method and system for detecting objects external to a vehicle |
7271880, | Jun 20 2003 | Denso Corporation | Object recognition apparatus designed to detect adhesion of dirt to radar |
7272474, | Mar 31 2004 | Carnegie-Mellon University | Method and system for estimating navigability of terrain |
7317987, | Mar 22 2002 | Vehicle navigation, collision avoidance and control system | |
7493202, | Nov 12 2004 | JOYSON SAFETY SYSTEMS JAPAN K K | Vehicle safety control system by image processing |
7668369, | Apr 26 2006 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Using camera metadata to classify images into scene type classes |
7765050, | Oct 07 2004 | Ford Global Technologies, LLC | Traction control system and method for a vehicle |
7793230, | Nov 30 2006 | Microsoft Technology Licensing, LLC | Search term location graph |
8306672, | Sep 09 2009 | GM Global Technology Operations LLC | Vehicular terrain detection system and method |
8421859, | Apr 24 2008 | GM Global Technology Operations LLC | Clear path detection using a hierachical approach |
8436902, | Aug 30 2007 | VALEO Schalter und Sensoren GmbH | Method and system for weather condition detection with image-based road characterization |
8473143, | Dec 02 2008 | Caterpillar Inc. | System and method for accident logging in an automated machine |
8473144, | Oct 30 2012 | GOOGLE LLC | Controlling vehicle lateral lane positioning |
20040107042, | |||
20050143889, | |||
20070049260, | |||
20080129541, | |||
20100100360, | |||
20100114416, | |||
20100217529, | |||
20110071761, | |||
20110074955, | |||
20110126617, | |||
20120069181, | |||
20120081544, | |||
20120083982, | |||
20120140039, | |||
20120158207, | |||
20120203428, | |||
20130127642, | |||
DE102007053721, | |||
JP2004274431, | |||
JP2006308514, | |||
JP20112420, | |||
KR20050101726, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Sep 20 2012 | Google, Inc. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Date | Maintenance Schedule |
Mar 17 2018 | 4 years fee payment window open |
Sep 17 2018 | 6 months grace period start (w surcharge) |
Mar 17 2019 | patent expiry (for year 4) |
Mar 17 2021 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 17 2022 | 8 years fee payment window open |
Sep 17 2022 | 6 months grace period start (w surcharge) |
Mar 17 2023 | patent expiry (for year 8) |
Mar 17 2025 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 17 2026 | 12 years fee payment window open |
Sep 17 2026 | 6 months grace period start (w surcharge) |
Mar 17 2027 | patent expiry (for year 12) |
Mar 17 2029 | 2 years to revive unintentionally abandoned end. (for year 12) |