ROAD CONDITION DETECTION SYSTEMS AND METHODS

In a feature, a road condition detection system includes: a combination module configured to generate a combined image based on at least two images, each of the two images including a road and generated based on one of: (a) an image captured using a camera, (b) light detection and ranging (LIDAR) data, (c) radar data, and (d) ultrasonic data; a feature extraction module configured to generate a first feature map based on the combined image; an information map module configured to generate a second feature map based on at least one operating parameter; a joining module configured to generate a joint feature map based on the first and second feature maps; and a condition module configured to set a road condition of the road in front of a vehicle based on the joint feature map.

INTRODUCTION

The present disclosure relates to vehicle sensors and cameras and more particularly to systems and methods for detecting road condition.

Vehicles include one or more torque producing devices, such as an internal combustion engine and/or an electric motor. A passenger of a vehicle rides within a passenger cabin (or passenger compartment) of the vehicle.

Vehicles may include one or more different type of sensors that sense vehicle surroundings. One example of a sensor that senses vehicle surroundings is a camera configured to capture images of the vehicle surroundings. Examples of such cameras include forward-facing cameras, rear-facing cameras, and side facing cameras. Another example of a sensor that senses vehicle surroundings includes a radar sensor configured to capture information regarding vehicle surroundings. Other examples of sensors that sense vehicle surroundings include sonar sensors and light detection and ranging (LIDAR) sensors configured to capture information regarding vehicle surroundings.

SUMMARY

In a feature, a road condition detection system includes: a combination module configured to generate a combined image based on at least: a first image including a road in front of the vehicle generated based on one of: (a) an image captured using a camera of the vehicle, (b) light detection and ranging (LIDAR) data regarding the road in front of the vehicle, (c) radar data regarding the road in front of the vehicle, (d) ultrasonic data regarding the road in front of the vehicle; and a second image generated based on one of: (a) an image captured using a camera of the vehicle, (b) light detection and ranging (LIDAR) data regarding the road in front of the vehicle, (c) radar data regarding the road in front of the vehicle, (d) ultrasonic data regarding the road in front of the vehicle; a feature extraction module configured to generate a first feature map based on the combined image; an information map module configured to generate a second feature map based on at least one of: an ambient temperature; a windshield wiper state; an antilock braking system (ABS) state; a traction control system (TCS) state; weather at the vehicle; a wheel slip; an acceleration of the vehicle; a stability control system state; and road condition information received from at least one of a second vehicle and infrastructure; a joining module configured to generate a joint feature map based on the first and second feature maps; and a condition module configured to set a road condition of the road in front of the vehicle based on the joint feature map.

In further features, the feature extraction module includes one of a neural network and an image processor module configured to generate the first feature map based on the combined image.

In further features, the neural network is a convolutional neural network.

In further features, the combination image is configured to generate the combined image by at least one of (a) aligning edges of the first and second images, (b) concatenating the first and second images on a single plane, and (c) superimposing the first and second images.

In further features, the joining module is configured to generate the joint feature map by concatenating the first and second feature maps.

In further features, image generation module is configured to: receive a third image including the road in front of the vehicle captured using the camera; determine a region of interest (ROI) including the road in front of the vehicle in the third image; and crop the third image to the ROI to generate the first image.

In further features, an image generation module is configured to: receive the LIDAR data regarding the road in front of the vehicle from a LIDAR sensor of the vehicle; transform the LIDAR data into a third image; determine a region of interest (ROI) including the road in front of the vehicle in the third image; and crop the third image to the ROI to generate the first image.

In further features, an image generation module is configured to: receive the radar data regarding the road in front of the vehicle from a radar sensor of the vehicle; transform the radar data into a third image; determine a region of interest (ROI) including the road in front of the vehicle in the third image; and crop the third image to the ROI to generate the first image.

In further features: the combination module is configured to generate the combined image based on: (a) the first image including a road in front of the vehicle generated based on a fourth image captured using a camera of the vehicle, (b) the second image generated based on light detection and ranging (LIDAR) data regarding the road in front of the vehicle, and (c) a third image generated based on radar data regarding the road in front of the vehicle; the road condition detection system further includes an image generation module configured to: receive a fourth image including the road in front of the vehicle captured using the camera; determine a region of interest (ROI) including the road in front of the vehicle in the fourth image; crop the fourth image to the ROI to generate the first image; receive the LIDAR data regarding the road in front of the vehicle from a LIDAR sensor of the vehicle; transform the LIDAR data into a fifth image; determine a region of interest (ROI) including the road in front of the vehicle in the fifth image; crop the fifth image to the ROI to generate the second image; receive the radar data regarding the road in front of the vehicle from a radar sensor of the vehicle; transform the radar data into a sixth image; determine a region of interest (ROI) including the road in front of the vehicle in the sixth image; and crop the sixth image to the ROI to generate the third image.

