Method and apparatus for releasing parking lock, vehicle, and product

The vehicle system autonomously identifies and releases parking locks using computer vision and remote communication, addressing human error and enhancing self-parking efficiency.

WO2026156802A1PCT designated stage Publication Date: 2026-07-30BAYERISCHE MOTOREN WERKE AG +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
BAYERISCHE MOTOREN WERKE AG
Filing Date
2025-01-26
Publication Date
2026-07-30

AI Technical Summary

Technical Problem

Traditional manual unlocking of parking locks for self-parking vehicles is prone to human error and delays, leading to potential parking failures and inefficiencies.

Method used

A vehicle system that autonomously identifies parking lock metadata using computer vision and communicates directly or through a remote service to release the lock, reducing human intervention and enhancing efficiency.

Benefits of technology

This system reduces the likelihood of errors and delays by ensuring accurate lock release, improving the reliability and speed of the self-parking process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025075159_30072026_PF_FP_ABST
    Figure CN2025075159_30072026_PF_FP_ABST
Patent Text Reader

Abstract

The embodiments of the present disclosure relate to a method and apparatus for releasing a parking lock, a vehicle, and a computer program product. The method comprises obtaining, by a vehicle, metadata associated with a parking lock located at a parking slot, where the metadata comprises identification of the parking lock and data for communicating with the parking lock. The method further comprises generating, by the vehicle, a lock releasing request based on the metadata associated with the parking lock. In addition, the method further comprises transmitting, by the vehicle, the lock releasing request to release the parking lock. In this way, the overall parking efficiency can be enhanced and the delays can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND APPARATUS FOR RELEASING PARKING LOCK, VEHICLE, AND PRODUCTFIELD

[0001] Embodiments of the present disclosure generally relate to image processing, and in particular, to a method and apparatus for releasing a parking lock, a vehicle, and a computer program product.BACKGROUND

[0002] Public parking spaces are commonly equipped with locks to help manage access and facilitate fee collection. These parking locks play an essential role in ensuring that only authorized vehicles can park in designated parking slot, preventing misuse and unauthorized parking. Traditionally, users manually unlock these locks before parking, which could involve physical keys, cards, or other mechanisms.

[0003] Self-parking or automated parking refers to a technology that allows a vehicle to park itself without human intervention. It utilizes a combination of sensors, cameras, radar, LIDAR, and algorithms to navigate and park the vehicle in a designated parking slot. This technology is typically integrated into advanced driver assistance systems (ADAS) or autonomous driving features.SUMMARY

[0004] In general, embodiments of the present disclosure provide a scheme for releasing a parking lock.

[0005] In a first aspect according to some embodiments of the present disclosure, a method for releasing a parking lock is provided. The method comprises obtaining, by a vehicle, metadata associated with a parking lock located at a parking slot, where the metadata comprises identification of the parking lock and data for communicating with the parking lock. The method further comprises generating, by the vehicle, a lock releasing request based on the metadata associated with the parking lock. In addition, the method further comprises transmitting, by the vehicle, the lock releasing request to release the parking lock. In this way, the likelihood of human error can be reduced. Therefore, the risk of failure in the self-parking process can be reduced. Furthermore, the overall parking efficiency can be enhanced and the delays can be reduced

[0006] In some embodiments of the first aspect, wherein obtaining the metadata associated with the parking lock located at the parking slot comprises: identifying a slot marker associated with the parking lock through the computer vision system of the vehicle; and obtaining the metadata associated with the parking lock by decoding the slot marker. In this way, the computer vision system can effectively identify the slot marker located at the parking slot, enabling the vehicle to correctly associate the parking lock with its corresponding slot. Therefore, the risk of errors in parking lock identification can be reduced, thereby ensuring that the vehicle interacts with the correct parking lock for a smooth self-parking process.

[0007] In some embodiments of the first aspect, wherein the slot marker is presented on the ground inside a boundary of the parking slot. In this way, the reliability and accuracy of slot marker detection can be enhanced, and the risk of misidentification or failure to detect the marker due to occlusion by obstacles or other environmental factors can be reduced.

[0008] In some embodiments of the first aspect, wherein the data for communicating with the parking lock comprises a communication address of a lock releasing service, the lock releasing service is configured to communicate with the parking lock to release the parking lock, and generating the lock releasing request based on the metadata associated with the parking lock comprises: generating the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service. In this way, the system can manage multiple locks across a wide range of parking locations from a single service point. Therefore, the maintenance, updates, and coordination of lock operations can be simplified.

[0009] In some embodiments of the first aspect, wherein transmitting the lock releasing request to release the parking lock comprises: transmitting the lock releasing request to the lock releasing service to release the parking lock. In this way, the vehicle can release the parking lock through the lock releasing service.

[0010] In some embodiments of the first aspect, wherein transmitting the lock releasing request to the lock releasing service to release the parking lock comprises: transmitting the lock releasing request to the lock releasing service with a secure token for verifying an identity of the vehicle by the lock releasing service. In this way, the security of the lock releasing process can be improved.

[0011] In some embodiments of the first aspect, wherein the data for communicating with the parking lock comprises identification of a lock provider, and generating the lock releasing request based on the metadata associated with the parking lock comprises: obtaining a communication address of a lock releasing service based on the identification of the lock provider; and generating the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service. In this way, the cost of changing the communication address of the lock releasing service can be reduced.

[0012] In some embodiments of the first aspect, wherein obtaining the communication address of the lock releasing service based on the identification of the lock provider comprises: generating a communication information obtaining request based on the identification of the lock provider; transmitting the communication information obtaining request to a lock provider management service; and receiving the communication address of the lock releasing service from the provider management service. In this way, the cost of changing the communication address of the lock releasing service can be reduced.

[0013] In some embodiments of the first aspect, wherein obtaining the communication address of the lock releasing service based on the identification of the lock provider comprises: obtaining information of a plurality of lock providers from a lock provider management service, the information of the plurality of lock providers comprising identification of the plurality of lock providers and communication addresses of a plurality of lock releasing services associated with the plurality of lock providers; storing the information of the plurality of lock providers on the vehicle; and obtaining the communication address of the lock releasing service based on the identification of the lock provider and the information of the plurality of lock providers stored on the vehicle. In this way, the stability of the communication address obtaining process can be improved.

[0014] In some embodiments of the first aspect, wherein obtaining the metadata associated with the parking lock located at the parking slot comprises: searching the parking lock by performing peer-to-peer communication scan; establishing a peer-to-peer communication connection between the parking lock and the vehicle; transmitting a metadata acquiring request to the parking lock through the peer-to-peer communication connection; and receiving the metadata associated with the parking lock from the parking lock through the peer-to-peer communication connection. In this way, the lock releasing request can be responded with minimal delay.

[0015] In some embodiments of the first aspect, wherein transmitting the lock releasing request to release the parking lock comprises: transmitting the lock releasing request to the parking lock through the peer-to-peer communication connection, to cause the parking lock being released. In this way, the lock releasing request can be responded with minimal delay.

[0016] In some embodiments of the first aspect, further comprising: receiving, from the parking lock or a lock releasing service, a confirmation response indicating that the parking lock has been released; and parking into the parking slot through self-parking. In this way, the efficiency of the self-parking process can be improved.

