Dynamic vibration sensor optics distortion prediction

The present disclosure discloses a system and a method for mitigating image distortion. In an example implementation, the system and the method can receive vehicle state data and vehicle inertial measurement data; generate an image distortion prediction indicative of image distortion within an image captured by the image capture assembly based on the vehicle state data and the vehicle inertial measurement data; and at least one of correct or mitigate the image distortion based on the image distortion prediction.

BACKGROUND

Autonomous vehicles typically include various sensors that provide information regarding the surrounding environment. In some examples, these autonomous vehicles can include camera sensors, radar sensors, and lidar sensors.

In some instances, the camera sensors may incorporate stereoscopic vision, or multi-camera imaging, involves two or more cameras having overlapping fields of view. By viewing the same object or objects from different viewing angles, the observed disparity between the positions of objects in respective ones of the multiple views provides a basis for computing distances to those objects. Some vehicle systems may use stereoscopic vision imaging for the purposes of monitoring the surrounding environment.

DETAILED DESCRIPTION

A system includes a computer including a processor and a memory. The memory includes instructions such that the processor is programmed to receive vehicle state data and vehicle inertial measurement data; generate an image distortion prediction indicative of image distortion within an image captured by the image capture assembly based on the vehicle state data and the vehicle inertial measurement data; and at least one of correct or mitigate image distortion within the image based on the image distortion prediction.

In other features, the processor is further programmed to actuate a vehicle based on the image distortion prediction.

In other features, the image distortion prediction includes at least one of a distortion type or a distortion magnitude.

In other features, the at least one of the distortion type or the distortion magnitude comprises at least one of an image translation, an image rotation, or an image distortion error.

In other features, the processor is further programmed to mitigate the image distortion based on the image distortion prediction by accessing a lookup table based on the at least one of the distortion type or the distortion magnitude and applying an image correction technique corresponding to the at least one of the distortion type or the distortion magnitude.

In other features, the processor is further programmed to update a vehicle routing algorithm based on the image distortion prediction.

In other features, the processor is further programmed to receive strain data associated with an image capture assembly, wherein the strain data is indicative of strain on the image capture assembly; and generate an image distortion prediction indicative of image distortion within an image captured by the image capture assembly based on the vehicle state data, the vehicle inertial measurement data, and the strain data.

In other features, the system includes the image capture assembly disposed over a roof of a vehicle.

In other features, the image capture assembly comprises a housing including a camera.

In other features, the system includes a sensor disposed within the housing.

In other features, the sensor measures at least one of the strain data indicative of strain on the image capture assembly or inertial measurement data of the image capture assembly.

In other features, the camera comprises a stereoscopic camera, and the sensor is attached to a lens assembly of at least one of a first camera or a second camera of the stereoscopic camera.

In other features, the processor is further programmed to modify an image filter parameter of an image perception algorithm based on the image distortion prediction.

In other features, the processor is further programmed to modify a vehicle speed and a vehicle course based on the image distortion prediction.

A method includes receiving vehicle state data and vehicle inertial measurement data; generating an image distortion prediction indicative of image distortion within an image captured by the image capture assembly based on the vehicle state data and the vehicle inertial measurement data; and at least one of correcting or mitigating image distortion within the image based on the image distortion prediction.

In other features, the method further includes actuating a vehicle based on the image distortion prediction.

In other features, the image distortion prediction includes at least one of a distortion type or a distortion magnitude.

In other features, the at least one of the distortion type or the distortion magnitude comprises at least one of an image translation, an image rotation, or an image distortion error.

In other features, the mitigating the image distortion based on the image distortion prediction includes accessing a lookup table based on the at least one of the distortion type or the distortion magnitude and applying an image correction technique corresponding to the at least one of the distortion type or the distortion magnitude.

In other features, the method further includes receiving strain data associated with an image capture assembly, wherein the strain data is indicative of force on the image capture assembly; and generating an image distortion prediction indicative of image distortion within an image captured by the image capture assembly based on the vehicle state data, the vehicle inertial measurement data, and the strain data.

Sensors, e.g. cameras, lidars, etc., often incorporate optical elements, e.g. lenses, which act to improve the path of light to or from a sensor or sub-component of a sensor, e.g. photodiode, emitter, sensor array, etc. Such a sensor may often be mounted onto a vehicle and operate while the vehicle undergoes vibrational loading. Stable sensor data even under varying vibrational loading is essential for use in automated and semi-automated driving systems. Furthermore, multiple sensors output may be compared in a sensor fusion process, stereoscopic vision algorithm, or some other process.

