Patent Description:
<CIT> discloses systems and methods for autonomous vehicle parking. The method includes identifying parking parameters for parking an autonomous vehicle and receiving parking space data of one or more parking spaces. A parking space of the one or more parking spaces is identified based on the parking parameters and the parking space data for parking the autonomous vehicle.

<CIT> discloses methods and systems for controlling parking of an autonomous vehicle. <CIT> discloses a system and a method for determining a parking space based on parking space information. <CIT> discloses a parking control system and a control method thereof. <CIT> discloses a method for providing parking information regarding free parking spaces within at least one city block. <CIT> discloses a parking space recommendation method which can utilize a correlation relationship between parking lots, parking floors, and parking spaces to achieve an accurate parking space recommendation.

The present disclosure provides a method, a system and a computer readable storage medium according to the independent claims. Embodiments are given in the subclaims, the description and the drawings.

This document describes techniques and systems for selecting a parking space using a probabilistic approach and for subsequently parking a host vehicle, according to the appended claims.

This document also describes methods performed by the above-summarized system and other configurations set forth herein and computer-executable instructions and means for performing these methods.

The details of one or more aspects of techniques and systems to select a parking space using a probabilistic approach are described in this document with reference to the following figures. The same numbers are often used throughout the drawings to reference like features and components:.

Some vehicles use sensors (e.g., vision-based, radar, lidar, or ultrasonic systems) to provide autonomous or automated parking. These autonomous or automated parking systems generally use back-in parking techniques and need to pass a parking space to confirm the space's availability and dimensions.

Other vehicles can provide automated parking assistance by communicating with infrastructure sensors. For example, a car may be equipped with communication devices (e.g., Vehicle-to-Everything (V2X) systems) to communicate with infrastructure sensors in a parking area. Such techniques select a parking space based on human factors (e.g., proximity to a building entrance or parking area entrance).

In contrast, this document describes techniques and systems to select a parking space using a probabilistic approach, in accordance with the appended claims.

As another example, which does not fall within the scope of the claims, the parking system can determine whether a parking space (e.g., the selected parking space from the previous example) is available. Sensor data can be used to determine a lateral distance and longitudinal distance associated with the selected parking space. The parking system can determine whether the lateral distance and the longitudinal distance are greater than a minimum inner turning radius of the host vehicle. If the lateral distance and the longitudinal distance are greater than the minimum inner turning radius, the assisted-driving or autonomous-driving system can control the host vehicle to park in the selected parking space using a single-turn maneuver. If the lateral distance is not greater than the minimum inner turning radius, but the longitudinal distance is greater than a longitudinal threshold, the assisted-driving or autonomous-driving system can control the host vehicle to park in the selected parking space using a two-turn maneuver. In this way, parking systems can control the host vehicle to perform a practical parking maneuver for crowded or congested parking lots based on parking-space characteristics.

<FIG> illustrates an example environment <NUM> in which a parking system <NUM> of a vehicle <NUM> (e.g., a host vehicle) can select a parking space <NUM> using a probabilistic approach in accordance with the techniques of this disclosure. In the depicted environment <NUM>, the vehicle <NUM> is in a parking lot or other environment that includes multiple parking spaces <NUM>. The parking spaces <NUM> are illustrated in <FIG> as being perpendicular to a travel path of the vehicle <NUM>. In other implementations, the parking spaces <NUM> can be at an angle or parallel to the travel path of the vehicle <NUM>. The environment <NUM> includes other vehicles <NUM> parked in some of the parking spaces <NUM>. The environment <NUM> also includes multiple available spaces <NUM>; in the depicted environment <NUM>, there are four available spaces <NUM> in front of the vehicle <NUM>.

Although illustrated as a passenger truck, the vehicle <NUM> can represent other types of motorized vehicles (e.g., a car, an automobile, a motorcycle, a bus, a tractor, a semi-trailer truck), watercraft (e.g., a boat), or aircraft (e.g., an airplane). Similarly, the other vehicles <NUM> can be other types of motorized vehicles, watercraft, aircraft, or other objects located in the parking spaces <NUM> (e.g., dumpsters, shopping carts).

The vehicle <NUM> includes one or more sensors <NUM> and the parking system <NUM>. In the depicted environment <NUM>, the sensors <NUM> are mounted to, or integrated within, a front portion of the vehicle <NUM>. As described in greater detail below, the sensors <NUM> can include camera systems, radar systems, lidar systems, or ultrasonic systems. The sensors <NUM> can provide sensor data regarding the parking spaces <NUM>, the other vehicles <NUM>, and the available spaces <NUM> to the parking system <NUM>.

In the depicted implementation, the sensors <NUM> are mounted on the front of the vehicle <NUM> and provide parking-space characteristics for the available spaces <NUM>. The sensors <NUM> can detect the parking-space characteristics from any exterior surface of the vehicle <NUM>. For example, vehicle manufacturers can integrate a radar system, a lidar system, camera, or ultrasonic sensor into a bumper, side mirror, headlights, or any other interior or exterior location where objects and parking spaces <NUM> require detection. In some cases, the vehicle <NUM> includes multiple sensors and/or sensor types, such as a radar system and a camera, that provide a larger instrument field-of-view or improved detection of different parking-space characteristics. In general, vehicle manufacturers can design the locations of the sensors <NUM> to provide a particular field-of-view that encompasses a region of interest. Example fields-of-view include a <NUM>-degree field-of-view, one or more <NUM>-degree fields-of-view, and so forth, which can overlap or be combined into a field-of-view of a particular size.

The parking system <NUM> can provide assisted or autonomous parking to a driver of the vehicle <NUM>. For example, the parking system <NUM> can identify a selected parking space (e.g., an optimal parking space) and a parking maneuver based on parking-space characteristics determined from the sensor data. The parking-space characteristics can include a width, an entry turning radius, and a longitudinal distance to each available space <NUM>. As another example, the parking system <NUM> can provide an input to an assisted-driving or autonomous-driving system to park the vehicle <NUM> in one of the available spaces <NUM>.

The parking system <NUM> can include a parking space selector <NUM> and a parking maneuver selector <NUM>. The parking system <NUM>, the parking space selector <NUM>, and the parking maneuver selector <NUM> can be implemented using hardware, software, firmware, or a combination thereof. The parking space selector <NUM> can identify the available spaces <NUM> and select a parking space among the available spaces <NUM> for the vehicle <NUM>. In this way, the parking space selector <NUM> can select a parking space in crowded parking lots and allow the vehicle <NUM> to perform a more-natural and more-practical front-end parking maneuver. The parking maneuver selector <NUM> can determine a maneuver type (e.g., front-in parking, back-in parking, single-turn maneuver, two-turn maneuver) and maneuver path for parking the vehicle <NUM> in the selected parking space. In this way, the parking maneuver selector <NUM> can control the vehicle <NUM> to perform a parking maneuver without having to pass it.

<FIG> illustrates another example environment <NUM> in which the parking system <NUM> can select a parking space or parking maneuver based on parking-space characteristics in accordance with techniques of this disclosure. Like the environment <NUM> of <FIG>, the environment <NUM> depicts the vehicle <NUM> in a parking lot with multiple parking spaces <NUM>. The parking lot also includes other vehicles <NUM> and several available spaces <NUM>.

Using the sensors <NUM>, the parking system <NUM> can determine parking-space characteristics associated with the available spaces <NUM>. The parking-space characteristics can include a width <NUM>, an entry turning radius <NUM>, and a longitudinal distance <NUM> associated with each available space <NUM>. The parking system <NUM> can measure the width <NUM> associated with an available space <NUM> as approximately the distance between the other vehicles <NUM> parked in the adjacent parking spaces. If another vehicle <NUM> is not parked in an adjacent parking space, then the parking system can use a predetermined distance offset from the parking-space line as an endpoint for measuring the width <NUM>.