[0017] In a second aspect according to some embodiments of the present disclosure, an apparatus for releasing a parking lock is provided. The apparatus comprises a metadata obtaining module, configured to obtain metadata associated with a parking lock located at a parking slot, where the metadata comprises identification of the parking lock and data for communicating with the parking lock. The apparatus further comprises a request generation module, configured to generate a lock releasing request based on the metadata associated with the parking lock. In addition, the apparatus further comprises a request transmitting module, configured to transmit the lock releasing request to release the parking lock.

[0018] In a third aspect according to some embodiments of the present disclosure, a vehicle is provided. The vehicle comprises a controller and a communication module, where the controller and the communication module are configured to perform the method according to the first aspect of the present disclosure.

[0019] In a fourth aspect according to some embodiments of the present disclosure, a computer program product is provided. The computer program product is stored on a computer-readable medium and comprises machine-executable instructions. The machine-executable instructions, when executed by a processor, cause a machine to perform the method according to the first aspect of the present disclosure.

[0020] This Summary is provided to introduce a selection of concepts in a simplified form, which is further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Additional aspects, features, and / or advantages of examples will be set forth in part in the following description and, in part, will be apparent from the description, or may be learned by practice of the disclosure.BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Embodiments of the present disclosure may be understood from the following Detailed Description when read with the accompanying figures. In accordance with the standard practice in the industry, various features are not drawn to scale. In fact, the dimensions of the various features may be arbitrarily increased or reduced for clarity of discussion. Some examples of the present disclosure are described with reference to the following figures.

[0022] Fig. 1 illustrates an example environment in which example embodiments of the present disclosure may be implemented;

[0023] Fig. 2 is a flow chart illustrating an example process of releasing a parking lock according to some embodiments of the present disclosure;

[0024] Fig. 3 is a schematic diagram illustrating an example of releasing a parking lock through a remote service according to some embodiments of the present disclosure;

[0025] Fig. 4 is a schematic diagram illustrating an example of releasing a parking lock through peer-to-peer communication according to some embodiments of the present disclosure;

[0026] Fig. 5 is a schematic diagram illustrating an example of releasing a parking lock by utilizing a lock provider management service according to some embodiments of the present disclosure;

[0027] Fig. 6 is a block diagram illustrating an example apparatus for releasing a parking lock according to some embodiments of the present disclosure; and

[0028] Fig. 7 is a block diagram illustrating physical components (for example hardware) of a controller with which aspects of the present disclosure may be practiced.

[0029] Throughout all the drawings, the same or similar reference numerals represent the same or similar elements. It is to be understood that the drawings are provided only for illustration and may not be drawn to scale.DETAILED DESCRIPTION

[0030] The principle of the present disclosure will now be described with reference to some embodiments. It is to be understood that these embodiments are described only for the purpose of illustration and to help those skilled in the art to understand and implement the present disclosure, without suggesting any limitation as to the scope of the disclosure. The disclosure described herein can be implemented in various manners other than the ones described below.

[0031] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of the ordinary skills in the art to which this disclosure belongs.

[0032] References in the present disclosure to “one embodiment, ” “some embodiments, ” “an embodiment, ” and the like indicate that the embodiment described may include a particular feature, structure, or characteristic, but it is not necessary that every embodiment includes the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with some embodiments, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments, whether or not explicitly described.

[0033] It shall be understood that although the terms “first” and “second” etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of embodiments. As used herein, the term “and / or” includes any and all combinations of one or more of the listed terms.

[0034] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting to embodiments. As used herein, the singular forms “a, ” “an, ” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises, ” “comprising, ” “has, ” “having, ” “includes, ” and / or “including, ” when used herein, specify the presence of stated features, elements, and / or components, etc., but do not preclude the presence or addition of one or more other features, elements, components and / or combinations thereof.

[0035] As used herein, a value that “satisfies a threshold” may mean, depending on the context, that the value is greater than the threshold, greater than or equal to the threshold, equal to the threshold, less than or equal to the threshold, less than the threshold, etc.

[0036] As described above, in some traditional schemes, users have to manually unlock these locks before parking, which could involve physical keys, cards, or other mechanisms. However, this process may lead to delays or inconvenience. With advancements in technology, some parking locks are now IoT (Internet of Things) -enabled. In some related schemes, these parking locks can be connected to the internet and controlled remotely. For example, through mobile applications, users can unlock these IoT-enabled locks remotely, without physically interacting with the lock. This scheme not only saves time but also enhances the overall efficiency of parking management systems.

[0037] However, in these related schemes, a user may find it difficult to locate the parking slot which has been unlocked in the application. In addition, during a self-parking process, the user needs to select the unlocked parking slot in a self-parking interface. If the selected parking slot is not the unlocked parking slot, the vehicle may not be able to park successfully in the selected parking slot.

[0038] Therefore, the embodiments of the present disclosure provide a scheme for releasing a parking lock. In the scheme, a vehicle may obtain metadata associated with a parking lock located at a parking slot, where the metadata may comprise identification of the parking lock and data for communicating with the parking lock. Then, the vehicle may generate a lock releasing request based on the metadata associated with the parking lock. Then, the vehicle may transmit the lock releasing request to the parking lock or a remote service to release the parking lock.

[0039] In this way, the likelihood of human error can be reduced. For example, the vehicle can be correctly aligned with the corresponding parking lock, preventing issues such as releasing the wrong lock or failing to release the lock. Therefore, the risk of failure in the self-parking process can be reduced. In addition, with the vehicle autonomously handling both the identification of the parking slot and the unlocking process, the time to park the vehicle can be reduced. Since the lock releasing request is transmitted directly to the parking lock or the remote service, the overall parking efficiency can be enhanced and the delays can be reduced.

[0040] Fig. 1 illustrates an example environment 100 in which example embodiments of the present disclosure may be implemented. As shown in Fig. 1, the environment 100 comprises a vehicle 102, a parking slot 104, and a lock releasing service 106. The vehicle 102 may comprise a controller 108, a communication module 110, and a computer vision system 112. The parking slot 104 may comprise an IoT-enabled parking lock 114 and a slot marker 116.

[0041] The vehicle 102 may be equipped with a self-parking system. The self-parking system enables the vehicle 102 to autonomously detect and maneuver into a parking space. The self-parking system may utilize a combination of sensors, including but not limited to ultrasonic sensors, cameras, radar, and LIDAR, to monitor the surrounding environment and identify available parking slots. Based on the data collected from these sensors, the self-parking system may analyze the surrounding area to determine the most suitable parking slot and the optimal path for parking. Once an appropriate parking slot is identified, the self-parking system may take control of the steering, acceleration, and braking functions of the vehicle, allowing the vehicle to autonomously navigate into the parking slot. In addition, the self-parking system may continuously adjusts the position of the vehicle to ensure that the vehicle is parked accurately within the designated boundaries of the parking space.

[0042] The controller 108 may be any unit having computing capability or processing capability in the vehicle 102. For example, the controller 108 may be an autonomous driving domain controller in a driving domain, a domain controller in a cockpit domain, and the like. The controller 108 may receive data from the communication module 110 and the computer vision system 112. Furthermore, the controller 108 may generate requests or commands based on the received data, and transmit the requests or commands to the lock releasing service 106 or the parking lock 14 through the communication module 110.