Autonomous vehicles can employ perception algorithms, or agents, to perceive the environment around the vehicle. These vehicles can employ multiple sensors for perceiving aspects of the surrounding environment. The perception algorithms use the sensor data to determine whether one or more vehicle actions should be modified based on the sensor data. For example, the perception algorithms may update a routing algorithm such that the vehicle alters course based on a sensed object within the environment. The present disclosure discloses a system and a method for mitigating image distortion associated with an image capture assembly of vehicle.

FIG. 1is a block diagram of an example vehicle system100. The system100includes a vehicle105, which is a land vehicle such as a car, truck, etc. The vehicle105includes a computer110, vehicle sensors115, actuators120to actuate various vehicle components125, and a vehicle communications module130. Via a network135, the communications module130allows the computer110to communicate with a server145.

The computer110includes a processor and a memory. The memory includes one or more forms of computer-readable media, and stores instructions executable by the computer110for performing various operations, including as disclosed herein.

The computer110may operate a vehicle105in an autonomous, a semi-autonomous mode, or a non-autonomous (manual) mode. For purposes of this disclosure, an autonomous mode is defined as one in which each of vehicle105propulsion, braking, and steering are controlled by the computer110; in a semi-autonomous mode the computer110controls one or two of vehicles105propulsion, braking, and steering; in a non-autonomous mode a human operator controls each of vehicle105propulsion, braking, and steering.

The computer110may include programming to operate one or more of vehicle105brakes, propulsion (e.g., control of acceleration in the vehicle by controlling one or more of an internal combustion engine, electric motor, hybrid engine, etc.), steering, climate control, interior and/or exterior lights, etc., as well as to determine whether and when the computer110, as opposed to a human operator, is to control such operations. Additionally, the computer110may be programmed to determine whether and when a human operator is to control such operations.

The computer110may include or be communicatively coupled to, e.g., via the vehicle105communications module130as described further below, more than one processor, e.g., included in electronic controller units (ECUs) or the like included in the vehicle105for monitoring and/or controlling various vehicle components125, e.g., a powertrain controller, a brake controller, a steering controller, etc. Further, the computer110may communicate, via the vehicle105communications module130, with a navigation system that uses the Global Position System (GPS). As an example, the computer110may request and receive location data of the vehicle105. The location data may be in a known form, e.g., geo-coordinates (latitudinal and longitudinal coordinates).

The computer110is generally arranged for communications on the vehicle105communications module130and also with a vehicle105internal wired and/or wireless network, e.g., a bus or the like in the vehicle105such as a controller area network (CAN) or the like, and/or other wired and/or wireless mechanisms.

Via the vehicle105communications network, the computer110may transmit messages to various devices in the vehicle105and/or receive messages from the various devices, e.g., vehicle sensors115, actuators120, vehicle components125, a human machine interface (HMI), etc. Alternatively or additionally, in cases where the computer110actually comprises a plurality of devices, the vehicle105communications network may be used for communications between devices represented as the computer110in this disclosure. Further, as mentioned below, various controllers and/or vehicle sensors115may provide data to the computer110.

Vehicle sensors115may include a variety of devices such as are known to provide data to the computer110. For example, the vehicle sensors115may include Light Detection and Ranging (lidar) sensor(s)115, etc., disposed on a top of the vehicle105, behind a vehicle105front windshield, around the vehicle105, etc., that provide relative locations, sizes, and shapes of objects and/or conditions surrounding the vehicle105. As another example, one or more radar sensors115fixed to vehicle105bumpers may provide data to provide and range velocity of objects (possibly including second vehicles106), etc., relative to the location of the vehicle105. The vehicle sensors115may further include camera sensor(s)115, e.g. front view, side view, rear view, etc., providing images from a field of view inside and/or outside the vehicle105. The vehicle sensors115may also include inertial measurement units (IMUs) that measure force, angular rate, and/or an orientation associated with the vehicle105.

Within the present disclosure, the vehicle sensors115may comprise active sensors and/or passive sensors. Active sensors, such as lidar and radar sensors, project energy into a surrounding environment and use measured energy reflections to interpret and/or classify objects within the environment. Passive sensors, such as cameras, do not project energy for the purposes of interpretation and/or classification. Each type of sensor may employ optical elements for the purposes of steering electromagnetic radiation, e.g., light, for transmission and/or receiving purposes. In some instances, errors or changes in optics may affect the perceived image and/or point cloud received.