The entry turning radius <NUM> represents the radius of the travel path to enter the available space <NUM> from the current lateral position of the vehicle <NUM>. The entry turning radius <NUM> can, for example, be defined using a longitudinal center of the vehicle <NUM> and a lateral center <NUM> of the available space. The entry turning radius <NUM> can be dependent on the width <NUM> and the longitudinal distance <NUM>. The longitudinal distance <NUM> can also represent a distance from the front of the vehicle <NUM> to the lateral center <NUM> of the available space <NUM>. The longitudinal distance <NUM> can also be measured as the distance from the longitudinal position of the rear axle of the vehicle <NUM> to a left edge of the intended parking position of the vehicle <NUM> within the available space <NUM>. The intended parking position can be defined to place the vehicle <NUM> in a longitudinal center and the lateral center <NUM> of the available space <NUM>. The parking system <NUM> can use different reference points to define or measure the width <NUM>, the entry turning radius <NUM>, and the longitudinal distance <NUM> associated with the available spaces <NUM>.

The parking system <NUM> can also determine other parking-space characteristics associated with the available spaces <NUM>. For example, the parking system <NUM> can determine a lateral distance <NUM> associated with the parking space. The lateral distance <NUM> can indicate a distance between another vehicle <NUM> in an adjacent parking space and the vehicle <NUM>. In particular, the parking system <NUM> can measure the distance from an inner edge <NUM> of the rear axle (e.g., the outside of the rear axle nearest the available space <NUM>) to the nearest portion of the other vehicle <NUM> in the adjacent parking space. The lateral distance <NUM> can also be measured from a predetermined offset <NUM> (e.g., a safety distance) from the edges of the parking spaces <NUM>. Alternatively, the lateral distance <NUM> can be measured as the inner edge <NUM> of the rear axle to an offset distance (e.g., the longitudinal distance between the front axle and rear axle of the vehicle <NUM>) from the nearest portion of the other vehicle <NUM> in the adjacent parking space.

The parking system <NUM> can also determine a space depth (e.g., a longitudinal depth of each available space <NUM>), space type (e.g., handicapped, compact car, reserved, electric-vehicle only, autonomous-only), neighboring vehicle classification, and shading classification. The neighboring vehicle classification can identify the type of vehicles in adjacent parking spaces (e.g., luxury or expensive vehicles, compact vehicles). The shading classification can identify whether any shade is currently available or will be available during an expected parking duration. The parking system <NUM> can also consider other characteristics (e.g., distance to a building associated with the parking lot or a programmed destination, distance from parking lot entrance or exit, parking-space slope).

As described in greater detail below, the parking space selector <NUM> can use the parking-space characteristics to determine a selected parking space among multiple available spaces <NUM>. Similarly, the parking maneuver selector <NUM> can use the parking-space characteristics to determine a maneuver type and maneuver path for controlling the operation of the vehicle <NUM> to park within the selected parking space.

<FIG> illustrates an example configuration of a vehicle with a parking system that can select a parking space using a probabilistic approach. As described for <FIG>, the vehicle <NUM> includes the sensors <NUM> and the parking system <NUM>, which includes the parking space selector <NUM> and the parking maneuver selector <NUM>. In addition, the vehicle <NUM> can include one or more communication devices <NUM>, one or more processors <NUM>, computer-readable storage media (CRM) <NUM>, and a control interface <NUM> to one or more vehicle-based systems, including one or more assisted-driving systems <NUM> and one or more autonomous-driving system <NUM>.

The communication devices <NUM> can include a sensor interface and a vehicle-based system interface. The sensor interface and the vehicle-based system interface can transmit data (e.g., radar data, range computations, and other parking-space characteristics associated with the available spaces <NUM>) over a communication bus of the vehicle <NUM>, for example, when the individual components of the sensors <NUM> and/or the parking system <NUM> are integrated within the vehicle <NUM>.

The processors <NUM> (e.g., an energy processing unit or electronic control unit) can be a microprocessor or a system-on-chip. The processors <NUM> can execute instructions stored in the CRM <NUM>, on one or more disks, memories, or other non-transitory computer-readable storage medium. For example, the processor <NUM> can process sensor data from the sensors <NUM> and execute instructions loaded from the CRM <NUM> to cause the processor <NUM> to determine parking-space characteristics for the available spaces <NUM>. The instructions may cause the processor <NUM> to be configured to select a parking space using the parking system <NUM> and/or generate a parking maneuver, including the maneuver type and maneuver path, for at least one automotive system. For example, the processor <NUM> can execute the instructions on the CRM <NUM> to configure the processor <NUM> to control, based on sensor data, an autonomous or semi-autonomous driving system of the vehicle <NUM> to cause the vehicle <NUM> to park in a selected parking space.

The parking system <NUM> can be stored in the CRM <NUM>. As described for <FIG>, the parking system <NUM> can include the parking space selector <NUM> and the parking maneuver selector <NUM>. The parking space selector <NUM> can identify the available spaces <NUM> and select a parking space (e.g., an optimal parking space) for the vehicle <NUM>. The selected parking space can be presented to the driver of the vehicle <NUM> on a display (e.g., an overlay on a photographic or video feed of the parking environment or a graphical representation of the parking environment). The driver can then navigate and park in the selected parking space. The driver can also provide an input (e.g., via voice or touch input) to the parking system <NUM> to have the assisted-driving system <NUM> or the autonomous-driving system <NUM> perform the parking maneuver. In this way, the parking space selector <NUM> can identify a parking space in crowded parking lots and cause the vehicle <NUM> to perform a more-natural and more-practical parking maneuver without having to pass the selected parking space.

The parking maneuver selector <NUM> includes a maneuver type selector <NUM> and a maneuver path selector <NUM>. The maneuver type selector <NUM> can determine a maneuver type (e.g., front-in parking, back-in parking, single-turn maneuver, two-turn maneuver) for parking in the selected parking space. For example, the maneuver type selector <NUM> can determine, based on the parking-space characteristics, that the vehicle <NUM> is unable to perform a single-turn maneuver into the selected parking space because the entry turning radius <NUM> is smaller than the minimum inner turning radius of the vehicle <NUM>. The maneuver type selector <NUM> can also determine, based on driver preferences or input, to perform a single- or two-turn maneuver followed by a back-in movement to park in the selected parking space.

The maneuver path selector <NUM> can determine a maneuver path for parking in the selected parking space. As described in greater detail below, the maneuver path selector <NUM> can determine turning radii for the maneuver path to safely park the vehicle <NUM>. In some implementations, the maneuver path selector <NUM> can output a suggested maneuver path to a display for the driver to follow for entry into the selected parking space. In this way, the maneuver type selector <NUM> and the maneuver path selector <NUM> can control the vehicle <NUM> to perform parking maneuvers for crowded or congested parking lots.

The vehicle <NUM> also includes the control interface <NUM> to one or more vehicle-based systems, which individually or in combination provide a way for receiving a parking-space selection and parking maneuver to control the vehicle <NUM>. Some examples of vehicle-based systems to which the control interface <NUM> supplies parking information include the assisted-driving system <NUM> and the autonomous-driving system <NUM>; each may rely on information output from the parking system <NUM>.

For example, the vehicle-based systems may rely on data, which is communicated via the communication devices <NUM> and obtained from the sensors <NUM>, to operate the vehicle <NUM> (e.g., performing a single-turn or two-turn parking maneuver). Generally, the control interface <NUM> can use data provided by the parking system <NUM> and/or sensors <NUM> to control operations of the vehicle <NUM> to park in selected parking spaces. The assisted-driving system <NUM> can alert a driver of a selected parking space via a display and/or perform a parking maneuver into the selected parking space. As selected parking space.

<FIG> illustrates an example method <NUM> (which does not fall within the scope of the claims) of a parking system to select a parking space using a probabilistic approach. Method <NUM> is shown as operations (or acts) performed, but not necessarily limited to the order or combinations in which the operations are shown herein. Further, any one of one or more of the operations may be repeated, combined, or reorganized to provide other methods. In portions of the following discussion, reference may be made to the environment <NUM> of <FIG>, and entities detailed in <FIG>, reference to which is made for example only. The techniques are not limited to performance by one entity or multiple entities.