[0043] The communication module 110 may be configured to enable communication between the vehicle 102 and either the lock releasing service or the parking lock, thereby facilitating bidirectional data exchange and the transmission of requests and control commands. For example, the communication module 110 may be capable of transmitting a request for releasing the parking lock 114 to the lock releasing service 106 or the parking lock 114. In response to the request, the lock releasing service 106 or the parking lock 114 may send back acknowledgment data or status updates, confirming the lock release or providing additional instructions. Additionally, the communication module 110 may be designed to support secure communication protocols to ensure that data exchanged between the vehicle 102 and the lock system is protected from unauthorized access. This communication may occur via wireless channels, such as Bluetooth or other suitable short-range communication technologies. Through this functionality, the communication module 110 enables the seamless integration of the vehicle 102 with smart parking infrastructure, allowing the vehicle 102 to autonomously interact with the parking lock 114 and the lock releasing service 106 without requiring manual user intervention, thereby improving the overall parking process efficiency and user convenience.

[0044] The computer vision system 112 integrated into the vehicle 102 may be configured to detect and identify available parking slots within the surroundings of the vehicle 102. By utilizing a combination of image processing algorithms and sensor data, the computer vision system 112 may analyze visual inputs from cameras or other imaging devices to detect parking slots, obstacles, and the surrounding environment. The computer vision system 112 may distinguish between different types of parking configurations, such as parallel, perpendicular, and angled parking slots, based on predefined criteria and real-time visual analysis. Furthermore, in some embodiments, the computer vision system 112 may be configured to identify the slot marker 116 associated with the parking lock 114 (or the parking slot 104) . Therefore, the computer vision system 112 may obtain metadata associated with the parking lock 114 from the slot marker.

[0045] In addition to its parking slot detection capabilities, the CV system may be configured to communicate with the communication module 110 for bidirectional data exchange. For example, the computer vision system 112 may send data related to the detected parking slot, such as spatial coordinates, dimensions, and available parking area information, to the communication module 110. Then, the communication module 110 may transmit the data to other vehicle systems, such as the controller 108, enabling coordinated actions such as initiating the self-parking process or releasing the parking lock 114.

[0046] The parking slot 104 may be a designated physical space within a parking area specifically allocated for the parking of a vehicle. The parking slot 104 is equipped with the parking lock 114, which is positioned within or adjacent to the parking slot 104, and serves as a locking mechanism to secure the parking space. The parking lock 114 may be configured to be IoT-enabled, allowing for communication with the vehicle 102 or the lock releasing service 106 to facilitate automatic or remote unlocking when necessary.

[0047] The parking lock 114 may be configured to operate in two states: a “locked” state and a “released” state. In the “locked” state, the parking lock 114 secures the parking slot 104, preventing any vehicle from entering or occupying the space. In the “released” state, the parking slot 104 is accessible, allowing a vehicle to park in the designated space. The vehicle 102 is permitted to park in the parking slot 104 only when the parking lock is in the “released” state.

[0048] The status of the parking lock 114 may be remotely controlled. In some embodiments, this control may be achieved through direct peer-to-peer (P2P) communication between the parking lock 114 and the vehicle 102. In these embodiments, the vehicle 102 may transmit a communication signal through Bluetooth to the parking lock 114, which may include a request to change the state of the parking lock, thereby allowing the vehicle to enter the parking slot 104.

[0049] In some embodiments, the status of the parking lock 114 may also be altered through interaction with the lock releasing service. The lock releasing service 106 may process requests from the vehicle 102 to change the status of the parking lock 114. The lock releasing service 106 may communicate with the parking lock 114 through a network connection, and transmit a command to toggle the parking lock 114 between its locked and released states. This communication enables greater flexibility and remote control over the parking space access, enhancing the overall efficiency of the parking system.

[0050] The ability to remotely alter the status of the parking lock 114 through either direct P2P communication with the vehicle 102 or through the lock releasing service 106 provides a secure, flexible, and scalable solution for managing access to parking spaces, ensuring that only authorized vehicles can occupy the parking slot when the lock is in the released state.

[0051] In some embodiments, in addition to the parking lock 114, the parking slot 104 may be marked by the slot marker 116. The slot marker 116 is a visual identifier affixed to or placed within or adjacent to the boundaries of the parking slot 104, which serves to facilitate the recognition and identification of the parking slot 104 by the computer vision system 112 of the vehicle 102. The slot marker 116 is configured to be detectable by an imaging sensor of the vehicle 102, such as a camera or another optical detection device, which is a part of the computer vision system 112. Upon detecting the slot marker 116, the computer vision system 112 may process the visual information to obtain metadata associated with the parking slot.

[0052] For example, the slot marker 116 may be a QR code, which is capable of storing data in a machine-readable format. The QR code my be encoded with metadata that provides essential information required for the parking process, such as the unique identification of the parking slot 104 and relevant parameters for interacting with the parking lock 114. This metadata may also include additional details such as the type of parking, the status of the parking lock (locked or released) , and communication protocols for releasing the parking lock 114.

[0053] In some embodiments, the slot marker may also be designed to accommodate other types of visual identifiers, such as barcodes, optical patterns, or digital markers, which can similarly be recognized and processed by the computer vision system 112. The use of a visual marker in conjunction with the computer vision system 112 can enhance the overall automation and precision of the parking process, reducing the need for manual input and improving the user experience.

[0054] Fig. 2 is a flow chart illustrating an example process 200 of releasing a parking lock according to some embodiments of the present disclosure. The process 200 may be implemented by a vehicle (e.g., the vehicle 102 in Fig. 1) . As shown in Fig. 2, at block 202, the vehicle may obtain metadata associated with a parking lock located at a parking slot, where the metadata comprises identification of the parking lock and data for communicating with the parking lock. For example, as shown in Fig. 1, the vehicle 102 may obtain metadata associated with the parking lock 114, where the metadata may comprise an identification of the parking lock 114 and data for communicating with the parking lock. For example, in some embodiments of utilizing a remote service, the computer vision system 112 may identify the slot marker 116 presented at the parking slot 104 through a camera of the vehicle 102 during a self-parking process. The computer vision system 112 may decode the slot marker 116 to obtain the metadata associated with the parking slot 104. The metadata may comprise the identification of the parking lock 114 and a communication address of the lock releasing service 106. In some embodiments of utilizing peer-to-peer communication, a peer-to-peer communication module of the communication module 110 may scan the parking lock 114. Then, the communication module 110 may obtain the metadata associated with the parking lock 114, where the metadata may comprise the identification of the parking lock 114 and parameters for establishing a peer-to-peer communication connection with the parking lock 114.

[0055] At block 204, the vehicle may generate a lock releasing request based on the metadata associated with the parking lock. For example, as shown in Fig. 1, the controller 108 may obtain the metadata associated with the parking lock 114 from the computer vision system 112 or the communication module 110. Then, the controller 108 may generate a request to release the parking lock 114 based on the metadata associated with the parking lock 114. For example, the request may be generated based on the identification of the parking lock 114 and the communication parameters in the metadata.