The vehicle105actuators120are implemented via circuits, chips, motors, or other electronic and or mechanical components that can actuate various vehicle subsystems in accordance with appropriate control signals as is known. The actuators120may be used to control components125, including braking, acceleration, and steering of a vehicle105.

In the context of the present disclosure, a vehicle component125is one or more hardware components adapted to perform a mechanical or electro-mechanical function or operation—such as moving the vehicle105, slowing or stopping the vehicle105, steering the vehicle105, etc. Non-limiting examples of components125include a propulsion component (that includes, e.g., an internal combustion engine and/or an electric motor, etc.), a transmission component, a steering component (e.g., that may include one or more of a steering wheel, a steering rack, etc.), a brake component (as described below), a park assist component, an adaptive cruise control component, an adaptive steering component, a movable seat, etc.

In addition, the computer110may be configured for communicating via a vehicle-to-vehicle communication module or interface130with devices outside of the vehicle105, e.g., through a vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2X) wireless communications to another vehicle, to (typically via the network135) a remote server145. The module130could include one or more mechanisms by which the computer110may communicate, including any desired combination of wireless (e.g., cellular, wireless, satellite, microwave and radio frequency) communication mechanisms and any desired network topology (or topologies when a plurality of communication mechanisms are utilized). Exemplary communications provided via the module130include cellular, Bluetooth®, IEEE 802.11, dedicated short range communications (DSRC), and/or wide area networks (WAN), including the Internet, providing data communication services.

The network135can be one or more of various wired or wireless communication mechanisms, including any desired combination of wired (e.g., cable and fiber) and/or wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms and any desired network topology (or topologies when multiple communication mechanisms are utilized). Exemplary communication networks include wireless communication networks (e.g., using Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, vehicle-to-vehicle (V2V) such as Dedicated Short-Range Communications (DSRC), etc.), local area networks (LAN) and/or wide area networks (WAN), including the Internet, providing data communication services.

A computer110can receive and analyze data from sensors115substantially continuously, periodically, and/or when instructed by a server145, etc. Further, object classification or identification techniques can be used, e.g., in a computer110based on lidar sensor115, camera sensor115, etc., data, to identify a type of object, e.g., vehicle, person, rock, pothole, bicycle, motorcycle, etc., as well as physical features of objects.

FIG. 2illustrates an example image capture assembly202attached to the vehicle105. As shown, the image capture assembly202may be positioned over a roof of the vehicle105. However, the image capture assembly202may be located about the vehicle105in other implementations. As explained in greater detail below, the image capture assembly202captures images within a field of view (FOV)204about an environment of the vehicle105. The image capture assembly202can include a housing204that houses, e.g., contains, the various components of the sensor apparatus. In one or more implementations, the housing204may comprise a fiber composite structure, a space frame structure, or the like.

As the vehicle105traverses a path, e.g., roadway, the image capture assembly202captures images of an environment. For instance, the image capture assembly202may capture images including depictions of possible objects of interest within the path of the vehicle, such as a pothole208. The images are provided to the computer105such that the computer105can classify objects within the image and actuate the vehicle105in response to the classification.

FIG. 3Ais a block diagram illustrating an example image capture assembly202according to an example implementation. The sensor apparatus202is communicatively connected to the computer110and includes one or more cameras302-1,302-2. As a matter of convenience, only one camera is illustrated. However, it is understood that the image capture assembly202may include additional cameras in other implementations. In one or more implementations, the image capture assembly202may include additional sensors, such as lidar sensors, that may utilize optics in both light transmission and light receival. Each sensor's output may be compared and/or fused with one another before or after object detection. An example of low level sensor fusion before object detection is multi-view imaging. For instance, the vehicle system100can use various sensor fusion techniques to compare and/or fuse the sensor output with one another. For instance, the sensor fusion techniques may include, but are not limited to, competitive sensor fusion techniques, complementary sensor fusion techniques, and/or cooperative sensor fusion techniques.

As an example, each camera302-1,302-2provides multi-view imaging capability, e.g., stereoscopic imaging capability. For instance, the cameras302-1,302-2are operated as a stereo camera pair. Each camera302-1,302-2includes a lens assembly304including one or more lenses, an image sensor306that is placed in optical alignment with the lens assembly304, and an image processor308, which may be a pre-processor or other processing circuit configured to operate the image sensor306, provide read-out of image sensor data, control exposure times, etc.