In further features, the condition module includes one of a neural network configured to determine the road condition based on the joint feature map and a support vector machine configured to determine the road condition based on the joint feature map.

In further features, the condition module includes the neural network, and the neural network is a fully connected convolutional neural network.

In further features, the information map module is configured to generate the second feature map based on at least two of: the ambient temperature; the windshield wiper state; the ABS state; the TCS state; the weather at the vehicle; the wheel slip; the acceleration of the vehicle; the stability control system state; and the road condition information received from at least one of the second vehicle and infrastructure.

In further features, an engine control module is configured to selectively adjust torque output of an engine of the vehicle based on the road condition.

In further features, a steering control module is configured to selectively adjust steering of the vehicle based on the road condition.

In further features, a braking control module is configured to selectively adjust brakes of the vehicle based on the road condition.

In further features, a transmission control module is configured to selectively adjust at least one parameter of a transmission based on the road condition.

In further features, an inverter module is configured to selectively adjust power applied to an electric motor of the vehicle based on the road condition.

In further features, a module is configured to, based on the road condition, output at least one of (a) a visual alert and (b) an audible alert.

In a feature, a road condition detection system of a vehicle includes: a combination module configured to generate a combined image based on at least two of: a first image including a road in front of the vehicle captured using a camera of the vehicle; a second image generated based on light detection and ranging (LIDAR) data regarding the road in front of the vehicle; and a third image generated based on radar data regarding the road in front of the vehicle; a feature extraction module configured to generate a first feature map based on the combined image; an information map module configured to generate a second feature map based on at least one of: an ambient temperature; a windshield wiper state; an antilock braking system (ABS) state; a traction control system (TCS) state; weather at the vehicle; a wheel slip; an acceleration of the vehicle; a stability control system state; and road condition information received from at least one of a second vehicle and infrastructure; a joining module configured to generate a joint feature map based on the first and second feature maps; and a condition module configured to set a road condition of the road in front of the vehicle based on the joint feature map.

In a feature, a road condition detection method includes: generating a combined image based on at least: a first image including a road in front of the vehicle generated based on one of: (a) an image captured using a camera of the vehicle, (b) light detection and ranging (LIDAR) data regarding the road in front of the vehicle, (c) radar data regarding the road in front of the vehicle, (d) ultrasonic data regarding the road in front of the vehicle; and a second image generated based on one of: (a) an image captured using a camera of the vehicle, (b) light detection and ranging (LIDAR) data regarding the road in front of the vehicle, (c) radar data regarding the road in front of the vehicle, (d) ultrasonic data regarding the road in front of the vehicle; generating a first feature map based on the combined image; generating a second feature map based on at least one of: an ambient temperature; a windshield wiper state; an antilock braking system (ABS) state; a traction control system (TCS) state; weather at the vehicle; a wheel slip; an acceleration of the vehicle; a stability control system state; and road condition information received from at least one of a second vehicle and infrastructure; generating a joint feature map based on the first and second feature maps; and setting a road condition of the road in front of the vehicle based on the joint feature map.

DETAILED DESCRIPTION

A vehicle may include a camera configured to capture images within a predetermined field of view (FOV) around an exterior of the vehicle. A perception module may perceive objects around the vehicle and determine locations of the objects.

For example, a camera may be used to capture images including a road in front of the vehicle, and a road condition module can determine a condition of the road based on the images. Alternatively, the road condition module can determine the condition of the road based on input from a light detection and ranging (LIDAR) sensor. Alternatively, the road condition module can determine the condition of the road based on input from a radar sensor.

The road condition module may determine the condition of the road differently, however, based on the input used. For example, for a dry salt covered road, the road condition module may determine that the road is snow covered using images from a camera and determine that the road is dry using input from a LIDAR sensor.