[0056] At block 206, the vehicle may transmit the lock releasing request to release the parking lock. For example, as shown in Fig. 1, the controller 108 may pass the generated request to the communication module 110. In some embodiments, the communication module 110 may transmit the lock releasing request to the lock releasing service 106. Upon receiving the lock releasing request, the lock releasing service 106 may instruct the parking slot 104 to change the status of the parking slot 104 to “released” . In some embodiments, the communication module 110 may transmit the lock releasing request to the parking lock directly through the peer-to-peer communication connection. Upon receiving the lock releasing request, the parking lock 104 may change its status to “released” .

[0057] In this way, the likelihood of human error can be reduced. For example, the vehicle can be correctly aligned with the corresponding parking lock, preventing issues such as releasing the wrong lock or failing to release the lock. Therefore, the risk of failure in the self-parking process can be reduced. In addition, with the vehicle autonomously handling both the identification of the parking slot and the unlocking process, the time to park the vehicle can be reduced. Since the lock releasing request is transmitted directly to the parking lock or the remote service, the overall parking efficiency can be enhanced and the delays can be reduced.

[0058] As described above, in some embodiments, the vehicle may release the parking lock through a remote service. In these embodiments, the vehicle may identify a slot marker associated with the parking lock through the computer vision system of the vehicle. Then, the vehicle may obtain the metadata associated with the parking lock by decoding the slot marker. In some embodiments, the slot marker may be presented on the ground inside a boundary of the parking slot. In some embodiments, the data for communicating with the parking lock may comprise a communication address of a lock releasing service, and the lock releasing service may be configured to communicate with the parking lock to release the parking lock. The vehicle may generate the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service. In some embodiments, the vehicle may transmit the lock releasing request to the lock releasing service to release the parking lock. In some embodiments, the vehicle may transmit the lock releasing request to the lock releasing service with a secure token for verifying an identity of the vehicle by the lock releasing service.

[0059] Fig. 3 is a schematic diagram illustrating an example 300 of releasing a parking lock through a remote service according to some embodiments of the present disclosure. As shown in Fig. 3, the example 300 comprises a controller 302 of a vehicle, a communication module 304 of the vehicle, a computer vision system 306 of the vehicle, a parking slot 308, a parking lock 310 located at the parking slot 308, a slot marker 312 located at the parking slot 308, and a lock releasing service 314 deployed on a server.

[0060] At step 1, the controller 302 may start a self-parking process. For example, the controller 302 may initiate a self-parking job upon receiving a command from the end user. This command may be input through various user interfaces, such as a mobile application, a key fob, or directly via the internal control system of the vehicle. Upon activation, the self-parking system of the vehicle may be engaged, and a series of operations designed to autonomously park the vehicle in a parking slot may be initiated.

[0061] At step 2, the computer vision system 306 may start to locate an available parking slot. For example, the controller 302 may request the computer vision system 306 to commence the search for an available parking slot. In this step, the controller 302 may send a command to the computer vision system 306 through a controller (e.g., the controller 108 in Fig. 1) , where the command may direct the computer vision system 306 to begin scanning the surrounding environment for suitable parking slots.

[0062] The computer vision system 306 may utilize one or more imaging sensors, such as cameras, LiDAR, or other optical sensors, to capture and process visual data of the parking area. The computer vision system 306 may be configured to detect and identify parking slots based on predefined criteria, such as the location, dimensions, and orientation of the parking spaces. Additionally, the computer vision system may be capable of distinguishing between different types of parking configurations, such as parallel, perpendicular, or angled parking, and identifying any obstacles that may obstruct the parking process.

[0063] Once the visual data is acquired, the computer vision system 306 may process the images using algorithms designed to recognize the boundaries and characteristics of the parking slots. For example, the computer vision system 306 may apply object recognition techniques, edge detection, and spatial analysis to accurately determine the available parking slots, ensuring that the detected slots are suitable for parking based on the size of the vehicle and other constraints.

[0064] At step 3, the parking slot 308 may be located. For example, the computer vision system 306 may communicate with other vehicle systems, such as the communication module 304, to exchange data regarding the identified parking slots. This data may comprise the spatial coordinates of the parking slots, available space dimensions, and any relevant metadata, such as the status of associated parking locks or slot markers. This information may be then sent to the controller, which makes decisions regarding the optimal parking slot for the vehicle to enter. Through this process, the vehicle autonomously and efficiently identifies and evaluates available parking spaces, preparing for the next phase of the parking operation.

[0065] At step 4, the computer vision system 306 may identify a slot marker located at the parking slot 308. For example, the computer vision system 306 may employ its imaging sensors to capture real-time visual data of the parking slot area. Then, the computer vision system 306 may process this data to locate and recognize the slot marker 312 associated with the parking lock 310 located at the parking slot 308.

[0066] The slot marker 312 may take the form of various types of identifiers, such as a QR code, barcode, optical pattern, or any other machine-readable or distinguishable symbol. The computer vision system 306 may scan the captured visual data for the presence of the slot marker 312. For example, the computer vision system 306 may use object recognition and pattern matching techniques to identify the slot marker 312.

[0067] In some embodiments, the slot marker 312 may be presented on the ground inside a boundary of the parking slot 308. Because the imaging sensor (e.g., the camera) of the vehicle is typically oriented downward to capture images of the surrounding environment, it is well-suited to detect a slot marker located on the ground. Furthermore, positioning the slot marker 312 on the ground inside a boundary of the parking slot 308 can ensure that the slot marker 312 is within the field of view of the camera for a longer duration, even as the vehicle approaches the parking space. This can enhance the reliability and accuracy of slot marker detection, reducing the risk of misidentification or failure to detect the marker due to occlusion by obstacles or other environmental factors. As the vehicle moves closer to the parking slot 308, the camera can continuously track the slot marker 312 and initiate the necessary steps to decode the embedded metadata, including communication protocols for interacting with the lock releasing service 314.

[0068] At step 5, after the computer vision system 306 successfully identifies the slot marker 312, the computer vision system 306 may obtain the metadata associated with the parking lock 310 from the slot marker 312. In this step, upon detecting the presence of the slot marker 312, the computer vision system 306 may proceeds to decode the slot marker 312. The decoded data from the slot marker 312 provides the metadata associated with the parking lock 310. For example, the metadata may comprise the identification of the parking lock 310, the current status (e.g., locked or released) of the parking lock 310, communication address of the lock releasing service 314, communication parameters required by the lock releasing service 314, and potentially other configuration information necessary for the vehicle to interact with the lock releasing service 314.

[0069] The identification of the parking lock 310 may be used to distinguish this particular lock from other parking locks. This identification can ensure that the vehicle requests the locking releasing service 314 to release the correct parking lock, minimizing the risk of interference or malfunction.

[0070] The lock status may indicate the current operational state of the parking lock 310, for example whether it is in a “locked” or “released” state. This status is crucial for the vehicle to determine if it can proceed with parking in the slot or if further actions are required (e.g., sending a request to release the parking lock) .