At <NUM>, it is determined whether parking spaces are available in front of a host vehicle using sensor data obtained from a sensor of the host vehicle. For example, the parking system <NUM> or the parking space selector <NUM> can determine whether there are available spaces <NUM> in front of the vehicle <NUM> among the parking spaces <NUM> within the environment <NUM>. The available spaces <NUM> can be identified using sensor data obtained from the sensors <NUM>. The sensors <NUM> can include radar systems, lidar systems, ultrasonic systems, or vision-based systems. The available spaces <NUM> can also be identified based on data obtained from external sensors, including infrastructure sensors, drone-based sensors, or sensors installed on the other vehicles <NUM> near the vehicle <NUM> or within the environment <NUM>.

The parking spaces <NUM> can be approximately perpendicular or at an angle to a travel path of the vehicle <NUM>. In other environments, the parking spaces <NUM> can be approximately parallel to the travel path of the vehicle <NUM>.

At <NUM>, parking-space characteristics of each available parking space are determined. For example, the parking system <NUM> or the parking space selector <NUM> can use the sensor data to determine parking-space characteristics of the available spaces <NUM>. The parking-space characteristics include a width, entry turning radius, and a longitudinal distance to the available space <NUM>. The parking-space characteristics can also include at least one of a space depth, space type, neighboring vehicle classification, or shading classification for the available spaces <NUM>.

At <NUM>, a selected parking space is determined among the parking spaces based on the parking-space characteristics. For example, the parking system <NUM> or the parking space selector <NUM> can determine a selected parking space among the available spaces <NUM> based on the parking-space characteristics. As described in greater detail with respect to <FIG>, the selected parking space can be determined using conditional probability distributions for the parking-space characteristics and an application of the Bayesian theorem to the conditional probability distributions for the parking-space characteristics. The selected parking space can be determined using a machine-learned model, a reinforced learning model, or a deep learning model that is configured to receive the sensor data as input to infer the parking-space characteristics used to determine the selected parking space.

At <NUM>, the operation of the host vehicle is controlled using an assisted-driving or autonomous-driving system to park in the selected parking space. For example, the parking system <NUM> or the parking maneuver selector <NUM> can control operation of the vehicle <NUM> to park in the selected parking space. The vehicle <NUM> can be controlled using the assisted-driving system <NUM> or the autonomous-driving system <NUM>. The vehicle <NUM> can park via a front-in parking maneuver, which can include a single-turn or two-turn maneuver path. Alternatively, the vehicle <NUM> can park in the selected parking space by performing a back-in parking maneuver that approximately mirrors a front-in parking maneuver for a parking space opposite the selected parking space.

<FIG> illustrates a flowchart <NUM> of a method for selecting a parking space using a probabilistic approach, according to the invention. The parking system of <FIG> can, for example, be the parking system <NUM> and/or the parking space selector <NUM> of <FIG> and <FIG>. The output of the flowchart <NUM> is a selected parking space <NUM>. The selected parking space <NUM> can be displayed to the driver of vehicle <NUM> and/or provided as an input to the parking system <NUM> to determine a parking maneuver, which is described in greater detail with respect to <FIG>.

At <NUM>, the parking system <NUM> can determine the number of available spaces <NUM> in front of the vehicle <NUM> along its current travel path. The number, n, of available spaces <NUM> can be identified using sensor data from the sensors <NUM>. As described above, the sensors <NUM> can include radar systems, lidar systems, ultrasonic systems, vision-based systems, or other types of sensor systems.

At <NUM>, the parking system <NUM> can determine parking-space characteristics associated with each available space <NUM>. The parking-space characteristics can be determined using the sensor data from the sensors <NUM> or data from external sensors. The parking-space characteristics include the width <NUM> (W), entry turning radius <NUM> (TR), and longitudinal distance <NUM> (Dis) to the available space <NUM>. In other implementations, the parking system <NUM> can determine and utilize other parking-space characteristics (e.g., space depth, space type, neighboring vehicle classification, or shading classification).

The parking system <NUM> can store conditional probability distributions <NUM> associated with the parking-space characteristics in the CRM <NUM>. The conditional probability distributions <NUM> identify how probable an available space <NUM> is likely to be chosen as the selected parking space <NUM> (Sel) given its parking-space characteristics. For example, the width <NUM> can have a conditional probability distribution (e.g., P(W|Sel)) with a mean of <NUM> and a variance of <NUM>. The entry turning radius <NUM> can have a conditional probability distribution (e.g., P(TR|W, Dis, Sel)) with a mean of <NUM> and a variance of <NUM>. As described above, the entry turning radius <NUM> can be dependent on the width <NUM> and the longitudinal distance <NUM>. The longitudinal distance <NUM> can have a conditional probability distribution (e.g., P(Dis|Sel)) with a mean of <NUM> and a variance of <NUM>. If additional parking-space characteristics are used to determine the selected parking space <NUM>, the parking system <NUM> can store conditional probability distributions <NUM> associated with those characteristics. In addition, user preferences can also be incorporated into the parking system <NUM> by adjusting the conditional probability distributions <NUM> accordingly.

At <NUM>, the parking system <NUM> can determine probabilities associated with each available space <NUM> using the parking-space characteristics and the conditional probability distributions <NUM>. The parking system <NUM> can determine the probability of a particular available space <NUM> being the selected parking space <NUM> (Sel) using an application of the Bayesian theorem. Given the width <NUM> (W), entry turning radius <NUM> (TR), and longitudinal distance <NUM> (Dis), the probability of a particular available space <NUM> (e.g., the ith available space) being the selected parking space <NUM> among n number of available spaces <NUM> is represented by Equation (<NUM>): <MAT>.

Based on the conditional probability distributions <NUM> for the width <NUM> (W), entry turning radius <NUM> (TR), and longitudinal distance <NUM> (Dis), Equation (<NUM>) can be rewritten as Equation (<NUM>): <MAT>.

In some implementations, the parking system <NUM> can place an upper limit on the conditional probability of a particular parking-space characteristic. For example, if the width <NUM> (e.g., W(i)) of a particular available space <NUM> is greater than the mean of its associated conditional probability distribution, then the width <NUM> can be set as equal to the mean. Similarly, if the entry turning radius <NUM> (e.g., TR(i)) of a particular available space <NUM> is greater than the mean of its associated conditional probability distribution, then the entry turning radius can be set as equal to the mean.

At <NUM>, the parking system <NUM> can compare probabilities for the available spaces <NUM> and select the available space <NUM> with the highest probability as the selected parking space <NUM>. The parking system <NUM> can use a probability threshold (e.g., <NUM>) as a lower minimum for the selected parking space <NUM>. In other implementations, the selected parking space <NUM> can be the nearest available space <NUM> that has a probability value above the probability threshold. If the parking system <NUM> does not identify a selected parking space <NUM>, the parking system <NUM> can cause the vehicle <NUM> to continue forward in the environment <NUM> (e.g., down the current parking row or into an adjacent parking row) until a selected parking space <NUM> is identified. An example implementation of the flowchart <NUM> is described with respect to <FIG>.

<FIG> illustrate example selections of a parking space using a probabilistic approach in accordance with techniques of this disclosure. In the illustrated environments <NUM>-<NUM> through <NUM>-<NUM>, a vehicle (e.g., the vehicle <NUM>) is in a parking environment (e.g., a parking lot at a grocery store) with several available spaces <NUM>. In particular, the environments <NUM>-<NUM> through <NUM>-<NUM> include six available parking spaces <NUM>, which in this example are designated as: available space <NUM>-<NUM>, available space <NUM>-<NUM>, available space <NUM>-<NUM>, available space <NUM>-<NUM>, available space <NUM>-<NUM>, and available space <NUM>-<NUM>.

In <FIG>, six available spaces <NUM> are potential parking spaces <NUM>. The vehicle <NUM> can use the parking system <NUM> to identify or determine the selected parking space <NUM>. For example, the selected parking space <NUM> can be identified using the techniques and systems described with respect to <FIG> and <FIG>. In the depicted implementation, the selected parking space <NUM> is determined based on the space width <NUM> (e.g., the space width <NUM>-<NUM> for the available space <NUM>-<NUM>), the entry turning radius <NUM>, and the longitudinal distance <NUM> associated with each available space <NUM>. In the depicted environment <NUM>-<NUM>, the available spaces <NUM> each have a respective space width <NUM>, a respective entry turning radii <NUM>, and a respective longitudinal distances <NUM>, as listed in Table <NUM>:.