In another example, a lidar sensor projects electromagnetic radiation into a FOV of the lidar sensor and measures the reflected electromagnetic radiation. Processors associated with the lidar sensor use the measured return times and wavelengths to generate a three-dimensional representation of one or more objects within the FOV. Similarly, lidar sensors use optics for the purposes of focusing and/or receiving electromagnetic radiation.

The image capture assembly202also includes an image processor310, which may comprise one or more microprocessor-based, DSP-based, ASIC-based, and/or FPGA-based circuits. In an implementation, the image processor310comprises digital processing circuitry that performs stereo image correlation processing for stereo images as captured by the camera302-1,302-2. The image processor310can perform multi-view image processing, such as generating depth maps and determining ranges to objects within the imaged scene.

In an example implementation, the image processor receives successive images, also referred to as “frames,” from each of the camera302-1,302-2. Here, a “frame” or “image” comprises the image data, e.g., pixel data, from the image sensor for a given image capture. For example, the image processor310receives a pair of images, one from the first camera302-1and one from the camera302-1, during each one in a succession of capture intervals. The frame rate or capture rate determines the rate at which new images are captured by the camera302-1,302-2.

The image processor310performs three-dimensional (3D) ranging for the captured images, based on performing correlation processing across corresponding image pairs from the cameras302-1,302-2. The cameras302-1,302-2may be disposed along a horizontal line, e.g. epipolar geometry, at some separation distance, for operation as left-image and right-image cameras. The “disparity” or displacement seen between the pixel position(s) in the left image and the right image, for the same imaged pixel of an object or feature, provides the basis for determining 3D ranging information, as is understood by those of ordinary skill in the art. For instance, in some implementations, grid and/or global search algorithms may be improved with better camera image frame alignment. The horizontal distance between the cameras302-1,302-2may be referred to as a “baseline.”

In one or more embodiments, the image processor310includes or is associated with a storage device. The storage device will be understood as comprising a type of computer-readable medium—e.g., FLASH memory or EEPROM—that provides non-transitory storage for a computer program. The image processor310is adapted to carry out the corresponding processing taught herein based on its execution of computer program instructions.

The image capture assembly202further includes a communication module312that communicatively connects the computer110to the image capture assembly202, thereby allowing the image capture assembly202to provide image data and/or derived object detection data to the computer110, and allowing the computer110to provide the image capture assembly202with computer-readable instructions. The communication module312could include one or more mechanisms by which the image capture assembly202may communicate, including any desired combination of wireless (e.g., cellular, wireless, satellite, microwave and radio frequency) communication mechanisms and any desired network topology (or topologies when a plurality of communication mechanisms are utilized). Exemplary communications provided via the communication module312include cellular, Bluetooth®, IEEE 802.11, dedicated short range communications (DSRC), and/or wide area networks (WAN), including the Internet, providing data communication services.

During operation, the image processor310and/or the computer110processor estimates misalignments, e.g., mechanical misalignments, in and/or between the cameras302-1,302-2, which is described in greater detail below. The misalignments may be caused by vehicle acceleration, the vehicle105experiencing a force inducing event, and the like. As shown, one or more sensors115are communicatively connected to the computer110via a Controller Area Network (CAN) bus320such that the sensors115can provide vehicle state data to the computer110. For instance, the vehicle state data can include, but is not limited to, vehicle acceleration, vehicle speed, pedal position, engine revolutions-per-minute (RPM), vehicle inertial measurement data, and the like.

As illustrated inFIG. 3A, the image capture assembly202also includes a sensor316. In an example implementation, the sensor316comprises a strain gauge that measures strain on an object. The strain gauge can be a suitable strain sensor or related sensor types that measure strain on a known geometry. For instance, the strain gauge may include, but is not limited, optical fiber strain gauges, mechanical strain gauges, or electrical strain gauges. The sensor316may be mounted to the housing204to measure the strain on the housing204and/or a body structure of the vehicle105. In an implementation, the image capture assembly202may also include a sensor318that is attached to one or both of the cameras302-1,302-2and/or camera optics, e.g., lens assembly. For instance, the sensor318may be attached to the lens assembly304to measure forces on the lens assembly304. In an example implementation, the sensor318may comprise an inertial measurement unit (IMU) that measures an acceleration, angular rate, and/or an orientation associated with the cameras302-1,302-2. In another example implementation, the sensor318may comprise a suitable strain gauge that measures strain on the cameras302-1,302-2. While only a single sensor316and a single sensor318are illustrated, it is understood that the image capture assembly202can employ any number of sensors318.