[0071] This communication address of the lock releasing service 314 is a unique identifier that enables the vehicle to establish a secure and efficient communication link with the lock releasing service 314, which is typically deployed on a remote server or cloud-based infrastructure. The communication address of the lock releasing service 314 is essential for facilitating the interaction between the vehicle and the parking lock 310, especially in scenarios where direct communication with the parking lock itself is not possible or desired. For example, the communication address may represent the location (such as an IP address, URL, or other network identifier) of the lock releasing service 314. This communication address may act as a gateway through which the vehicle can send requests to release the parking lock 310. The communication address may be a fixed address or dynamically assigned depending on the architecture of the system.

[0072] In some embodiments, the metadata may also comprise information about the specific communication protocol to be used for interacting with the lock releasing service 314. The protocols may be HTTP, HTTPS, Web Sockets, or other secure communication methods that allow the vehicle to send commands or data to the lock releasing service 314.

[0073] In some embodiments, the metadata may include authentication details or tokens required to ensure secure communication with the lock releasing service 314. These may include encryption keys, API keys, or other forms of authorization to protect against unauthorized access and ensure that only the vehicle can interact with the lock releasing service 314.

[0074] In some embodiments, the metadata may also comprise information regarding the port number or network configuration details required for establishing the communication link. This ensures that the communication module 304 can correctly route a lock releasing request through the appropriate network channels to the lock releasing service 314.

[0075] In some embodiments, the metadata may specify the format in which data should be exchanged between the vehicle and the lock releasing service 314. For example, the vehicle may need to send a request in JSON or XML format, and the service may return a response in a specific format indicating the success or failure of the lock release operation.

[0076] At step 6, once the vehicle has retrieved the identification of the parking lock 310 and the communication address from the metadata, the communication module 304 may initiate contact with the lock releasing service 314. The controller 302 may generate a lock releasing request based on the identification of the parking lock 310 and the communication address of the lock releasing service 314. Then, the communication module 304 may transmit the lock releasing request to the lock releasing service to release the parking lock 310.

[0077] The lock releasing request may be formulated by the controller 302 to include the necessary information to facilitate the releasing of the parking lock 310. For example, the request may comprise the identification of the parking lock 310, the current lock status (e.g., whether locked or released) , and the identity of the vehicle or other related authentication data. The request may also specify additional operational parameters, such as the position of the vehicle relative to the parking slot 308 and the transmission time of the request. Therefore, the lock releasing service 314 can respond appropriately to the context of the vehicle’s parking maneuver.

[0078] Once the lock releasing request has been generated, the communication module 304 of the vehicle may transmit the lock releasing request to the lock releasing service 314 over a secure communication channel. The communication channel may be established using protocols such as HTTPS, Web Sockets, or any other secure data transmission protocol. It ensures that the request is transmitted without interception or tampering.

[0079] In some embodiments, in order to further enhance security, the lock releasing request may be transmitted with a secure token for verifying the identity of the vehicle. The secure token may be a cryptographic key, authentication token, or other form of identity verification that ensures the lock releasing service 314 can verify the authenticity of the request and confirm that it is being sent by a legitimate vehicle. The secure token may be served as a safeguard to prevent unauthorized vehicles or entities from unlocking the parking lock 310. This authentication mechanism helps ensure the integrity and security of the entire parking process, thereby the misuse or fraudulent access to the parking locks can be reduced.

[0080] At step 7, once the lock releasing request has been processed by the lock releasing service 314 and the authentication has been confirmed, the lock releasing service 314 may generate and transmit a lock release command to the parking lock 310. The lock releasing command may be transmitted via a secure communication protocol, to ensure that the lock releasing command reaches the parking lock 310 in an efficient and secure manner.

[0081] At step 8, the parking lock 310 may receive the lock releasing command and change it status to “released” . The parking lock 310 may have the capability to listen for incoming commands from the lock releasing service. The parking lock 310 proceeds to unlock itself in response to the received lock releasing command. The parking lock 310 may perform a mechanical or electrical action to disengage its locking mechanism. This action could include releasing a physical bolt, activating an electromagnet, or other means to physically unlock the parking lock 310.

[0082] In some embodiments, the releasing process may be monitored by sensors within the parking lock 310 to confirm that the lock has been successfully released. The parking lock 310 may be configured to operate autonomously in response to the command, requiring no further interaction from the user. This process can be performed in a timely manner to allow the vehicle to proceed with parking in the parking slot 308 without delay.

[0083] At step 9, once the parking lock 310 has been successfully released, it may send a confirmation response to the lock releasing service 314. This confirmation response serves as an acknowledgment that the parking lock 310 has been successfully disengaged and that the parking slot 308 is now available for the vehicle to enter. The confirmation response may comprise information such as the status of the parking lock 310 (e.g., “released” ) , relevant timestamps, and potentially an error code or status message in case of failure.

[0084] At step 10, upon receiving the confirmation response, the lock releasing service 314 may transmit the confirmation response back to the vehicle via the communication module 304. Therefore, the controller 302 may be informed of the successful releasing event. In some embodiments, the confirmation response may also be sent directly from the parking lock 310 to the vehicle via a secure communication channel.

[0085] At step 11, upon receiving the confirmation response of the release of the parking lock 310, the communication module 304 may signals the controller 302 to commence the subsequent steps of the self-parking procedure. The communication module 304 may forward the confirmation response, which indicates that the parking slot 308 is now accessible, to the controller. Based on this confirmation response, the controller may adjust the trajectory of the vehicle and ensure that the vehicle is aligned with the parking slot 308. The vehicle may also adjust its speed and position to optimize the parking maneuver based on surrounding obstacles and space constraints.

[0086] At step 12, the controller 302 may proceed to execute the remaining steps necessary to complete the self-parking maneuver. In this step, the controller 302 may continue to monitor the boundaries of the parking slot 308 using the sensors, to guide the vehicle into the parking slot. The controller may adjust the steering, speed, and acceleration of the vehicle to ensure that the vehicle enters the parking slot 308 with precise alignment.

[0087] In this way, the vehicle can release the parking lock 310 through the lock releasing service 314 and park into the parking slot 308 autonomously with minimal input from the user. Therefore, the parking procedure can be executed safely and efficiently. Furthermore, the user experience can be improved.

[0088] In some embodiments, the vehicle may release the parking lock through a peer-to-peer connection. In these embodiments, in order to obtain the metadata associated with the parking lock located at the parking slot, the vehicle may search the parking lock by performing peer-to-peer communication scan. Then, the vehicle may establish a peer-to-peer communication connection between the parking lock and the vehicle. The vehicle may transmit a metadata acquiring request to the parking lock through the peer-to-peer communication connection. Then, the vehicle may receive the metadata associated with the parking lock from the parking lock through the peer-to-peer communication connection. In some embodiments, the vehicle may transmit the lock releasing request to the parking lock through the peer-to-peer communication connection, to cause the parking lock being released.

[0089] Fig. 4 is a schematic diagram illustrating an example 400 of releasing a parking lock through peer-to-peer communication according to some embodiments of the present disclosure. As shown in Fig. 4, the example 400 comprises a controller 402 of a vehicle, a communication module 404 of the vehicle, a computer vision system 406 of the vehicle, a parking slot 408, and a parking lock 410 located at the parking slot 408. It should be noted that, in the example 400, Bluetooth is used as an example of the peer-to-peer communication. However, the peer-to-peer communication may be other communication method such as near field communication (NFC) .