The present application involves a road condition module configured to determine a road condition (e.g., dry, wet, snow covered, icy, etc.) by fusing together multiple different types of input, such as images from one or more cameras, LIDAR data from one or more LIDAR sensors, data from one or more radar sensors, temperature inputs, a state of windshield wipers, a status of an antilock braking system (ABS), a traction control system (TCS) state, weather data, acceleration of a vehicle, ambient air temperature, ambient humidity, etc. This provides an efficient and sophisticated synthesis of different types of input and provides for reliable, robust, and accurate road condition detection.

Referring now toFIG.1, a functional block diagram of an example vehicle system is presented. While a vehicle system for a hybrid vehicle is shown and will be described, the present application is also applicable to non-hybrid vehicles, electric vehicles, fuel cell vehicles, and other types of vehicles. The present application is applicable to autonomous vehicles, semi-autonomous vehicles, non-autonomous vehicles, shared vehicles, non-shared vehicles, and other types of vehicles.

An engine102may combust an air/fuel mixture to generate drive torque. An engine control module (ECM)106controls the engine102. For example, the ECM106may control actuation of engine actuators, such as a throttle valve, one or more spark plugs, one or more fuel injectors, valve actuators, camshaft phasers, an exhaust gas recirculation (EGR) valve, one or more boost devices, and other suitable engine actuators. In some types of vehicles (e.g., electric vehicles), the engine102may be omitted.

The engine102may output torque to a transmission110. A transmission control module (TCM)114controls operation of the transmission110. For example, the TCM114may control gear selection within the transmission110and one or more torque transfer devices (e.g., a torque converter, one or more clutches, etc.).

The vehicle system may include one or more electric motors. For example, an electric motor118may be implemented within the transmission110as shown in the example ofFIG.1. An electric motor can act as either a generator or as a motor at a given time. When acting as a generator, an electric motor converts mechanical energy into electrical energy. The electrical energy can be, for example, used to charge a battery126via a power control device (PCD)130. When acting as a motor, an electric motor generates torque that may be used, for example, to supplement or replace torque output by the engine102. While the example of one electric motor is provided, the vehicle may include zero or more than one electric motor.

A power inverter module (PIM)134may control the electric motor118and the PCD130. The PCD130applies power from the battery126to the electric motor118based on signals from the PIM134, and the PCD130provides power output by the electric motor118, for example, to the battery126. The PIM134may include, for example, an inverter.

A steering control module140controls steering/turning of wheels of the vehicle, for example, based on driver turning of a steering wheel within the vehicle and/or steering commands from one or more vehicle control modules. A steering wheel angle (SWA) sensor (not shown) monitors rotational position of the steering wheel and generates a SWA142based on the position of the steering wheel. As an example, the steering control module140may control vehicle steering via an electronic power steering (EPS) motor144based on the SWA142. However, the vehicle may include another type of steering system. A brake control module150may selectively control (e.g., friction) brakes154of the vehicle based on one or more driver inputs, such as a brake pedal position (BPP)170.

Modules of the vehicle may share parameters via a network162, such as a controller area network (CAN). A CAN may also be referred to as a car area network. For example, the network162may include one or more data buses. Various parameters may be made available by a given module to other modules via the network162.

The driver inputs may include, for example, an accelerator pedal position (APP)166which may be provided to the ECM106. The BPP170may be provided to the brake control module150. A position174of a park, reverse, neutral, drive lever (PRNDL) may be provided to the TCM114. An ignition state178may be provided to a body control module (BCM)180. For example, the ignition state178may be input by a driver via an ignition key, button, or switch. At a given time, the ignition state178may be one of off, accessory, run, or crank.

An infotainment module183may output various information via one or more output devices184. The output devices184may include, for example, one or more displays (non-touch screen and/or touch screen), one or more sets of virtual reality (VR) goggles, one or more sets of augmented reality (AR) goggles, one or more other suitable types of video output devices, one or more speakers, one or more haptic devices, and/or one or more other suitable types of output devices. In various implementations, goggles may include one or more video devices and one or more speakers.

The infotainment module183may output video via the one or more displays, one or more sets of VR goggles, and/or one or more sets of AR goggles. The infotainment module183may output audio via the one or more speakers. The infotainment module183may output other feedback via one or more haptic devices. For example, haptic devices may be included with one or more seats, in one or more seat belts, in the steering wheel, etc. Examples of displays may include, for example, one or more displays (e.g., on a front console) of the vehicle, a head up display (HUD) that displays information via a substrate (e.g., windshield), one or more displays that drop downwardly or extend upwardly to form panoramic views, and/or one or more other suitable displays.