The parking system <NUM> can determine the space widths <NUM> as the distance between the other vehicles <NUM> in adjacent parking spaces based on sensor data from the sensors <NUM>. In the environment <NUM>-<NUM>, the available space <NUM>-<NUM> has the smallest space width <NUM>-<NUM> at <NUM> meters and the available space <NUM>-<NUM> has the largest space width <NUM>-<NUM> at <NUM> meters.

The parking system <NUM> can determine the entry turning radii <NUM> as the turning radius necessary to enter the available space <NUM>. In this example, the entry turning radius <NUM> is determined based on the lateral distance to the available space <NUM> as determined from the sensor data. For example, the available spaces <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM> to the left of the vehicle <NUM> have an entry turning radius of <NUM> meters each; in contrast, the available spaces <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM> have an entry turning radius of <NUM> meters each.

The parking system <NUM> can determine the longitudinal distances as the distance to the available space <NUM> based on sensor data from the sensors <NUM>. In this example, the available spaces <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM> have a longitudinal distance of <NUM> meters, <NUM> meters, <NUM> meters, <NUM> meters, <NUM> meters, and <NUM> meters, respectively.

Based on the parking-space characteristics, the parking system <NUM> determines a probability of being the selected parking space <NUM> of <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> for the available spaces <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM>, respectively. As a result, the parking system <NUM> identifies the available space <NUM>-<NUM> as the selected parking space <NUM>. If the parking system <NUM> had a selection threshold (e.g., <NUM>) greater than the selection probability of each available space <NUM>, the parking system <NUM> could continue along the environment <NUM>-<NUM> until an available space <NUM> satisfied this selection threshold.

In this implementation, the selection threshold can be set at <NUM> and the parking system <NUM> can cause the assisted-driving system <NUM> or the autonomous-driving system <NUM> to park in the selected parking space <NUM>. Alternatively, the parking system <NUM> can provide the driver of the vehicle <NUM> an option to override or veto the selected parking space <NUM> and continue along the environment <NUM>-<NUM> until another selected parking space <NUM> is identified. The driver can, for example, veto the selected parking space <NUM> based on personal preferences.

In <FIG>, three available spaces <NUM> (e.g., available spaces <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM>) are potential parking spaces <NUM> for the vehicle <NUM>. The vehicle <NUM> has either passed the other available spaces (e.g., available spaces <NUM>-<NUM> and <NUM>-<NUM>) or the longitudinal distance is smaller than the minimum inner turning radius of the vehicle, which is true for the available space <NUM>-<NUM>.

The vehicle <NUM> can use the parking system <NUM> to identify the selected parking space <NUM> in the environment <NUM>-<NUM>. In particular, the parking system <NUM> can update the probabilities associated with the available spaces <NUM> being the selected parking space <NUM>. In the environment <NUM>-<NUM>, the parking system <NUM> determines a probability of being the selected parking space <NUM> of <NUM>, <NUM>, and <NUM> for the available spaces <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM>, respectively. As a result, the parking system <NUM> identifies the available space <NUM>-<NUM> as the selected parking space <NUM> for the environment <NUM>-<NUM>.

The parking system <NUM> can use error codes or similar techniques to exclude available spaces <NUM>. The error codes can include, for example, the space width is too small, the entry turning radius is too small, or the longitudinal distance is too small. The error codes can allow the parking system <NUM> to filter available spaces <NUM> as the vehicle <NUM> travels through the parking environment <NUM>-<NUM>. In this way, the parking system <NUM> can efficiently determine probabilities associated with the available spaces <NUM> that satisfy the filters.

In the environment <NUM>-<NUM> of <FIG>, a single available space <NUM> (e.g., the available space <NUM>-<NUM>) is a potential parking space <NUM> for the vehicle <NUM>. The vehicle <NUM> has either passed the other available spaces (e.g., available spaces <NUM>-<NUM>, <NUM>-<NUM>, <NUM>-<NUM>, and <NUM>-<NUM>) or the longitudinal distance is smaller than the minimum inner turning radius of the vehicle <NUM>, which is true for the available space <NUM>-<NUM>.

The vehicle <NUM> can use the parking system <NUM> to identify the selected parking space <NUM> in the environment <NUM>-<NUM>. In particular, the parking system <NUM> can update the probabilities associated with the available spaces <NUM> being the selected parking space <NUM>. The parking system <NUM> determines a probability of being the selected parking space <NUM> of <NUM> for the available space <NUM>-<NUM>. As a result, the parking system <NUM> identifies the available space <NUM>-<NUM> as the selected parking space <NUM> for the environment <NUM>-<NUM>.

<FIG> illustrates an example method (which does not fall within the scope of the claims) <NUM> of a parking system to determine a parking maneuver for a selected parking space. Method <NUM> is shown as sets of operations (or acts) performed, but not necessarily limited to the order or combinations in which the operations are shown herein. Further, any one of one or more of the operations may be repeated, combined, or reorganized to provide other methods. In portions of the following discussion, reference may be made to the environment <NUM> of <FIG>, and entities detailed in <FIG>, reference to which is made for example only. The techniques are not limited to performance by one entity or multiple entities.

At <NUM>, a selected parking space is identified among one or more available parking spaces in front of a host vehicle using sensor data obtained from one or more sensors of the host vehicle. For example, the parking system <NUM> or the parking space selector <NUM> can identify the selected parking space <NUM> from among the available spaces <NUM> in front of the vehicle <NUM>. As described with respect to <FIG>, the parking system <NUM> or the parking space selector <NUM> can use the sensor data from the sensors <NUM> to identify the selected parking space <NUM>. Alternatively, the user can identify the selected parking space <NUM> from among available spaces <NUM> using an interactive display in the vehicle <NUM>.

The parking system <NUM> can identify the selected parking space <NUM> by determining, using the sensor data, whether multiple parking spaces are available in front of the vehicle <NUM>. Parking-space characteristics of each available parking space can then be determined. The parking system <NUM> can then determine the selected parking space <NUM> based on the parking-space characteristics. Alternatively, the selected parking space <NUM> is identified by receiving a selection of the selected parking space <NUM> from a driver of the vehicle <NUM>.

At <NUM>, a lateral distance and a longitudinal distance associated with the selected parking space can be determined using the sensor data. The lateral distance indicates a distance between another vehicle in an adjacent parking space and the host vehicle in a lateral direction from the host vehicle. The longitudinal distance indicates a distance between the selected parking space and the host vehicle. For example, the parking system <NUM> can determine a lateral distance <NUM> and a longitudinal distance <NUM> associated with the selected parking space <NUM>. As described in greater detail with respect to <FIG>, the lateral distance (Dy) and the longitudinal distance (Dx) can be defined and determined using the sensor data.

At <NUM>, it can be determined whether the lateral distance and the longitudinal distance are greater than a minimum inner turning radius of the host vehicle. For example, the parking system <NUM> can determine whether the lateral distance (Dy) is greater than the minimum inner turning radius of the vehicle <NUM>.

At <NUM>, responsive to determining that the lateral distance and the longitudinal distance are greater than the minimum inner turning radius, the host vehicle is controlled, using an assisted-driving or autonomous-driving system, to park in the selected parking space using a single-turn maneuver. For example, the parking system <NUM> can determine an entry turning radius <NUM> for a single-turn maneuver in response to determining that the lateral distance <NUM> is greater than the minimum inner turning radius. The assisted-driving system <NUM> or the autonomous-driving system <NUM> can then control the vehicle <NUM> to park in the selected parking space <NUM> using the single-turn maneuver.