The image processor310and/or the processor of the computer110receive measurement data from the sensors115,316,318and estimate lens assembly304accelerations and/or forces to generate a displacement and stress prediction indicative of the displacement and stress on the lens assembly304. The image processor310and/or the computer110processor can generate the displacement and stress prediction based on suitable finite element analysis. For instance, finite element analysis may use lens assembly geometry, boundary conditions, material properties, inertial measurement data, vehicle state data, and/or strain data associated with the vehicle105and/or the image capture assembly202to provide a displacement and stress prediction through empirical testing and/or analysis. Furthermore, discrete time steps of the finite element analysis may further be interpolated or extrapolated to the corresponding time frame of the camera's image capture, inclusive of the rolling shutter frame by frame exposure time. Lastly, the finite element model's prediction may be incorporated into a trained neural network or other algorithm to improve and enable real time prediction of the state of the lens assembly.

Based on the prediction, the image processor310and/or the computer110processor generate a distortion prediction indicative of a distortion of an image received by the cameras302-1,302-2.

In an implementation, the image processor310and/or the computer110processor can use a lookup table relating predicted lens displacement and stress to predicted image distortion. In another implementation, the image processor310and/or the computer110processor can use machine learning techniques to predict image distortion based on the predicted lens displacement and stress. The machine learning techniques may be trained and/or the lookup table may be programmed based on ray tracing optics simulation. The output of the ray tracing optics simulation are image distortion prediction(s). These image distortion predictions may include a distortion type and/or distortion magnitude. For instance, the distortion type and/or distortion magnitude include, but are not limited to, an image translation, an image rotation, or an image distortion error inclusive of defocus, tilt, spherical aberration, Astigmatism, comatic aberration, shift of the image plane, distortion (barrel, pincushion, mustache), Petzval field curvature, chromatic aberration, point spread function, or the like. Within the present disclosure, distortion may be defined as an optical aberration, such as a deviation from rectilinear projection, which a property of the optical systems causes light to be spread out over some region of space rather than focused to a point.

FIG. 3Bis a diagram illustrating an example object detected by a sensor assembly, such as the image capture assembly202. As illustrated in steps (a)-(d) different impact loads cause the lens assemblies304to change differently with respect to one another. For instance,FIG. 3B-aillustrates barrel distortion of varying magnitudes based on the respective lens assembly304. As described herein, the image processor310and/or the computer110correct or mitigate image distortion within the image based on an image distortion prediction.

In other examples, the image distortion associated with the lens assembly304may be computed based on empirical testing in conjunction with imaging of a calibration pattern under varying time histories of amplitude, acceleration, frequency, and the like. In some implementations, the machine learning techniques and/or the lookup table may be initialized at the server145and provided to the computer110via the network135. However, it is understood that the machine learning techniques and/or the lookup table may be initialized at any suitable server and provided to the computer110via any suitable communication network.

The image processor310and/or the computer110processor uses suitable computer vision techniques for the purposes of identifying objects and/or object types within the FOV204of the image capture assembly202. Suitable computer vision techniques can include, but are not limited to, computer vision algorithms or machine learning techniques used for image processing for object detection and/or object classification to allow an autonomous vehicle to navigate its environment.

In some implementations, the image processor310and/or the computer110processor correct and/or mitigate image distortion of the received image according to the distortion type and/or distortion magnitude, which results in an updated image. In some implementations, the image processor310and/or the computer110processor apply image correction for certain distortion types and/or distortion magnitudes. For instance, the image processor310and/or the computer110processor may use a lookup table relating distortion types and/or distortion magnitudes to image correction techniques and/or lidar point cloud correction techniques.

The image processor310and/or the computer110may use the following equations to correct radial distortion associated with the image:
xcorrected=x(1+k1*r2+k2*r4+k3*r6)  Equation 1,
ycorrected=y(1+k1*r2+k2*r4+k3*r6)  Equation 2,

where xcorrectedand ycorrectedrepresent corrected pixel locations, x and y represent undistorted pixel locations, k1, k2, and k3represent radial distortion coefficients of the lens assembly304, and r2represents x2+y2.

The image processor310and/or the computer110may use the following equations to correct tangential distortion associated with the image:
xcorrected=x+[2*p1*x*y+p2*(r2+2*x2)]  Equation 3,
ycorrected=y+[p1*(r2+2*y2)+2*p2*x*y]  Equation 4,