[0090] The steps 1-3 in the example 400 are similar to the steps 1-3 in the example 300. At step 1, the controller 402 may start a self-parking process. At step 2, the computer vision system 406 may start to locate an available parking slot. At step 3, the parking slot 408 may be located.

[0091] At step 4, the communication module 404 may establish a Bluetooth connection with the parking lock 410. For example, upon determining the presence of the Bluetooth-enabled parking lock 410 within proximity, the communication module 404 may initiate a Bluetooth connection with the parking lock 410. The communication module 404 may scan the surrounding environment for available Bluetooth devices by identifying Bluetooth signals transmitted by nearby devices. The available Bluetooth devices may include the parking lock 410, which is equipped with Bluetooth functionality.

[0092] Once the parking lock 410 is detected, the communication module 404 may identify the parking lock based on a unique Bluetooth device address (e.g., a MAC address) . The vehicle may store a list of previously encountered parking locks, allowing it to more efficiently identify and connect to the correct parking lock. In some embodiments, the identification process may include querying the parking lock 410 for specific identifiers or metadata that may be used to confirm its identity.

[0093] If the parking lock 410 requires authentication, the communication module 404 and the parking lock 410 may engage in a pairing process. The pairing process may comprise exchanging security credentials, such as authentication tokens or encryption keys, to ensure that both devices are authorized to communicate with one another. In some embodiments, the pairing process may also comprise verifying the integrity of the communication channel to prevent unauthorized access.

[0094] Once the pairing process is complete and the devices are authenticated, the communication module 404 may establish a Bluetooth connection with the parking lock 410. The connection ensures that data can be securely transmitted between the two devices for the purpose of performing subsequent actions, such as retrieving metadata or transmitting a lock releasing request.

[0095] At step 5, the communication module 404 may obtain metadata associated with the parking lock 410 from the parking lock 410 through the Bluetooth connection. In addition to the identification and the lock status of the parking lock 410, the parking lock 410 may further provide metadata related to the communication protocol supported by the parking lock 410. For example, the metadata may comprise the Bluetooth version, encryption protocols, or proprietary communication protocols used to interact with the parking lock 410.

[0096] In some embodiments, the metadata associated with the parking lock 410 may further comprise authentication data to validate the request sent by the vehicle. For example, the authentication data may comprise a security token, pairing credentials, or other forms of identification to ensure that the vehicle is authorized to control the parking lock 410.

[0097] In some embodiments, the metadata associated with the parking lock 410 may further comprise additional data such as a power status, a battery level, error states, or location data, etc. These information is useful for the vehicle to assess the operational condition of the parking lock 410 and ensure that it is functioning as expected.

[0098] At step 6, the controller 402 may generate a lock releasing request based on the metadata obtained from the parking lock 410. The communication module 404 may transmit the lock releasing request to the parking lock through the Bluetooth connection.

[0099] At step 7, once the lock releasing request has been received by the parking lock 410 and the authentication has been confirmed, the parking lock 410 may proceed to unlock itself in response to the received lock releasing request. Therefore, the status of the parking lock 410 may be changed to “released” .

[0100] At step 8, once the parking lock 410 has been successfully released, it may send a confirmation response to the communication module 404 through the Bluetooth connection. This confirmation response serves as an acknowledgment that the parking lock 410 has been successfully disengaged and that the parking slot 408 is now available for the vehicle to enter. The confirmation response may comprise information such as the status of the parking lock 410 (e.g., “released” ) , relevant timestamps, and potentially an error code or status message in case of failure.

[0101] At step 9, upon receiving the confirmation response of the release of the parking lock 410, the communication module 404 may signals the controller of the vehicle 02 to commence the subsequent steps of the self-parking procedure. The communication module 04 may forward the confirmation response, which indicates that the parking slot 408 is now accessible, to the controller. Based on this confirmation response, the controller may adjust the trajectory of the vehicle and ensure that the vehicle is aligned with the parking slot 408. The vehicle may also adjust its speed and position to optimize the parking maneuver based on surrounding obstacles and space constraints.

[0102] At step 10, the controller 402 may proceed to execute the remaining steps necessary to complete the self-parking maneuver. In this step, the controller 402 may continue to monitor the boundaries of the parking slot 408 using the sensors, to guide the vehicle into the parking slot. The controller may adjust the steering, speed, and acceleration of the vehicle to ensure that the vehicle enters the parking slot 408 with precise alignment.

[0103] In this way, the Bluetooth connection allows peer-to-peer communication between the vehicle and the parking lock 410 without routing the lock releasing request through an external server. As a result, the lock releasing request can be responded with minimal delay. Furthermore, since Bluetooth is a local communication protocol, meaning that the vehicle and the parking lock 410 can communicate directly with each other within a short range. This reduces the potential for communication failures that can occur when relying on a remote service, which might be affected by network issues, server downtime, or internet connectivity problems.

[0104] In some embodiments, the data for communicating with the parking lock may comprise identification of a lock provider. The vehicle may obtain a communication address of a lock releasing service based on the identification of the lock provider. Then, the vehicle may generate the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service. In some embodiments, the vehicle may generate a communication information obtaining request based on the identification of the lock provider. The vehicle may transmit the communication information obtaining request to a lock provider management service. Then, the vehicle may receive the communication address of the lock releasing service from the provider management service.

[0105] Fig. 5 is a schematic diagram illustrating an example 500 of releasing a parking lock by utilizing a lock provider management service according to some embodiments of the present disclosure. As shown in Fig. 5, the example 500 comprises a vehicle 502, a parking slot 504, a lock releasing service 506, and a lock provider management service 518. The vehicle 502 may comprise a controller 508, a communication module 510, and a computer vision system 512. The parking slot 504 may comprise a parking lock 514 and a slot marker 516. In the example 500, the service of the parking lock 514 may be provided by the provider 520. The lock provider management service 518 may maintain communication addresses for a plurality of lock providers.

[0106] In the example 500, the computer vision system 512 may detect and identify the slot marker 516. Then, the vehicle 502 may obtain a provider identification 522 of the provider 520 and a lock identification 524 of the parking lock 514. The controller 508 may generate a communication information obtaining request to obtain a communication address of a lock releasing service associated with the provider 520 based on the provider identification 522. Then, the vehicle may transmit the communication information obtaining request to the lock provider management service 518 through the communication module 510.

[0107] Upon receiving the communication information obtaining request, the lock provider management service 518 may determine a communication address 526 for accessing the lock releasing service 506 based on the provider identification 522, where the lock releasing service 506 is provided by the provider 520, and the lock releasing service 506 is able to communicate with the parking lock 514 to release the parking lock 514. Then, the lock provider management service 518 may transmit the communication address 526 to the communication module 510. Therefore, the vehicle 502 may generate a lock releasing request based on the communication address 526 and the lock identification 524. The vehicle 502 may transmit the lock releasing request through the communication module 510 to the lock releasing service 506, to release the parking lock 514.

[0108] In this way, when the communication address of the lock releasing service 506 is changed, there is no need to re-create and install a new slot marker at the parking slot 504. Therefore, the cost of changing the communication address of the lock releasing service can be reduced, and the efficiency can be improved.