The parking system <NUM> can determine the entry turning radius <NUM> of the single-turn maneuver based on the longitudinal distance <NUM> and the lateral distance <NUM>. If the longitudinal distance <NUM> and the lateral distance <NUM> are less than a configurable or optimal inner turning radius (R<NUM>,opt), the entry turning radius <NUM> is a minimum of the lateral distance <NUM> and the longitudinal distance <NUM>. The optimal inner turning radius (R<NUM>,opt) can be pre-determined by the driver, the vehicle manufacturer, or the parking system <NUM>. If the longitudinal distance <NUM> is less than the optimal inner turning radius (R<NUM>,opt) and the lateral distance <NUM> is greater than or equal to the optimal inner turning radius (R<NUM>,opt), the entry turning radius <NUM> is the longitudinal distance <NUM>. If the longitudinal distance <NUM> is greater than or equal to the optimal inner turning radius (R<NUM>,opt) and the lateral distance <NUM> is less than the optimal inner turning radius (R<NUM>,opt), the entry turning radius <NUM> is the lateral distance. If the longitudinal distance <NUM> and the lateral distance <NUM> are greater than or equal to the optimal inner turning radius (R<NUM>,opt), the entry turning radius <NUM> is the configurable or optimal inner turning radius (R<NUM>,opt).

The parking system <NUM> can then determine whether the entry turning radius <NUM> of the single-turn maneuver is greater than the longitudinal distance <NUM>. In response to determining that the entry turning radius <NUM> of the single-turn maneuver is greater than the longitudinal distance <NUM>, the vehicle <NUM> can be controlled, using the assisted-driving system <NUM> or the autonomous-driving system <NUM>, to drive a straight distance before performing the single-turn maneuver. The straight distance is approximately equal to the longitudinal distance <NUM> minus the entry turning radius <NUM> of the single-turn maneuver.

At <NUM>, responsive to determining that the lateral distance is not greater than the minimum inner turning radius, it can be determined whether the longitudinal distance is greater than a longitudinal threshold. The longitudinal threshold is based on the minimum inner turning radius or the optimal inner turning radius (R<NUM>,opt). The optimal inner turning radius (R<NUM>,opt) is greater than the minimum inner turning radius. For example, the parking system <NUM> can determine whether the longitudinal distance <NUM> is greater than a longitudinal threshold in response to determining that the lateral distance is not greater than the minimum inner turning radius. In other words, the parking system <NUM> can determine whether a two-turn maneuver is available for controlling the vehicle <NUM> to park in the selected parking space <NUM>.

The parking system <NUM> can use or define the longitudinal threshold in several ways, including using multiple longitudinal thresholds. For example, the parking system <NUM> can define a minimum turning radii threshold (Dthresh,R<NUM>,min,R<NUM>,min), a configurable or optimal inner turning radius threshold (Dthresh,R<NUM>,min,R<NUM>opt,), and a configurable or optimal turning radii threshold (Dthresh , R <NUM>,OP t , R z,OPt). The minimum turning radii threshold is based on the minimum inner turning radius, a minimum outer turning radius, and the lateral distance <NUM>. The minimum outer turning radius is approximately equal to a sum of the minimum inner turning radius and a rear track width of the vehicle <NUM>. The optimal inner turning radius threshold is based on the optimal inner turning radius, the minimum outer turning radius, and the lateral distance <NUM>. The optimal inner turning radius threshold is greater than the minimum turning radii threshold. The optimal turning radii threshold is based on the optimal inner turning radius, an optimal outer turning radius, and the lateral distance <NUM>. The optimal outer turning radius is greater than the minimum outer turning radius and the optimal turning radii threshold is greater than the optimal inner turning radius threshold.

At <NUM>, responsive to determining that the longitudinal distance is greater than the longitudinal threshold, the host vehicle is controlled, using the assisted-driving or autonomous-driving system, to park in the selected parking space using a two-turn maneuver. For example, the parking system <NUM> can determine a first turning radius (R<NUM>) (e.g., away from the selected parking space <NUM>) and second turning radius (R<NUM>) (e.g., toward the selected parking space) for a two-turn maneuver in response to determining that the longitudinal distance <NUM> is greater than the longitudinal threshold. The assisted-driving system <NUM> or the autonomous-driving system <NUM> can then control the vehicle <NUM> to park in the selected parking space <NUM> using the two-turn maneuver.

If the longitudinal distance <NUM> is greater than or equal to the minimum turning radii threshold and less than the optimal inner turning radius threshold, the parking system <NUM> can apply the following settings. The parking system <NUM> can set the first turning radius (R<NUM>) as the minimum outer turning radius and determine the second turning radius (R<NUM>) based on the lateral distance <NUM>, the longitudinal distance <NUM>, and the first turning radius (R<NUM>). If the longitudinal distance <NUM> is greater than or equal to the optimal inner turning radius threshold and less than the optimal turning radii threshold, the parking system <NUM> can apply different settings. The parking system <NUM> can set the second turning radius (R<NUM>) as the optimal inner turning radius and determine the first turning radius (R<NUM>) based on the lateral distance <NUM>, the longitudinal distance <NUM>, and the second turning radius (R<NUM>). If the longitudinal distance <NUM> is greater than or equal to the optimal turning radii threshold, the parking system <NUM> can apply other, different settings. The parking system <NUM> can set the first turning radius (R<NUM>) as the optimal outer turning radius and the second turning radius (R<NUM>) as the optimal inner turning radius. In this situation, when applying these other, different settings, if the longitudinal distance <NUM> is greater than or equal to the optimal turning radii threshold, the parking system <NUM> can control, using the assisted-driving system <NUM> or the autonomous-driving system <NUM>, the vehicle <NUM> to drive a straight distance before performing the two-turn maneuver. The straight distance is approximately equal to the longitudinal distance <NUM> minus the optimal turning radii threshold.

The parking system <NUM> can also determine whether the longitudinal distance <NUM> is greater than the minimum turning radii threshold and the lateral distance <NUM> is greater than the minimum inner turning radius but less than the optimal inner turning radius. In response to determining that the lateral distance <NUM> is greater than the minimum inner turning radius but less than the optimal inner turning radius and the longitudinal distance <NUM> is greater than the minimum turning radii threshold and less than the optimal inner turning radius threshold, the parking system <NUM> can set the first turning radius (R<NUM>) as the minimum outer turning radius and determine the second turning radius (R<NUM>) based on the lateral distance <NUM>, the longitudinal distance <NUM>, and the first turning radius (R<NUM>). In response to determining that the longitudinal distance <NUM> is greater than the optimal inner turning radius threshold and less than the optimal turning radii threshold, the parking system <NUM> can set the second turning radius (R<NUM>) as the optimal inner turning radius and determine the first turning radius (R<NUM>) based on the lateral distance <NUM>, the longitudinal distance <NUM>, and the second turning radius (R<NUM>). In response to determining that the longitudinal distance <NUM> is greater than or equal to the optimal turning radii threshold, the parking system <NUM> can set the first turning radius (R<NUM>) as the optimal outer turning radius and the second turning radius (R<NUM>) as the optimal inner turning radius. The parking system <NUM> can also control, using the assisted-driving system <NUM> or the autonomous-driving system <NUM>, the vehicle <NUM> to drive a straight distance before performing the two-turn maneuver. The straight distance is approximately equal to the longitudinal distance <NUM> minus the optimal turning radii threshold.

The single-turn maneuver and the two-turn maneuver can be front-in parking maneuvers. In other implementations, the single-turn maneuver and the two-turn maneuver can be a back-in parking maneuver that approximately mirrors a front-in parking maneuver for a parking space opposite the selected parking space <NUM>.

<FIG> illustrates an example environment <NUM>-<NUM> in which a parking system can perform a single-turn maneuver for a selected parking space <NUM>-<NUM>. In the illustrated environment <NUM>-<NUM>, a vehicle (e.g., the vehicle <NUM>) is in a parking environment (e.g., a parking lot at a grocery store) with several available spaces. The parking system <NUM> can select the selected parking space <NUM>-<NUM> using the method described above with respect to <FIG>. Alternatively, the driver of the vehicle <NUM> can select the selected parking space <NUM>-<NUM> via an input device (e.g., a display) that identifies the available spaces.

The parking system <NUM> can determine a longitudinal distance <NUM> (Dx) and a lateral distance <NUM> (Dy) associated with the selected parking space <NUM>-<NUM>. The longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy) can be determined using the sensor data from the sensors <NUM>.

