Adjustment of vehicle sensor visual field volume
By receiving sensor data and adjusting the sensor's operating scene volume, the problem of the sensor's reliability decrease in changing environments in autonomous driving vehicles is solved, and high reliability and safety detection of sensors under different conditions is achieved.
Patent Information
- Application Number
- JP2024160075
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2020-12-18
- Filing Date
- 2024-09-17
- Publication Date
- 2025-02-12
- Estimated Expiration
- 2040-12-18
AI Technical Summary
The prior art is difficult to adjust the operating scenarios of sensors in an autonomous driving vehicle in real time to adapt to changing environmental conditions, resulting in a decrease in sensor data reliability and affecting the accuracy and safety of object detection.
By receiving sensor data and determining parameter changes, the sensor's operating scene volume is dynamically adjusted to adapt to environmental changes, ensuring that the sensor maintains high reliability under different conditions.
Real-time adaptation of sensors in changing environments is achieved, high reliability and safety of object detection is ensured, and the operational stability of autonomous driving vehicles is improved.
Smart Images

Figure 2025020098000001_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This disclosure claims priority to U.S. Nonprovisional Application No. 17 / 126,231, filed December 18, 2020, which claims priority to U.S. Provisional Application No. 62 / 952,879, filed December 23, 2019, the contents of which are incorporated herein by reference in their entirety. This disclosure is also related to U.S. Patent Application No. 17 / 002,092, filed August 25, 2020, which claims priority to U.S. Provisional Application No. 62 / 952,879, the contents of which are incorporated herein by reference in their entirety. [Background technology]
[0002] A vehicle may be configured to operate in an autonomous mode in which the vehicle navigates through an environment with little or no input from a driver. Such an autonomous vehicle may include one or more systems (e.g., sensors and associated computing devices) configured to detect information about the environment in which the vehicle operates. The vehicle and its associated computer-implemented controller use the detected information to navigate through the environment. For example, if the system detects that the vehicle is approaching an obstacle, as determined by the computer-implemented controller, the controller adjusts directional control of the vehicle to cause the vehicle to navigate around the obstacle.
[0003] For example, an autonomous vehicle may include lasers, sonar, radar, cameras, thermal imagers, and other sensors that scan and / or record data about 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 aids in the operation of the autonomous vehicle. Summary of the Invention
[0004] In one example, the disclosure provides a method. The method includes receiving sensor data associated with a target object in an environment of the autonomous vehicle during a first environmental condition from one or more sensors associated with the autonomous vehicle, where at least one sensor of the one or more sensors is configurable to be associated with one of a plurality of operational field of view volumes, each operational field of view volume representing a space in which the at least one sensor is expected to detect an object external to the autonomous vehicle with a minimum level of confidence. The method also includes determining at least one parameter associated with the target object based on the sensor data. The method also includes determining a degradation of the at least one parameter between the sensor data and past sensor data, where the past sensor data is associated with the target object in the environment during a second environmental condition different from the first environmental condition. The method also includes adjusting the operational field of view volume of the at least one sensor to a different operational field of view volume of the plurality of operational field of view volumes based on the determined degradation of the at least one parameter.
[0005] In another example, the disclosure provides a system for controlling operation of an autonomous vehicle. The system includes one or more sensors, at least one of the one or more sensors configurable to be associated with one of a plurality of operational field of view volumes, each operational field of view volume representing a space in which the at least one sensor is expected to detect an object external to the autonomous vehicle with a minimum level of confidence. The system also includes one or more processors coupled to the one or more sensors. The system also includes a memory coupled to the one or more processors, the memory having instructions stored therein that, when executed by the one or more processors, cause the one or more processors to perform operations. The operations include receiving sensor data from the one or more sensors associated with a target object in an environment of the autonomous vehicle during a first environmental condition. The operations also include determining at least one parameter associated with the target object based on the sensor data. The operations also include determining a degradation of the at least one parameter between the sensor data and past sensor data, the past sensor data being associated with the target object in the environment during a second environmental condition different from the first environmental condition. The operations also include adjusting an operational field volume of the at least one sensor to a different operational field volume of the plurality of operational field volumes based on the determined degradation of the at least one parameter.
[0006] In another example, the disclosure provides a non-transitory computer-readable storage medium having program instructions stored thereon that, when executed by one or more processors, cause the one or more processors to perform operations. The operations include receiving sensor data from one or more sensors associated with the autonomous vehicle associated with a target object in an environment of the autonomous vehicle during a first environmental condition, where at least one sensor of the one or more sensors is configurable to be associated with one of a plurality of operational field of view volumes, where each operational field of view volume represents a space in which the at least one sensor is expected to detect an object external to the autonomous vehicle with a minimum level of confidence. The operations also include determining at least one parameter associated with the target object based on the sensor data. The operations also include determining a degradation of the at least one parameter between the sensor data and past sensor data, where the past sensor data is associated with the target object in the environment during a second environmental condition different from the first environmental condition. The operations also include adjusting the operational field of view volume of the at least one sensor to a different operational field of view volume of the plurality of operational field of view volumes based on the determined degradation of the at least one parameter.
[0007] These and other aspects, advantages, and alternatives will become apparent to those skilled in the art from a reading of the following detailed description, where appropriate with reference to the accompanying drawings. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a functional block diagram illustrating aspects of an exemplary autonomous vehicle. [Diagram 2] FIG. 1 illustrates an exterior view of an exemplary autonomous vehicle. [Diagram 3] FIG. 1 is a conceptual diagram of wireless communication between various computing systems associated with an autonomous vehicle. [Figure 4] 1 shows an example of a set of sensor fields of view. [Diagram 5] An exemplary method is shown. [Figure 6A-6B]1 illustrates an exemplary image used to adjust the working field of view volume of at least one sensor. [Figure 7A-7B] 1 illustrates an exemplary image used to adjust the working field of view volume of at least one sensor. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Exemplary methods, devices, and systems are described herein. It should be understood that the words "example" and "exemplary" are used herein to mean "serving as an example, instance, or illustration." Any embodiment or feature described herein as "example" or "exemplary" should not necessarily be construed as preferred or advantageous over other embodiments or features. Other embodiments may be utilized, and other changes may be made, without departing from the scope of the subject matter presented herein.
[0010] Accordingly, the exemplary embodiments described herein are not meant to be limiting, and the aspects of the present disclosure, as generally described herein and illustrated in the Figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are contemplated herein.
[0011] Moreover, unless the context indicates otherwise, the features illustrated in each figure may be used in combination with one another, and the figures should therefore generally be viewed as partial aspects of one or more overall embodiments, with the understanding that not all of the illustrated features are necessarily required for each embodiment.
[0012] I. Overview Many vehicles include various sensing systems that aid in the navigation and control of the vehicle. Some vehicles may operate in a fully autonomous mode where no human interaction is used for operation, a semi-autonomous mode where little human interaction is used for operation, or a human-operated mode where a human operates the vehicle and sensors may assist the human. Sensors may be used to provide information about the area around the vehicle. This information may be used to identify characteristics of the roadway and other objects (other vehicles, pedestrians, etc.) near the vehicle.
[0013] The vehicle's sensor system may include, for example, a light detection and ranging (LIDAR) system and a radar system. LIDAR uses laser pulses to measure the distance and speed of objects that reflect the laser light. Radar uses radio waves to measure the distance and speed of objects that reflect the radio waves. Data from the LIDAR and radar systems, possibly along with data from other sensors in the vehicle's sensor system, such as cameras, may be used to determine where objects are located in the vehicle's surrounding environment. A particular LIDAR sensor, radar sensor, and / or camera may each have a field of view. The field of view of a sensor may include one or more angular regions in which the sensor can detect objects, and an associated range that corresponds to the maximum distance from the sensor at which the sensor can reliably detect an object in its field of view. In some cases, the associated range may vary with various azimuth / elevation angles within the field of view. The values of parameters that define this field of view, such as range, azimuth, and elevation values, together form a volume that may be referred to as a field of view volume or an operational field of view volume.
[0014] The operational field of view volume of a particular sensor can be considered an accurate representation of the space in which that particular sensor can be expected to detect objects external to the autonomous vehicle with a minimum confidence level (e.g., a confidence level indicative of high confidence). In other words, one or more processors of the vehicle system (e.g., a chip controlling the operation of the sensor, or a processor of the vehicle's control system) can be configured to confidently rely on sensor data acquired within the space defined by the operational field of view volume of the sensor. For example, a processor associated with a particular sensor may be configured to associate a higher confidence level (e.g., higher than a predefined confidence threshold level) with objects or other information detected at range, azimuth, and / or elevation angles within that sensor's operational field of view volume, and a lower confidence level (e.g., below a predefined confidence threshold level) with objects or other information detected at range, azimuth, and / or elevation angles outside that operational field of view volume.
[0015] A vehicle may be exposed to a variety of conditions during operation, such as changes in weather (fog, rain, snow, etc.), changes in time of day, changes in speed limits, changes in terrain or other geographic conditions, changes in residential location (e.g., urban, suburban, rural), changes in the number of other vehicles or objects in proximity to the vehicle, other changes outside the vehicle, and / or changes within the vehicle's systems (e.g., sensor errors, sensor surface cleanliness, vehicle subsystem failures, etc.). At any given time, one or more of these or other conditions may be present in the vehicle's operating environment. In the context of this disclosure, the "operating environment" of a vehicle may be or include one or more conditions inside and / or outside the vehicle that may change over time, including, but not limited to, the conditions listed above and other conditions described elsewhere in this disclosure. Thus, a change in one or more of such conditions may cause the vehicle's operating environment to change.
[0016] In some embodiments, the operating field of view volume of at least one of the sensors of the vehicle may be adjusted based on the operational design domain (ODD) of the vehicle. The ODD is defined by or includes conditions under which a given vehicle or other driving automation system or its functions are specifically designed to operate. Such conditions include, but are not limited to, environmental, geographic, and time-of-day constraints, and / or the presence or absence of specific traffic or road features required. A vehicle may have multiple ODDs, and each ODD may include at least one of environmental conditions, geographic conditions, time-of-day conditions, traffic conditions, or road conditions. At a certain point in time, the vehicle system may associate the vehicle with a first ODD and thus operate the vehicle system in a particular manner corresponding to the first ODD. At a later point in time, the vehicle system may detect a change in the vehicle's operating environment, in which case the vehicle system may accordingly associate the vehicle with a second, different ODD and thus operate the vehicle system in a different manner corresponding to the second ODD.
[0017] A particular sensor may be configured to be associated with one of multiple operational field of view volumes. The multiple operational field of view volumes may be specific to a particular sensor or may be associated with multiple sensors of the same type (e.g., LIDAR, camera, or radar).
[0018] In some examples, the multiple operational field volumes may be a finite / predetermined number of operational field volumes, each of which may be mapped to a corresponding operating environment and / or ODD in the vehicle system's memory (e.g., in a table). Additionally or alternatively, any one or more of the multiple operational field volumes for a particular sensor or sensors may be determined in real-time in response to a trigger condition (e.g., a change in the operating environment). Additionally or alternatively, any predetermined operational field volume associated with a particular sensor or sensors may be compared to newly acquired sensor data to determine whether the predetermined operational field volume still accurately represents the extent to which the sensor should be relied upon for a particular operating environment.
[0019] Some example methods and systems for adjusting the operating field of view volume of a sensor based on the operating environment of an autonomous vehicle (e.g., based on the vehicle system detecting the operating environment or detecting a change from one operating environment to another), as well as some example methods and systems for associating a vehicle with a particular ODD based on the operating environment of an autonomous vehicle, are described in U.S. patent application Ser. No. 17 / 002,092, the entirety of which is incorporated herein by reference.
[0020] The present disclosure provides systems and methods for adjusting an operational field of view volume of one or more of the vehicle's sensors using parameters associated with recognizable target objects in the vehicle's environment, parameters that can be determined from sensor data associated with the target objects. In particular, a change from a first environmental condition (e.g., sunny weather) to a second environmental condition (e.g., foggy or snowy weather) can degrade at least one of such parameters. Thus, the disclosed systems and methods can adjust the operational field of view volume of at least one of the vehicle's sensors to a different one of a plurality of operational field of view volumes based on the parameter degradation, thereby allowing the vehicle to operate using an operational field of view volume that accurately represents a space in which the sensor can reliably detect objects when the second environmental condition is present. The disclosed methods can occur in real time or near real time as the vehicle system compares newly acquired sensor data associated with the target object to past sensor data associated with the target object.
[0021] As an example, a vehicle's LIDAR sensor may have an operational field of view volume for clear weather and daytime use, which may include a range of 200 meters or more. During these environmental conditions, the vehicle may determine LIDAR intensity from a laser beam reflected from a distant target object, such as a utility pole. However, later in the day, in heavy foggy conditions, the LIDAR intensity from the same target object may degrade. Based on this degradation, the vehicle system may adjust the operational field of view volume of at least one of the vehicle's LIDAR sensors to an operational field of view volume that includes a range of, for example, 100 meters.
[0022] The present disclosure also provides operations for adjusting the operational field of view volume of one type of sensor (e.g., a camera) based on degraded parameters determined from sensor data received from another type of sensor (e.g., a LIDAR sensor) and vice versa.
[0023] Implementations of the disclosed systems and methods advantageously enable vehicle systems to adjust received sensor data in real time to dynamically adapt to changing conditions while in motion, and enable the vehicle to accurately and reliably continuously detect objects in its environment. The disclosed systems and methods also provide an efficient and reliable way to determine accurate adjustments to the sensor's operating field of view volume using known target objects in the vehicle's environment.
[0024] II. Exemplary Systems and Devices Exemplary systems and devices will now be described in more detail. In general, the embodiments disclosed herein can be used in any system that includes one or more sensors that scan the system's environment. Illustrative embodiments described herein include vehicles employing sensors such as LIDAR, radar, sonar, cameras, etc. However, example systems may also be implemented as or take the form of other devices, such as robotic devices, industrial systems (e.g., assembly lines, etc.), or mobile communication systems or devices, among other possibilities.
[0025] The term "vehicle" is construed broadly herein to encompass any moving object including, for example, an aircraft, watercraft, spacecraft, automobile, truck, van, semi-trailer truck, motorcycle, golf cart, off-road vehicle, indoor robotic device, warehouse transporter, forklift, tractor, or farm vehicle, as well as rail-riding vehicles such as roller coasters, trolleys, trams, trains, etc. Some vehicles may operate in a fully autonomous mode where no human interaction is used for operation, a semi-autonomous mode where no human interaction is used for operation, or a human operated mode where a human operates the vehicle and sensors may assist the human.
[0026] In an exemplary embodiment, an example vehicle system may include one or more processors, one or more forms of memory, one or more input devices / interfaces, one or more output devices / interfaces, and machine-readable instructions that, when executed by the one or more processors, cause the system to perform various functions, tasks, capabilities, etc. described above. Example systems within the scope of the present disclosure are described in more detail below.
[0027] FIG. 1 is a functional block diagram illustrating a vehicle 100 according to an exemplary embodiment. The vehicle 100 may be configured to operate in a fully or partially autonomous mode and thus may be referred to as an "autonomous vehicle." The vehicle may also be configured to be operated by a human but provide information to the human via the vehicle's sensing systems. For example, the computing system 111 may control the vehicle 100 during the autonomous mode via control instructions to the control system 106 of the vehicle 100. The computing system 111 may receive information from one or more sensor systems 104 and automatically base one or more control processes on the received information (e.g., setting a direction to avoid a detected obstacle, etc.).
[0028] Autonomous vehicle 100 may be fully autonomous or partially autonomous. In a partially autonomous vehicle, some functions may be optionally controlled manually (e.g., by a driver), either temporarily or permanently. Additionally, a partially autonomous vehicle may be configured to switch between a fully manual mode of operation and a partially autonomous and / or fully autonomous mode of operation.
[0029] Vehicle 100 includes a propulsion system 102, a sensor system 104, a control system 106, one or more peripherals 108, a power source 110, a computing system 111, and a user interface 112. Vehicle 100 may include more or fewer subsystems, and each subsystem may optionally include multiple components. Additionally, each of the subsystems and components of vehicle 100 may be interconnected and / or in communication with each other. Thus, one or more functions of vehicle 100 described herein may, optionally, be divided among additional functional or physical components or combined into fewer functional or physical components. In some further examples, additional functional and / or physical components may be added to the example illustrated by FIG. 1.
[0030] The propulsion system 102 may include components operable to provide powered motion to the vehicle 100. In some embodiments, the propulsion system 102 includes an engine / motor 118, an energy source 120, a transmission 122, and wheels / tires 124. The engine / motor 118 converts the energy source 120 into mechanical energy. In some embodiments, the propulsion system 102 may optionally include one or both of an engine and / or a motor. For example, a gas-electric hybrid vehicle may include both a gasoline / diesel engine and an electric motor.
[0031] Energy source 120 represents a source of energy, such as electrical and / or chemical energy, which may, in whole or in part, power engine / motor 118. That is, engine / motor 118 may be configured to convert energy source 120 into mechanical energy to operate the transmission. In some embodiments, energy source 120 may include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries, capacitors, flywheels, regenerative braking systems, and / or other power sources, etc. Energy source 120 may also provide energy to other systems of vehicle 100.
[0032] The transmission 122 includes appropriate gears and / or mechanical elements suitable for transmitting mechanical power from the engine / motor 118 to the wheels / tires 124. In some embodiments, the transmission 122 includes a gearbox, a clutch, a differential, a drive shaft, and / or an axle, etc.
[0033] The wheels / tires 124 are arranged to stably support the vehicle 100 while providing frictional traction to a surface, such as a road, on which the vehicle 100 travels. Thus, the wheels / tires 124 are configured and arranged according to the nature of the vehicle 100. For example, the wheels / tires may be arranged as a unicycle, bicycle, motorcycle, tricycle, or car / truck four-wheel configuration. Other wheel / tire configurations are possible, such as those including six or more wheels. Any combination of wheels / tires 124 of the vehicle 100 may be operable to rotate differentially relative to other wheels / tires 124. The wheels / tires 124 may optionally include at least one wheel rigidly attached to the transmission 122 and at least one tire coupled to a corresponding wheel rim that contacts the riding surface. The wheels / tires 124 may include any combination of metal and rubber, and / or other materials or combinations of materials.
[0034] The sensor system 104 generally includes one or more sensors configured to detect information about the surrounding environment of the vehicle 100. For example, the sensor system 104 may include a global positioning system (GPS) 126, an inertial measurement unit (IMU) 128, a radar unit 130, a laser range finder / LIDAR unit 132, a camera 134, and / or a microphone 136. The sensor system 104 may also include sensors configured to monitor internal systems of the vehicle 100 (e.g., an O2 monitor, a fuel gauge, engine oil temperature, wheel speed sensors, etc.). One or more sensors included in the sensor system 104 may be configured to be actuated separately and / or collectively to modify the position and / or orientation of the one or more sensors.
[0035] The GPS 126 is a sensor configured to estimate the geographic position of the vehicle 100. To this end, the GPS 126 may include a transceiver operable to provide information regarding the position of the vehicle 100 relative to the Earth.
[0036] The IMU 128 may include any combination of sensors (e.g., accelerometers and gyroscopes) configured to sense changes in position and orientation of the vehicle 100 based on inertial acceleration.
[0037] Radar unit 130 may represent a system that utilizes radio signals to sense objects in the local environment of vehicle 100. In some embodiments, in addition to sensing objects, radar unit 130 and / or computer system 111 may be further configured to sense the speed and / or orientation of the objects. Radar unit 130 may include any antennas, waveguide networks, communication chips, and / or other components that facilitate radar operation.
[0038] Similarly, the laser rangefinder or LIDAR unit 132 may be any sensor configured to sense objects in an environment of the vehicle 100 using lasers. The laser rangefinder / LIDAR unit 132 may include one or more laser sources, a laser scanner, and one or more detectors, among other system components. The laser rangefinder / LIDAR unit 132 may be configured to operate in a coherent or incoherent detection mode (e.g., using heterodyne detection).
[0039] Camera 134 may include one or more devices configured to capture multiple images of the environment surrounding vehicle 100. Camera 134 may be a still camera or a video camera. In some embodiments, camera 134 may be mechanically movable, such as by rotating and / or tilting a platform on which the camera is mounted. In this manner, a control process of vehicle 100 may be implemented to control the movement of camera 134.
[0040] The sensor system 104 may also include a microphone 136. The microphone 136 may be configured to capture sounds from the environment surrounding the vehicle 100. In some cases, multiple microphones may be arranged as a microphone array, or possibly as a multiple microphone array.
[0041] The control system 106 is configured to control operations that regulate the acceleration of the vehicle 100 and its components. To effect the acceleration, the control system 106 may include a steering unit 138, a throttle 140, a braking unit 142, a sensor fusion algorithm 144, a computer vision system 146, a navigation / routing system 148, and / or an obstacle avoidance system 150, etc.
[0042] The steering unit 138 is operable to adjust the heading of the vehicle 100. For example, the steering unit may adjust an axis (or axes) of one or more wheels / tires 124 to effect a turn of the vehicle. The throttle 140 is configured, for example, to control the operating speed of the engine / motor 118, which in turn adjusts the forward acceleration of the vehicle 100 via the transmission 122 and the wheels / tires 124. The brake unit 142 slows the vehicle 100. The brake unit 142 may use friction to slow the wheels / tires 124. In some embodiments, the brake unit 142 inductively slows the wheels / tires 124 through a regenerative braking process, converting the kinetic energy of the wheels / tires 124 into electrical current.
[0043] The sensor fusion algorithm 144 is an algorithm (or a computer program product storing an algorithm) configured to accept data from the sensor system 104 as input. The data may include, for example, data representing information sensed by sensors of the sensor system 104. The sensor fusion algorithm 144 may include, for example, a Kalman filter, a Bayesian network, etc. The sensor fusion algorithm 144 provides an assessment regarding the vehicle's surroundings based on the data from the sensor system 104. In some embodiments, the assessment may include an assessment of individual objects and / or features in the vehicle's 100 surroundings, an assessment of a particular situation, and / or an assessment of potential interference between the vehicle 100 and features in the environment based on the particular situation (e.g., predicting a collision and / or impact, etc.).
[0044] Computer vision system 146 may process and analyze images captured by camera 134 to identify objects and / or features in the vehicle 100's surrounding environment. Detected features / objects may include traffic signals, road boundaries, other vehicles, pedestrians, and / or obstacles, etc. Computer vision system 146 may optionally employ object recognition algorithms, multi-view 3D reconstruction (SFM: Structure From Motion) algorithms, video tracking, and / or available computer vision techniques to classify and / or identify detected features / objects. In some embodiments, computer vision system 146 may be additionally configured to map the environment, track perceived objects, estimate object speeds, etc.
[0045] The navigation and routing system 148 is configured to determine a driving path for the vehicle 100. For example, the navigation and routing system 148 can be set according to user input, e.g., via the user interface 112, to determine a series of speeds and indicated headings for moving the vehicle along a path that substantially avoids perceived obstacles while generally moving the vehicle forward along a roadway-based path to a final destination. The navigation and routing system 148 can additionally be configured to dynamically update the driving path while the vehicle 100 is operating based on perceived obstacles, traffic patterns, weather / road conditions, etc. In some embodiments, the navigation and routing system 148 can be configured to incorporate data from the sensor fusion algorithm 144, the GPS 126, and one or more predefined maps to determine a driving path for the vehicle 100.
[0046] Obstacle avoidance system 150 may represent a control system configured to identify, evaluate, and avoid or otherwise navigate around potential obstacles in the vehicle's 100 environment. For example, obstacle avoidance system 150 may effect changes to the vehicle's navigation by operating one or more subsystems in control system 106 to perform a change of course maneuver, a turning maneuver, a braking maneuver, etc. In some embodiments, obstacle avoidance system 150 is configured to automatically determine feasible ("available") obstacle avoidance maneuvers based on surrounding traffic patterns, road conditions, etc. For example, obstacle avoidance system 150 may be configured to prevent a change of course maneuver from being performed if other sensor systems detect vehicles, construction barricades, other obstacles, etc., in the immediate area of the vehicle to be turned into. In some embodiments, obstacle avoidance system 150 may automatically select an available maneuver that maximizes the safety of occupants within the vehicle. For example, obstacle avoidance system 150 may select an avoidance maneuver that is predicted to minimize the acceleration inside the vehicle 100.
[0047] Vehicle 100 also includes peripherals 108 configured to enable interaction between vehicle 100 and external sensors, other vehicles, other computer systems, and / or users, such as occupants of vehicle 100. For example, peripherals 108 for receiving information from occupants, external systems, etc. may include a wireless communication system 152, a touch screen 154, a microphone 156, and / or a speaker 158.
[0048] In some embodiments, the peripherals 108 function to receive inputs for a user of the vehicle 100 to interact with the user interface 112. To this end, the touchscreen 154 can both provide information to the user of the vehicle 100 and convey information from the user indicated via the touchscreen 154 to the user interface 112. The touchscreen 154 can be configured to sense both touch location and touch gestures from a user's finger (or stylus, etc.) via capacitive sensing, resistive sensing, optical sensing, surface acoustic processes, etc. The touchscreen 154 can sense finger movement in a direction parallel or planar to the touchscreen surface, normal to the touchscreen surface, or both, and can also sense the level of pressure applied to the touchscreen surface. Occupants of the vehicle 100 can also utilize a voice command interface. For example, the microphone 156 can be configured to receive audio (e.g., voice commands or other audio input) from the user of the vehicle 100. Similarly, the speaker 158 can be configured to output audio to the user of the vehicle 100.
[0049] In some embodiments, the peripherals 108 function to enable communication between the vehicle 100 and external systems, such as devices, sensors, other vehicles in the vehicle's environment, and / or controllers, servers, etc., located physically remote from the vehicle that provide useful information about the vehicle's surroundings, such as traffic information, weather information, etc. For example, the wireless communication system 152 can wirelessly communicate with one or more devices directly or through a communication network. The wireless communication system 152 may optionally use 3G cellular communications, such as CDMA, EVDO, GSM / GPRS, or 4G cellular communications, such as WiMAX or LTE. Additionally or alternatively, the wireless communication system 152 may communicate with a wireless local area network (WLAN), for example, using WiFi. In some embodiments, the wireless communication system 152 may communicate directly with the devices, for example, using an infrared link, Bluetooth, and / or ZigBee. The wireless communication system 152 may include one or more dedicated short-range communication (DSRC) devices, which may include public and / or private data communications between the vehicles and / or roadside gas stations. Other wireless protocols for transmitting and receiving information embedded in signals, such as various vehicular communication systems, may also be employed by wireless communication system 152 within the context of this disclosure.
[0050] As described above, the power source 110 may provide power to components of the vehicle 100, such as electronics included in the peripherals 108, the computing system 111, the sensor system 104, etc. The power source 110 may include, for example, a lithium-ion battery or a lead-acid battery that is rechargeable to store and discharge electrical energy to the various powered components. In some embodiments, one or more banks of batteries may be configured to provide the power. In some embodiments, the power source 110 and the energy source 120 may be implemented together, such as in some all-electric vehicles.
[0051] Many or all of the functions of vehicle 100 may be controlled via a computing system 111 that receives inputs from sensor system 104, peripherals 108, etc., and communicates appropriate control signals to propulsion system 102, control system 106, peripherals, etc., resulting in automated operation of vehicle 100 based on the vehicle's 100 surroundings. Computing system 111 includes at least one processor 113 (which may include at least one microprocessor) that executes instructions 115 stored on a non-transitory computer-readable medium, such as data storage 114. Computing system 111 may also represent multiple computing devices that function to provide distributed control of individual components or subsystems of vehicle 100.
[0052] In some embodiments, data storage 114 includes instructions 115 (e.g., program logic) executable by processor 113 to perform various functions of vehicle 100, including those described above in connection with Figure 1. Data storage 114 may also include additional instructions, including instructions for transmitting data to, receiving data from, interacting with, and / or controlling one or more of propulsion system 102, sensor system 104, control system 106, and peripherals 108.
[0053] In addition to instructions 115, data storage 114 may store data such as road maps, route information, etc., as map data 116. Such information may be used by vehicle 100 and computer system 111 to select available roads to a final destination, interpret information from sensor system 104, etc., during operation of vehicle 100 in autonomous, semi-autonomous, and / or manual modes.
[0054] The vehicle 100 and associated computer system 111 provide information to and / or receive input from a user of the vehicle 100, such as an occupant inside the vehicle 100. The user interface 112 may accordingly include one or more input / output devices within the set of peripherals 108, such as a wireless communication system 152, a touch screen 154, a microphone 156, and / or a speaker 158, to enable communication between the computer system 111 and the occupant of the vehicle.
[0055] The computing system 111 controls the operation of the vehicle 100 based on inputs received from various subsystems (e.g., the propulsion system 102, the sensor system 104, and / or the control system 106) indicative of vehicle and / or environmental conditions, as well as inputs received from the user interface 112 indicative of user preferences. For example, the computing system 111 may utilize inputs from the control system 106 to control the steering unit 138 to avoid obstacles detected by the sensor system 104 and the obstacle avoidance system 150. The computing system 111 may be configured to control many aspects of the vehicle 100 and its subsystems. However, generally, provisions are made for manually overriding the automated controller-driven operation, such as in an emergency or simply in response to a user-activated override.
[0056] The components of vehicle 100 described herein may be configured to operate in interconnection with other components within or outside of their respective systems. For example, camera 134 may capture multiple images representing information about the environment of vehicle 100 while operating in an autonomous mode. The environment may include other vehicles, traffic lights, road signs, pavement markings, pedestrians, etc. Computer vision system 146 may classify and / or recognize various aspects within the environment based on object recognition models pre-stored in data storage 114 and / or by other techniques in cooperation with sensor fusion algorithms 144, computer system 111, etc.
[0057] Although vehicle 100 is described and illustrated in FIG. 1 as having various components of vehicle 100 integrated therein, such as wireless communication system 152, computing system 111, data storage 114, and user interface 112, one or more of these components may optionally be separately mounted or associated with vehicle 100. For example, data storage 114 may exist partially or completely separate from vehicle 100, such as, for example, in a cloud-based server. Thus, one or more of the functional elements of vehicle 100 may be implemented in the form of separate or co-located device elements. The functional device elements that make up vehicle 100 may generally be communicatively coupled together in a wired and / or wireless manner.
[0058] Figure 2 illustrates an example vehicle 200 that may include some or all of the features described in connection with vehicle 100 with reference to Figure 1. Vehicle 200 is illustrated in Figure 2 as a four-wheeled vehicle for illustrative purposes, although the disclosure is not so limited. For example, vehicle 200 may represent a truck, a van, a semi-trailer truck, a motorcycle, a golf cart, an off-road vehicle, an agricultural vehicle, or the like.
[0059] The example vehicle 200 includes a sensor unit 202, a first LIDAR unit 204, a second LIDAR unit 206, a first radar unit 208, a second radar unit 210, a first LIDAR / radar unit 212, a second LIDAR / radar unit 214, and two additional locations 216, 218 where one or more sensors, such as radar units, LIDAR units, laser range finder units, and / or other types, may be located on the vehicle 200. Each of the first LIDAR / radar unit 212 and the second LIDAR / radar unit 214 may take the form of a LIDAR unit, a radar unit, or both.
[0060] Further, the example vehicle 200 may include any of the components described in connection with the vehicle 100 of FIG 1. The first and second radar units 208, 210 and / or the first and second LIDAR units 204, 206 may actively scan their surroundings for potential obstacles and may be similar to the radar unit 130 and / or the laser range finder / LIDAR unit 132 of the vehicle 100. Additionally, the first LIDAR / radar unit 212 and the second LIDAR / radar unit 214 may actively scan their surroundings for potential obstacles and may be similar to the radar unit 130 and / or the laser range finder / LIDAR unit 132 of the vehicle 100.
[0061] In some examples, the LIDAR unit may be one of two different types of LIDAR units. The first type of LIDAR unit may be a LIDAR capable of continuously scanning the entire area of the LIDAR unit's field of view. The second type of LIDAR unit may be a LIDAR capable of scanning a particular area of the LIDAR unit's field of view when steered to do so. The first type of LIDAR unit may have a shorter range than the second type of LIDAR unit. The second type of LIDAR unit may have a narrower field of view in operation compared to the first LIDAR unit. In some examples, one or more of the designated LIDAR units of the vehicle 200 may include one or both types of LIDAR units. For example, the LIDAR unit 204 mounted on the top of the vehicle may include both types of LIDAR units or may include a LIDAR unit capable of both continuous and steered scanning. In one example, the second type LIDAR unit may have a field of view during operation that is between 5 and 15 degrees wide in the horizontal plane and between 5 and 25 degrees wide in the vertical plane.
[0062] The sensor unit 202 includes one or more sensors mounted on top of the vehicle 200 and configured to detect information about the vehicle's 200 surrounding environment and output an indication of the information. For example, the sensor unit 202 may include any combination of cameras, radar, LIDAR, range finders, acoustic sensors, and weather-related sensors, such as barometers and humidity sensors. The sensor unit 202 may include one or more movable mounts that may be operable to adjust the orientation of one or more sensors in the sensor unit 202. In one embodiment, the movable mounts may include a rotating platform that can scan the sensors to obtain information from each direction around the vehicle 200. In another embodiment, the movable mounts of the sensor unit 202 may be movable in a scanning manner within a certain range of angles and / or orientations. The sensor unit 202 may be mounted on the roof of the vehicle, although other mounting locations are also possible. In addition, the sensors of the sensor unit 202 may be distributed in various locations and need not be collocated in one location. Some possible sensor types and mounting locations include two additional locations 216, 218. Additionally, each sensor of the sensor unit 202 may be configured to be moved or scanned in conjunction with or independently of the other sensors of the sensor unit 202.
[0063] In one example configuration, one or more radar scanners (e.g., first and second radar units 208, 210) may be located near the rear of vehicle 200 to actively scan the area behind vehicle 200 for radio-reflective objects. Similarly, first LIDAR / radar unit 212 and second LIDAR / radar unit 214 may be mounted near the front of the vehicle to actively scan the area in front of the vehicle. The radar scanners may be positioned, for example, in a location suitable for illuminating an area including the forward path of vehicle 200 without being blocked by other features of vehicle 200. For example, the radar scanners may be positioned to be embedded and / or mounted in or near a front bumper, front headlights, cowl, and / or hood, etc. Additionally, one or more additional radar scanning devices may be positioned to actively scan the sides and / or rear of vehicle 200 for radio reflective objects, for example, by including such devices in the rear bumper, side panels, rocker panels, and / or chassis.
[0064] In practice, each radar unit may be capable of scanning over a 90 degree beamwidth. If the radar units are located at the corners of the vehicle as shown by radar units 208, 210, 212, and 214, each radar unit may be able to scan a 90 degree field of view in the horizontal plane, providing the vehicle with a radar view of a full 360 degree area around the vehicle. In addition, the vehicle may also include two side-facing radar units. The side-facing radar units may be able to provide additional radar imaging when the other radar units are obstructed, such as when making a right turn without an arrow signal (i.e., a right turn when there is another vehicle in the lane to the left of the vehicle turning right).
[0065] 2, the vehicle 200 may include a wireless communication system. The wireless communication system may include a wireless transmitter and a wireless receiver that may be configured to communicate with devices external or internal to the vehicle 200. In particular, the wireless communication system may include a transceiver configured to communicate with other vehicles and / or computing devices, for example, in a vehicle communication system or road station. Examples of such vehicle communication systems include dedicated short-range communications (DSRC), radio frequency identification (RFID), and other communication standards proposed for intelligent transportation systems.
[0066] Vehicle 200 may optionally include a camera at a location inside sensor unit 202. The camera may be a light-sensitive instrument, such as a still camera, video camera, or the like, configured to capture multiple images of the environment of vehicle 200. To this end, the camera may be configured to detect visible light and may additionally or alternatively be configured to detect light from other parts of the spectrum, such as infrared or ultraviolet light. In one particular example, sensor unit 202 may include both an optical camera (i.e., a camera that captures human visible light) and an infrared camera. The infrared camera may be capable of capturing thermal images within the camera's field of view.
[0067] The camera may be a two-dimensional detector, and may optionally have a sensitivity range in three-dimensional space. In some embodiments, the camera may include a range detector configured to generate a two-dimensional image, for example, indicative of the distance from the camera to some points in the environment. To this end, the camera may use one or more range detection techniques. For example, the camera may provide range information by using structured light techniques, in which the vehicle 200 illuminates objects in the environment with a predetermined light pattern, such as a grid or checkerboard pattern, and uses the camera to detect reflections of the predetermined light pattern from the surroundings of the environment. Based on distortions in the reflected light pattern, the vehicle 200 may determine the distance to a point on the object. The predetermined light pattern may consist of infrared light, or other wavelengths of radiation suitable for such measurements. In some examples, the camera may be mounted inside the windshield of the vehicle 200. Specifically, the camera may be positioned to capture images from a forward-looking perspective relative to the orientation of the vehicle 200. Other mounting locations and viewing angles of the camera may also be used, and may be either inside or outside the vehicle 200. The camera may also have associated optics operable to provide an adjustable field of view. Furthermore, the camera may be mounted to the vehicle 200 with a moveable mount to vary the pointing angle of the camera, such as via a pan / tilt mechanism.
[0068] Additionally, the camera sensor may be configured with a rolling shutter. A rolling shutter generally repetitively samples a light sensor to obtain image data. The data from the camera sensor may form an image, multiple images, or a video. For example, in a conventional image sensor, a rolling shutter may repetitively sample one row of cells of a light sensor at a time. When sampling a camera sensor with a rolling shutter, fast moving objects in the field of view of the sensor may appear distorted. Such distortion is caused by the repetitive sampling. Because the line of cells is sampled repetitively, the object being imaged moves slightly between each sampling. Thus, each line is sampled at a slightly later time than the previous line. Due to the delay in sampling each line, objects having horizontal motion may have horizontal skew. For example, a vehicle moving across the field of view of the sensor may have horizontal skew and vertical compression (or expansion), which distorts the vehicle. This skew may be troublesome for processing based on the horizontal position of the object in the image. The present system may help identify camera distortions that may be caused by a rolling shutter.
[0069] 3 is a conceptual diagram of wireless communication between various computing systems associated with an autonomous vehicle, according to an example implementation. In particular, wireless communication may occur between a remote computing system 302 and the vehicle 200 over a network 304. Wireless communication may occur between a server computing system 306 and the remote computing system 302, and also between the server computing system 306 and the vehicle 200. During operation of the vehicle 200, the vehicle may send and receive data from both the server computing system 306 and the remote computing system 302 to assist in the operation of the vehicle 200. The vehicle 200 may communicate data related to the operation of the vehicle 200 and data from sensors of the vehicle 200 to the server computing system 306 and the remote computing system 302. Additionally, the vehicle 200 may receive operation instructions and / or data related to objects sensed by sensors of the vehicle from the server computing system 306 and the remote computing system 302.
[0070] Vehicle 200 may correspond to various types of vehicles capable of transporting passengers or objects between locations and may take the form of any one or more of the vehicles discussed above.
[0071] The remote computing system 302 may represent any type of device associated with remote assistance and operation techniques, including but not limited to those described herein. In an example, the remote computing system 302 may represent any type of device configured to (i) receive information related to the vehicle 200, (ii) provide an interface through which a human operator or a computer operator can then perceive the information and enter a response related to the information, and (iii) transmit the response to the vehicle 200 or to another device. The remote computing system 302 may take a variety of forms, such as a workstation, a desktop computer, a laptop, a tablet, a mobile phone (e.g., a smartphone), and / or a server. In some examples, the remote computing system 302 may include multiple computing devices operating together in a network configuration.
[0072] The remote computing system 302 may include one or more subsystems and components similar to or identical to those of the vehicle 200. At a minimum, the remote computing system 302 may include a processor configured to perform various operations described herein. In some implementations, the remote computing system 302 may also include a user interface including input / output devices such as a touch screen and speakers. Other examples are possible as well.
[0073] The network 304 represents an infrastructure that enables wireless communication between the remote computing system 302 and the vehicle 200. The network 304 also enables wireless communication between the server computing system 306 and the remote computing system 302, and between the server computing system 306 and the vehicle 200.
[0074] The location of the remote computing system 302 may vary within the examples. For example, the remote computing system 302 may be at a location remote from the vehicle 200 having wireless communication over the network 304. In another example, the remote computing system 302 may correspond to a computing device within the vehicle 200 that is separate from the vehicle 200 but that allows a human operator to interact with a passenger or driver of the vehicle 200. In some examples, the remote computing system 302 may be a computing device equipped with a touch screen operable by a passenger of the vehicle 200.
[0075] In some implementations, the operations described herein performed by remote computing system 302 may additionally or alternatively be performed by vehicle 200 (i.e., by any system or subsystem of vehicle 200). In other words, vehicle 200 may be configured to provide remote assistance mechanisms with which a driver or passengers of the vehicle can interact.
[0076] The server computing system 306 may be configured to wirelessly communicate with the remote computing system 302 and the vehicle 200 over the network 304 (or, in some cases, directly with the remote computing system 302 and / or the vehicle 200). The server computing system 306 may represent any computing device configured to receive, store, determine, and / or transmit information regarding the vehicle 200 and its remote assistance. As such, the server computing system 306 may be configured to perform any operation or a portion of such operations described herein as being performed by the remote computing system 302 and / or the vehicle 200. Some implementations of wireless communication related to remote assistance may utilize the server computing system 306, while others may not.
[0077] The server computing system 306 may include one or more subsystems and components similar to or identical to the subsystems and components of the remote computing system 302 and / or the vehicle 200, such as a processor configured to perform various operations described herein, as well as a wireless communication interface for receiving information from and providing information to the remote computing system 302 and the vehicle 200.
[0078] The various systems described above may perform various operations, and these operations and associated features will now be described.
[0079] In line with the above discussion, a computing system (e.g., the remote computing system 302, or perhaps the server computing system 306, or even a computing system local to the vehicle 200) may operate to use a camera to capture images of the autonomous vehicle's environment. Generally, at least one computing system can analyze the images and possibly control the autonomous vehicle.
[0080] In some implementations, to facilitate autonomous operation, a vehicle (e.g., vehicle 200) may receive data representative of objects in the environment in which the vehicle operates (also referred to herein as "environmental data") in a variety of ways. The vehicle's sensor system may provide the environmental data representative of the objects in the environment. For example, the vehicle may have a variety of sensors including cameras, radar units, laser range finders, microphones, radio units, and other sensors. Each of these sensors may communicate environmental data regarding the information each respective sensor receives to a processor within the vehicle.
[0081] In one example, the radar unit may be configured to transmit an electromagnetic signal that reflects off one or more objects near the vehicle. The radar unit may then capture the electromagnetic signal that has reflected off the object. The captured reflected electromagnetic signal may enable the radar system (or processing system) to make various determinations about the object that reflected the electromagnetic signal. For example, distances and locations to various reflecting objects may be determined. In some implementations, the vehicle may have two or more radars at different orientations. In practice, the vehicle has six different radar units. Furthermore, each radar unit may be configured to steer a beam to one of four different sectors of that radar unit. In various examples, the radar unit may be capable of scanning a beam over a range of 90 degrees by scanning each of the four different sectors of the radar unit. The radar system may be configured to store the captured information in a memory for later processing by the processing system of the vehicle. The information captured by the radar system may be environmental data.
[0082] In another example, a laser range finder (e.g., a LIDAR unit) may be configured to transmit an electromagnetic signal (e.g., light such as from a gas or diode laser, or other possible light source) that may be reflected by one or more target objects near the vehicle. The laser range finder may be able to capture the reflected electromagnetic (e.g., laser) signal. The captured reflected electromagnetic signal may enable the ranging system (or processing system) to determine the range to various objects, e.g., objects that reflected the electromagnetic signal back to the laser range finder. The ranging system may also determine the velocity or speed of the target objects, which may be stored as environmental data.
[0083] In some implementations, the processing system may be able to combine information from various sensors to further determine the vehicle's environment. For example, the processing system may combine data from both radar information and captured images to determine whether another vehicle or pedestrian is in front of the autonomous vehicle. In other implementations, other combinations of sensor data may be used by the processing system to make determinations about the environment.
[0084] While operating in an autonomous mode, the vehicle may control its operation with little or no human input. For example, if a human operator inputs an address into the vehicle, the vehicle may be able to drive to the specified destination without further input from the human (e.g., without the human having to steer or touch the brake / accelerator pedals). Additionally, while the vehicle is operating autonomously, the sensor system may receive environmental data. The vehicle's processing system may alter control of the vehicle based on the environmental data received from the various sensors. In some examples, the vehicle may vary the speed of the vehicle in response to the environmental data from the various sensors. The vehicle may vary speed to avoid obstacles, obey traffic laws, etc. When the vehicle's processing system identifies an object near the vehicle, the vehicle may be able to change speed or otherwise alter its movement.
[0085] If the vehicle detects an object but is not sufficiently confident in detecting the object, the vehicle may request a human operator (or a more powerful computer) to perform one or more remote assistance tasks, such as (i) verifying whether the object is actually present in the environment (e.g., is there actually a stop sign or is there actually no stop sign), (ii) verifying whether the vehicle's identification of the object is correct, (iii) correcting the identification if it was incorrect, and / or (iv) providing supplemental instructions (or correcting current instructions) to the autonomous vehicle.
[0086] The vehicle may detect objects in the environment in a variety of ways, depending on the source of the environmental data. In some implementations, the environmental data comes from a camera and may be image or video data. The vehicle may analyze the captured image or video data to identify objects in the image or video data. In other implementations, the environmental data may come from a LIDAR unit. The method and apparatus may be configured to monitor the image and / or video data for objects in the environment. In other implementations, the environmental data may be radar, audio, or other data. The vehicle may be configured to identify objects in the environment based on the radar, audio, or other data.
[0087] In some implementations, the technique used by the vehicle to detect the object may be based on a set of known data. For example, data related to environmental objects may be stored in a memory located in the vehicle. The vehicle may compare the received data to the stored data to determine the object. In other implementations, the vehicle may be configured to determine the object based on the context of the data. For example, construction-related street signs may generally have an orange color. Thus, the vehicle may be configured to detect an orange object located near the side of the road as a construction-related street sign. In addition, as the vehicle's processing system detects objects in the captured data, it may also calculate a confidence level for each object.
[0088] III. Examples of Vehicle Sensor Field of View FIG. 4 illustrates an example of an autonomous vehicle 400 having various sensor fields of view. As previously described with respect to FIG. 2, the vehicle 400 may include multiple sensors. The locations of the various sensors may correspond to the locations of the sensors disclosed in FIG. 2. However, in some cases, the sensors may be at other locations. To simplify the drawing, the sensor locations are omitted from FIG. 4A. FIG. 4A illustrates the respective fields of view of each sensor unit of the vehicle 400. The field of view of the sensor may include an angular region in which the sensor can detect an object, and a range corresponding to a maximum distance from the sensor at which the sensor can reliably detect an object.
[0089] As discussed above, the vehicle 400 may include six radar units. The first radar unit may be located at the left front of the vehicle and may have an angular field of view corresponding to an angular portion of the field of view 402A. The second radar unit may be located at the right front of the vehicle and may have an angular field of view corresponding to an angular portion of the field of view 402B. The third radar unit may be located at the left rear of the vehicle and may have an angular field of view corresponding to an angular portion of the field of view 402C. The fourth radar unit may be located at the right rear of the vehicle and may have an angular field of view corresponding to an angular portion of the field of view 402D. The fifth radar unit may be located at the left side of the vehicle and may have an angular field of view corresponding to an angular portion of the field of view 402E. The sixth radar unit may be located at the right side of the vehicle and may have an angular field of view corresponding to an angular portion of the field of view 402F. Each of the six radar units may be configured to have a scannable beamwidth of, for example, 90 degrees or greater. The radar beam width may be less than 90 degrees, but each radar unit may be capable of steering its radar beam across the entire field of view.
[0090] The first LIDAR unit of the vehicle 400 may be configured to scan a full 360 degree region around the vehicle or within a full 360 degree region, as indicated by an angular field of view corresponding to an angular portion of the field of view 404. The second LIDAR unit of the vehicle 400 may be configured to scan less than a 360 degree region around the vehicle. In one example, the second LIDAR unit may have a field of view of 5 to 15 degrees in the horizontal plane, as indicated by an angular field of view corresponding to an angular portion of the field of view 404.
[0091] Additionally, the vehicle may also include at least one camera. The camera may be an optical camera and / or an infrared camera. The camera may have an angular field of view that corresponds to an angular portion of the field of view 408.
[0092] In addition to the field of view of each of the various sensors of the vehicle 400, each sensor may also have a corresponding range. In one example, the range of the radar units may be greater than the range of either LIDAR unit, as indicated by the field of view of the radar units 402A-402E extending further than the field of view of the LIDAR units 404 and 406. Additionally, the first LIDAR unit may have a greater range than the second LIDAR unit, as indicated by the field of view 404 extending further than the field of view 406. The cameras may have a range indicated by the length of the field of view 408. In various examples, the range of the cameras may be greater or less than the range of the other sensors.
[0093] It should be understood that the sensor fields of view, radar units, etc. in FIG. 4 are shown as exemplary diagrams and are not to scale.
[0094] IV. EXAMPLE SYSTEMS AND METHODS Examples of the systems and methods of the present disclosure are described in more detail below.
[0095] 5 is a flow chart of a method 500 according to an example embodiment. Method 500 may include one or more operations, functions, or actions, as illustrated by one or more of blocks 502-508. Although the blocks of each method are shown in sequential order, these blocks may in some cases be performed in parallel and / or in a different order than described herein. Additionally, various blocks may be combined into fewer blocks, divided into additional blocks, and / or removed based on the desired implementation.
[0096] In addition, for method 500 and other processes and methods disclosed herein, a flowchart illustrates the functions and operations of one possible implementation of the present embodiment. In this regard, each block may represent a module, a segment, a part of a manufacturing or operating process, or a part of a program code, which includes one or more instructions executable by a processor to implement a particular logical function or step in the process. The program code may be stored in any type of computer-readable medium, such as a storage device, including a disk or a hard drive. The computer-readable medium may include non-transitory computer-readable medium, such as a register memory, a processor cache, and a computer-readable medium that stores data for a short period of time, such as a random access memory (RAM). The computer-readable medium may also include non-transitory computer-readable medium, such as a secondary storage or a permanent long-term storage, such as a read-only memory (ROM), an optical or magnetic disk, a compact disk read-only memory (CD-ROM). The computer-readable medium may also be any other volatile or non-volatile storage system. The computer-readable medium may be considered to be, for example, a computer-readable storage medium, or a tangible storage device.
[0097] Additionally or alternatively, for method 500, as well as other processes and methods disclosed herein, one or more blocks in a flowchart may represent circuitry hardwired to perform specific logical functions within the process.
[0098] In some examples, for method 500, and other processes and methods disclosed herein, the functions represented in the flowcharts may be performed by a single vehicle (e.g., vehicles 100, 200, etc.), distributed among multiple vehicles, performed by a remote server / external computing system (e.g., systems 302 and 306), and / or by a combination of one or more external computing systems and one or more vehicles, among other possibilities. Additionally, the functions represented in the flowcharts may be performed by one or more processors in a control system of the vehicle and / or by one or more chips that control the operation of one or more of the vehicle's sensors.
[0099] At block 502, the method 500 includes receiving sensor data associated with an object of interest within an environment of the autonomous vehicle during a first environmental condition from one or more sensors associated with the autonomous vehicle, where at least one sensor of the one or more sensors is configurable to be associated with one of a plurality of operational field of view volumes, each operational field of view volume representing a space in which the at least one sensor is expected to detect an object external to the autonomous vehicle with a minimum level of confidence.
[0100] At block 504, the method 500 includes determining at least one parameter associated with the target object based on the sensor data.
[0101] At block 506, the method 500 includes determining a degradation of at least one parameter between the sensor data and past sensor data, the past sensor data being associated with the target object in the environment during a second environmental condition that is different from the first environmental condition.
[0102] At block 508, the method 500 includes adjusting the operational field volume of the at least one sensor to a different operational field volume of the plurality of operational field volumes based on the determined degradation of the at least one parameter.
[0103] In some embodiments, method 500 may be repeated over multiple successive camera images (i.e., frames) of the target object and / or over multiple successive instances of capture of LIDAR data associated with the target object, and may be performed using the same sensor or sensors, or using other sensors. This repetition may help to validate a decision on which operational field of view volume to select, and may help to ascertain whether a determined degradation is due to changing environmental conditions rather than other factors (e.g., sensor drift).
[0104] The one or more sensors involved in method 500 may include a set of one or more LIDAR sensors, a set of one or more radar sensors, and / or a set of one or more cameras (operating in various wavelength bands including visible and infrared), among other possible sensor types. In practice, all sensors of a particular type may be configured to have the same operational field of view volume, and the vehicle software that receives and processes the sensor data is configured to treat all sensors of that particular type as having that operational field of view volume. For example, in clear, daytime environmental conditions, the operational field of view range of all cameras of the vehicle may be 150 meters, and the operational field of view range of all LIDAR sensors of the vehicle may be 200 meters. In line with these, the act of adjusting the field of view volume of at least one of the sensors of the vehicle may include making the same field of view adjustment to each sensor of the particular sensor type. For example, if the vehicle system determines an adjustment to make to a LIDAR sensor based on the vehicle's operating environment, the vehicle system may make that adjustment to all LIDAR sensors of the vehicle. Other examples are possible as well. Additionally, in other embodiments, the operational sensor field of view volumes may be individually configured, such that a sensor of a particular sensor type may be configured to have a different operational field of view volume than another sensor of the same sensor type.
[0105] The one or more sensors may include one or more sensors mounted at one or more locations relative to the vehicle. In some embodiments, for example, the one or more sensors may consist of sensors mounted on the vehicle, such as a camera mounted at one location on the vehicle and a LIDAR sensor mounted at a different location on the vehicle, two or more cameras mounted at different locations on the vehicle, or two or more LIDAR sensors mounted at different locations on the vehicle. In other embodiments, the one or more sensors may include multiple sensors, at least one of which is mounted on the vehicle and at least one other sensor is mounted on another vehicle. In still other embodiments, at least one of the one or more sensors may be mounted on a stationary object along a road along which the vehicle is traveling or is routed to travel. The stationary object could be a utility pole, a road sign (e.g., a stop sign), a traffic light, or a building, among other possibilities. In embodiments in which at least one sensor is remote from the vehicle, a server or other computing device may be used to facilitate communication of sensor data from the remote sensor to the vehicle system. For example, sensor data acquired by a sensor on a stationary object may be transmitted to the vehicle system via a server as the vehicle approaches or passes by the stationary object.
[0106] The environmental conditions may be or include clear skies (e.g., clear, not cloudy, not raining, snowy, or foggy), daytime (e.g., period from sunrise to sunset), nighttime (e.g., period from sunset to sunrise), rainy skies, snowy, foggy, cloudy (e.g., more clouds, less light), and / or a sensor cleanliness condition in which the vehicle detects that one or more sensors of the vehicle have dust, water droplets, ice / frost, hit bugs, oil, road grime, or other material blocking the sensor cover / window or other surface. Other environmental conditions are also contemplated. Furthermore, the environmental conditions may be or include a combination of conditions. For example, the environmental conditions may be clear, sunny, daytime environmental conditions (e.g., 11 a.m., clear). As another example, the operating environment may be a foggy daytime environmental condition, or a rainy daytime environmental condition. Additionally, in some instances, environmental conditions may be present having varying degrees of weather conditions such as heavy snowstorms and / or winds, heavy rain and / or winds, or fog thickness exceeding a predefined threshold, among other possibilities.
[0107] The target object may be an object in the vehicle's environment that has characteristics that are likely to have a certain expected effect on at least one parameter determined from sensor data associated with the target object. Examples of such characteristics may include a particular material or materials of the target object (e.g., wood), a reflectance of the surface of the target object, a color of the target object, a size of the target object, a shape of the target object, whether the object is static or dynamic, and whether the target object has sharp angles that may affect the brightness of the target object at varying observation angles. In some embodiments, it may be desirable for the target object to be an object made from a material that has low reflectance (e.g., wood) and a shape that is unlikely to cause variation in at least one parameter when sensor data of the object is obtained at different observation angles (e.g., a substantially rounded shape with minimal or no sharp angles). For example, the target object may be a wooden utility pole with low expected reflectance and expected high contrast against the horizon during clear sky conditions. Other examples of target objects are possible, such as buildings, bridges, and other man-made objects.
[0108] In some embodiments, the target object may be an object or group of objects that are intentionally placed in the environment to assist the disclosed methods. For example, the target object may be manufactured to have a black surface with minimal reflectivity and a simple round design. Additionally or alternatively, the target object may be fitted with one or more fiducial markers with known characteristics. In other embodiments, the target object may be an object that is not intentionally placed in the environment to assist the disclosed methods, but rather an object that is inferred from the environment over time so that a profile of the object can be constructed. For example, sensor data (e.g., images or LIDAR intensity data) associated with a utility pole may be acquired as various vehicles pass by the pole and used to generate a statistical profile that indicates various characteristics of the object and how frequently the vehicles encounter the object. For example, the statistical profile may indicate whether the object is a stationary object that is not expected to move in the environment or a dynamic object that moves a small amount, either predictable or unpredictable. The statistical profile may also indicate one or more optical properties of the object as a function of sensor location. Other examples are possible as well.
[0109] When the characteristics of a target object are known, variations in parameters determined from sensor data associated with the target object can be more reliably attributed to changes in environmental conditions (e.g., weather and / or time of day) rather than to uncertainties regarding the object and its characteristics.
[0110] The historical sensor data may include sensor data received from at least one of the one or more sensors and / or sensor data received from other sensors or other sources. The historical sensor data may be received during the period in which the statistical profile of the target object is being developed, or may be received at some point thereafter.
[0111] As described above, the historical sensor data is associated with an object in an environment during a second environmental condition that is different from the first environmental condition. For example, the historical sensor data may include images of, or LIDAR data representing, the object during sunny conditions and during a particular time of day (e.g., 10:00 a.m.), while the sensor data may include images of, or LIDAR data representing, the object during rainy, foggy, or snowy conditions and during the same time of day (e.g., 10:00 a.m.) or part of the day (e.g., morning, midday) as the historical sensor data.
[0112] The sensor data may include one or more images from one or more cameras, LIDAR data (e.g., 3D point cloud data including intensities of points) from one or more LIDAR sensors, and / or other types of sensor data from other types of sensors. Similarly, the historical sensor data may include one or more historical images from one or more cameras, LIDAR data (e.g., 3D point cloud data including intensities of points) from one or more LIDAR sensors, and / or other types of historical sensor data from other types of sensors.
[0113] In some embodiments, the at least one parameter that the vehicle system determines based on the sensor data may include a value that compares the target object to another area of the environment represented in the sensor data. For example, in a situation where the sensor data includes one or more images, the at least one parameter may include a contrast ratio between the target object shown in the one or more images and the horizon shown in the one or more images, or another value that compares the two. Using contrast ratio may be a reliable indicator of when to adjust the operational field of view, since contrast may degrade with range in snowy or foggy weather.
[0114] Additionally or alternatively, the at least one parameter may include a value that compares an edge of the target object in the one or more images to another region of the one or more images, such as a region showing a horizon, a road, or another object. For example, the at least one parameter may include a ratio between an edge strength of one or more edges of the target object and an edge strength of one or more edges of another object shown in the one or more images, or another value that compares the two.
[0115] In other embodiments, the at least one parameter may include a LIDAR intensity from the laser beam reflected from the target object and / or a quantity of the laser beam reflected from the target object. In yet other embodiments, the at least one parameter may include a value that compares the LIDAR intensity or quantity of the laser beam reflected from the target object to the LIDAR intensity or quantity of the laser beam reflected from another object in the environment, such as a road, a building, or another vehicle.
[0116] Example techniques for determining degradation of at least one parameter will now be described in more detail with respect to Figures 6A-6B and 7A-7B.
[0117] 6A and 6B show examples of images that can be used to determine contrast ratio or other value degradation comparing a target object to a horizon shown in the image. While the horizon can be a reliable indicator of degradation, other areas in the image can be used instead.
[0118] 6A shows an image 600 and a previous image 602, each of which shows a target object 604 and a horizon 606. In particular, the target object 604 in images 600, 602 may be a tree line. Image 600 shows the target object 604 and horizon 606 during daytime, snowy weather conditions, while previous image 602 shows the target object 604 and horizon 606 during daytime, clear weather conditions.
[0119] FIG. 6A also illustrates a segmented version 608 of the past image 602, specifically divided into multiple rectangular azimuth / elevation regions. It should be understood that these regions are representative examples of how images may be used to determine degradation of at least one parameter, and other shapes, sizes, and quantities of regions may be used in other examples. For example, the vehicle system may use only regions of the images 600, 602 that include at least a portion of the target object 604. Additionally, in some examples, the vehicle system may be configured to ignore or remove regions that correspond to dynamic objects (e.g., cars or clouds) in the environment. Additionally, in other examples, the vehicle system may select the regions to use based on predefined map data that indicates the known location of the target object 604.
[0120] In an exemplary process for determining the degradation of contrast ratio between a target object 604 and a horizon 606, the vehicle system may compute a Fourier transform 610 of the image 600 and a Fourier transform 612 of the past image 602. The Fourier transforms 610 and 612 are each shown segmented in a manner similar to the segmented version 608 of the past image 602, with each region of the Fourier transform taking the form of a graph of the power spectral density in azimuth / elevation angles of the corresponding region of each original image. In some examples, each Fourier transform may be apodized with a raised cosine.
[0121] The vehicle system can then calculate the ratio between the Fourier transform 610 and the Fourier transform 612. In particular, the vehicle system can calculate the ratio between each of one or more of the rectangular regions of the Fourier transform 610 (including, but not limited to, one or more regions corresponding to the target object 604) and the corresponding region of the Fourier transform 612. As an example, FIG. 6A shows an image 614 illustrating the ratio between each region of the Fourier transform 610 and each corresponding region of the Fourier transform 612. FIG. 6B shows a zoomed-in version of the image 614. FIGS. 6A and 6B also show images 600, 602, the Fourier transforms 610, 612, and a bounding box that highlights a particular region of interest 616 in the image 614. In particular, the region of interest 616 includes a region of interest corresponding to where the tree line meets the horizon 606 in the images 600, 602, and other regions adjacent to the region of interest.
[0122] From image 614, the vehicle system may be configured to identify which regions exhibit the greatest difference between image 600 and past image 602, i.e., which regions have the highest ratio, and use that / those regions in determining how to adjust the operational field of view volume. For example, region 618 shown in FIG. 6B may exhibit the strongest degree of degradation (e.g., approximately 4 orders of magnitude of contrast surrogate degradation (-40 dB) as shown).
[0123] Based on the calculated ratio, and further based on the range of the target object 604 to the one or more cameras that provided the images 600, 602, the vehicle system can determine the degradation of the contrast ratio. The range of the target object 604 may be known to the vehicle system, such as from existing map data, GPS data, and / or other data, or may be estimated using data acquired with one or more sensors, such as LIDAR data of a past image 602 under clear skies and / or one or more objects in the past image 602.
[0124] In some examples, the degradation of the contrast ratio can be expressed by Equation 1, where C_o is the contrast between the target object 604 and the horizon 606 in snowy (or foggy) conditions (e.g., C_o=1 for a black target object), k is the extinction length, and d is the range to the target object 604. C=C_o*exp(-k*d) (Formula 1)
[0125] Thus, for each region, the natural logarithm of the ratio of C to C_o provides k*d for that region, from which k can be estimated using the known value of d. As an example, if region 618 (-40 dB) is approximately 1000 meters down the road, k can be found as shown in Equations 2-5. 20*log10(C / C_o)=40 (Equation 2) C / C_o=100 (formula 3) ln(C / C_o)=ln(100)=4.6=k*d (Equation 4) k=4.6 / (1000 meters)=0.0046 (Equation 5)
[0126] In other embodiments, the Fourier transforms 610, 612 may be compared in other ways other than ratio.
[0127] 6A-6B, particular regions (e.g., pixels) within the images may correspond to respective distances between the object and one or more cameras (e.g., pixel 250 may correspond to a ground surface that is approximately 50-70 meters away from one or more cameras). Thus, in another example of a process for determining degradation of at least one parameter, the vehicle system may be configured to take an average over multiple regions, each corresponding to approximately the same distance, i.e., the distance at which the target object 604 is estimated or known to be located.
[0128] To facilitate this, for example, the vehicle system may be configured to calculate a plurality of ratios between (i) a first plurality of regions in the Fourier transform 610 that correspond to the target object 604 and that correspond to other portions of the environment located at approximately the same range to the one or more cameras as the range of the target object 604 to the one or more cameras, and (ii) a second plurality of regions in the Fourier transform 612 that correspond to the target object 604 and that correspond to said other portions of the environment. Both the first plurality of regions and the second plurality of regions may have the same region quantity. For example, as shown in FIG. 6B, region 618 and region 620 may be used.
[0129] For example, for a convenient approximation, the vehicle system can calculate an average ratio by adding the ratios together and dividing the sum by the quantity of the region. For example, the vehicle system may take the average signal-to-noise ratio of all regions that contain pixel 250 (e.g., regions in the same row as region 618, such as region 620). Based on the average ratio, and based on the range of the target object 604 to the camera or cameras that provided images 600, 602, the vehicle system can determine the degradation of the contrast ratio, for example, by using the techniques described above with respect to Equation 1.
[0130] In some examples, the vehicle system may use multiple regions having objects of interest located at different ranges. For example, the vehicle system may calculate k for region 618 and calculate k for region 622, where region 622 may correspond to another object of interest in the environment, such as another tree, located at a known range approximately equal to the range of object of interest 604. If the density of snow (or fog in other situations, etc.) is substantially uniform, the calculated value of k for region 622 may be approximately the same as the calculated value of k for region 618.
[0131] In addition to or instead of using the techniques described above, the vehicle system may, in some examples, implement edge detection techniques to determine degradation of at least one parameter.
[0132] In one example of a process for determining contrast ratio degradation between a target object 604 and a horizon 606 using edge detection techniques, the vehicle system may convolve a two-dimensional edge detection kernel (e.g., an edge detection kernel using a difference of Gaussians (DoG) filter) with one or more images to determine a first edge strength for the one or more images, and convolve the two-dimensional edge detection kernel with one or more past images to determine a second edge strength for the one or more past images. FIG. 7A shows an image 700 and a past image 702 after convolution. Image 700 shows the target object 604 and horizon 606 during daytime snowy weather conditions, and past image 702 shows the target object 604 and horizon 606 during daytime clear weather conditions. As in the previous example, the target object 604 is a tree line, although other objects may be used in other examples. FIG. 7A also shows an example of a reference past image 704 before convolution.
[0133] The vehicle system can then sum the first edge strengths in each of one or more first regions of one or more images corresponding to the target object, and sum the second edge strengths in each of one or more second regions of one or more past images corresponding to the target object. For example, FIG. 7A shows a segmented version 706 of an image 700 and a segmented version 708 of a past image 702. In the example shown, each image 706, 708 is divided into a number of rectangular azimuth / elevation regions, and the edge strengths of each region are summed together. It should be understood that other shapes, sizes, and quantities of regions can be used in other examples.
[0134] 7A and 7B also show a bounding box highlighting a particular region of interest 710. Specifically, the region of interest 710 includes a region of interest corresponding to where the tree line (containing the target object 604) meets the horizon 606 in the images 700, 702, as well as other regions adjacent to the region of interest. In some examples, the vehicle system may only sum edge strengths within the particular region of interest of the image, rather than the entire image.
[0135] The vehicle system may then calculate one or more ratios of the summed first edge strengths in each of the one or more first regions to the summed second edge strengths in each of the one or more second regions. As an example, Figure 7A shows an image 712 illustrating the ratio of each region of image 708 to each corresponding region of image 706. Figure 7B shows a zoomed-in version of image 712.
[0136] From image 712, the vehicle system may be configured to identify which regions show the greatest difference between image 700 and previous image 702, i.e., which regions have the highest ratio, and use that / those regions in determining how to adjust the operational field of view volume. For example, region 714 shown in FIG. 7B may show the strongest degree of degradation.
[0137] Based on the calculated ratio, and also based on the range of the object 604 to the one or more cameras that provided the images 700, 702, the vehicle system can determine the degradation of the contrast ratio, for example, by using the techniques described above with respect to Equation 1.
[0138] In other embodiments, the images 706, 708 may be compared in alternative ways other than ratio.
[0139] In some examples, the vehicle system may be configured to average over multiple regions of images 706 and 708, each region corresponding to approximately the same distance, i.e., the distance at which the target object 604 is estimated or known to be located.
[0140] To facilitate this, for example, the vehicle system may be configured to (i) sum together a first edge strength in each of a first plurality of regions in the image 700 that correspond to the target object 604 and that correspond to other portions of the environment that are located at approximately the same range to the one or more cameras as the range of the target object 604 to the one or more cameras, and (ii) sum together a second edge strength in each of a second plurality of regions in the past image 702 that correspond to the target object 604 and that correspond to said other portions of the environment. Both the first plurality of regions and the second plurality of regions may have the same region quantity.
[0141] The vehicle system may then calculate a plurality of ratios of the summed first edge strengths in the first plurality of regions to the summed second edge strengths in the second plurality of regions. For example, the vehicle system may calculate a ratio between at least a portion of the regions shown in image 706 (each representing the sum of the first edge strengths in that region of image 700) and at least a portion of the corresponding regions of image 708 (each representing the sum of the second edge strengths in that region of image 712).
[0142] The vehicle system can then calculate an average ratio as the sum of the ratios divided by the quantity of regions. For example, the vehicle system may take the average signal-to-noise ratio of all regions that contain pixel 250 (e.g., the regions in the same row as region 710). Based on the average ratio, and based on the range of the object 604 to the one or more cameras that provided images 700, 702, the vehicle system can determine the degradation of the contrast ratio, for example, by using the techniques described above with respect to Equation 1.
[0143] In some embodiments, the vehicle system may be configured to determine degradation in edge strength between one or more regions of one or more images (e.g., one or more regions of image 700 representing target object 604) and one or more corresponding regions of one or more previous images (e.g., one or more regions of previous image 702 representing target object 604) without performing an operation to determine degradation in contrast ratio. The vehicle system may then adjust the operational field of view volume of at least one of the vehicle's sensors based on the determined degradation in edge strength.
[0144] In some embodiments, as described above, the at least one parameter may include a LIDAR strength of a laser beam reflected from a target object in the environment. The vehicle system may use the LIDAR data and the past LIDAR data to determine a degradation (e.g., degradation expressed in dB / meter) of the LIDAR strength from the laser beam reflected from the target object between the LIDAR data and the past LIDAR data. The vehicle system may then adjust the operational field of view volume of each of at least one sensor of the vehicle's one or more LIDAR sensors based on the determined degradation of the LIDAR strength. In some examples, for a given degradation of the LIDAR strength, the maximum operational field of view distance (range) of the LIDAR sensor may be divided by the square root of the degradation.
[0145] As described above, the operational field of view volume of at least one LIDAR sensor may be adjusted based on the degraded parameters determined from the camera image. Similarly, the operational field of view of at least one camera may be adjusted based on the degraded parameters determined from the LIDAR data. One reason for this may be that the contrast between the target object and the horizon degrades as does the light returning from the target object. For example, the distance from the LIDAR sensor where approximately 95% of the LIDAR intensity is lost due to exponential decay may be approximately the same distance where the contrast between the target object (ideally a black target object) on the horizon exponentially decays to approximately 5%.
[0146] Thus, the act of adjusting the field of view volume of each of the one or more sensors based on the determined degradation of the at least one parameter may include adjusting the field of view volume of each of the at least one camera of the one or more cameras and each of the at least one LIDAR sensor of the one or more LIDAR sensors based on the determined degradation of LIDAR strength between the LIDAR data and the past LIDAR data. Additionally or alternatively, the act of adjusting the field of view volume of each of the one or more sensors based on the determined degradation of the at least one parameter may include adjusting the field of view volume of each of the at least one camera of the one or more cameras and each of the at least one LIDAR sensor of the one or more LIDAR sensors based on the determined degradation of contrast ratio, edge strength, and / or another parameter value between the one or more images and the one or more past images.
[0147] As an example, k for the camera's visible wavelength is likely to be similar to the LIDAR wavelength, so using the camera image to calculate the contrast degradation k as described above allows the vehicle system to calculate how much the signal from one or more LIDAR sensors is attenuated. For example, in snowy or rainy conditions, compared to clear sky conditions where k is near zero, the received light intensity may degrade to 1 / exp(-2k*d), where d is the range to the target object. The vehicle system can then use this degradation to infer the degraded field of view volume of one or more LIDAR sensors in the direction of the target object.
[0148] To facilitate the act of adjusting the operational field of view volume of the at least one sensor to a different one of the multiple operational field of view volumes based on the determined degradation of the at least one parameter, the vehicle system may store in memory (e.g., data storage 114) a table or other form of data that maps each of the one or more parameter values (e.g., contrast ratio, LIDAR intensity, edge strength, etc.) to each of the corresponding finite / predetermined number of operational field of view volumes. Thus, when the vehicle system determines the degradation, the vehicle system may select a different operational field of view volume of the multiple operational field of view volumes, in particular the operational field of view volume that corresponds to the degraded parameter value. As another example, the vehicle system may determine the range, azimuth, and / or elevation angle of the new operational field of view volume based on the determined degradation. Additionally, the table or other form of data may also map each of the finite / predetermined number of operational field of view volumes and / or each of the corresponding one or more parameter values to a label that identifies an environmental condition (e.g., snow, fog, or sunny) or a combination of multiple environmental conditions (e.g., daytime and snow, or daytime and fog). The memory in which the tables or other data are stored and which provides access to the tables or other data may be local to the vehicle (e.g., in memory onboard the vehicle) or remote from the vehicle (e.g., a database accessible via a server).
[0149] In some embodiments, the corresponding finite / predetermined number of operational field of view volumes may include multiple operational field of view volume sets corresponding to a given one of the one or more parameter values, with each set having a finite / predetermined number of operational field of view volumes associated with a given type of sensor (e.g., a LIDAR sensor) or a particular one of the one or more sensors (e.g., a LIDAR sensor on the left side of the vehicle). For example, to facilitate an act of adjusting the operational field of view volume of a first type of sensor based on degradation of at least one parameter determined from sensor data of a second, different type of sensor, the parameter values may be mapped to two operational field of view volume sets, i.e., a set for a first type of sensor (e.g., a camera) and a set for a second type of sensor (e.g., a LIDAR sensor).
[0150] In some embodiments, the sensor data used to determine the degradation may be sensor data not acquired by a sensor mounted on the vehicle, but the operational field of view volume of at least one of the sensors mounted on the vehicle may be adjusted based on the determined degradation. For example, a camera may be mounted on another vehicle or on a traffic light at an intersection and may acquire images that a computing device other than the vehicle system (e.g., a server or vehicle system on the other vehicle) can use to determine the degradation of the contrast ratio. The computing device may then send a signal indicative of the determined degradation to the vehicle system, which may adjust the operational field of view of one or more of the cameras and / or LIDAR sensors mounted on the vehicle based on the determined degradation. Alternatively, the computing device may send the images itself to the vehicle system, and the vehicle system may determine the degradation. Other examples are possible as well.
[0151] After adjusting the operational field of view volume of the at least one sensor, the vehicle system can control the vehicle to operate using the at least one sensor having the adjusted operational field of view volume. That is, the vehicle system can control the vehicle to acquire sensor data using the at least one sensor based on the adjusted operational field of view volume while operating in an autonomous mode. To facilitate this in some embodiments, a local computing system on board the vehicle may configure itself to ignore sensor data readings acquired during operation of the vehicle that exceed the respective range, azimuth, and / or elevation angle associated with the adjusted operational field of view volume of each of the at least one sensor. Additionally or alternatively, the remote system may transmit instructions to the local computing system of the vehicle that, upon receipt by the local computing system, cause the local computing system to control the vehicle to operate in an autonomous mode in which the local computing system ignores sensor data readings that exceed the respective range, azimuth, and / or elevation angle associated with the adjusted operational field of view volume of each of the at least one sensor. Other examples are possible as well. As described above, the at least one sensor having a coordinated operational field of view volume may include at least one sensor mounted on the vehicle and / or at least one sensor located remote from the vehicle but used by a vehicle system to facilitate operation of the vehicle.
[0152] In some embodiments, a particular operational field of view volume used for a given sensor at a given time may be lower than the maximum operational field of view value for that sensor and parameter, but the sensor may nevertheless be configured to obtain and transmit to a vehicle system (e.g., a processor configured to process the sensor data) sensor data corresponding to ranges, azimuths, and / or elevation angles that exceed the respective ranges, azimuths, and / or elevation angles associated with that particular operational field of view volume. In such embodiments, the vehicle system may ignore (e.g., discard or store but not make decisions regarding the vehicle's environment, such as object detection, based thereon) sensor data corresponding to ranges, azimuths, and / or elevation angles that are greater than the respective ranges, azimuths, and / or elevation angles associated with the particular operational field of view volume. For example, if the range of a LIDAR sensor is reduced from 200 meters to 150 meters, the vehicle system may ignore sensor data corresponding to distances from the vehicle that are greater than 150 meters. Other examples are possible as well. Additionally or alternatively, the vehicle system may identify sensor data corresponding to parameter values greater than a maximum parameter value for a particular operational field of view volume (e.g., flag or otherwise store in memory an indication that the data is likely suspect). In other embodiments, such sensors may be configured to allow the sensor to configure itself not to acquire sensor data corresponding to ranges, azimuths, and / or elevation angles that exceed the respective ranges, azimuths, and / or elevation angles associated with a particular operational field of view volume. Additionally or alternatively, the sensor may be configured to acquire sensor data corresponding to ranges, azimuths, and / or elevation angles that exceed the respective ranges, azimuths, and / or elevation angles associated with a particular operational field of view volume, but may be further configured to discard such sensor data to reduce the amount of data transmitted from the sensor to other computing devices of the vehicle system.
[0153] In some embodiments, the vehicle's sensors and associated computing devices, such as chips (e.g., microchips) that control the operation of one or more of the sensors, may perform operations before the sensors transmit acquired sensor data to an on-board computer or a remote computer, which may affect how the on-board computer or the remote computer controls the operation of the vehicle. In particular, such sensor chips may perform one or more operations of method 500. In this regard, the act of adjusting the operational field of view volume may include the sensor chip ignoring or flagging sensor data corresponding to ranges, azimuth angles, and / or elevation angles greater than the respective ranges, azimuth angles, and / or elevation angles associated with the adjusted operational field of view volume. Additionally or alternatively, the act of adjusting the operational field of view volume may include the sensor chip (i) adjusting a power level of laser pulses transmitted by one or more LIDAR sensors during acquisition of the sensor data from a first power level to an adjusted power level different from the first power level, and / or (ii) acquiring the sensor data by transmitting one or more laser pulses at an adjusted power level associated with the adjusted operational field of view volume. Other examples are possible as well.
[0154] As used herein, the terms "substantially," "approximately," or "about" mean that the recited property, parameter, value, or geometric planarity need not be achieved exactly, but that deviations or variations, including, for example, tolerances, measurement errors, limits of measurement accuracy, and other factors known to those of skill in the art, may occur in an amount that does not eliminate the effect intended to be provided by the property.
[0155] While various exemplary aspects and exemplary embodiments are disclosed herein, other aspects and embodiments will be apparent to those of ordinary skill in the art. The various exemplary aspects and exemplary embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Claims
1. 1. A method comprising: receiving sensor data associated with objects of interest within an environment of the autonomous vehicle from one or more sensors associated with the autonomous vehicle during a first environmental condition, where at least one sensor of the one or more sensors is configurable to be associated with one of a plurality of operational field of view volumes, each operational field of view volume representing a space in which the at least one sensor is expected to detect objects external to the autonomous vehicle with a minimum level of confidence; determining at least one parameter associated with the target object based on the sensor data; determining a degradation of the at least one parameter between the sensor data and past sensor data, the past sensor data being associated with the target object in the environment during a second environmental condition that is different from the first environmental condition; and adjusting the operational field of view volume of the at least one sensor to a different operational field of view volume of the plurality of operational field of view volumes based on the determined degradation of the at least one parameter.
2. determining the degradation is based on the sensor data of a first sensor of the one or more sensors; The method of claim 1 , wherein adjusting the operational field of view volume comprises adjusting the operational field of view volume of a second sensor of the one or more sensors.
3. the first sensor is a camera; The method of claim 2 , wherein the second sensor is a LIDAR sensor.
4. the first sensor is a LIDAR sensor; The method of claim 2 , wherein the second sensor is a camera.
5. The method of claim 2 , wherein the first sensor and the second sensor are the same type of sensor in different locations relative to the vehicle.
6. the first environmental condition is one or more of a rainy condition, a foggy condition, or a snowy condition; The method of claim 1 , wherein the second environmental condition is a clear sky condition.
7. The method of claim 1 , wherein the sensor data and the historical sensor data are each associated with the target object at the same time of day or during the same time period of day.
8. the one or more sensors include one or more cameras; the sensor data includes one or more images; the historical sensor data includes one or more historical images; The method of claim 1 , wherein the at least one parameter comprises a value that compares the object shown in the one or more images to a horizon.
9. The method of claim 8 , wherein the value is a contrast ratio.
10. calculating a first Fourier transform of the one or more images; Computing a second Fourier transform of the one or more past images; calculating one or more ratios between one or more first regions in the first Fourier transform corresponding to the target object and one or more second regions in the second Fourier transform corresponding to the target object; 10. The method of claim 9, wherein determining the degradation of the at least one parameter between the sensor data and the historical sensor data comprises determining a degradation of the contrast ratio between the target object and the horizon based on the calculated one or more ratios and further based on a distance of the target object to the one or more cameras.
11. calculating a first Fourier transform of the one or more images; Computing a second Fourier transform of the one or more past images; calculating a plurality of ratios between (i) a first plurality of regions in the first Fourier transform that correspond to the target object and that correspond to another portion of the environment that is located at a distance to the one or more cameras that is approximately the same as a distance of the target object to the one or more cameras, and (ii) a second plurality of regions in the second Fourier transform that correspond to the target object and that correspond to the other portion of the environment, wherein the first plurality of regions and the second plurality of regions have the same region quantity; calculating an average ratio as the sum of the ratios divided by the quantity of the regions; 10. The method of claim 9, wherein determining the degradation of the at least one parameter between the sensor data and the past sensor data comprises determining a degradation of the contrast ratio between the target object and the horizon based on the calculated average ratio and further based on the distance of the target object to the one or more cameras.
12. convolving a two-dimensional edge detection kernel with the one or more images to determine a first edge strength in the one or more images; convolving the two-dimensional edge detection kernel with the one or more previous images to determine a second edge strength for the one or more previous images; summing the first edge strengths in each of one or more first regions of the one or more images corresponding to the target object; summing the second edge strengths in each of one or more second regions of the one or more previous images corresponding to the target object; calculating one or more ratios of the summed first edge strengths in each of the one or more first regions to the summed second edge strengths in each of the one or more second regions; 10. The method of claim 9, wherein determining the degradation of the at least one parameter between the sensor data and the past sensor data comprises determining a degradation of the contrast ratio between the target object and the horizon based on the calculated one or more ratios and further based on distances of the one or more cameras to the target object.
13. convolving a two-dimensional edge detection kernel with the one or more images to determine a first edge strength in the one or more images; convolving the two-dimensional edge detection kernel with the one or more previous images to determine a second edge strength for the one or more previous images; summing the first edge strengths in each of a first plurality of regions of the one or more images corresponding to the target object and corresponding to other portions of the environment that are located at approximately the same distance to the one or more cameras as the distance of the target object to the one or more cameras; summing the second edge strengths in each of a second plurality of regions of the one or more previous images corresponding to the target object and further corresponding to the other portion of the environment, the first plurality of regions and the second plurality of regions having the same region quantity; calculating a plurality of ratios of the summed first edge strengths in the first plurality of regions to the summed second edge strengths in the second plurality of regions; calculating an average ratio as the sum of the ratios divided by the quantity of the regions; 10. The method of claim 9, wherein determining the degradation of the at least one parameter between the sensor data and the past sensor data comprises determining a degradation of the contrast ratio between the target object and the horizon based on the calculated average ratio and further based on the distance of the target object to the one or more cameras.
14. the one or more sensors include one or more cameras; the sensor data includes one or more images; the historical sensor data includes one or more historical images; The method of claim 1 , wherein the at least one parameter comprises a value that compares an edge of the object in the one or more images to another region of the one or more images.
15. the one or more sensors include one or more LIDAR sensors; the sensor data includes LIDAR data; the historical sensor data includes historical LIDAR data; The method of claim 1 , wherein the at least one parameter comprises a LIDAR intensity from a laser beam reflected from the target object.
16. the one or more sensors further include one or more cameras; determining the degradation of the at least one parameter between the sensor data and the past sensor data includes determining a degradation of the LIDAR intensity from a laser beam reflected from the target object between the LIDAR data and the past LIDAR data; 16. The method of claim 15, wherein adjusting the field of view volume comprises adjusting the field of view volume of at least one of the one or more cameras and at least one of the one or more LIDAR sensors based on the determined degradation of the LIDAR intensity.
17. The method of claim 1 , wherein the one or more sensors associated with the autonomous vehicle consist of sensors mounted on the vehicle.
18. 2. The method of claim 1 , wherein the at least one sensor is mounted to the autonomous vehicle, and the one or more sensors associated with the autonomous vehicle further include at least one sensor mounted to a different autonomous vehicle.
19. 2. The method of claim 1 , wherein the one or more sensors associated with the autonomous vehicle include sensors attached to stationary objects along a road along which the autonomous vehicle is traveling or routed to travel.
20. The method of claim 1 , wherein the historical sensor data is received from the one or more sensors.
Citation Information
Patent Citations
Obstacle detector
JP1995318650A
Radar equipment
JP1996304550A
Beam irradiation device
JP2006308558A
Visibility range measurement device for vehicle, and driving support device
JP2007265277A
Object detection device for vehicle and travel controller for the vehicle
JP2010256198A