The vehicle may include a plurality of external sensors and cameras, generally illustrated inFIG.1by186. One or more actions may be taken based on input from the external sensors and cameras186. For example, the infotainment module183may display video, various views, and/or alerts on a display via input from the external sensors and cameras186during driving.

As another example, based on input from the external sensors and cameras186, a road condition module187determines a condition of the road (a road condition) in front of the vehicle. The road condition may include, for example, dry, wet, snow covered, ice covered, or another suitable road condition.

One or more modules may take one or more actions based on the road condition. For example, the ECM106may adjust torque output of the engine102based on the road condition. Additionally or alternatively, the PIM134may control power flow to and/or from the electric motor118based on the road condition. Additionally or alternatively, the brake control module150may adjust braking based on the road condition. Additionally or alternatively, the steering control module140may adjust steering based on the road condition. For example, one or more actions may be taken to maximize wheel traction and minimize wheel slip for the road condition.

The vehicle may include one or more additional control modules that are not shown, such as a chassis control module, a battery pack control module, etc. The vehicle may omit one or more of the control modules shown and discussed.

Referring now toFIG.2, a functional block diagram of a vehicle including examples of external sensors and cameras is presented. The external sensors and cameras186(FIG.1) include various cameras positioned to capture images and video outside of (external to) the vehicle and various types of sensors measuring parameters outside of (external to) the vehicle. Examples of the external sensors and cameras186will now be discussed. For example, a forward-facing camera204captures images and video of images within a predetermined field of view (FOV)206in front of the vehicle.

A front camera208may also capture images and video within a predetermined FOV210in front of the vehicle. The front camera208may capture images and video within a predetermined distance of the front of the vehicle and may be located at the front of the vehicle (e.g., in a front fascia, grille, or bumper). The forward-facing camera204may be located more rearward, however, such as with a rear-view mirror at a windshield of the vehicle. The forward-facing camera204may not be able to capture images and video of items within all of or at least a portion of the predetermined FOV of the front camera208and may capture images and video more than the predetermined distance of the front of the vehicle. In various implementations, only one of the forward-facing camera204and the front camera208may be included.

A rear camera212captures images and video within a predetermined FOV214behind the vehicle. The rear camera212may be located at the rear of the vehicle, such as near a rear license plate.

A right camera216captures images and video within a predetermined FOV218to the right of the vehicle. The right camera216may capture images and video within a predetermined distance to the right of the vehicle and may be located, for example, under a right side rear-view mirror. In various implementations, the right side rear-view mirror may be omitted, and the right camera216may be located near where the right side rear-view mirror would normally be located.

A left camera220captures images and video within a predetermined FOV222to the left of the vehicle. The left camera220may capture images and video within a predetermined distance to the left of the vehicle and may be located, for example, under a left side rear-view mirror. In various implementations, the left side rear-view mirror may be omitted, and the left camera220may be located near where the left side rear-Rview mirror would normally be located. While the example FOVs are shown for illustrative purposes, the present application is also applicable to other FOVs. In various implementations, FOVs may overlap, for example, for more accurate and/or inclusive stitching.

The external sensors and cameras186may additionally or alternatively include various other types of sensors, such as light detection and ranging (LIDAR) sensors, ultrasonic sensors, radar sensors, and/or one or more other types of sensors. For example, the vehicle may include one or more forward-facing ultrasonic sensors, such as forward-facing ultrasonic sensors226and230, one or more rearward facing ultrasonic sensors, such as rearward facing ultrasonic sensors234and238. The vehicle may also include one or more right side ultrasonic sensors, such as right side ultrasonic sensor242, and one or more left side ultrasonic sensors, such as left side ultrasonic sensor246. The vehicle may also include one or more light detection and ranging (LIDAR) sensors, such as LIDAR sensor260. The locations of the cameras and sensors are provided as examples only and different locations could be used. Ultrasonic sensors output ultrasonic signals around the vehicle.

The external sensors and cameras186may additionally or alternatively include one or more other types of sensors, such as one or more sonar sensors, one or more radar sensors, and/or one or more other types of sensors.