The longitudinal distance <NUM> (Dx) indicates a distance between the selected parking space <NUM>-<NUM> and the vehicle <NUM> (e.g., at a stopped position). If the vehicle <NUM> is still moving, the longitudinal distance <NUM> (Dx) is generally determined as the distance from a stopped position of the vehicle <NUM> to the selected parking space <NUM>-<NUM>. For example, the parking system <NUM> can define the longitudinal distance <NUM> (Dx) as the distance from (a) the rear axle (e.g., represented by line <NUM>) of the vehicle <NUM> at the current position to (b) the inside edge of the rear axle (e.g., represented by line <NUM>) of the vehicle <NUM> when centered in the selected parking space <NUM>-<NUM>. In other implementations, the parking system <NUM> can define the longitudinal distance <NUM> (Dx) using different reference points.

The lateral distance <NUM> (Dy) indicates a distance between another vehicle <NUM> in an adjacent parking space and the vehicle <NUM> in a lateral direction. For example, the parking system <NUM> can define the lateral distance <NUM> (Dy) using an entry lateral distance <NUM>-<NUM>. The entry lateral distance <NUM>-<NUM> can represent the lateral distance required to enter the selected parking space <NUM>-<NUM> without a collision with a vehicle parked in an adjacent parking space. As a result, the entry lateral distance <NUM>-<NUM> is generally based on a width associated with the selected parking space <NUM>-<NUM>, a width between vehicles parked in the adj acent parking spaces, or an offset of a vehicle in the further adjacent parking space and the edge of the parking space. The lateral distance <NUM> (Dy) can be defined as the distance between (a) the rear tire of the vehicle <NUM> nearest the selected parking space <NUM>-<NUM> (e.g., represented by line <NUM>) and (b) the entry lateral distance <NUM>-<NUM> (e.g., represented by the line <NUM>). In other implementations, the parking system <NUM> can define the lateral distance <NUM> (Dy) using different reference points.

The parking system <NUM> can then determine whether the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy) are greater than the minimum inner turning radius (R<NUM>,min) of the vehicle <NUM>. As a reference, the minimum outer turning radius (R<NUM>,min) is approximately equal to the minimum inner turning radius (R<NUM>,min) plus the width of the rear track or axle. If the minimum inner turning radius (R<NUM>,min) of the vehicle <NUM> is less than both the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy), the parking system <NUM> can determine a single-turn maneuver to park the vehicle <NUM> in the selected parking space <NUM>-<NUM>. The single-turn maneuver includes an entry turning radius <NUM> (R). The parking system <NUM> can determine the entry turning radius <NUM> (R) as the minimum of the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy), which is represented by Equation (<NUM>): <MAT>.

In some implementations, a configurable or optimal outer turning radius (R<NUM>,opt) and a configurable or optimal inner turning radius (R<NUM>,opt) can be defined as turning radii to complete a safe and comfortable turning maneuver. The optimal outer turning radius (R<NUM>,opt) and the optimal inner turning radius (R<NUM>,opt) can be pre-determined by the parking system <NUM>, pre-determined by the vehicle manufacturer, or driver selected. The optimal outer turning radius (R<NUM>,opt) and the optimal inner turning radius (R<NUM>,opt) are greater than the minimum outer turning radius (R<NUM>,min) and the minimum inner turning radius (R<NUM>,min), respectively.

In such implementations, if the longitudinal distance <NUM> (Dx) is greater than the optimal inner turning radius (R<NUM>,opt) and the lateral distance <NUM> (Dy) is less than the optimal inner turning radius (R<NUM>,opt), the parking system <NUM> can set the entry turning radius <NUM> (R) as the lateral distance <NUM> (Dy), which is represented by Equation (<NUM>): <MAT>.

If the lateral distance <NUM> (Dy) is greater than the optimal inner turning radius (R<NUM>,opt) and the longitudinal distance <NUM> (Dx) is less than the optimal inner turning radius (R<NUM>,opt), the parking system <NUM> can select the entry turning radius <NUM> (R) as the longitudinal distance <NUM> (Dx), which is represented by Equation (<NUM>): <MAT>.

If the lateral distance <NUM> (Dy) and the longitudinal distance <NUM> (Dx) are both greater than the optimal inner turning radius (R<NUM>,opt), the parking system <NUM> can select the entry turning radius <NUM> (R) as the optimal inner turning radius (R<NUM>,opt), which is represented by Equation (<NUM>): <MAT>.

<FIG> illustrates an example environment <NUM>-<NUM> in which a parking system can perform a two-turn maneuver for a selected parking space <NUM>-<NUM>. In the illustrated environment <NUM>-<NUM>, a vehicle (e.g., the vehicle <NUM>) is in a parking environment (e.g., a parking lot at a grocery store) with several available spaces. The parking system <NUM> can select the selected parking space <NUM>-<NUM> using the method described above with respect to <FIG>. Alternatively, the driver of the vehicle <NUM> can select the selected parking space <NUM>-<NUM> via an input device (e.g., a display) that identifies the available spaces.

The environment <NUM>-<NUM> includes effective road boundaries represented by lines <NUM> and <NUM>. The lines <NUM> and <NUM> provide an offset or safety distance between the parking spaces <NUM> and the vehicles therein and the vehicle <NUM>.

As described with respect to <FIG>, the parking system <NUM> can determine a longitudinal distance <NUM> (Dx) and a lateral distance <NUM> (Dy) associated with the selected parking space <NUM>-<NUM>. The longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy) can be determined using the sensor data from the sensors <NUM>.

The parking system <NUM> can then determine whether the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy) are greater than the minimum inner turning radius (R<NUM>,min) of the vehicle <NUM>. If the minimum inner turning radius (R<NUM>,min) of the vehicle <NUM> is greater than the lateral distance <NUM> (Dy), the vehicle <NUM> is unable to park in the selected parking space <NUM>-<NUM> using a single-turn maneuver. The parking system <NUM> can, however, determine whether a two-turn maneuver is available to park the vehicle <NUM> in the selected parking space <NUM>-<NUM>. The two-turn maneuver includes a first turning radius <NUM> (R<NUM>) and a second turning radius <NUM> (R<NUM>).

The first turning radius <NUM> (R<NUM>) and the line <NUM> define a first angle <NUM> (θ<NUM>). The second turning radius <NUM> (R<NUM>) and the line <NUM> define a second angle <NUM> (θ<NUM>), where the second angle <NUM> (θ<NUM>) is equal to the first angle <NUM> (θ<NUM>) plus <NUM> degrees (e.g., θ<NUM> = θ<NUM> + <NUM>°). It is noted that the first turning radius <NUM> (R<NUM>), the second turning radius <NUM> (R<NUM>), the lateral distance <NUM> (Dy), and the longitudinal distance <NUM> (Dx) define a right triangle with (a) a first side equal to the sum of the first turning radius <NUM> (R<NUM>) and the lateral distance <NUM> (Dy), (b) a second side equal to the longitudinal distance <NUM> (Dx) minus the second turning radius <NUM> (R<NUM>), and (c) a hypotenuse equal to the sum of the first turning radius <NUM> (R<NUM>) and the second turning radius <NUM> (R<NUM>). As a result, the cosine and sine of the first angle <NUM> (θ<NUM>) is represented by Equations (<NUM>) and (<NUM>), respectively: <MAT> <MAT>.

Using the Pythagorean Equation, the relationship between the first turning radius <NUM> (R<NUM>), the second turning radius <NUM> (R<NUM>), the lateral distance <NUM> (Dy), and the longitudinal distance <NUM> (Dx) can be represented by Equations (<NUM>) and (<NUM>): <MAT> <MAT>.

If the parking system <NUM> determines, selects, or pre-defines the value of the first turning radius <NUM> (R<NUM>) or the second turning radius <NUM> (R<NUM>), the other turning radius value, the first angle <NUM> (θ<NUM>), and the second angle <NUM> (θ<NUM>) can be determined using Equations (<NUM>), (<NUM>), (<NUM>), and/or (<NUM>).

If the value of both the first turning radius <NUM> (R<NUM>) and the second turning radius <NUM> (R<NUM>) are determined, selected, or pre-defined, a longitudinal threshold (Dx,thresh) can be determined using Equation (<NUM>): <MAT>.