[0109] In some embodiments, the vehicle may obtain information of a plurality of lock providers from a lock provider management service, where the information of the plurality of lock providers may comprise identification of the plurality of lock providers and communication addresses of a plurality of lock releasing services associated with the plurality of lock providers. The vehicle may store the information of the plurality of lock providers on the vehicle. Then, the vehicle may obtain the communication address of the lock releasing service based on the identification of the lock provider and the information of the plurality of lock providers stored on the vehicle.

[0110] For example, in the example 500, the vehicle 502 may periodically obtain and store the data associated with the plurality of lock providers (e.g., identification of the lock provider and the communication address of the corresponding lock releasing service) from the lock provider management service 518. When the computer vision system 512 obtains the provider identification 522 by decoding the slot marker 516, the controller 508 may retrieve the communication address 526 from the provider data stored in the vehicle 502 rather than interacting with the lock provider management service 518. Then, the communication module 510 may transmit a lock releasing request to the lock releasing service based on the lock identification 524 and the communication address 526, to release the parking lock 514. In this way, the times of interaction with the services can be reduced, thereby the delay in the unlocking process can be reduced.

[0111] Fig. 6 is a block diagram illustrating an example apparatus 600 for releasing a parking lock according to some embodiments of the present disclosure. The apparatus 600 comprises a metadata obtaining module 602, configured to obtain metadata associated with a parking lock located at a parking slot, where the metadata comprises identification of the parking lock and data for communicating with the parking lock. The apparatus 600 further comprises a request generation module 604, configured to generate a lock releasing request based on the metadata associated with the parking lock. In addition, the apparatus 600 further comprises a request transmitting module 606, configured to transmit the lock releasing request to release the parking lock.

[0112] In some embodiments, wherein the metadata obtaining module 602 may comprises: a slot marker identifying module, configured to identify a slot marker associated with the parking lock through the computer vision system of the vehicle; and a slot marker decoding module, configured to the metadata associated with the parking lock by decoding the slot marker.

[0113] In some embodiments, wherein the slot marker is presented on the ground inside a boundary of the parking slot.

[0114] In some embodiments, wherein the data for communicating with the parking lock comprises a communication address of a lock releasing service, the lock releasing service is configured to communicate with the parking lock to release the parking lock, and the request generation module 604 may comprise: a first request generation module, configured to generate the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service.

[0115] In some embodiments, wherein the request transmitting module 606 may comprise: a first request transmitting module, configured to transmit the lock releasing request to the lock releasing service to release the parking lock.

[0116] In some embodiments, wherein the request transmitting module 606 may comprise: a second request transmitting module, configured to transmit the lock releasing request to the lock releasing service with a secure token for verifying an identity of the vehicle by the lock releasing service.

[0117] In some embodiments, wherein the data for communicating with the parking lock comprises identification of a lock provider, and the request generation module 604 may comprise: an address obtaining module, configured to obtain a communication address of a lock releasing service based on the identification of the lock provider; and a second request generation module, configured to generate the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service.

[0118] In some embodiments, wherein the address obtaining module may comprise: a third request generation module, configured to generate a communication information obtaining request based on the identification of the lock provider; a third request transmitting module, configured to transmit the communication information obtaining request to a lock provider management service; and an address receiving module, configured to receive the communication address of the lock releasing service from the provider management service.

[0119] In some embodiments, wherein the address obtaining module may comprise: a provider information obtaining module, configured to obtain information of a plurality of lock providers from a lock provider management service, the information of the plurality of lock providers comprising identification of the plurality of lock providers and communication addresses of a plurality of lock releasing services associated with the plurality of lock providers; provider information storing module, configured to store the information of the plurality of lock providers on the vehicle; and a second address obtaining module, configured to obtain the communication address of the lock releasing service based on the identification of the lock provider and the information of the plurality of lock providers stored on the vehicle.

[0120] In some embodiments, wherein the metadata obtaining module 602 may comprise: a lock searching module, configured to search the parking lock by performing peer-to-peer communication scan; a connection establishing module, configured to establish a peer-to-peer communication connection between the parking lock and the vehicle; a connection using module, configured to transmit a metadata acquiring request to the parking lock through the peer-to-peer communication connection; and a metadata receiving module, configured to receive the metadata associated with the parking lock from the parking lock through the peer-to-peer communication connection.

[0121] In some embodiments, wherein the request transmitting module 606 may comprise: a fourth request transmitting module, configured to transmit the lock releasing request to the parking lock through the peer-to-peer communication connection, to cause the parking lock being released.

[0122] In some embodiments, further comprising: a response receiving module, configured to receive, from the parking lock or a lock releasing service, a confirmation response indicating that the parking lock has been released; and a parking module, configured to park into the parking slot through self-parking.

[0123] According to the above embodiments, the likelihood of human error can be reduced. For example, the vehicle can be correctly aligned with the corresponding parking lock, preventing issues such as releasing the wrong lock or failing to release the lock. Therefore, the risk of failure in the self-parking process can be reduced. In addition, with the vehicle autonomously handling both the identification of the parking slot and the unlocking process, the time to park the vehicle can be reduced. Since the lock releasing request is transmitted directly to the parking lock or the remote service, the overall parking efficiency can be enhanced and the delays can be reduced.

[0124] Fig. 7 is a block diagram illustrating physical components (for example hardware) of a controller 700 with which aspects of the present disclosure may be practiced. The controller 700 may be the device or apparatus described in the embodiments of the present disclosure, such as the controller 108 in Fig. 1. As shown in Fig. 7, the controller 700 includes a processor 701, which may be configured to execute various appropriate actions and processing to perform the methods (e.g., the method 200) of the present disclosure. The processor 701 is implemented in hardware, firmware, or a combination of hardware and software. In addition, although not shown in Fig. 7, the controller 700 may also include a co-processor.

[0125] The processor 701 may execute actions and processing to perform the methods of the present disclosure according to computer program instructions. The computer program instructions for performing the operations of the present disclosure may be assembly instructions, Instruction Set Architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages as well as conventional procedural programming languages. In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA) , or a programmable logic array (PLA) , is customized by utilizing status information of the computer-readable program instructions. The electronic circuit may execute the computer-readable program instructions so as to implement various aspects of the present disclosure.

[0126] These computer-readable program instructions may be provided to a processing unit of a general-purpose computer, a special-purpose computer, or a further programmable data processing apparatus, thereby producing a machine, such that these instructions, when executed by the processing unit of the computer or the further programmable data processing apparatus, produce means for implementing functions / actions specified in one or more blocks in the flow charts and / or block diagrams. These computer-readable program instructions may also be stored in a non-transitory computer-readable storage medium, and these instructions cause a computer, a programmable data processing apparatus, and / or other devices to operate in a specific manner; and thus the computer-readable medium having instructions stored includes an article of manufacture that includes instructions that implement various aspects of the functions / actions specified in one or more blocks in the flow charts and / or block diagrams.

[0127] The computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatuses, or other devices, such that a series of operating steps may be executed on the computer, the other programmable data processing apparatuses, or the other devices to produce a computer-implemented process, such that the instructions executed on the computer, the other programmable data processing apparatuses, or the other devices may implement the functions / actions specified in one or more blocks in the flow charts and / or block diagrams.