FIG.3is a functional block diagram of an example implementation of the road condition module187. An image generation module304receives input from the external cameras and sensors186and generates images based on the input, respectively. For example, the image generation module304generates a camera image308including a portion of the road in front of the vehicle based on an image312from a forward-facing camera (e.g.,204). The image generation module304generates a LIDAR image316including a portion of the road in front of the vehicle based on LIDAR data320from in front of the vehicle from the LIDAR sensor260. The image generation module304generates a radar image324including a portion of the road in front of the vehicle based on radar data328from in front of the vehicle from the one or more radar sensors. The image generation module304may also generate one or more other images based on input from one or more other external cameras and/or sensors configured to capture data including the road in front of the vehicle.

FIG.4includes a functional block diagram of an example implementation of the image generation module304. A region of interest (ROI) module404determines an ROI including the road in front of the vehicle in the image312and crops the image312to the ROI to generate the camera image308.

A transform module412transforms the LIDAR data320from the LIDAR sensor260into an initial image416, such as using a LIDAR to image transformation algorithm. An ROI module420determines an ROI including the road of the vehicle in the initial image416and crops the initial image416to the ROI to generate the LIDAR image316.

A transform module424transforms the radar data328from the one or more radar sensors into an initial image428, such as using a radar to image transformation algorithm. An ROI module432determines an ROI including the road of the vehicle in the initial image428and crops the initial image428to the ROI to generate the radar image324.

The image generation module may include one or more transform module that transform other types of camera and/or sensor input into initial images and crop the initial images into ROIs including images of portions of the road in front of the vehicle.

Referring back toFIG.3, a combination module332generates a combined image336by combining the camera image308, the LIDAR image316, and the radar image324. For example, the combination module332may join a bottom edge of the camera image308with top edges of the LIDAR and radar images316and324. The combination module332may vertically align a left edge of the camera image308with a left edge of the LIDAR image316. The combination module332may vertically align a right edge of the camera image308with a right edge of the radar image324.FIG.5includes an illustration of an example of the combined image336at a given time. In various implementations, the combination module332may additionally or alternatively concatenate the images on a single plane and/or superimpose the images.

Referring back toFIG.3, a feature extraction module340generates a sensor feature map344by performing feature extraction on the combined image336. The sensor feature map344includes a stack of matrices. The feature extraction module340may include, for example, a convolutional neural network (CNN) or an image processing module that performs the feature extraction. While the example of a CNN is provided, the present application is also applicable to other types of neural networks and machine learning configured to perform feature extraction.

The road condition module187also includes an information map module348that generates an information feature map352based on data (including multiple different types of information) regarding road condition other than input from the external cameras and sensors186. Like the sensor feature map344, the information feature map352includes a stack of matrices regarding features of the data. Examples of the data regarding road condition include ambient air temperature356, windshield wiper state (e.g., on or off)360, antilock braking system (ABS) state (e.g., on or off)364, traction control system (TCS) state (e.g., on or off)368, weather data372, and other data that can be used to determine a road condition. Other examples of data regarding road condition include wheel slip, vehicle acceleration (lateral and/or longitudinal), stability control system state (e.g., on or off), and information regarding road condition obtained from another vehicle (e.g., via vehicle to vehicle communication) and/or from instrastructure (e.g., via vehicle to infrastructure communication). The data is used collectively (along with the input from the external sensors and cameras186) to more accurately make the road condition determination.

The ambient air temperature356may be measured using a temperature sensor of the vehicle or obtained in another manner, such as with the weather data372. The weather data372may be received via a remote weather source via a network, such as a cellular network, a satellite network, a wireless communication network, another suitable type of network, a mobile device that is connected to the vehicle, or in another suitable manner. The ambient humidity may be measured using a humidity sensor of the vehicle or obtained in another manner, such as with the weather data372. The ABS state364and the TCS state368may be obtained, for example, from the braking control module150and the BCM180, respectively, or from other suitable modules of the vehicle.

As an example, the TCS state368indicates that wheel slip is occurring, which may more commonly occur when the road condition is wet, snowy, or icy. If the ambient temperature356is greater than a predetermined temperature (e.g., 80 degrees Fahrenheit) while the wheel slip is occurring, it is not likely that the roads are snowy or icy as snow and ice would melt. The windshield wiper state360indicating that the windshield wipers are on, however, may indicate that the road condition is wet. Ambient humidity being greater than a predetermined percentage (e.g., 90 percent) may help verify that the road condition is wet. This set of inputs may help more accurately determine that the road condition is wet when considered along with the sensor feature map344.