In response to determining that the lateral distance <NUM> (Dy) is not greater than the minimum inner turning radius (R<NUM>,min), the parking system <NUM> can determine whether the longitudinal distance <NUM> (Dx) is greater than the longitudinal threshold (Dx,thresh). As reflected in Equation (<NUM>), the longitudinal threshold (Dx,thresh) can be based on the first turning radius (R<NUM>), the second turning radius (R<NUM>), and the lateral distance <NUM> (Dy). The parking system <NUM> can, for example, define several different potential longitudinal thresholds (Dx,thresh), including a minimum turning radii threshold (Dthresh,R<NUM>,min,R<NUM>,min), a configurable or optimal inner turning radius threshold (Dthresh,R<NUM>,min,R<NUM>,opt), and/or a configurable or optimal turning radii threshold (Dthresh,R<NUM>,opt,R<NUM>,opt).

If the parking system <NUM> uses the minimum turning radii threshold (Dthresh,R<NUM>,min,R<NUM>,min), then the longitudinal threshold (Dx,thresh) is calculated using Equation (<NUM>): <MAT> If the lateral distance <NUM> (Dy) is greater than or equal to the minimum inner turning radius (R<NUM>,min) of the vehicle <NUM>, a single-turn maneuver or a two-turn maneuver is an option to park in the selected parking space <NUM>-<NUM>. In some implementations, the single-turn maneuver can be preferred in such situations. If the lateral distance <NUM> (Dy) is less than the minimum inner turning radius (R<NUM>,min) of the vehicle <NUM>, a single-turn maneuver is not an available option, but a two-turn maneuver is available as discussed above (e.g., Dx > Dthresh,R<NUM>,min,R<NUM>,min). In particular, the first turning radius <NUM> (R<NUM>) can be set equal to the minimum outer turning radius (R<NUM>,min) and the second turning radius <NUM> (R<NUM>) can be determined using Equation (<NUM>) or (<NUM>). Alternatively, the parking system <NUM> can set the second turning radius <NUM> (R<NUM>) equal to the minimum inner turning radius (R<NUM>,min) and determine the first turning radius <NUM> (R<NUM>) using Equation (<NUM>) or (<NUM>). In addition, if the longitudinal distance <NUM> (Dx) is less than the minimum turning radii threshold (Dthresh,R<NUM>,min,R<NUM>,min), a two-turn maneuver is not an available option.

If the parking system <NUM> uses the optimal inner turning radius threshold (Dthresh,R<NUM>,min,R<NUM>,opt), then the longitudinal threshold (Dx,thresh) is calculated using Equation (<NUM>): <MAT> If the lateral distance <NUM> (Dy) is greater than or equal to the optimal inner turning radius (R<NUM>,opt), a single-turn maneuver or a two-turn maneuver is an option to park in the selected parking space <NUM>-<NUM>. In some implementations, the single-turn maneuver can be preferred in such situations. In particular, if the longitudinal distance <NUM> (Dx) is greater than or equal to the optimal inner turning radius threshold (Dthresh,R<NUM>,min,R<NUM>,opt), the second turning radius <NUM> (R<NUM>) can be set equal to the optimal inner turning radius (R<NUM>,opt) and the first turning radius <NUM> (R<NUM>) can be determined using Equation (<NUM>) or (<NUM>). Alternatively, if the longitudinal distance <NUM> (Dx) is greater than or equal to the minimum turning radii threshold (Dthresh,R<NUM>,min,R<NUM>,min) but less than the optimal inner turning radius threshold (Dthresh,R<NUM>,min,R<NUM>,opt), the parking system <NUM> can set the first turning radius <NUM> (R<NUM>) equal to the outer turning radius (R<NUM>,min) and determine the second turning radius <NUM> (R<NUM>) using Equation (<NUM>) or (<NUM>).

If the parking system <NUM> uses the optimal turning radii threshold (Dthresh,R<NUM>,opt,R<NUM>,opt), then the longitudinal threshold (Dx,thresh) is calculated using Equation (<NUM>): <MAT> If the lateral distance <NUM> (Dy) is greater than or equal to the optimal inner turning radius (R<NUM>,opt), a single-turn maneuver or a two-turn maneuver is an option to park in the selected parking space <NUM>-<NUM>. In some implementations, the single-turn maneuver can be preferred in such situations. If the longitudinal distance <NUM> (Dx) is greater than or equal to the optimal turning radii threshold (Dthresh,R<NUM>,opt,R<NUM>,opt), the second turning radius <NUM> (R<NUM>) and the first turning radius <NUM> (R<NUM>) are set equal to the optimal inner turning radius (R<NUM>,opt) and the optimal outer turning radius (R<NUM>,opt), respectively. In such a situation, a longitudinal straight distance (Dstraight) is needed, which can be calculated using Equation (<NUM>): <MAT>.

<FIG> illustrates an example environment <NUM>-<NUM> in which a parking system can perform a two-turn maneuver to park back-in into a selected parking space <NUM>-<NUM>. In the illustrated environment <NUM>-<NUM>, a vehicle (e.g., the vehicle <NUM>) is in a parking environment (e.g., a parking lot at a grocery store) with several available spaces. The parking system <NUM> can select the selected parking space <NUM>-<NUM> using the method described above with respect to <FIG>. Alternatively, the driver of the vehicle <NUM> can select the selected parking space <NUM>-<NUM> via an input device (e.g., a display) that identifies the available spaces.

As described with respect to <FIG> and <FIG>, the parking system <NUM> can determine a longitudinal distance <NUM> (Dx) and a lateral distance <NUM> (Dy) associated with the selected parking space <NUM>-<NUM>. The longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy) can be determined using the sensor data from the sensors <NUM>. Based on the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy), the parking system <NUM> can then determine whether a single-turn or two-turn maneuver is appropriate to park in the selected parking space <NUM>-<NUM>, as described with respect to <FIG> and <FIG>.

In some situations, back-in parking is preferred. For example, the driver can select via an input device to back into the selected parking space <NUM>-<NUM>, the driver can configure the parking system <NUM> to back-in park when available, or the parking system <NUM> can determine that back-in parking is required in the environment <NUM>-<NUM>. The back-in parking maneuver begins with a single-turn or two-turn parking maneuver for a parking space opposite the selected parking space <NUM>-<NUM> followed by a straight reverse maneuver <NUM> into the selected parking space <NUM>-<NUM>.

<FIG> illustrates an example graph <NUM> representing available parking maneuvers to park in a selected parking space. For the illustrated graph <NUM>, a vehicle (e.g., the vehicle <NUM>) is in a parking environment (e.g., a parking lot at a grocery store) and one of the available spaces <NUM> has been identified as the selected parking space (e.g., the selected parking space <NUM>-<NUM>, <NUM>-<NUM>, or <NUM>-<NUM>). The parking system <NUM> can select the selected parking space <NUM> using the method described above with respect to <FIG>. Alternatively, the driver of the vehicle <NUM> can select the selected parking space <NUM> via an input device (e.g., a display) that identifies the available spaces.

The graph <NUM> includes the longitudinal distance <NUM> (Dx) as a first axis and the lateral distance <NUM> (Dy) as a second axis. The first axis is subdivided by an minimum inner turning radius <NUM> (R<NUM>,min), optimal inner turning radius <NUM> (R<NUM>,opt), minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min), optimal inner turning radius threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,opt), and optimal turning radii threshold <NUM> (Dthresh,R<NUM>,opt,R<NUM>,opt). The second axis is subdivided by the minimum inner turning radius <NUM> (R<NUM>,min) and the optimal inner turning radius <NUM> (R<NUM>,opt).

As described with respect to <FIG> and <FIG>, the parking system <NUM> can determine the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy) associated with the selected parking space <NUM>. Based on the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy), the parking system <NUM> can then determine whether a single-turn or two-turn maneuver is appropriate to park in the selected parking space <NUM>, as described with respect to <FIG> and <FIG>.