[0128] The computer program instructions may be stored in a Read-Only Memory (ROM) 702 or be loaded onto a Random Access Memory (RAM) 703 from a storage unit 708, for example. The processor 701, the ROM 702, and the RAM 703 are connected to each other via bus 704. An input / output (I / O) interface 705 is also connected to bus 704. The various methods or processes described above may be performed by the processor 701.

[0129] A plurality of components in controller 700 are connected to the I / O interface 705, including: an input unit 706, such as a keyboard and a mouse; an output unit 707, such as various types of displays and speakers; the storage unit 708, such as a magnetic disk and an optical disc; and a communication unit 709, such as a network card, a modem, and a wireless communication transceiver. The communication unit 709 allows the controller 700 to exchange information / data with other devices via a computer network, such as the Internet, and / or various telecommunication networks.

[0130] In some embodiments, the methods and processes described above may be implemented as a computer program product. The computer program product may include a computer-readable storage medium on which computer-readable program instructions for performing various aspects of the present disclosure are loaded.

[0131] The computer-readable storage medium may be a tangible device that may retain and store instructions used by an instruction-executing device. For example, the computer-readable storage medium may be, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above. More specific examples (a non-exhaustive list) of the computer-readable storage medium include: a portable computer disk, a hard disk, a random access memory (RAM) , a read-only memory (ROM) , an erasable programmable read-only memory (EPROM or flash memory) , a static random access memory (SRAM) , a portable compact disc read-only memory (CD-ROM) , a digital versatile disc (DVD) , a memory stick, a floppy disk, a mechanical coding device, for example, a punch card or a raised structure in a groove with instructions stored thereon, and any suitable combination of the foregoing. The computer-readable storage medium used herein is not to be interpreted as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber-optic cables) , or electrical signals transmitted through electrical wires.

[0132] The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to various computing / processing devices, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer-readable program instructions from a network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.

[0133] The flow charts and block diagrams in the drawings illustrate the architectures, functions, and operations of possible implementations of the devices, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flow charts or block diagrams may represent a module, a program segment, or part of an instruction, and the module, program segment, or part of an instruction includes one or more executable instructions for implementing specified logical functions. In some alternative implementations, functions marked in the blocks may also occur in an order different from those marked in the accompanying drawings. For example, two consecutive blocks may in fact be executed substantially concurrently, and sometimes they may also be executed in a reverse order, depending on the functions involved. It should be further noted that each block in the block diagrams and / or flow charts, as well as a combination of blocks in the block diagrams and / or flow charts, may be implemented using a dedicated hardware-based system that executes specified functions or actions, or using a combination of special hardware and computer instructions.

[0134] Various embodiments of the present disclosure have been described above. The foregoing description is illustrative rather than exhaustive, and is not limited to the disclosed various embodiments. Numerous modifications and alterations are apparent to persons of ordinary skill in the art without departing from the scope and spirit of the illustrated embodiments. The selection of terms as used herein is intended to best explain the principles and practical applications of the various embodiments or the technical improvements to technologies on the market, or to enable other persons of ordinary skill in the art to understand the various embodiments disclosed herein.

Claims

1.A method (200) for releasing a parking lock, comprising:obtaining (202) , by a vehicle, metadata associated with a parking lock located at a parking slot, the metadata comprising identification of the parking lock and data for communicating with the parking lock;generating (204) , by the vehicle, a lock releasing request based on the metadata associated with the parking lock; andtransmitting (206) , by the vehicle, the lock releasing request to release the parking lock.2.The method (200) according to claim 1, wherein obtaining the metadata associated with the parking lock located at the parking slot comprises:identifying a slot marker associated with the parking lock through the computer vision system of the vehicle; andobtaining the metadata associated with the parking lock by decoding the slot marker.3.The method (200) according to claim 2, wherein the slot marker is presented on the ground inside a boundary of the parking slot.4.The method (200) according to claim 2, wherein the data for communicating with the parking lock comprises a communication address of a lock releasing service, the lock releasing service is configured to communicate with the parking lock to release the parking lock, and generating the lock releasing request based on the metadata associated with the parking lock comprises:generating the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service.5.The method (200) according to claim 4, wherein transmitting the lock releasing request to release the parking lock comprises:transmitting the lock releasing request to the lock releasing service to release the parking lock.6.The method (200) according to claim 5, wherein transmitting the lock releasing request to the lock releasing service to release the parking lock comprises:transmitting the lock releasing request to the lock releasing service with a secure token for verifying an identity of the vehicle by the lock releasing service.7.The method (200) according to claim 2, wherein the data for communicating with the parking lock comprises identification of a lock provider, and generating the lock releasing request based on the metadata associated with the parking lock comprises:obtaining a communication address of a lock releasing service based on the identification of the lock provider; andgenerating the lock releasing request based on the identification of the parking lock and the communication address of the lock releasing service.8.The method (200) according to claim 7, wherein obtaining the communication address of the lock releasing service based on the identification of the lock provider comprises:generating a communication information obtaining request based on the identification of the lock provider;transmitting the communication information obtaining request to a lock provider management service; andreceiving the communication address of the lock releasing service from the provider management service.9.The method (200) according to claim 7, wherein obtaining the communication address of the lock releasing service based on the identification of the lock provider comprises:obtaining information of a plurality of lock providers from a lock provider management service, the information of the plurality of lock providers comprising identification of the plurality of lock providers and communication addresses of a plurality of lock releasing services associated with the plurality of lock providers;storing the information of the plurality of lock providers on the vehicle; andobtaining the communication address of the lock releasing service based on the identification of the lock provider and the information of the plurality of lock providers stored on the vehicle.10.The method (200) according to claim 1, wherein obtaining the metadata associated with the parking lock located at the parking slot comprises:searching the parking lock by performing peer-to-peer communication scan;establishing a peer-to-peer communication connection between the parking lock and the vehicle;transmitting a metadata acquiring request to the parking lock through the peer-to-peer communication connection; andreceiving the metadata associated with the parking lock from the parking lock through the peer-to-peer communication connection.11.The method (200) according to claim 10, wherein transmitting the lock releasing request to release the parking lock comprises:transmitting the lock releasing request to the parking lock through the peer-to-peer communication connection, to cause the parking lock being released.12.The method (200) according to claim 1, further comprising:receiving, from the parking lock or a lock releasing service, a confirmation response indicating that the parking lock has been released; andparking into the parking slot through self-parking.13.An apparatus (600) for releasing a parking lock, comprising:a metadata obtaining module (602) , configured to obtain metadata associated with a parking lock located at a parking slot, wherein the metadata comprises identification of the parking lock and data for communicating with the parking lock;a request generation module (604) , configured to generate a lock releasing request based on the metadata associated with the parking lock; anda request transmitting module (606) , configured to transmit the lock releasing request to release the parking lock.14.A vehicle, comprising:a controller; anda communication module,the controller and the communication being configured to implement the method (200) according to any of claims 1-12.15.A computer program product tangibly stored on a computer-readable medium and comprising machine-executable instructions, wherein the machine-executable instructions, when executed, cause a machine to perform the method (200) according to any of claims 1 to 12.