where xcorrectedand ycorrectedrepresent corrected pixel locations, x and y represent undistorted pixel locations, k1, k2, and k3represent tangential distortion coefficients of the lens assembly304, and r2represents x2+y2.

In some implementation in which the received image cannot be corrected based on the distortion type, distortion magnitude, a characterization of a point spread function form, and/or interactions amongst multiple distortion modes (C1*contrast+C2*resolution+C3*contrast*resolution>threshold?), the image processor310and/or the computer110processor update image perception algorithms used to navigate the vehicle105based on the received image(s). The variables C1, C2, and C3 can comprise coefficients that weight and/or normalize distortion metrics with respect to a predefined distortion threshold. The predefined distortion threshold may be based on statistical evaluation of camera distortion parameters relative to object detection accuracy, false positive rate, R2, etc. For instance, the image processor310and/or the computer110processor can bin the received image to reduce the image size, modifying image filter parameters, e.g., Gaussian, median, or bilateral image filters, etc., or other computer vision workflow modification. The computer110may also initiate one or more vehicle105actions based on the updated image, distortion type, and/or distortion magnitude. A vehicle105action may include, but is not limited to, modifying vehicle105speed, generating an alert, modifying a vehicle105course, and the like.

FIG. 4is a flowchart of an exemplary process400for mitigating image distortion. Blocks of the process400can be executed by the computer110or the image processor310. The process400begins at block405in which a determination is made of whether has been received from the image capture assembly202. If no image has been received, the process400returns to block405. In an example implementation, the computer110may apply static distortion correction, e.g. barrel distortion correction, to the received image from the static calibration process to the dynamic loading correction prediction. Additionally or alternatively, the computer110may apply quasi-static distortion parameter correction to the received image. One example is temperature effects on the lens distortion that may be characterized while static and possibly incorporated into the finite element analysis (FEA) model where some plastics change mechanical response (e.g. viscoelastic mode) with temperature/loading rates which may be model as a Prony series Otherwise, at block410in which vehicle state data is received. Vehicle state data can include, but is not limited to, vehicle acceleration, vehicle speed, pedal position, engine revolutions-per-minute (RPM), inertial measurement data, and the like.

At block415, inertial measurement data associated with the vehicle105is received. At block420, strain data associated with the vehicle105and/or the image capture assembly202is received. At block425, stress prediction for the image capture assembly202, e.g., cameras302-1,302-2is generated. In an example implementation, the camera assembly displacement and stress prediction is generated using finite element analysis that uses the vehicle state data, the inertial measurement data, and/or the strain data as input.

At block430, an image distortion prediction is generated based on the stress prediction. For instance, a lookup table and/or machine learning techniques can be used to relate the stress prediction to the image distortion prediction. At block435, image distortion associated with received image is mitigated. In an example implementation, the image processor310and/or the computer110processor can access a lookup table for image correction techniques corresponding to the distortion types and/or distortion magnitudes. In another example implementation, the image processor310and/or the computer110processor modify vehicle perception algorithms to account for the distortion types and/or distortion magnitudes.

At block440, one or more vehicle actions are modified based on the image distortion. In an example implementation, one or more vehicle routing algorithms may be modified based on the image distortion. For instance, a vehicle routing algorithm may be updated to slow a speed of the vehicle105relative to its current speed. In another instance, an alert may be generated to alert an operator and/or passengers to the image distortion. At block445, the vehicle is actuated based on the modified vehicle actions. For example, the computer110may cause the vehicle105to alter the path of the vehicle105according to the updated vehicle routing algorithm. In some instances, post processing techniques can be executed to validate that the process400is operating. For example, the post processing techniques may include comparing a street sign before and after the vehicle105experiences a force-inducing event, such as the vehicle105driving over an object or driving through a pothole. The post processing techniques may compare an image of the street sign before and after the force-inducing event to ensure the comparison of the images is within a predefined threshold, e.g., a sufficient amount of pixels representing the street sign match.

With regard to the media, processes, systems, methods, heuristics, etc. described herein, it should be understood that, although the steps of such processes, etc. have been described as occurring according to a certain ordered sequence, such processes may be practiced with the described steps performed in an order other than the order described herein. It further should be understood that certain steps may be performed simultaneously, that other steps may be added, or that certain steps described herein may be omitted. In other words, the descriptions of processes herein are provided for the purpose of illustrating certain embodiments, and should in no way be construed so as to limit the claims.