If the longitudinal distance <NUM> (Dx) is less than the minimum inner turning radius <NUM> (R<NUM>,min), a parking maneuver is not available, which is represented by the dotted fill pattern, and another available space <NUM> is identified as the selected parking space <NUM>. If the lateral distance <NUM> (Dy) is less than the minimum inner turning radius <NUM> (R<NUM>,min) and the longitudinal distance <NUM> (Dx) is less than the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min), a parking maneuver is not available and another available space <NUM> is identified as the selected parking space <NUM>.

If the longitudinal distance <NUM> (Dx) is less than the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min) and the lateral distance <NUM> (Dy) is greater than or equal to the minimum inner turning radius <NUM> (R<NUM>,min), a single-turn maneuver is available. In <FIG>, single-turn maneuvers are represented by a horizontal-line fill pattern. In particular, if the longitudinal distance <NUM> (Dx) is less than the optimal inner turning radius <NUM> (R<NUM>,opt) and the lateral distance <NUM> (Dy) is greater than or equal to the minimum inner turning radius <NUM> (R<NUM>,min) but less than the optimal inner turning radius <NUM> (R<NUM>,opt), the parking system <NUM> can perform a single-turn maneuver <NUM> with the entry turning radius <NUM> (R) set equal to a minimum of the longitudinal distance <NUM> (Dx) and the lateral distance <NUM> (Dy). Depending on the entry turning radius <NUM>, the parking system <NUM> may need to operate the vehicle <NUM> to drive straight ahead before performing the single-turn maneuver, which is represented by the dashed line <NUM>.

If the longitudinal distance <NUM> (Dx) is less than the optimal inner turning radius <NUM> (R<NUM>,opt) and the lateral distance <NUM> (Dy) is greater than or equal to the optimal inner turning radius <NUM> (R<NUM>,opt), the parking system <NUM> can perform a single-turn maneuver <NUM> with the entry turning radius <NUM> (R) set equal to the longitudinal distance <NUM> (Dx). If the longitudinal distance <NUM> (Dx) is less than the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min) but greater than or equal to the optimal inner turning radius <NUM> (R<NUM>,opt) and the lateral distance <NUM> (Dy) is greater than or equal to the minimum inner turning radius <NUM> (R<NUM>,min) but less than the optimal inner turning radius <NUM> (R<NUM>,opt), the parking system <NUM> can perform a single-turn maneuver <NUM> with the entry turning radius <NUM> (R) set equal to the lateral distance <NUM> (Dy). Because the longitudinal distance <NUM> (Dx) is greater than the entry turning radius <NUM>, the parking system <NUM> operates the vehicle <NUM> to drive straight ahead before performing the single-turn maneuver, which is represented by a solid line <NUM>.

If the longitudinal distance <NUM> (Dx) is less than the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min) but greather than or equal to the optimal inner turning radius <NUM> (R<NUM>,opt) and the lateral distance <NUM> (Dy) is greater than or equal to the optimal inner turning radius <NUM> (R<NUM>,opt), the parking system <NUM> can perform a single-turn maneuver <NUM> with the entry turning radius <NUM> (R) set equal to the optimal inner turning radius <NUM> (R<NUM>,opt). Similarly, if the longitudinal distance <NUM> (Dx) is greater than or equal to the optimal inner turning radius <NUM> (R<NUM>,opt) and the lateral distance <NUM> (Dy) is greater than or equal to the optimal inner turning radius <NUM> (R<NUM>,opt), the parking system <NUM> can perform the single-turn maneuver <NUM> even if a two-turn maneuver is available (e.g., Dx > Dthresh,R<NUM>,min,R<NUM>,min). Because the longitudinal distance <NUM> (Dx) is greater than the entry turning radius <NUM>, the parking system <NUM> operates the vehicle <NUM> to drive straight ahead before performing the single-turn maneuver, which is represented by the solid line <NUM>.

If the longitudinal distance <NUM> (Dx) is greater than or equal to the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min) and the lateral distance <NUM> (Dy) is less than the minimum inner turning radius <NUM> (R<NUM>,min), a single-turn maneuver is not available, but a two-turn maneuver is available. In <FIG>, two-turn maneuvers are represented by a crosshatch fill pattern. In particular, if the longitudinal distance <NUM> (Dx) is greater than or equal to the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min) but less than the optimal inner turning radius threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,opt) and the lateral distance <NUM> (Dy) is less than the minimum inner turning radius <NUM> (R<NUM>,min), the parking system <NUM> can perform a two-turn maneuver <NUM> with the first turning radius <NUM> (R<NUM>) set equal to the minimum outer turning radius (R<NUM>,min). If the longitudinal distance <NUM> (Dx) is greater than or equal to the optimal inner turning radius threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,opt) but less than the optimal turning radii threshold <NUM> (Dthresh,R<NUM>,opt,R<NUM>,opt) and the lateral distance <NUM> (Dy) is less than the inner turning radius <NUM> (R<NUM>,min), the parking system <NUM> can perform a two-turn maneuver <NUM> with the second turning radius <NUM> (R<NUM>) set equal to the optimal inner turning radius <NUM> (R<NUM>,opt). If the longitudinal distance <NUM> (Dx) is greater than or equal to the optimal turning radii threshold <NUM> (Dthresh,R<NUM>,opt,R<NUM>,opt) and the lateral distance <NUM> (Dy) is less than the minimum inner turning radius <NUM> (R<NUM>,min), the parking system <NUM> can perform a two-turn maneuver <NUM> with the first turning radius <NUM> (R<NUM>) and the second turning radius <NUM> (R<NUM>) set equal to the optimal outer turning radius (R<NUM>,opt) and the optimal inner turning radius <NUM> (R<NUM>,opt), respectively. Because the longitudinal distance <NUM> (Dx) is greater than the sum of the optimal outer turning radius (R<NUM>,opt) and the optimal inner turning radius <NUM> (R<NUM>,opt), the parking system <NUM> operates the vehicle <NUM> to drive straight ahead before performing the two-turn maneuver <NUM>, which is represented by the solid line <NUM>.

If the longitudinal distance <NUM> (Dx) is greater than or equal to the minimum turning radii threshold <NUM> (Dthresh,R<NUM>,min,R<NUM>,min) and the lateral distance <NUM> (Dy) is greater than or equal to the minimum inner turning radius <NUM> (R<NUM>,min) but less than the optimal inner turning radius <NUM> (R<NUM>,opt), both a single-turn maneuver and a two-turn maneuver are available. For example, the parking system <NUM> can perform the single-turn maneuver <NUM> as described above. Depending on the longitudinal distance <NUM> (Dx), the parking system <NUM> can perform the two-turn maneuver <NUM>, <NUM>, or <NUM> as described above. In this scenario, the parking system <NUM> may determine a two-turn maneuver is preferred because the second turning radius <NUM> (R<NUM>) is greater than the entry turning radius <NUM> (R). In other implementations, the parking system <NUM> may determine the single-turn maneuver <NUM> is preferred based on driver preferences or another reason.

Claim 1:
A method comprising:
determining (<NUM>), using sensor data obtained from one or more sensors (<NUM>) of a host vehicle (<NUM>), whether multiple parking spaces are available in front of the host vehicle (<NUM>);
determining (<NUM>), using the sensor data, parking-space characteristics of each available parking space (<NUM>) of the multiple parking spaces, the parking-space characteristics including a width (<NUM>), an entry turning radius (<NUM>), and a longitudinal distance (<NUM>) to the available parking space (<NUM>);
determining (<NUM>), using an application of Bayesian theorem to conditional probability distributions (<NUM>) for the parking-space characteristics, a selected parking space (<NUM>) among the multiple parking spaces based on the parking-space characteristics, each conditional probability distribution (<NUM>) identifying how probable a respective available space is likely to be chosen as the selected parking space (<NUM>) given a respective parking-space characteristic, each conditional probability distribution (<NUM>) for each parking-space characteristic having a respective predetermined mean value and a respective predetermined variance value, the selected parking space (<NUM>) being the respective available space with a highest probability value; and
controlling (<NUM>), using an assisted-driving (<NUM>) or autonomous-driving system (<NUM>), operation of the host vehicle (<NUM>) to park in the selected parking space (<NUM>).