FIG.6is a functional block diagram of an example implementation of the information map module348. The information map module348includes N categorization modules604-1, . . . ,604-N (collectively categorization modules604) where N is an integer greater than one. The information map module348also includes N feature sheet modules608-1, . . . ,608-N (collectively feature sheet modules608) associated with the categorization modules604, respectively.

The categorization modules604receive N different types of information, respectively, such as356-372discussed above. The categorization modules604generate N pixel expressions612-1, . . . ,612-N based on the N types of information, respectively, and respective mappings of values/states of the respective information to category values.FIG.7includes an example mapping of temperature values to category values for the ambient temperature356. For example, the categorization module604-1may set the category values of the pixel expression612-1to 0 when the ambient temperature356is less than or equal to a first predetermined temperature (T1), to 1 when the ambient temperature356is between the first predetermined value and a second predetermined temperature (T2), to 2 when the ambient temperature356is greater than or equal to the second predetermined temperature but less than a third predetermined temperature (T3), and to 4 when the ambient temperature356is greater than or equal to the third predetermined temperature. A mapping is stored for each of the different types of information. The categorization transforms raw information into meaningful information, speeds up learning, and leads to faster convergence.

The feature sheet modules608generate the N feature sheets616-1, . . . ,616-N based on the pixel expressions612, respectively, and respective mappings of category values to pixel values.FIG.8includes an example mapping of category values to pixel values for the ambient temperature356. A mapping is stored for each of the different types of information.FIG.9includes an example illustration of the feature sheet616-1generated for the ambient temperature356. This translates the information into information that is understandable by a neural network to determine road condition. This also translates the information into mappings that are compatible with the sensor feature map344(e.g., the same dimensions and scale).

A fusion module620fuses the feature sheets616together to generate the information feature map352. For example, the fusion module620may concatenate the feature sheets616to generate the information feature map352.

Referring back toFIG.3, a joining module358joins the sensor feature map344with the information feature map352to produce a joint feature map362. In other words, the joining module358generates the joint feature map362based on the information feature map352and the sensor feature map344. For example, the joining module358may concatenate the sensor feature map344and the information feature map352to generate the information feature map352. An example of the joining is illustrated inFIG.10.

A condition module366determines the road condition370based on the joint feature map362thereby jointly considering the data from the external sensors/cameras186and the different types of information in determining the road condition370. The condition module366may include, for example, a neural network including a plurality of fully connected layers configured to set the road condition370based on the joint feature map362. Examples of the road condition370include dry, wet, snow covered, ice covered, and other suitable road conditions. In various implementations, the condition module366may include a state vector machine configured to set the road condition370based on the joint feature map362.

One or more modules may take one or more actions based on the road condition370as discussed above. For example, the ECM106may selectively adjust torque output of the engine102based on the road condition370. Additionally or alternatively, the brake control module150may selectively adjust braking based on the road condition370. Additionally or alternatively, the PIM134may selectively adjust torque output of one or more electric motors based on the road condition370. Additionally or alternatively, the steering control module140may selectively adjust steering based on the road condition370. Additionally or alternatively, the TCM114may selectively adjust one or more operating parameters of the transmission110based on the road condition370.

FIG.11is a flowchart depicting an example method of determining a condition of a road in front of a vehicle. Control begins with1104where the image generation module304generates the images308,316, and324as described above based on the image312, the LIDAR data320, and the radar data328, respectively.

At1108, the combination module332generates the combined image336by combining the images308,316, and324, as discussed above. At1112, the feature extraction module340extracts features from the combined image336to generate the sensor feature map344, as discussed above. At1116, the information map module348generates the information feature map352based on the inputs, such as356-372, as discussed above. In various implementations,1116may be performed in parallel with1104with1112.

At1120, the joining module358generates the joint feature map based on the sensor feature map344and the information feature map352as discussed above. At1124, the condition module366sets the road condition370based on the joint feature map362. The condition module366selects the road condition from a group consisting of predetermined road conditions, such as dry road, wet road, snow covered road, and ice covered road. At1128, one or more modules control one or more actuators of the vehicle based on the road condition370, as discussed above. Control may return to1104.