Method and system for assisting vehicle driver in parking in home garage
By using a camera in the home garage to calculate the frame difference and compare the number of pixel rows, assisting drivers to park in a small garage, solving the problem of parking difficulties in home garages and achieving a parking assist system with high accuracy and safety.
Patent Information
- Application Number
- CN202410563640.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-09-26
- Filing Date
- 2024-05-08
- Publication Date
- 2025-03-28
AI Technical Summary
The small space in the home garage makes it challenging for drivers to park in the garage, and the need to develop methods and systems for assisted parking.
By receiving video and calculating frame differences to determine the number of pixel rows that have not changed relative to time when the vehicle enters the garage, comparing with a predetermined row threshold, the command display provides parking notifications and can automatically park.
Effectively assist drivers in parking in a small family garage, improving parking accuracy and safety, and reducing parking difficulties.
Smart Images

Figure CN119705480A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a system and method for assisting a vehicle driver in parking a vehicle in a home garage. Background Art
[0002] This section generally presents the background of the present disclosure. To the extent described in this section, the work of the presently named inventors and aspects of the description that may not constitute prior art at the time of filing are neither explicitly nor implicitly admitted to be prior art to the present disclosure.
[0003] Vehicles are usually parked in home garages. However, home garages are usually small, making it challenging for drivers to maneuver and park in home garages. For this reason, it is necessary to develop methods and systems for assisting vehicle drivers in parking in home garages. Summary of the invention
[0004] A system of one or more computers may be configured to perform specific operations or actions by means of software, firmware, hardware, or a combination thereof installed on the system, which in operation causes or results in the system performing an action. One or more computer programs may be configured to perform specific operations or actions by means of instructions that, when executed by a data processing device, cause the device to perform an action. One general aspect includes a method for locating a vehicle in a garage camera view. The method includes: determining that a vehicle is approaching a garage; in response to determining that the vehicle is approaching the garage, receiving video from a garage camera. The method also includes: using the video received from the garage camera, determining a frame difference for each pixel relative to time when the vehicle moves into the garage, and using the frame difference for each pixel to calculate the number of rows of pixels that do not change relative to time when the vehicle enters the garage; comparing the number of rows of pixels that do not change relative to time when the vehicle enters the garage with a predetermined row threshold to determine whether the number of rows of pixels that do not change relative to time when the vehicle enters the garage is less than or equal to the predetermined row threshold. In addition, the method also includes: determining that the number of pixel rows that have not changed relative to time when the vehicle enters the garage is less than or equal to a predetermined row threshold, and in response to determining that the number of pixel rows that have not changed relative to time when the vehicle moves into the garage is less than or equal to the predetermined row threshold, commanding the display to provide a notification indicating that the vehicle is properly parked in the garage. Other embodiments of this aspect include corresponding computer systems, apparatuses, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method.
[0005] Implementations may include one or more of the following features. The method may include determining that a background view of the interior of the garage is cached. The method may include using the cached background view of the interior of the garage to determine a frame difference of each pixel relative to time when the vehicle moves into the garage. The method may include determining that the background view of the interior of the garage is not cached. The method may include using a real-time background view of the interior of the garage to determine a frame difference of each pixel relative to time when the vehicle enters the garage. The vehicle includes a vehicle controller that wirelessly receives video from a garage camera. In response to determining that the number of pixel rows that do not change relative to time when the vehicle enters the garage is less than or equal to a predetermined row threshold, the vehicle automatically stops. The method may include commanding a display to display a boundary line when the vehicle enters the garage. The boundary line includes a first side line along a first side of the vehicle. The boundary line includes a second side line along a second side of the vehicle. The second side of the vehicle is opposite to the first side of the vehicle. The boundary line includes a front wall adjacent to a front wall of the garage. The boundary line may be moved via a user input through a user interface of the vehicle. The method may include determining whether at least one side mirror of the vehicle is folded, and commanding the display to display video captured by the garage camera when the vehicle enters the garage. Additionally, the method may include commanding a display to display a boundary line superimposed on a video captured by a garage camera as the vehicle drives into the garage. Pixel locations of the garage door on the video have garage door pixel row values. Implementations of the described technology may include hardware, method, or computer software on a computer-accessible medium.
[0006] The present disclosure also describes a system for locating a vehicle in a garage camera view. The system includes a vehicle controller, a display communicating with the vehicle controller, and a communication transceiver communicating with the vehicle controller and a garage camera located in the garage. The vehicle controller is programmed to perform the above method.
[0007] Further areas of applicability will become apparent from the description provided herein.It should be understood that the description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure.
[0008] The above features and advantages and other features and advantages of the presently disclosed systems and methods are apparent from the detailed description, including the claims and exemplary embodiments, when taken in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The present disclosure will be more fully understood from the detailed description and accompanying drawings, in which:
[0010] Figure 1 is a block diagram depicting an embodiment of a vehicle;
[0011] Figure 2 is a schematic diagram of a system for assisting a vehicle driver in parking a vehicle in a home garage;
[0012] Figure 3 It is wirelessly connected to the home garage camera Figure 1 A schematic diagram of a vehicle;
[0013] Figure 4 is a schematic diagram of a vehicle 10 inside a home garage;
[0014] Figure 5 is a flow chart of a method for assisting a vehicle driver in parking a vehicle in a home garage;
[0015] Figure 6 is a flow chart of another method for assisting a vehicle driver in parking in a home garage;
[0016] Figure 7 is a flow chart of another method for assisting a vehicle driver in parking in a home garage;
[0017] Figure 8 is a schematic diagram of a vehicle, a garage floor, and a garage camera. DETAILED DESCRIPTION
[0018] Reference will now be made in detail to several examples of the present disclosure, which are illustrated in the accompanying drawings. Whenever possible, the same or similar reference numerals are used in the drawings and the description to refer to the same or similar parts or steps.
[0019] refer to Figure 1 , the vehicle 10 generally includes a chassis 12, a body 14, front wheels and rear wheels 17, and may be referred to as a vehicle system. In the depicted embodiment, the vehicle 10 includes two front wheels 17a and two rear wheels 17b. The body 14 is disposed on the chassis 12 and substantially surrounds the components of the vehicle 10. The body 14 and the chassis 12 may together form a vehicle frame. The wheels 17 are each rotatably connected to the chassis 12 near respective corners of the body 14. The vehicle 10 includes a front axle 19 connected to the front wheels 17a and a rear axle 25 connected to the rear wheels 17b.
[0020] The vehicle 10 may be an autonomous vehicle, and the control system 98 may be part of the vehicle 10 or work with the vehicle 10. The vehicle 10 is, for example, a vehicle that is automatically controlled to transport passengers from one location to another. In the illustrated embodiment, the vehicle 10 is depicted as a pickup truck, but it should be understood that other vehicles such as trucks, sedans, sport utility vehicles (SUVs), recreational vehicles (RVs), etc. may also be used. In embodiments, the vehicle 10 may include a so-called Level 2, Level 3, Level 4, or Level 5 driving automation system. Level 4 systems represent "high automation" and refer to the driving mode-specific performance of the autonomous driving system in all aspects of the dynamic driving task, even if the human driver does not respond appropriately to the intervention request. Level 5 systems represent "full automation" and refer to the full-time performance of the autonomous driving system in all aspects of the dynamic driving task under all road and environmental conditions that the human driver can manage. In a Level 3 vehicle, the system 98 performs the entire dynamic driving task (DDT) within its designed area. In a Level 2 vehicle, the system provides steering, braking / acceleration support, lane centering, and adaptive cruise control. However, even when these systems are activated, the vehicle operator at the steering wheel must be driving and constantly supervising the automated features.
[0021] As shown, the vehicle 10 generally includes a propulsion system 20, a transmission system 22, a steering system 24, a braking system 26, a sensor system 28, an actuator system 30, at least one data storage device 32, at least one vehicle controller 34, and a communication system 36. The steering system 24 is a wire-controlled steering system. In various embodiments, the propulsion system 20 may include an electric motor such as a traction motor and / or a fuel cell propulsion system. The vehicle 10 may also include a battery (or battery pack) 21 electrically connected to the propulsion system 20. Therefore, the battery 21 is configured to store electrical energy and provide electrical energy to the propulsion system 20. In certain embodiments, the propulsion system 20 may include an internal combustion engine. The transmission system 22 is configured to transmit power from the propulsion system 20 to the wheels 17 according to a selectable speed ratio. According to various embodiments, the transmission system 22 may include a stepped automatic transmission, a continuously variable transmission, or other suitable transmission. The braking system 26 is configured to provide braking torque to the wheels 17. In various embodiments, the braking system 26 may include friction brakes, wire control brakes, regenerative braking systems (e.g., motors), and / or other suitable braking systems. The steering system 24 affects the position of the wheels 17 and may include a steering wheel 33. Although depicted as including a steering wheel 33 for purposes of illustration, in some embodiments contemplated within the scope of the present disclosure, the steering system 24 may not include a steering wheel 33.
[0022] The sensor system 28 includes one or more sensors 40 (i.e., sensing devices) that sense observable conditions of the external environment and / or the internal environment of the vehicle 10. The sensors 40 communicate with the vehicle controller 34 and may include, but are not limited to, one or more steering wheel sensors 45, one or more radars, one or more light detection and ranging (lidar) sensors, one or more proximity sensors, one or more odometers, one or more ground penetrating radar (GPR) sensors, one or more steering angle sensors, global navigation satellite system (GNSS) transceivers (e.g., one or more global positioning system (GPS) transceivers), one or more tire pressure sensors, one or more vehicle cameras 41, one or more gyroscopes, one or more accelerometers, one or more inclinometers, one or more speed sensors, one or more ultrasonic sensors, one or more inertial measurement units (IMUs), one or more night vision devices, thermal imaging sensors, and / or other sensors. The sensors 40 are each configured to generate a signal indicative of a sensed observable condition of the external environment and / or the internal environment of the vehicle 10. Because the sensor system 28 provides data to the vehicle controller 34, the sensor system 28 and its sensors 40 are considered information sources (or simply sources). The vehicle 10 and / or the system 98 do not include a light sensor capable of detecting light inside the vehicle 10 .
[0023] The actuator system 30 includes one or more actuators 42 that control one or more vehicle features, such as, but not limited to, the propulsion system 20, the transmission system 22, the steering system 24, and the braking system 26. In various embodiments, the vehicle features may also include interior and / or exterior vehicle features, such as, but not limited to, doors 52, trunk, and cabin features, such as air, music, lighting, etc.
[0024] The data storage device 32 stores data for automatically controlling the vehicle 10. In various embodiments, the data storage device 32 stores a defined map of a navigable environment. In various embodiments, the defined map may be predefined by and obtained from a remote system. For example, the defined map may be assembled by a remote system and transmitted to the vehicle 10 (wirelessly and / or wired) and stored in the data storage device 32. The data storage device 32 may be part of the vehicle controller 34, separate from the vehicle controller 34, or part of the vehicle controller 34 and part of a separate system.
[0025] The vehicle 10 may also include one or more airbags 35 that communicate with the vehicle controller 34 or another controller of the vehicle 10. The airbags 35 include inflatable bags and are configured to transition between a stowed configuration and a deployed configuration to cushion the effects of external forces applied to the vehicle 10. The sensors 40 may include airbag sensors, such as an IMU, that are configured to detect external forces and generate signals indicating the magnitude of such external forces. The vehicle controller 34 is configured to command the airbags 35 to deploy based on signals from one or more sensors 40 (e.g., airbag sensors). Thus, the vehicle controller 34 is configured to determine when the airbags 35 have been deployed.
[0026] The vehicle controller 34 includes at least one processor 44 and a non-transitory computer-readable storage device or medium 46. The processor 44 can be a custom or commercially available processor, a central processing unit (CPU), a graphics processing unit (GPU), an auxiliary processor in several processors associated with the vehicle controller 34, a semiconductor-based microprocessor (in the form of a microchip or chipset), a macroprocessor, a combination thereof, or generally a device for executing instructions. The computer-readable storage device or medium 46 can include volatile and non-volatile memories such as read-only memory (ROM), random access memory (RAM), and keep-alive memory (KAM). KAM is a persistent or non-volatile memory that can be used to store various operating variables when the processor 44 is powered off. The computer-readable storage device or medium 46 can be implemented using a variety of storage devices, such as PROM (programmable read-only memory), EPROM (electrical PROM), EEPROM (electrically erasable PROM), flash memory, or other electrical, magnetic, optical, or combination storage devices capable of storing data used by the vehicle controller 34 when controlling the vehicle 10, some of which represent executable instructions. The vehicle controller 34 of the vehicle 10 may be referred to as a vehicle controller and may be programmed to perform the method 100 ( Figure 5 )、Method 200( Figure 6 ) and / or method 300( Figure 7 ), as described in detail below.
[0027] The instructions may include one or more separate programs, each of which includes an ordered list of executable instructions for implementing logical functions. When executed by the processor 44, the instructions receive and process signals from the sensor system 28, execute logic, calculations, methods and / or algorithms for automatically controlling components of the autonomous vehicle 10, and generate control signals to the actuator system 30 to automatically control components of the autonomous vehicle 10 based on the logic, calculations, methods and / or algorithms. Although Figure 11, a single vehicle controller 34 is shown, but embodiments of the vehicle 10 may include multiple controllers 34 that communicate via a suitable communication medium or combination of communication media and cooperate to process sensor signals, execute logic, calculations, methods and / or algorithms, and generate control signals for automatically controlling vehicle features. In various embodiments, one or more instructions of the vehicle controller 34 are embodied in the control system 98.
[0028] The vehicle 10 includes a user interface 23, which may be a touch screen in the instrument panel. The user interface 23 may include, but is not limited to, an alarm, such as one or more speakers 27 for providing audible sounds, tactile feedback in a vehicle seat or other object, one or more displays 29, one or more microphones 31, and / or other devices suitable for providing notifications to a vehicle user of the vehicle 10. The user interface 23 is in electronic communication with a vehicle controller 34 and is configured to receive input from a vehicle occupant 11 (e.g., a vehicle driver or a vehicle passenger). For example, the user interface 23 may include a touch screen and / or buttons configured to receive input from a vehicle occupant 11. Thus, the vehicle controller 34 is configured to receive input from a user via the user interface 23. The vehicle 10 may include one or more displays 29, which are configured to display information to a vehicle occupant 11 (e.g., a vehicle operator or a passenger).
[0029] The communication system 36 communicates with the vehicle controller 34 and is configured to wirelessly communicate with other remote entities 48, such as, but not limited to, other vehicles ("V2V" communication), infrastructure ("V2I" communication), remote systems of remote call centers (such as General Motors' ON-STAR), and / or personal electronic devices, such as mobile phones. In the present disclosure, the term "remote vehicle" refers to a vehicle, such as an automobile, that is configured to send one or more signals to the vehicle 10 but is not physically connected to the vehicle 10. In some embodiments, the communication system 36 is a wireless communication system configured to communicate via a wireless local area network (WLAN) using the IEEE 802.11 standard or by using cellular data communications. However, additional or alternative communication methods such as dedicated short-range communication (DSRC) channels are also considered within the scope of the present disclosure. A DSRC channel refers to a one-way or two-way short-range to medium-range wireless communication channel designed specifically for automotive use and a set of corresponding protocols and standards. Therefore, the communication system 36 may include one or more antennas and / or vehicle transceivers 37 for receiving and / or transmitting signals, such as collaborative sensing messages (CSM). The vehicle transceiver 37 may be considered a sensor 40. The communication system 36 is configured to wirelessly transmit information between the vehicle 10 and another vehicle. In addition, the communication system 36 is configured to wirelessly transmit information between the vehicle 10 and infrastructure or other vehicles.
[0030] The vehicle 10 includes one or more side view mirrors 50. Although only one side view mirror 50 is shown, it is contemplated that the vehicle 10 may include at least two side view mirrors 50. That is, the vehicle 10 may include one side view mirror 50 on each side. The side view mirrors 50 may each be movably connected to the vehicle body 14. Thus, the side view mirrors 50 may be folded (e.g., pivotable) toward and away from the vehicle door 52.
[0031] refer to Figure 2 , the system 98 includes a vehicle, a networked home 54, an external server 56, and a mobile device 58. The term "networked home" refers to a networked residence to enable interconnection and interoperability of multiple devices, services, and applications, ranging from communication and entertainment to healthcare, security, and home automation. The vehicle 10 communicates wirelessly with the networked home 54, the external server 56, and the mobile device 58. The term "mobile device" refers to a handheld computer such as a smartphone, tablet, or e-reader. The mobile device 58 includes an application for sensing notifications and / or receiving input from a user. The networked home 54 includes a home garage 60 for storing a vehicle (e.g., vehicle 10). The home garage 60 includes a garage door 62 and one or more wireless garage cameras 64 attached to the ceiling and / or walls of the home garage 60. The garage cameras 64 may collectively or individually have a field of view large enough to capture images of the entire interior of the home garage 60.
[0032] The networked home 54 communicates wirelessly with the vehicle 10 and the external server 56. For example, the vehicle 10 is configured to send vehicle type data to the networked home 54 using the vehicle transceiver 37. The vehicle type data indicates the type of vehicle (e.g., electric vehicle, internal combustion engine vehicle, hybrid vehicle, etc.). The vehicle 10 also includes map data that includes information about the location of the home garage 60 of the networked home 54. The networked home 54 is configured to send home data to the vehicle 10 and / or the external server 56. The home data may include information about the status and / or resolution of the garage camera 64, the installation location of the garage camera 64, and / or the status of the garage door 62 (open or closed).
[0033] The vehicle 10 also communicates wirelessly with an external server 56. Thus, the vehicle 10 is configured to send vehicle data to the external server 56. The external server 56 communicates wirelessly with a mobile device 58 running an application. The mobile device 58 can provide notifications to the user through the application. For example, these notifications can include information about the networked home 54 and / or the vehicle 10, such as the state of the garage door 62 (e.g., open or closed), whether the engine of the vehicle 10 is turned on for more than a predetermined amount of time, the fact that the vehicle 10 enters the home garage 60, the fact that the vehicle 10 leaves the home garage 60, and / or the fact that the vehicle 10 (if it is an electric vehicle) is in the home garage 60 but is not connected to a charger. The application running on the mobile device 58 can be used as a garage door opener. As a non-limiting example, the vehicle 10 is wirelessly connected to the networked home 54 and the wireless garage camera 64 via Wi-Fi. The term "Wi-Fi" refers to a series of wireless network protocols based on the IEEE 802.11 family of standards, which are generally used for local area networks of devices and Internet access, allowing nearby digital devices to exchange data via radio waves. However, it is contemplated that the vehicle 10 can be wirelessly connected to the garage camera using other network protocols.
[0034] refer to Figure 3 , the vehicle 10 uses a short-range wireless technology standard such as Bluetooth to communicate wirelessly with the garage camera 64. Regardless of the wireless technology standard used to connect the vehicle 10 to the garage camera 64, the garage camera 64 includes a camera controller 66. The camera controller 66 includes at least one camera processor 68 and a camera non-transitory computer-readable storage device or medium 70. The camera processor 68 can be a custom or commercially available processor, a central processing unit (CPU), a graphics processing unit (GPU), an auxiliary processor in several processors associated with the camera controller 66, a semiconductor-based microprocessor (in the form of a microchip or chipset), a macroprocessor, a combination thereof, or generally a device for executing instructions. The camera computer-readable storage device or medium 70 may include volatile and non-volatile memories such as read-only memory (ROM), random access memory (RAM), and keep-alive memory (KAM). KAM is a persistent memory or non-volatile memory that can be used to store various operating variables when the camera processor 68 is powered off. The camera computer readable storage device or medium 70 can be implemented using a variety of storage devices, such as PROM (programmable read-only memory), EPROM (electrical PROM), EEPROM (electrically erasable PROM), flash memory, or any other electrical, magnetic, optical, or combination storage device capable of storing data used by the camera controller 34 in controlling the camera 64, some of which represents executable instructions.
[0035] refer to Figure 4, the system 98 is configured to command the display 29 ( Figure 1 ) displays images (i.e., video) from the garage camera 64 to help the driver maneuver the vehicle 10 within the home garage 60. Specifically, the system 98 can command the display 29 to display the boundary lines 72 that the garage camera 64 superimposes on the captured video when the vehicle 10 enters (or exits) the home garage 60. The boundary lines 72 help the driver of the vehicle 10 maneuver the vehicle 10 within the home garage 60. The boundary lines 72 include a first side line 74 along a first side of the vehicle 10, a second side line 76 along a second side of the vehicle 10 (which is opposite to the first side of the vehicle 10), and a third boundary line 78 adjacent to the front wall 80 of the home garage 60. The front wall 80 is located opposite the garage door 62 of the home garage 60. The position, size, color, and length of the boundary lines 72 can be customized via the user interface 23 of the vehicle 10 and / or through user input of the mobile device 58. For example, the position of the boundary lines 72 can be moved by the user to accommodate other objects within the home garage 60.
[0036] Figure 51 is a flow chart of a method 100 for assisting a vehicle driver in parking in a home garage 60. The method 100 begins at a start block 102. The method 100 then proceeds to block 104. At block 104, the vehicle controller 34 determines whether the vehicle 10 is entering the home garage 60. To do this, the vehicle controller 34 retrieves and uses map data, which includes the location of the home garage 60 of the networked home 54. By using the map data, the vehicle controller 34 can determine the location of the vehicle 10 relative to the home garage 60, and therefore determine whether the vehicle 10 is entering the home garage 60. Next, the method 100 proceeds to block 106. At block 106, the vehicle controller 34 receives video (i.e., images) from the garage camera 64. The vehicle controller 34 then determines whether the image from the garage camera 64 is clear enough to help the driver maneuver into the home garage 60. If the image from the garage camera 64 is not clear enough to help the driver maneuver into the home garage 60, the method 100 proceeds to block 112. At block 112, the method 100 ends. If the image from the garage camera 64 is clear enough to assist the driver in maneuvering into the home garage 60, the method 100 proceeds to box 108. At box 108, the vehicle controller 34 processes the image received from the garage camera 64 and commands the display 29 to display the captured image (e.g., video). As described above, the display 29 displays the boundary line 72 superimposed on the video captured by the garage camera 64 as the vehicle 10 enters the home garage 60. In addition, the display 29 can display one or more selected views (e.g., left view, right view, front view, or all views) to the driver. The method 100 then proceeds to box 110. At box 110, the vehicle controller 34 provides the vehicle driver with the option of folding (e.g., pivoting) the side-view mirror 50 to allow the vehicle 10 to enter the home garage 60 without obstruction. In response, the vehicle driver can use the user interface 23 to provide input to command the side-view mirror 50 to fold (e.g., pivot). As a non-limiting example, in response to determining that the distance between the vehicle 10 and at least one boundary line 72 (e.g., the first side line 74 or the second side line 76) is less than a predetermined distance threshold from the boundary line 72, the vehicle controller 34 may provide a notification of the option of folding the side view mirrors 50 to the vehicle user only through the user interface 23.
[0037] It is contemplated that at least a portion of frame 110 may be performed prior to frame 108. In this case, the vehicle controller 34 first determines that one or more side-view mirrors 50 of the vehicle 10 are folded. In response to determining that one or more side-view mirrors 50 of the vehicle 10 are folded (or that the peripheral vision is otherwise unavailable), the vehicle controller 34 commands the display 29 to display the video (e.g., image) captured by the garage camera 64 when the vehicle 10 is driven into the home garage 60. In addition, as described above, the vehicle controller 34 commands the display 29 to display the boundary line 72 superimposed on the captured video by the garage camera 64 when the vehicle 10 is driven into the home garage 60.
[0038] Figure 6 is a flow chart of another method 200 for assisting a vehicle driver in parking in a home garage 64. The method 200 may be combined with part or all of the method 100 described above. The method 100 begins at box 202. At box 202, the vehicle controller 34 determines whether the vehicle 10 is approaching or entering the home garage 60 using map data and geo-fencing. The method 200 then proceeds to box 204.
[0039] At box 204, the vehicle controller 34 requests and receives the garage camera view (i.e., the video captured by the garage camera 64). Next, the method 200 proceeds to box 206. At box 206, the vehicle controller 34 determines whether the background view of the video captured by the garage camera 64 has been cached. The background view of the video captured by the garage camera 64 includes images of static objects within the home garage 60, but excluding the vehicle 10 (if the vehicle 10 is stationary). If the background view of the video captured by the garage camera 64 has not been cached, the method 200 proceeds to box 208. If the background view of the video captured by the garage camera 64 has been cached, the method 200 proceeds to box 210. At box 210, the vehicle controller 34 determines the frame difference for each pixel using the cached background view of the interior of the home garage 60, as discussed below with respect to box 212. Then, the method 200 proceeds to box 212. At box 208, the vehicle controller 34 determines the frame difference for each pixel using the real-time background view of the interior of the home garage 60, as discussed below with respect to box 212. The method 200 then proceeds to block 212 .
[0040] At box 212, the vehicle controller 34 performs a frame difference calculation (per pixel) to determine the distance from the vehicle 10 to the third boundary line 78 and / or the front wall 80 of the home garage 60. As described below, if the distance from the vehicle 10 to the third boundary line 78 and / or the front wall 80 of the home garage 60 is less than a predetermined distance threshold, the vehicle controller 34 commands the display 29 to provide a notification (via the user interface 23) indicating that the vehicle 10 is properly parked in the home garage 60, and therefore the vehicle driver should park. The notification can be a visual notification displayed by the display 29 and / or an audible notification displayed by the speaker 27. Additionally or alternatively, if the distance from the vehicle 10 to the third boundary line 78 and / or the front wall 80 of the home garage 60 is less than the predetermined distance threshold, the vehicle controller 34 can automatically park the car.
[0041] refer to Figure 4 and Figure 6 , the frame difference calculation at block 212 may be performed by determining which frames have changed with respect to time when the vehicle 10 enters the home garage 60. The method 200 then proceeds to block 214. The vehicle controller 34 uses the frame difference for each pixel to calculate the number of pixel rows 82 ( Figure 4 ). The method 200 then proceeds to block 216. At block 216, the vehicle controller 34 sets the number of pixel rows 82 ( Figure 4 ) is compared with a predetermined row threshold to determine whether the number of pixel rows that have not changed relative to time when the vehicle 10 enters the home garage 60 is equal to or less than the predetermined row threshold. If the number of pixel rows that have not changed relative to time when the vehicle 10 enters the home garage 60 is greater than the predetermined row threshold, the method 200 returns to box 212. If the number of pixel rows that have not changed relative to time when the vehicle 10 enters the home garage 60 is equal to or less than the predetermined row threshold, the method 200 continues to box 218. At box 218, the vehicle controller 34 commands the display 29 to provide a notification (via the user interface 23). The notification indicates that the vehicle 10 is properly parked in the home garage 60. The notification can be a visual notification displayed by the display 29 and / or an audible notification displayed by the speaker 27. Additionally or alternatively, if the number of pixel rows that have not changed relative to time when the vehicle 10 enters the home garage 60 is equal to or less than the predetermined row threshold, the vehicle controller 34 can automatically stop.
[0042] refer to Figure 7 and Figure 8 , a method 300 for assisting a vehicle driver to park the vehicle in a home garage 60 is shown. The method 300 may be combined with the method 100 and / or the method 200 in part or in whole. The method 300 uses a geometric structure with a calibrated camera view. Figure 8As shown, the vehicle height h and the camera height H are known. The vehicle height h is defined as the distance from the garage floor 84 of the home garage 60 to the vehicle ceiling, and the camera height H is the distance from the garage floor 84 to the garage camera 64. The garage door pixel position p j The garage door pixel position p is also known. j is the position of the image where the garage door 62 is when the garage door is properly closed. The zero pixel position p0 can be designated as the location where the garage camera 64 is installed. Using the image captured by the garage camera 64, the vehicle controller 34 can determine the vehicle obstacle pixel position p i , barrier-free garage ground pixel position p k , and the pixel position p at the end of the field of view n . Vehicle obstacle pixel position p i is the pixel position of the image of the garage floor 84 that is closest to the vehicle 10 and is not blocked by the vehicle 10. The unobstructed garage floor pixel position p k is the pixel position of the image of the portion of the vehicle 10 that blocks the garage floor 84. The pixel position p at the end of the field of view n is the pixel position at the end of the field of view of the garage camera 64. Each pixel position has a value that depends on its position relative to the zero pixel position p0. That is, the farther the pixel is from the zero pixel position p0, the higher the value of the pixel position.
[0043] The method 300 begins at block 302. At block 302, the vehicle controller 34 determines a vehicle pixel position of the vehicle 10 on a video received from the garage camera 64. Specifically, the vehicle controller 34 determines a vehicle obstacle pixel position p i , which is the pixel position of the image of the garage floor 84 that is closest to the vehicle 10 and not obstructed by the vehicle 10. The method 300 then proceeds to block 304. At block 304, the vehicle controller 34 determines the unobstructed garage floor pixel position p k , which is the pixel location of the image of the vehicle 10 of the portion of the vehicle 10 that obscures the garage floor 84. The method 300 then continues to block 306. At block 306, the vehicle controller 34 checks the unobstructed garage floor pixel location p k and the vehicle obstacle pixel position p i Is the difference between the values of is equal to or less than a predetermined threshold. k and the vehicle obstacle pixel position p i If the difference between the ground pixel position p of the accessible garage is greater than a predetermined threshold, the method 300 returns to block 302. k and the vehicle obstacle pixel position p iIf the difference between is equal to or less than a predetermined threshold, the method 300 proceeds to box 310. At box 310, the vehicle controller 34 generates a pixel position of the vehicle 10 (i.e., the vehicle obstacle pixel position p) based on the vehicle pixel position of the vehicle 10 on the video received from the garage camera 64. i ) determines that the vehicle 10 has passed the garage door 62 of the garage. In response, the vehicle controller 34 commands the display 29 to provide a notification indicating that the vehicle 10 is properly parked in the home garage 60. The notification indicates that the vehicle 10 is properly parked in the home garage 60. The notification can be a visual notification displayed by the display 29 and / or an audible notification displayed by the speaker 27. Additionally or alternatively, if the number of pixel rows that do not change with respect to time when the vehicle 10 enters the home garage 60 is equal to or less than a predetermined row threshold, the vehicle controller 34 can automatically stop.
[0044] Although exemplary embodiments are described above, it is not intended that these embodiments describe all possible forms included in the claims. The words used in the specification are descriptive rather than restrictive, and it is understood that various changes can be made without departing from the spirit and scope of the present disclosure. As previously mentioned, the features of the various embodiments can be combined to form further embodiments of the currently disclosed system and method that may not be explicitly described or illustrated. Although various embodiments can be described as having advantages or advantages over other embodiments or prior art embodiments relative to one or more desired features, a person of ordinary skill in the art recognizes that one or more features or features can be compromised to achieve the desired overall system properties, depending on the specific application and implementation. These properties may include, but are not limited to, cost, strength, durability, life cycle cost, marketability, appearance, packaging, size, applicability, weight, manufacturability, ease of assembly, etc. Therefore, embodiments described as less ideal than other embodiments or prior art embodiments relative to one or more features are not outside the scope of the present disclosure and may be ideal for specific applications.
[0045] The drawings are in simplified form and are not drawn to exact scale. Directional terms such as top, bottom, left, right, up, above, above, below, below, rear, and front may be used with respect to the drawings for the purpose of convenience and clarity of description only. These directional terms and similar directional terms should not be construed as limiting the scope of the present disclosure in any way.
[0046] Embodiments of the present disclosure are described herein. However, it should be understood that the disclosed embodiments are merely examples, and other embodiments in various alternative forms may be adopted. The drawings are not necessarily drawn to scale; certain features may be enlarged or minimized to show the details of specific components. Therefore, the specific structural and functional details disclosed herein should not be interpreted as restrictive, but only as a representative basis for teaching those skilled in the art to adopt the systems and methods of the present disclosure in different ways. As will be understood by those of ordinary skill in the art, the various features illustrated and described with reference to any one may be combined with the features of one or more other illustrations to produce embodiments that are not explicitly shown or described. The combination of features shown provides representative embodiments of typical applications. However, various combinations and modifications of features consistent with the teachings of the present disclosure may be required for specific applications or implementations.
[0047] Embodiments of the present disclosure may be described herein in terms of functional and / or logical block components and various processing steps. It should be understood that such block components may be implemented by multiple hardware, software, and / or firmware components configured to perform specified functions. For example, embodiments of the present disclosure may employ various integrated circuit components, such as memory elements, digital signal processing elements, logic elements, lookup tables, etc., which may perform multiple functions under the control of one or more microprocessors or other control devices. In addition, those skilled in the art will appreciate that embodiments of the present disclosure may be practiced in conjunction with a variety of systems, and the systems described herein are merely exemplary embodiments of the present disclosure.
[0048] For the sake of brevity, technologies related to signal processing, data fusion, signaling, control and other functional aspects of the system (as well as the various operating components of the system) may not be described in detail herein. In addition, the connecting lines shown in the various figures contained herein are intended to represent example functional relationships and / or physical couplings between the various elements. It should be noted that alternative or additional functional relationships or physical connections may exist in the embodiments of the present disclosure.
[0049] This specification is merely illustrative in nature and is in no way intended to limit the present disclosure, its application or use. The broad teachings of the present disclosure can be implemented in a variety of forms. Therefore, although the present disclosure includes specific examples, the true scope of the present disclosure should not be so limited, because other modifications will become apparent after studying the drawings, description and appended claims.
Claims
1. A method for locating a vehicle in a garage camera view, comprising: determining that the vehicle is entering the garage; In response to determining that the vehicle is approaching the garage, receiving video from a garage camera; Determine, using the video received from the garage camera, a frame difference of each pixel with respect to time when the vehicle enters the garage; Using the frame difference for each pixel, calculating the number of rows of pixels that do not change with respect to time when the vehicle enters the garage; comparing the number of rows of pixels that do not change relative to time when the vehicle enters the garage with a predetermined row threshold to determine whether the number of rows of pixels that do not change relative to time when the vehicle enters the garage is less than or equal to the predetermined row threshold; Determining that the number of rows of pixels that do not change with respect to time when the vehicle enters the garage is less than or equal to the predetermined row threshold; as well as In response to determining that the number of rows of pixels that do not change with respect to time when the vehicle enters the garage is less than or equal to the predetermined row threshold, commanding a display to provide a notification indicating that the vehicle is properly parked in the garage. 2 . The method of claim 1 , further comprising determining that the background view of the garage interior is cached. 3 . The method of claim 2 , further comprising using a cached background view of the interior of the garage to determine a frame difference for each pixel with respect to time when the vehicle enters the garage. The method of claim 1 , further comprising determining that the background view of the garage interior is not cached.
5. The method of claim 1 further comprising using a real-time background view of the interior of the garage to determine a frame difference for each pixel with respect to time when the vehicle enters the garage.
6. The method according to claim 1, wherein: The vehicle includes a vehicle controller that wirelessly receives video from the garage camera.
7. The method according to claim 1, wherein: In response to determining that the number of rows of pixels that do not change with respect to time when the vehicle enters the garage is less than or equal to the predetermined row threshold, the vehicle is automatically parked.
8. The method of claim 1 , further comprising commanding the display to display boundary lines when the vehicle enters the garage, the boundary lines comprising a first side line along a first side of the vehicle, the boundary lines comprising a second side line along a second side of the vehicle, the second side of the vehicle being opposite to the first side of the vehicle, the boundary lines comprising a third boundary line adjacent to a front wall of the garage, and the boundary lines being movable via a user input through a user interface of the vehicle.
9. The method according to claim 8, further comprising: determining whether at least one side view mirror of the vehicle is folded; In response to determining that the side view mirror of the vehicle is folded, commanding the display to display video captured by the garage camera when the vehicle enters the garage; as well as In response to determining that the side view mirrors of the vehicle are folded, the display is commanded to display the boundary line superimposed on the video captured by the garage camera when the vehicle enters the garage.
10. The method according to claim 1, further comprising: determining a vehicle pixel position of the vehicle on a video received from the garage camera; determining that the vehicle has passed through a garage door of the garage based on a vehicle pixel position of the vehicle on a video received from the garage camera; in response to determining that the vehicle has passed through a garage door of the garage based on a vehicle pixel position of the vehicle on video received from the garage camera, commanding the display to provide a notification indicating that the vehicle is properly parked within the garage; as well as A pixel position of the garage door on a video received from the garage camera is determined, wherein the pixel position of the garage door on the video has a garage door pixel row value.