Parking system, vehicle (first vehicle, second vehicle) in parking system, server in parking system, and parking method
The system addresses the challenge of parking in multiple-space areas by using a server to generate reference paths from actual paths, enabling automatic parking of a second vehicle in such spaces.
Patent Information
- Authority / Receiving Office
- AU · AU
- Patent Type
- Applications
- Current Assignee / Owner
- TOYOTA JIDOSHA KK
- Filing Date
- 2025-01-24
- Publication Date
- 2026-07-16
AI Technical Summary
Existing vehicle control systems cannot automatically park a vehicle in parking areas with multiple spaces, such as public parking lots or highway service areas, as these spaces cannot be registered in advance.
A system comprising a first vehicle, a second vehicle, and a server that uploads actual path information to the server, which generates and downloads reference paths for the second vehicle to follow for automatic parking, allowing it to navigate and park in a parking area with multiple spaces.
Enables easy and automatic parking of the second vehicle in a parking area with multiple spaces by using reference paths generated from actual paths, even when the vacant space is not initially specified.
Smart Images

Figure 00000000_0000_ABST 
Figure 00000000_0001_ABST
Abstract
Description
Title of Invention: PARKING SYSTEM, VEHICLE (FIRST VEHICLE, SECOND VEHICLE) IN PARKING SYSTEM, SERVER IN PARKING SYSTEM, AND PARKING METHOD Technical Field
[0001] The present invention relates to a parking system to park a vehicle (second vehicle) into a vacant parking space in a parking area having a plurality of parking spaces, vehicles (a first vehicle, a second vehicle) and a server included in the parking system, and a parking method. Background Art
[0002] There has been a known vehicle control apparatus that obtains feature points of "a ground surface and three-dimensional structures" around a vehicle based on camera image acquired by an on-board camera, and automatically park the vehicle into a parking space registered in advance utilizing the feature points. Hereinafter, information indicative of a positional relationship between the feature point and the vehicle is referred to as feature point positional information.
[0003] Specifically, one of conventional vehicle control apparatuses (hereinafter, referred to as a conventional apparatus) stores start point information including "the feature points and the feature point positional information" of when a registration start button is operated in a memory. The conventional apparatus stores intermediate point information including "the feature points and the feature point positional information" at certain time points before a parking by manual driving operations is completed, into the memory. Furthermore, the conventional apparatus stores complete point information including "the feature points and the feature point positional information" of when the parking by manual driving operations is completed, into the memory.
[0004] When a registration finalize button is operated, the conventional apparatus stores a parking space specified by the complete point information into an involatile memory as a registered parking space, and stores the start point information and the intermediate point information into the involatile memory while associating the start point information and the intermediate point information with the registered parking space.
[0005] Thereafter, when the vehicle reaches again in the vicinity of a position specified by the start point information, the conventional apparatus compares "actual information indicative of actual feature points and actual feature point positional information" acquired base on the camera image with "the start point information, the intermediate point information, and the complete point information" stored in the involatile memory that are associated with the registered parking space, so as to control the vehicle in such a manner that the vehicle travels / moves along a path which is the same as the path along which the vehicle was traveled / moved by the manual driving operations, to thereby automatically park the vehicle into the registered parking space (refer to Japanese Patent Application Laid-Open No. 2023-176547). Such an automatic parking is sometimes referred to as a "path memorized type parking", for convenience. Summary of Invention
[0006] However, for example, when the vehicle is parked in a public parking area having a plurality of parking spaces (e.g., a parking area or a service area, of a highway), the parking space cannot be registered in advance as the registered parking space. Therefore, the vehicle cannot be parked using the path memorized type parking into a vacant parking space in the parking area having a plurality of parking spaces. The present invention is made to cope with this problem.
[0007] A parking system according to one of embodiments of the present invention comprises a first vehicle, a second vehicle, and a server. The parking system is a system for parking the second vehicle into one of a plurality of parking spaces in a parking area by letting the second vehicle travel / move to the one of the parking spaces. The first vehicle and the second vehicle may be the same as each other, or be typically different from each other.
[0008] The first vehicle is configured to upload, to the server (101), actual path specifying information which specifies an actual path (e.g., an actual path Cl shown in FIG. 4) of when the first vehicle is traveled / moved from a first specific region (e.g., a region in which an entrance point Pl of an objective parking area is recognized based on a vehicle surrounding image) to the one of the parking spaces so as to be parked into the one of the parking spaces (step 615, step 620, step 730).
[0009] The server (101) is configured to be capable of downloading (i.e., transmitting) reference path specifying information which specifies a reference path which is generated based on the actual path(s) specified by the uploaded actual path specifying information (step 870, step 920, step 940). Note that, the server may generate (produce) the reference path based on the actual path(s) specified by the uploaded actual path specifying information. Alternatively, the sever may transfer (transmit) the uploaded actual path specifying information to a different computer, the different computer may generate (produce) the reference path based on the actual path(s) specified by the uploaded and transferred actual path specifying information, and then, the different computer may transfer (transmit) the generated reference path to the server.
[0010] The second vehicle (HV) is configured to automatically travel by an automatic path parking control that uses, as a target path, the reference path (e.g., a first path, or a second path) specified by the reference path specifying information (e.g., data specifying the first path or the second path) which is downloaded from the server (101) (step 635, step 640, step 650, step 655).
[0011] According to the above embodiment, the actual path of when (i.e., of while, in a period in which) the first vehicle is caused to travel / move to one of a plurality of the parking spaces in the parking area is collected. The server downloads / transmits the reference path generated / produced based on the actual path(s) to the second vehicle. The second vehicle automatically travels / moves along the reference path by (owing to) the automatic path parking control in which the downloaded reference path is used as its target path. Consequently, the second vehicle is automatically parked into the one of a plurality of the parking spaces that the parking area has (provides, includes), or is automatically moved toward the one of the parking spaces. Therefore, the passenger (i.e., the user) of the second vehicle can easily park the second vehicle into the parking space which is the one of a plurality of the parking spaces in the parking area.
[0012] In some embodiments, the server is configured to generate the reference path by performing a predetermined path optimization process on the actual path(s) specified by the uploaded actual path specifying information (step 870).
[0013] As described later, the path optimization process may be a process to choose the most frequent path among the actual paths as the reference path, or may be a process to obtain the reference path by averaging a plurality of the actual paths. This can cause the second vehicle to move / travel along a preferable reference path in the parking area.
[0014] In some embodiments, the second vehicle is configured to: propose to use / utilize the automatic path parking control to the passenger of the second vehicle, when the second vehicle enters a predetermined area corresponding to the first specific region (step 625); and permit to start the automatic path parking control, when the passenger agrees to use / utilize the automatic path parking control (step 630: Yes, step 640, step 665).
[0015] According to the above embodiment, the passenger of the second vehicle can automatically travel / move the second vehicle along the reference path by utilizing the automatic path parking control based on his / her intention.
[0016] In some embodiments, the second vehicle is configured to: notify the passenger of the second vehicle that the automatic path parking control will be started, when the second vehicle enters a predetermined area corresponding to the first specific region (step 1210 shown in FIG. 12); and permit to start the automatic path parking control, unless the passenger prohibits starting the automatic path parking control (step 1220; No, step 635, step 655, shown in FIG. 12).
[0017] According to the above embodiment, the passenger of the second vehicle can automatically move the second vehicle along the reference path without performing a specific operation, unless he / she expresses his / her intention that he / she does not want to use the automatic path parking control to automatically move the second vehicle along the reference path.
[0018] In some embodiments, the first vehicle is configured to: obtain parking area specifying information which specifies the parking area (Pn); and upload the actual path specifying information to the server while associating the actual path specifying information with the parking area specifying information (step 730).
[0019] In this embodiment, the server is configured to store the reference path while associating the reference path with "the parking area (Pn) specified by the parking area specifying information" which is associated with "the uploaded actual path specifying information" (step 850, step 870).
[0020] Furthermore, in this embodiment, the second vehicle is configured to transmit, to the server, a download requirement for a reference path together with the parking area specifying information (i.e., the data which specifies the objective parking area) which specifies the parking area (Pn) where the second vehicle is going to be (i.e., is planning to be) parked (step 635).
[0021] In addition, the server is configured to download, to the second vehicle, the reference path specifying information (e.g., the data which specifies the first path, or the data which specifies the second path) which specifies the reference path (e.g., the first path, or the second path) stored while being associated with the parking area (Pn) specified by the parking area specifying information which is transmitted together with the download requirement for the reference path (step 910 to step 940).
[0022] According to the above embodiment, the actual path is accumulated for each "parking area (Pn) having a plurality of parking spaces" which is an objective of this parking system. In addition, in each of the objective parking areas, the second vehicle can be parked into one of the parking spaces automatically by letting the second vehicle travel along the reference path, or the second vehicle can be made to automatically move / travel toward the one of the parking spaces.
[0023] In some embodiments, the first vehicle is configured to: obtain parking area specifying information which specifies the parking area (Pn) (i.e., the data which specifies the objective parking area); when the first vehicle is parked into the one of the parking spaces, obtain parking completed space specifying information which specifies a "parking completed space which is the parking space into which the first vehicle is parked" and the actual path specifying information (step 615); upload, to the server, the actual path specifying information while associating the actual path specifying information with at least the parking completed space specifying information (step 730); when the first vehicle is moved from the first specific region to a second specific region via a going-around route (R) without being parked, obtain actual going-around path specifying information which specifies an actual going-around path (S) from the first specific region to the second specific region (step 615); and upload the actual going-around path specifying information to the server while associating the actual going-around path specifying information with the parking area specifying information (step 760).
[0024] The server is configured to: store the reference path while associating the reference path with the parking space specified by the parking completed space specifying information which is associated with at least the uploaded actual path specifying information (step 870); and store reference going-around path which is generated based on the actual going-around path specified by the uploaded actual going-around path specifying information while associating the reference going-around path with the parking area specified by the parking area specifying information which is associated with the uploaded actual going-around path specifying information (step 870).
[0025] The second vehicle is configured to: when the second vehicle is located in the first specific region of a predetermined parking area, download, from the server, reference going-around path specifying information (i.e., the data which specifies the optimum going-around path) which specifies the reference going-around path (i.e., the optimum going-around path, the first path) stored in the server while being associated with the predetermined parking area (step 635); start automatic traveling by an automatic path parking control that uses the reference going-around path (the optimum going-around path, the first path) specified by the downloaded reference going-around path specifying information as a target path (step 640); search for a vacant parking space among a plurality of the parking spaces in the predetermined parking area while traveling by the automatic path parking control that uses the reference going-around path as the target path (step 645); when the vacant parking space is detected (step 645: Yes), download, from the server, the reference path specifying information (i.e., the data which specifies the optimum parking path for the detected vacant parking space) which specifies the reference path (the second path, the optimum parking path) stored in the server while being associated with a parking space which is the same as the detected vacant parking space (step 650); and travel automatically by the automatic path parking control that uses the reference path specified by the downloaded reference path specifying information as the target path (step 655).
[0026] According to the above embodiment, the second vehicle firstly is automatically moved along "the reference going-around path (i.e., the optimum going-around path, the first path) by the automatic path parking control. When the vacant parking space (i.e., the available parking space) is detected while the second vehicle is traveling along the reference going-around path, the second vehicle is caused to automatically travel along the reference path (i.e., the optimum parking path, the second path) to the detected vacant parking space by the automatic path parking control. Therefore, even when the vacant parking space cannot be specified when the second vehicle enters the parking area, the second vehicle can be automatically parked into the vacant parking space.
[0027] In some embodiments, the first vehicle is configured to: obtain parking area specifying information which specifies the parking area (Pn) (i.e., the data which specifies the objective parking area); when the first vehicle is parked into the one of the parking spaces, obtain parking completed space specifying information which specifies the one of the parking spaces into which the first vehicle is parked and the actual path specifying information (step 615, step 730); upload, to the server, the actual path specifying information while associating the actual path specifying information with the parking completed space specifying information (step 730); when the first vehicle is moved from the first specific region to a third specific region via a passage (TR) of the parking area without being parked, obtain an actual passage travel path specifying information which specifies an actual passage travel path from the first specific region to the third specific region (step 615, step 760); and upload, to the server, the actual passage travel path specifying information while associating the actual passage travel path specifying information with the parking area specifying information (step 760).
[0028] In this embodiment, the server is configured to: store the reference path while associating the reference path with the parking space specified by the parking completed space specifying information which is associated with at least the uploaded actual path specifying information (step 870); and store reference passage travel path (El) which is generated based on the actual passage travel path specified by the uploaded actual passage travel path specifying information while associating the reference passage travel path with the parking area specified by the parking area specifying information which is associated with the uploaded actual passage travel path specifying information (step 870).
[0029] In this embodiment, the second vehicle is configured to: when the second vehicle is located in the first specific region of a predetermined parking area, download, from the server, reference passage travel path specifying information which specifies the reference passage travel path stored in the server while being associated with the predetermined parking area (step 635a); start automatic traveling by an automatic path parking control that uses the reference passage travel path (El) specified by the downloaded reference passage travel path specifying information as a target path (step 640); search for a vacant parking space among a plurality of the parking spaces in the predetermined parking area while traveling by the automatic path parking control that uses the reference passage travel path as the target path (step 645); when the vacant parking space is detected (step 645: Yes), download, from the server, the reference path specifying information which specifies the reference path (D2) stored in the server while being associated with a parking space which is the same as the detected vacant parking space (step 650); and travel automatically by the automatic path parking control that uses the reference path specified by the downloaded reference path specifying information as the target path (step 655).
[0030] According to the above embodiment, firstly, the second vehicle is automatically moved along the reference passage travel path which is the first path. When the vacant space (i.e., the available parking space) is detected while the second vehicle is traveling along the reference passage travel path, the second vehicle is caused to automatically travel along the reference path (i.e., the second path) to the detected vacant parking space by the automatic path parking control. Therefore, even when the vacant parking space cannot be specified when the second vehicle enters the parking area, the second vehicle can be automatically parked into the vacant parking space.
[0031] In some embodiments, the first vehicle is configured to: obtain parking completed space specifying information which specifies one of a plurality of the parking spaces into which the first vehicle is parked; and upload, to the server, the actual path specifying information while associating the actual path specifying information with the parking completed space specifying information (step 730).
[0032] In this embodiment, the server is configured to: store the reference path while associating the reference path with the parking space specified by the parking completed space specifying information which is associated with the uploaded actual path specifying information (step 870).
[0033] In this embodiment, the second vehicle is configured to: when the second vehicle is located in the first specific region of a predetermined parking area, download, from the server, the reference path specifying information which specifies the reference path stored in the server while being associated with a parking space which is the same as a tentative parking space which is a predetermined one of a plurality of the parking spaces (i.e., the first path DI, for example, a first reference path which is the reference path stored in the server while being associated with the parking space which is the farthest away from the entrance point Pl) (step 635b); start automatic traveling by an automatic path parking control that uses a tentative reference path (i.e., the first path, the first reference path) which is the reference path specified by the downloaded reference path specifying information as a target path (step 640); search for a vacant parking space among a plurality of the parking spaces in the predetermined parking area while traveling by the automatic path parking control that uses the tentative reference path as the target path (step 645); when the vacant parking space is detected (step 645: Yes), download, from the server, the reference path specifying information which specifies the reference path (i.e., the second path D2, the second reference path) stored in the server while being associated with a parking space which is the same as the detected vacant parking space (step 650); and travel automatically by the automatic path parking control that uses the reference path specified by the downloaded reference path specifying information as the target path (step 655).
[0034] According to the above embodiment, firstly, the second vehicle is automatically moved along the tentative reference path (i.e., the first path, the first reference path) which is one of the reference paths. When the vacant space (i.e., the available parking space) is detected while the second vehicle is traveling along the tentative reference path, the second vehicle is caused to automatically travel along the reference path (i.e., the second path, the second reference path) to the detected vacant parking space by the automatic path parking control. Therefore, even when the vacant parking space cannot be specified when the second vehicle enters the parking area, the second vehicle can be automatically parked into the vacant parking space.
[0035] In some embodiments, the first vehicle is configured to: obtain parking completed space specifying information which specifies one of a plurality of the parking spaces into which the first vehicle is parked; and upload, to the server, the actual path specifying information while associating the actual path specifying information with the parking completed space specifying information (step 605 and step 615, shown in FIG. 13, and step 730 shown in FIG. 7).
[0036] In this embodiment, the server is configured to: store the reference path while associating the reference path with the parking space specified by the parking completed space specifying information which is associated with the uploaded actual path specifying information (step 870).
[0037] In this embodiment, the second vehicle is configured to: when the second vehicle is located in the first specific region of a predetermined parking area, obtain, from a parking area management device which corresponds to the predetermined parking area, vacant parking space specifying information which specifies a vacant parking space among a plurality of the parking spaces (step 1310); download, from the server, the reference path specifying information which specifies the reference path stored in the server while being associated with a parking space which is the same as the vacant parking space specified by the vacant parking space specifying information (step 1340); and travel automatically by the automatic path parking control that uses the reference path specified by the downloaded reference path specifying information as the target path (step 1350).
[0038] According to the above embodiment, the second vehicle obtains the information which specifies the vacant parking space from the parking area management device, obtains the reference path (i.e., the optimum parking path) to one of the vacant parking spaces specified by the information which specifies the vacant parking space from the server, and automatically travels along the reference path by the automatic path parking control. Therefore, the second vehicle does not have to search for the vacant parking space while traveling in the parking area, and thus, can be parked to the vacant parking space smoothly.
[0039] In some embodiments, the first vehicle is configured to generate the actual path specifying information using feature point information extracted from a vehicle surrounding image that is obtained from cameras (11-14) mounted on the first vehicle; and the second vehicle is configured to automatically travel by the automatic path parking control based on the feature point information extracted from the vehicle surrounding image that is obtained from cameras (11-14) mounted on the second vehicle and the reference path specifying information which is downloaded from the server.
[0040] Furthermore, the first specific region is a predetermined surrounding region around (in the vicinity of) a point at which a three-dimensional structure (e.g., a sign, and a landmark) indicating an entrance point of the parking area is provided. In this embodiment, the first vehicle is configured to: recognize the three-dimensional structure based on the vehicle surrounding image; and generate the actual path specifying information while associating the actual path specifying information with a position of the recognized three-dimensional structure; and the server is configured to generate the reference path while associating the reference path with the position of the recognized three-dimensional structure.
[0041] According to the above embodiment, the actual path specifying information and the reference path specifying information can be generated easily, and the second vehicle can be easily traveled along the reference path by the automatic path parking control.
[0042] Notably, in the above description, in order to facilitate understanding of the present invention, the constituent elements corresponding to those of embodiments which will be described later are accompanied by parenthesized symbols and / or names which are used in the embodiments; however, the constituent elements of the disclosure are not limited to those in the embodiments defined by the symbols and / or names. The present invention covers "the first vehicle, the server, and the second vehicle" constituting the above-described parking system, and a parking method. Brief Description of Drawings
[0043] [Fig.l]FIG. 1 is a schematic diagram of a parking system including a vehicle and a cloud server, according to an embodiment of the present invention. [Fig.2]FIG. 2 is a figure illustrating one example of an objective parking area to which the parking system shown in FIG. 1 is applied. [Fig.3]FIG. 3 is a figure for describing manual driving / parking path specifying data obtained in an example objective parking area to which the parking system shown in FIG. 1 is applied. [Fig.4]FIG. 4 is a figure for describing an example of the manual driving / parking path specifying data obtained in the example of the objective parking area to which the parking system shown in FIG. 1 is applied. [Fig.5]FIG. 5 is a figure for describing an example of a manual driving going-around path obtained in the example of the objective parking area to which the parking system shown in FIG. 1 is applied. [Fig.6]FIG. 6 is a routine executed by a CPU of a parking assistance ECU shown in FIG. 1. [Fig.7]FIG. 7 is a routine executed by the CPU of the parking assistance ECU shown in FIG. 1. [Fig.8]FIG. 8 is a routine executed by a cloud server shown in FIG. 1. [Fig.9]FIG. 9 is a routine executed by the cloud server shown in FIG. 1. [Fig.lO]FIG. 10 is a figure illustrating an example of a parking area to which a first modified example according to the embodiment of the present invention is applied, a first path, and a second path. [Fig.l 1]FIG. 11 is a figure illustrating an example of a parking area to which a second modified example according to the embodiment of the present invention is applied, a first path, and a second path. [Fig.l2]FIG. 12 is a routine executed by a CPU of a parking assistance ECU of a third modified example according to the embodiment of the present invention. [Fig.l3]FIG. 13 is a routine executed by a CPU of a parking assistance ECU of a fourth modified example according to the embodiment of the present invention. Description of Embodiments
[0044] <Configuration> As shown in FIG. 1, a parking system according to an embodiment of the present invention comprises a vehicle HV and a data center 100 which includes a cloud server (server) 101. The vehicle HV is referred to as a first vehicle or a second vehicle, depending on its function. The vehicle HV may be one of a vehicle having an internal combustion engine as a drive source, a vehicle having an electric motor as a drive source (namely, an electric vehicle), and a hybrid vehicle. The vehicle HV comprises a vehicle control apparatus DS (hereinafter, referred to as an "apparatus DS").
[0045] The apparatus DS comprises a parking assistance ECU 10, a communication ECU 20, an autonomous driving ECU 30, a navigation ECU 40, a power train ECU 50, a brake ECU 60, and a steering ECU 70.
[0046] In the present specification, an “ECU” means an electronic control device / unit (i.e., a control unit), that includes a microcomputer. The microcomputer includes a CPU (a processor), a ROM, a RAM, a data writable involatile memory, and an interface. The ECU may sometimes be referred to as a “controller” or a “computer”. A plurality of the above-described ECUs are connected to each other through Controller Area Network (CAN) in such a manner that they can exchange information with each other. Therefore, one of the ECUs can obtain signals or information of devices, such as a sensor, a camera, and a switch, which are connected to another ECU, through the CAN. Some or all of a plurality of the above-described ECUs may be integrated into a single ECU. For example, the parking assistance ECU 10 and the autonomous driving ECU 30 may be integrated into a single ECU (i.e., a vehicle control ECU). In addition, one of a plurality of the ECUs may be implemented by a plurality of ECUs.
[0047] The parking assistance ECU 10 is connected with a front camera 11, a back camera 12, a right side camera 13, a left side camera 14, a plurality of (e.g., five of) radar sensors 15, a plurality of (e.g., twelve of) ultrasonic sensors 16, a parking assistance switch 17, and a touch panel display 18 that can display touch buttons. The parking assistance ECU 10 receives information (signals) from them and transmits information (signals) to them.
[0048] Each of the cameras 11-14 comprises a wide-angle lens. The front camera 11 takes a picture of a front scene of the vehicle to produce a front wide angle image. The back camera 12 takes a picture of a rear scene of the vehicle to produce a rear wide angle image. The right side camera 13 takes a picture of a rightward scene of the vehicle to produce a rightward wide angle image. The left side camera 14 takes a picture of a leftward scene of the vehicle to produce a leftward wide angle image.
[0049] The parking assistance ECU 10 receives the wide angle images obtained by the cameras 11-14, and generates a vehicle surrounding image showing a scene around the vehicle, based on the wide angle images. The vehicle surrounding image includes "a bird's eye view and the surroundings" of the vehicle, as well as "a traveling direction image" of the vehicle.
[0050] The parking assistance ECU 10 performs an image analysis processing on the vehicle surrounding image to detect (extract / recognize) feature points of "the ground surface and / or the three-dimensional structure" included in the vehicle surrounding image. The parking assistance ECU 10 groups the feature points for "a three-dimensional structure, a set of patterns on the road / ground surface, and a set of demarcation lines on the road / ground surface". The parking assistance ECU 10 obtains, as feature point information, "a shape and / or a pattern" represented by the grouped feature points, and feature point positional information representing a relationship between the grouped feature points and the vehicle HV.
[0051] The radar sensor 15 includes "a frontward radar sensor, a front leftward radar sensor, a front rightward radar sensor, a rear leftward radar sensor, and a rear rightward radar sensor" that are not illustrated. Each of the radar sensors obtains and outputs object information specifying a distance between the vehicle and an object located around the vehicle, a relative speed of the object, and an azimuth of the object, using electrical waves in a millimeter waveband.
[0052] The ultrasonic sensor 16 includes twelve of the ultrasonic sensors disposed at the peripheral of the vehicle. The ultrasonic sensor is a sonar that measures a distance between the vehicle and an object located around the vehicle, using ultrasonic waves.
[0053] The cameras 11-14, the radar sensors 15, and the ultrasonic sensors 16 are sensors to obtain information around the vehicle, and thus, are referred to as a vehicle surrounding sensor.
[0054] The parking assistance switch 17 is a switch operated by the passenger including a driver, who wants to start or terminate a parking assistance control (i.e., an automatic parking).
[0055] The touch panel display 18 (hereinafter, referred to as a "display 18") displays an image in accordance with instructions from the parking assistance ECU 10, the autonomous driving ECU 30, and the navigation ECU 40. The displayed image may include the touch operation buttons operated (touch operated) by the passenger.
[0056] The communication ECU 20 exchanges data with external devices including the cloud server 101 of the data center 100 and a parking area management device described later via radio communication in accordance with instructions from ECUs including the parking assistance ECU 10.
[0057] The autonomous driving ECU 30 receives signals from a LiDAR 31 and other sensors 32. The LiDAR 31 scans a laser beam and irradiates an object with the laser beam, and receives a laser beam reflected at the object. The LiDAR 31 measures a time from a time point at which the laser beam starts to be radiated to a time point at which the reflected beam is received so as to obtain information on a position of the object and a distance to the object.
[0058] The other sensors 32 includes a driving operation amount sensor that detects an operation amount of an operation element of the vehicle (e.g., an acceleration pedal, a brake pedal, a steering wheel, or the like), and a sensor which detects a traveling state of the vehicle (e.g., an acceleration sensor, a yaw rate sensor, or the like).
[0059] The autonomous driving ECU 30 performs an autonomous driving to let the vehicle HV autonomously travel along a travel route, based on information from the LiDAR 31, the above-described other sensor 32, information of current position of the host vehicle HV, etc..
[0060] The navigation ECU 40 is connected with a GPS receiver 41 and a map information storing device 42. The navigation ECU 40 obtains the "current position of the vehicle HV" represented by a latitude and a longitude, based on the GPS signals (i.e., signals from positioning satellites) received by the GPS receiver 41. The navigation ECU 40 produces / generates the travel route from the current position of the vehicle HV to a destination point which is input by the user (passenger) through the display 18, based on map information stored in the map information storing device 42. The navigation ECU 40 causes the display 18 to display a screen including an operation button to let the passenger including the driver to select one of the autonomous driving and the manual driving on the display 18. When the passenger including the driver operates the operation button to select the manual driving, the navigation ECU 40 executes a well-known route guidance, based on the travel route and the current position of the vehicle HV. When the passenger operates the operation button to select the autonomous driving, the navigation ECU 40 transmits information including the current position of the vehicle HV, the travel route, and the map information, to the autonomous driving ECU 30.
[0061] The power train ECU 50 receives a signal indicative of a position of an unillustrated shift lever from a shift position sensor 51. The power train ECU 50 alters a torque generated by a drive device (e.g., the engine and / or the motor) 52 by controlling the drive device 52 so as to control a driving force of the vehicle. Furthermore, the power train ECU 50 can change a shift position of an unillustrated transmission of the vehicle. Therefore, the power train ECU 50 can move the vehicle forward or backward at the required speed, based on the driving operation of the user or instructions transmitted from the other ECUs.
[0062] The brake ECU 60 receives a signal indicative of a vehicle speed from a vehicle speed sensor. The brake ECU 60 controls a brake device 62 of the vehicle so as to control a brake force applied to the vehicle. Therefore, the brake ECU 60 can decelerate the vehicle by applying the brake force to the vehicle, based on the driving operation of the user or instructions transmitted from the other ECUs.
[0063] The steering EUC 70 receives a signal indicative of a steering angle of the vehicle HV from a steering angle sensor 71. The steering EUC 70 drives an unillustrated steering motor to alter the steering angle of steered wheel of the vehicle. Therefore, the steering ECU 70 can alter a moving / traveling direction of the vehicle, based on the driving operation of the user or instructions transmitted from the other ECUs.
[0064] The data center 100 comprises the cloud server (server) 101. The cloud server 101 stores target parking area information on a parking area, shown in FIGs. 2 and 11, to which the present parking system can be applied (hereinafter, referred to as a target parking area). The target parking area information includes parking area specifying information that specifies a position of the target parking area by the latitude and the longitude, target parking area map information, parking area entrance point information, and parking space point information.
[0065] The target parking area map information is data representing a bird's eye view (a map) of the target parking area. This data of the bird's eye view includes information on a running course demarcation line in the target parking area and a parking space demarcation line, information on a position of a sign, and information on a pattern painted on a road surface (e.g., a pattern representing pedestrian crossing, and a pattern representing no entry zone).
[0066] The parking area entrance point information is data representing a point (i.e., an entrance point Pl of the target parking area) of three-dimensional structure, such as a sign or a landmark, indicating an entrance of the target parking area, by the latitude and the longitude. The entrance of the target parking area is referred to as a "first predetermined point", for convenience. As shown in FIG. 2, the first predetermined point Pl may be a point Pla that is away from an area having a plurality of the parking spaces.
[0067] The parking space point information is data indicative of a representative point of each of a plurality of the parking spaces (e.g., a parking space No. 1 to a parking space No. 10, in the example shown in FIG. 2), by the latitude and the longitude. The representative point of each of a plurality of the parking spaces may be a geometric center of gravity position of each parking space.
[0068] The cloud server 101 can exchange various information (data) described later with the vehicle (HV) (the parking assistance ECU 10 of the vehicle HV) via the communication ECU 20 of the vehicle HV.
[0069] (Outline of operation) The conventional apparatus can store / register in advance, as the registered parking space, a specific parking space annexed to a home or a workplace while associating it with feature point information. When the registered parking space has been stored, the conventional apparatus can automatically park the vehicle into the registered parking space by comparing actual feature point information acquired from the vehicle surrounding image and the feature point information associated with the registered parking space. The parking assistance control to automatically park the vehicle into the registered parking space without newly generating a parking path is referred to as a "path memorized type parking control", for convenience. The path memorized type parking control is well-know, and is disclosed in Japanese Patent 7176421 and Japanese Patent Application Laid-Open No. 2023-176547, in detail.
[0070] However, for example, when the vehicle is parked in a parking area having a plurality of parking spaces (e.g., a parking area or a service area, of a highway) as shown in FIG. 2, the parking space cannot be registered in advance as the registered parking space. Therefore, the vehicle cannot be parked using the path memorized type parking control into a vacant parking space in such a parking area.
[0071] In view of the above, as shown in FIG. 3, when the passenger (i.e., the driver) manually has parked the vehicle into one of the parking spaces in the target parking area (e.g., the parking space No. 10 in the example of FIG. 3), the apparatus DS produces / generates data specifying "a travel / parking path" from "a first specific region determined by the entrance point Pl of the target parking area (the first predetermine point Pl)" to "the parking space into which the vehicle has been parked". This data is referred to as a "manual driving / parking path specifying data" or "actual path specifying information". The path specified by the manual driving / parking path specifying data is referred to as a "manual driving / parking path" or an "actual path". The parking space into which the vehicle has been manually parked (i.e., parked by the manual driving) is referred to as a "manual parking completed space" or simply to as a "parking completed space". The manual driving / parking path is specified by being associated with the first predetermined point Pl (or with respect to the first predetermined point Pl as a reference).
[0072] The manual driving / parking path specifying data is a set (a group) of the feature point information that is acquired every time a predetermined time elapses in a parking area running period. The parking area running period is a period from a time point at which the vehicle HV reaches the first specific region determined by the entrance point Pl of the target parking area to a time point at which the vehicle is completely parked into the manual parking completed space.
[0073] For example, as shown in FIG. 3, when the vehicle was parked into the parking space No. 10 by the manual driving, a set of the feature point information in each of frames from a broken line frame Im 1 to a broken line frame Im9 is the manual driving / parking path specifying data.
[0074] In addition, when parking the vehicle into the manual parking completed space by the manual driving is completed, the apparatus DS transmits, to the data center 100, the manual driving / parking path specifying data (i.e., actual path specifying information that specifies the actual path) while associating the manual driving / parking path specifying data with the data specifying the target parking area (i.e., the target parking area information) and the data specifying the manual parking completed space (i.e., manual parking completed space specifying information or parking completed space specifying information). Note that, in the present example, the data specifying the target parking area is the latitude and the longitude of the entrance point Pl of the target parking area. The data specifying the manual parking completed space is the latitude and the longitude of the current position of the vehicle that has been parked in the manual parking completed space. In addition, the vehicle on which the apparatus DS which transmits (uploads) the manual driving / parking path specifying data to the data center 100 is mounted is a vehicle that corresponds to the above-described first vehicle.
[0075] When the data center 100 receives the manual driving / parking path specifying data transmitted from the vehicle HV, the cloud server 101 obtains / specifies the "manual driving / parking path on the map of the target parking area (i.e., the actual path)", based on the manual driving / parking path specifying data and the target parking area information. FIG. 4 shows an example of the manual driving / parking path Cl obtained by the cloud server 101 as described above. In addition, the cloud server 101 stores, in an involatile memory of the cloud server 101, the manual driving / parking path while associating "the manual driving / parking path with the parking area specified by the target parking area information" and "the manual parking completed space".
[0076] The above-described processing (transmission / reception and storing) of the data is executed / repeated every time the same or another first vehicle is parked into the parking space of the target parking area by the manual driving. Consequently, the cloud server 101 accumulates / stores a plurality of (i.e., a sufficient number equal to or greater than a threshold of) the manual driving / parking paths for each of all of the parking spaces in the target parking area, in the involatile memory.
[0077] Note that, as shown in FIG. 5, when the vehicle HV travels from the first specific region determined by the entrance point Pl of the target parking area to a second specific region determined by a going-around end point P4 via a going-around route R without being parked in a case there is no vacant parking space, the apparatus DS transmits / uploads, as manual driving going-around path specifying data (i.e., actual going-around path specifying information specifying an actual going-around path), the manual driving / parking path specifying data specifying that path (i.e., an actual going-around path or a manual driving going-around path) to the data center 100. The manual driving going-around path is also specified by being associated with the first predetermined point Pl (or with respect to the first predetermined point Pl as a reference).
[0078] When the data center 100 receives the manual driving going-around path specifying data transmitted from the vehicle HV, the cloud server 101 obtains / specifies the "manual driving going-around path on the map of the target parking area", based on the manual driving going-around path specifying data and the target parking area information. In addition, the cloud server 101 stores, in the involatile memory of the cloud server 101, the manual driving going-around path while associating the manual driving going-around path (i.e., the actual going-around path) with the target parking area specified by the target parking area information.
[0079] The above-described processing (transmission / reception and storing) of the data is executed / repeated every time the same or another first vehicle travels from the first specific region to the second specific region via the going-around route R. Consequently, the cloud server 101 accumulates / stores a plurality of (i.e., a sufficient number equal to or greater than a threshold of) the manual driving going-around path, in the in volatile memory.
[0080] When a sufficient number of the manual driving / parking paths for each of all of the parking spaces in the target parking area are obtained, the cloud server 101 obtains through calculation an optimum parking path for each of the parking spaces, based on the manual driving / parking paths. The optimum parking path is also specified by being associated with the first predetermined point Pl (or with respect to the first predetermined point Pl as a reference). Then, the cloud server 101 stores data which specifies the optimum parking path (i.e., optimum parking path specifying data) in the involatile memory while associating the optimum parking path (i.e., the optimum parking path specifying data) with the corresponding target parking area and the corresponding parking space. The optimum parking path is also referred to as a "reference path". Therefore, the data which specifies the optimum parking path is also referred to as "reference path specifying information that specifies the reference path". Note that the optimum parking path is also represented by the feature point information. The process for obtaining the optimum parking path is referred to as "a path optimization process or a path correction process". For example, the path optimization process is a process to obtain the optimum parking path by averaging a plurality of the manual driving / parking paths obtained for each one of the parking spaces. The path optimization process will be described later in detail.
[0081] Similarly, when a sufficient number of the manual driving going-around paths are obtained, the cloud server 101 obtains through calculation an optimum going-around path, based on the manual driving going-around paths. Specifically, the cloud server 101 performs the path optimization process on a sufficient number of the manual driving going-around paths to obtain the optimum going-around path. Thereafter, the cloud server 101 stores data which specifies the optimum going-around path (i.e., optimum going-around path specifying data) in the involatile memory while associating the optimum going-around path (i.e., the optimum going-around path specifying data) with the corresponding target parking area. Note that the optimum going-around path is also represented by the feature point information, and is specified by being associated with the first predetermined point Pl (or with respect to the first predetermined point Pl as a reference). The optimum going-around path is also referred to as a "reference going-around path". Therefore, the optimum going-around path specifying data that specifies the optimum going-around path is also referred to as "specific information that specifies the reference going-around path".
[0082] When the optimum parking path for each of the parking space in an arbitrary target parking area Pn and the optimum going-around path of the target parking area Pn have been stored in the involatile memory of the cloud server 101, "accumulation and opti mization of the path for the target parking area Pn" is completed in the cloud server 101. When "the accumulation / optimization of the path for the target parking area Pn " is completed, the vehicle HV executes / performs an automatic path parking control utilizing "the optimum going-around path specifying data and the optimum parking path specifying data" stored in the involatile memory of the cloud server 101. Namely, automatically parking the vehicle HV into the parking space in the target parking area Pn becomes possible.
[0083] After "the accumulation / optimization of the path for the target parking area Pn " is completed, when the vehicle approaches the entrance point Pl of the target parking area Pn (i.e., the vehicle HV enters into the first specific region), and thus, the apparatus DS recognizes the three-dimensional structure representing the entrance point Pl based on the vehicle surrounding image, the apparatus DS downloads / obtains "the optimum going-around path specifying data and the optimum parking path specifying data" of the target parking are Pn stored in the cloud server 101.
[0084] Then, the apparatus DS automatically drives the vehicle by a automatic path parking control along the optimum going-around path (referred to as "a first reference path", for convenience) specified by the downloaded optimum going-around path specifying data, and along the optimum parking path (referred to as "a second reference path", for convenience) specified by the downloaded optimum parking path specifying data. Consequently, the apparatus DS automatically parks the vehicle HV into a vacant parking space in the target parking area Pn. The vehicle HV that is automatically driven by the automatic path parking control using at least the optimum parking path is a vehicle that corresponds to the above-described second vehicle.
[0085] Specifically, when the vehicle enters the first specific region specified by the entrance point Pl, and thus, the apparatus DS recognizes the "three-dimensional structure representing the entrance point Pl" based on the vehicle surrounding image, the apparatus DS downloads the reference going-around path specifying data (i.e., the reference going-around path specifying information that specifies the reference going-around path) from the cloud server 101.
[0086] Thereafter, the apparatus DS let the vehicle HV automatically travel / run along the optimum going-around path (i.e., the reference going-around path) by the automatic path parking control using the optimum going-around path specified by the downloaded optimum going-around path specifying data and the feature point obtained continuously. In other words, the apparatus DS executes the automatic path parking control in which the optimum going-around path specified by the downloaded reference going-around path specifying information is used as a target path to drive the vehicle HV.
[0087] The apparatus DS searches for a vacant parking space while letting the vehicle move along the optimum going-around path. When the apparatus DS finds / detects the vacant parking space, the apparatus DS downloads the optimum parking path specifying data (i.e., the reference path specifying information) that specifies the "optimum parking path for / to that detected vacant parking space" from the cloud server 101. Namely, the apparatus DS downloads the reference path specifying information that specifies the reference path that has been stored in the cloud server 101 while being associated with the parking space that is the same as the detected vacant parking space, from the cloud server 101.
[0088] Then, the apparatus DS switches the target path used in the automatic path parking control from the "optimum going-around path" to "the optimum parking path (i.e., the reference path) corresponding to the vacant parking space" that is specified by the optimum parking path specifying data (i.e., the reference path specifying information). Namely, the apparatus DS let the vehicle HV automatically travel / run along the optimum parking path by the automatic path parking control using the optimum parking path and the feature point that is obtained continuously. Consequently, the vehicle HV is automatically parked into the detected vacant parking space.
[0089] (Specific operation of apparatus DS) An unillustrated CPU of the parking assistance ECU 10 executes routines shown by flowcharts in FIGs. 6 and 7, every time a predetermined time elapses.
[0090] When an appropriate time point comes, the CPU starts processing from step 600 in FIG. 6, and proceeds to step 605. At step 605, the CPU determines whether or not a current time point is immediately after the vehicle HV on which the apparatus DS is mounted has entered the target parking area Pn. Specifically, the CPU determines that the current time point is immediately after the vehicle HV has entered the target parking area Pn, when a first condition described below and a second condition described below are both satisfied.
[0091] (Condition 1) The current position of the vehicle HV is in a region within a predetermined distance from the entrance point Pl of the target parking area Pn. Note that the latitude and the longitude of the entrance point Pl of the target parking area Pn is included in the map information stored in the map information storing device 42. (Condition 2) The three-dimensional structure (e.g., the sign or the landmark) representing the entrance point Pl of the target parking area Pn has been extracted from the vehicle surrounding image. In other words, the vehicle surrounding image includes "the sign or the landmark" that is similar to "the sign or the landmark, representing the entrance point Pl of the target parking area Pn" that has been registered in advance in the involatile memory of the parking assistance ECU 10 or in the map information. Namely, the condition 2 is satisfied, when the vehicle HV is located in the first specific region where the three-dimensional structure representing the entrance point Pl of the target parking area Pn can be recognized based on the vehicle surrounding image.
[0092] When the current time point is not immediately after the vehicle HV has entered the target parking area Pn, the CPU makes a "No" determination at step 605 to directly proceed to step 695 so as to terminate the present routine.
[0093] Whereas, when the current time point is immediately after the vehicle HV has entered the target parking area Pn, the CPU makes a "Yes" determination at step 605 to proceed to step 610. At step 610, the CPU determines whether or not the accumulation / optimization of the path for the target parking area Pn has been completed in the cloud server 101. Specifically, the CPU inquires of the cloud server 101 whether or not the accumulation / optimization of the path for the target parking area Pn has been completed, using the communication ECU 20. Then, the CPU makes a determination of step 610 based on the response from the cloud server 101. Namely, when a value of an optimization completion flag XC(Pn) for the target parking area Pn, that is transmitted from the cloud server 101, is "1", the CPU determines that the accumulation / optimization of the path for the target parking area Pn has been completed (refer to step 880 shown in FIG. 8).
[0094] When the accumulation / optimization of the path for the target parking area Pn in the cloud server 101 has noy been completed, the CPU makes a "No" determination at step 610, and executes processes of step 615 and step 620, described below, sequentially. Thereafter, the CPU proceeds to step 695.
[0095] Step 615: The CPU starts obtaining the feature point information to specify the path of the vehicle HV that is driven by the manual driving operation, and starts storing, into the involatile memory, the obtained feature point information. This process of obtaining and storing the feature point information is frequently performed until either one of the two time points described below, every time a predetermined time elapses. One of the two time points is a time point at which the vehicle is parked into the parking space of the target parking area. The other of the two time points is a time point at which the vehicle HV travels and reaches the second specific region determined by the going-around end point P4 via the going-around route R without being parked within the target parking area.
[0096] Step 620: The CPU sets a value of a transmitting flag XT to "1". Note that the value of the transmitting flag XT is set to "0" by an unillustrated initialization routine executed by the CPU when a position of an unillustrated start switch (e.g., an ignition key switch, a ready switch, or the like) is switched from an off position to an on position.
[0097] In the meantime, when an appropriate time point comes, the CPU starts processing from step 700 in FIG. 7, and proceeds to step 710. At step 710, the CPU determines whether or not the value of the transmitting flag XT is "1".
[0098] When the value of the transmitting flag XT is "1", the CPU makes a "Yes" determination at step 710 to proceed to step 720. At step 720, the CPU determines whether or not the parking of the vehicle HV by the manual driving operation into the parking space (i.e., the manual parking completed space) in the parking area Pn has been completed. Note that the CPU determines that the parking of the vehicle HV by the manual driving operation into the parking space in the parking area Pn has been completed, when the current position of the vehicle HV is located in the parking area Pn (or a distance between the current position of the vehicle HV and a point specified by the parking space point information is equal to or shorter than a predetermined distance), the vehicle speed is "0", and the shift position is changed from a range other than a parking (P) range (e.g., a D range or an R range) to the parking range.
[0099] When the parking of the vehicle HV by the manual driving operation into the parking space in the parking area Pn has been completed, the CPU makes a "Yes" determination at step 720 to proceed to step 730. At step 730, the CPU transmits (uploads), to the cloud server 101, the data (i.e., the manual driving / parking path specifying data, namely, the actual path specifying information) specifying the manual driving / parking path (i.e., the actual path) of the vehicle HV in the parking area running period, while associating the data with the data specifying the target parking area Pn and data including the latitude and the longitude that specifies the point of the manual parking completed space. Note that, as described above, the manual driving / parking path specifying data of the vehicle HV is "sets of the feature point information to specify the manual driving / parking path of the vehicle HV" that has been obtained and stored in the parking area running period at step 615 shown in FIG. 6. The data including the latitude and the longitude that specifies the point of the manual parking completed space is the data representing the current position of the vehicle HV of when the parking of the vehicle HV by the manual driving operation is completed.
[0100] Thereafter, the CPU proceeds to step 740 to set the value of the transmitting flag XT to "0", and proceeds to step 795 to terminate the present routine.
[0101] When the parking of the vehicle HV by the manual driving operation into the parking space in the parking area Pn has not been completed at the time point at which the CPU proceeds to step 720, the CPU makes a "No" determination at step 720 to proceed to step 750. At step 750, the CPU determines whether or not the vehicle HV has traveled from the "first specific region determined by the entrance point Pl of the target parking area Pn" to the "second specific region determined by the going-around end point P4 of the target parking area Pn" via the going-around route R without being parked into the parking space.
[0102] Note that the CPU determines that the vehicle HV has traveled from the first specific region to the second specific region via the going-around route R, when the CPU recognizes sequentially a three-dimensional structure (e.g., a sign) representing an entrance point P2 of the going-around route, a three-dimensional structure (e.g., a sign) representing an exit point P3 of the going-around route, and a three-dimensional structure (e.g., a sign) representing an exit point (i.e., the going-around end point) P4, based on the vehicle surrounding image.
[0103] When the vehicle HV has traveled from the first specific region to the second specific region via the going-around route R without being parked, the CPU makes a "Yes" determination at step 750 to proceed to step 760.
[0104] At step 760, the CPU transmits / uploads, to the cloud server 101, the sets of the feature points for specifying the manual driving / parking path of the vehicle HV (i.e., the manual driving / parking path specifying data) that have been obtained and stored in the period from the time point at which the vehicle HV passed through the first specific region determined by the entrance point Pl of the target parking area Pn to the time point at which the vehicle HV reaches the second specific region determined by the going-around end point P4, as the manual driving going-around path specifying data (i.e., the actual going-around path specifying information that specifies the actual going-around path). Thereafter, the CPU proceeds to step 740, and then to step 795.
[0105] When the vehicle HV has not traveled yet from the first specific region to the second specific region via the going-around route R without being parked into the parking space, the CPU makes a "No" determination at step 750 to directly proceed to step 795.
[0106] In addition, when the value of the transmitting flag XT is not "1" at the time point at which the CPU proceeds to step 710, the CPU makes a "No" determination at step 710 to directly proceed to step 795.
[0107] In this manner, the manual driving going-around path specifying data and the manual driving / parking path specifying data are transmitted / uploaded to the cloud server 101. As a result, the manual driving going-around path specifying data and the manual driving / parking path specifying data are gradually accumulated in the cloud server 101. When the number of the data of the manual driving / parking path specifying data for all of the parking spaces in the target parking area Pn and the number of the manual driving going-around path specifying data for the target parking area Pn become a sufficiently large number greater than the threshold, the path optimization process described later is performed (refer to step 860 and step 870, shown in FIG. 8). This completes the accumulation / optimization of the path for the target parking area Pn in the cloud server 101. At this time, the value of the optimization completion flag XC(Pn) for the target parking area Pn is set to "1" (refer to step 880 shown in FIG. 8).
[0108] In a case where the accumulation / optimization of the path for the target parking area Pn is completed, when the CPU proceeds to step 610 shown in FIG. 6, the CPU makes a "Yes" determination at step 610 to proceed to step 625. At step 625, the CPU proposes the automatic path parking to the passengers including the driver of the vehicle HV (i.e., the second vehicle). The automatic path parking is the automatic parking of the vehicle according to the automatic path parking control, and is automatic parking of the vehicle HV into the parking space, utilizing "the optimum going-around path (i.e., the reference going-around path) and the optimum parking path (i.e., the reference path)" stored in the involatile memory of the cloud server 101 as the target path.
[0109] Specifically, at step 625, the CPU causes the display 19 to display a message that the automatic path parking is available, the operation button for selecting the automatic path parking, and the operation button for selecting the manual parking. Thereafter, the CPU proceeds to step 630 to determine whether or not utilizing the automatic path parking is selected, by the operation to the operation button for selecting the automatic path parking.
[0110] When the operation button for selecting the manual parking is operated, the CPU makes a "No" determination at step 630, and proceeds to step 695 to terminate the present routine tentatively.
[0111] Whereas, when the operation button for selecting the automatic path parking is operated, the CPU makes a "Yes" determination at step 630 to proceed to step 635. At step 635, the CPU transmits a download requirement for a first path (in the present example, the reference going-around path which is the optimum going-around path) together with the data specifying the target parking area Pn (i.e., the parking area specifying information) to the cloud server 101. Consequently, the CPU downloads, as data which specifies the first path, the data specifying the optimum going-around path of the target parking space Pn (i.e., the reference going-around path specifying information which specifies the reference going-around path stored in the cloud server 101 while being associated with the target parking area Pn), from the cloud server 101.
[0112] Subsequently, the CPU proceeds to step 640 to automatically drive the vehicle HV in such a manner that the vehicle HV moves / travels along the optimum going-around path (i.e., the first path) by the automatic path parking control. Namely, the CPU let the vehicle HV automatically travel / run in such a manner that the feature point obtained continuously based on the vehicle surrounding image coincides with the feature point represented by the optimum going-around path. While the vehicle is being traveled in this manner, the CPU searches for the vacant parking space to which the vehicle HV can be parked based on the information from the vehicle surrounding sensor (i.e., the cameras 11-14, the radar sensors 15, and the ultrasonic sensors 16).
[0113] Thereafter, the CPU proceeds to step 645 to determine whether or not the vacant parking space has been detected.
[0114] When the vacant parking space has been detected, the CPU makes a "Yes" deter mination at step 645 to execute processes of step 650 and step 655, described below, sequentially. Thereafter, the CPU proceeds to step 695 to terminate the present routine.
[0115] Step 650: The CPU transmits a download requirement for the optimum parking path to the detected vacant parking space (i.e., the reference path that is the second path for the vacant parking space) together with the data specifying the target parking area Pn (i.e., the parking area specifying information) and the data specifying the detected vacant parking space (i.e., vacant parking space specifying information), to the cloud server 101. Consequently, the CPU downloads, as data which specifies the second path, the data which specifies the optimum parking path to the detected vacant parking space in the target parking space Pn (i.e., the reference path specifying information which specifies the reference path which has been stored in the cloud server 101 while being associated with the parking space which is the same as the detected vacant parking space), from the cloud server 101.
[0116] Note that, at step 650, the CPU may transmit a download requirement for the optimum parking path to the detected vacant parking space (i.e., the reference path which is the second path for the vacant parking space) together with the data specifying the detected vacant parking space (i.e., the vacant parking space specifying information) only, to the cloud server 101. In this case as well, the cloud server 101 transmits / downloads the data which specifies the optimum parking path to the detected vacant parking space (i.e., the reference path specifying information which specifies the reference path, which has been stored in the cloud server 101 while being associated with the parking space which is the same as the detected vacant parking space) to the vehicle HV, as the data which specifies the second path.
[0117] Step 655: The CPU lets the vehicle HV automatically travel / run along the optimum parking path (i.e., the second path) specified by the downloaded data which specifies the optimum parking path, by the automatic path parking control in which the optimum parking path is used as a target path. Namely, the CPU let the vehicle HV automatically travel / run in such a manner that the feature point obtained continuously based on the vehicle surrounding image coincides with the feature point represented by the optimum parking path. As a result, the vehicle HV is automatically parked into the detected vacant parking space.
[0118] Whereas, when the vacant parking space has not been detected, the CPU makes a "No" determination at step 645 to proceed to step 660. At step 660, the CPU determines whether or not the vehicle HV has reached a point in the vicinity of an end point of the first path. In other words, the CPU determines whether or not the vehicle HV has traveled from the first specific region determined by the entrance point Pl of the target parking area Pn to the second specific region determined by the going-around end point P4 via the going-around route R without being parked. The second specific region is in the vicinity of the going-around end point P4. When the vehicle HV has not reached the second specific region, the CPU makes a "No" determination at step 660 to return to step 640. Consequently, the vehicle HV is automatically driven along the optimum going-around path (i.e., the first path) by the automatic path parking control.
[0119] When there is no vacant parking space, the CPU continues making a "No" determination at step 645 while the vehicle HV is traveling from the entrance point Pl of the target parking area Pn to the second specific region via the going-around route R. When the vehicle HV has reached the second specific region, the CPU makes a "Yes" determination at step 660 to proceed to step 665.
[0120] At step 665, the CPU executes a well-known handover process to switch the driving of the vehicle HV to the manual driving by the passenger including the driver from the driving by the automatic path parking. Thereafter, the CPU proceeds to step 695.
[0121] (Specific operation of cloud server) The cloud server 101 (hereinafter, simply referred to as a "server") executes routines shown by flowcharts in FIGs. 8 and 9, every time a predetermined time elapses.
[0122] When an appropriate time point comes, the server starts processing from step 800 in FIG. 8, and proceeds to step 810. At step 810, the CPU determines whether or not the server has received the inquiry as to whether or not the server has completed the accu-mulation / optimization of the path for the target parking area Pn.
[0123] When the server has not received the inquiry as to whether or not the server has completed the accumulation / optimization of the path for the target parking area Pn, the server makes a "No" determination at step 810 to directly proceed to step 830.
[0124] Whereas, when the server has received the inquiry as to whether or not the server has completed the accumulation / optimization of the path for the target parking area Pn, the server makes a "Yes" determination at step 810 to proceed to step 820. At step 820, the server transmits the optimization completion flag XC(Pn) for the target parking area Pn to the vehicle HV that has transmitted the above-described inquiry. Thereafter, the server proceeds to step 830.
[0125] At step 830, the server determines whether or not the server has received the manual driving / parking path specifying data (i.e., the actual path specifying information) from the vehicle HV. When the server has not received the manual driving / parking path specifying data, the server makes a "No" determination at step 830, and directly proceeds to step 895 to terminate the present routine.
[0126] Whereas, when the server has received the manual driving / parking path specifying data, the server makes a "Yes" determination at step 830 to proceed to step 840. At step 840, the server determines whether or not the value of the optimization completion flag XC(Pn) is "0". Namely, the server determines whether or not the accumulation / op timization of the path for the target parking area Pn has been incomplete.
[0127] When the value of the optimization completion flag XC(Pn) is "1" (i.e., when the ac-cumulation / optimization of the path for the target parking area Pn has been completed), the server makes a "No" determination at step 840, and directly proceeds to step 895 to terminate the present routine.
[0128] Whereas, when the value of the optimization completion flag XC(Pn) is "0" (i.e., when the accumulation / optimization of the path for the target parking area Pn has not been completed), the server makes a "Yes" determination at step 840, and proceeds to step 850.
[0129] At step 850, the server executes a first process and a second process, described below.
[0130] First process: When the manual driving / parking path specifying data transmitted / uploaded from the vehicle HV is associated with the data representing the point of the manual parking completed space (i.e., the manual parking completed space specifying information) and the data specifying the target parking area Pn (i.e., the parking area specifying information), the server obtains (specifies) the manual driving / parking path (i.e., the actual path) on the map of the target parking area Pn, based on the manual driving / parking path specifying data and the target parking area information of the target parking area Pn. Furthermore, the server stores (accumulates) the obtained manual driving / parking path (i.e., the actual path) in the involatile memory while associating the manual driving / parking path with the target parking area Pn and the parking space corresponding to the manual parking completed space.
[0131] Second process: When the manual driving / parking path specifying data transmitted from the vehicle HV is the manual driving going-around path specifying data (i.e., the actual going-around path specifying information), the server obtains (specifies) the manual driving going-around path (i.e., the actual going-around path), based on the manual driving going-around path specifying data and the target parking area information of the target parking area Pn. Furthermore, the server stores (accumulates) the obtained manual driving going-around path (i.e., the actual going-around path) in the involatile memory while associating the manual driving going-around path with the target parking area Pn.
[0132] Thereafter, the CPU proceeds to step 860 to determine whether or not a sufficient number of the manual driving / parking paths for the target parking area Pn have been accumulated. Specifically, the server determines whether or not a sufficient number of the manual driving / parking paths for each of all of the parking spaces in the target parking area Pn and a sufficient number of the manual driving going-around paths for the target parking area Pn have been both accumulated.
[0133] When a sufficient number of the manual driving / parking paths for the target parking area Pn have not been accumulated, the server makes a "No" determination at step 860, and directly proceeds to step 895 to terminate the present routine.
[0134] Whereas, when a sufficient number of the manual driving / parking paths for the target parking area Pn have been accumulated, the server makes a "Yes" determination at step 860, and executes processes of step 870 and step 880, described below. Thereafter, the server proceeds to step 895 to terminate the present routine.
[0135] Step 870: The server executes the path optimization process on the "manual driving / parking paths for each of the parking spaces in the target parking area Pn" that have been accumulated to obtain the optimum parking path (i.e., the reference path) for each of the parking spaces. Furthermore, the server stores the obtained optimum parking path into the involatile memory while associating the obtained optimum parking path with the target parking area Pn and the corresponding parking space. Similarly, the server executes the path optimization process on the " manual driving going-around paths for the target parking area Pn" that have been accumulated to obtain the optimum going-around path. Furthermore, the server stores the obtained optimum going-around path into the involatile memory while associating the obtained optimum going-around path with the target parking area Pn. Note that the path optimization process will be described later.
[0136] It should be noted that the server may transmits the uploaded actual path specifying information to another computer, and that another computer may produce the reference path and the reference going-around path based on the actual paths specified by the actual path specifying information, and then, the server may receive the reference path and the reference going-around path from that another computer. In addition, at step 870, the server may store the reference path and the reference going-around path in another memory device. In this case, at step 930 and step 940, the server may obtain the reference path and the reference going-around path from that another memory device, and may transmit / download them to the vehicle HV. This can apply to a reference passage travel path described later.
[0137] Step 880: The server sets the value of the optimization completion flag XC(Pn) of the target parking area Pn to "1". The value of the optimization completion flag XC(Pn) is stored in the involatile memory of the server.
[0138] Furthermore, when an appropriate time point comes, the server starts processing from step 900 in FIG. 9, and proceeds to step 910. At step 910, the server determines whether or not the server has received the download requirement of the first path (in this example, the reference going-around path which is the optimum going-around path) of the target parking area Pn from the vehicle HV (refer to step 635). When the server has not received the download requirement for the first path, the server makes a "No" determination at step 910 to proceed to step 930.
[0139] Whereas, when the server has received the download requirement for the first path, the server makes a "Yes" determination at step 910 to proceed to step 920. At step 920, the server transmits (downloads) the data which specifies the first path (i.e., the reference going-around path which is the optimum going-around path) of the target parking area Pn (i.e., the reference going-around path specifying information which specifies the reference going-around path) to the vehicle HV which has transmitted the download requirement. Thereafter, the server proceeds to step 930.
[0140] At step 930, the server determines whether or not the server has received the download requirement for the second path (i.e., the optimum parking path) for / to the detected vacant space in the target parking area Pn, from the vehicle HV (refer to step 650). When the server has not received the download requirement for the second path (i.e., the optimum parking path), the server makes a "No" determination at step 930, and directly proceeds to step 995 to terminate the present routine tentatively.
[0141] Whereas, when the server has received the download requirement for the second path (i.e., the optimum parking path), the server makes a "Yes" determination at step 930 to proceed to step 940. At step 940, the server transmits (downloads) the data which specifies the "second path (i.e., the optimum parking path) which has been stored while being associated with the parking space which is the same as the detected vacant parking space in the target parking area Pn (i.e., the reference path specifying information which specifies the reference path that has been stored while being associated with the parking space which is the same as the vacant parking space)" to the vehicle HV which has transmitted the download requirement. Thereafter, the server directly proceeds to step 995 to terminate the present routine tentatively.
[0142] (Path optimization process) The path optimization process executed at step 870 shown in FIG. 8 includes one of the processes described below, for example. Note that, hereinafter, the path optimization process executed to / for the manual driving / parking path(s) for the parking space will be described, however, the path optimization process executed to / for the manual driving going-around path is similar to the process described below.
[0143] Path optimization process 1: This process 1 is a process to average a sufficient number of the manual driving / parking paths that have been accumulated for an arbitrary parking space, and to obtain the averaged path as the optimum parking path. Path optimization process 2: This process 2 is a process to choose the most frequent path among a sufficient number of the manual driving / parking paths that have been accumulated for an arbitrary parking space, and to obtain the chosen path as the optimum parking path.
[0144] Path optimization process 3: This process 3 is a process to choose the path with the largest minimum radius of curvature among a sufficient number of the manual driving / parking paths that have been accumulated for an arbitrary parking space, and to obtain the chosen path as the optimum parking path. Path optimization process 4: This process 4 is a process to obtain the minimum value of a distance between the vehicle HV and the feature point in each of a sufficient number of the manual driving / parking paths that have been accumulated for an arbitrary parking space, and to obtain a path that has the largest minimum value, as the optimum parking path. Path optimization process 5: This process 5 is a process to obtain the sum of the length of straight lines included in each of a sufficient number of the manual driving / parking paths that have been accumulated for an arbitrary parking space, and to obtain a path that has the longest sum of the length of straight lines, as the optimum parking path.
[0145] As has been described, according to the parking system of the embodiment, the optimum going-around path (i.e., the reference going-around path) and the optimum parking path (i.e., the reference path) are obtained based on big data of the actual path (i.e., the manual driving / parking path) acquired from the vehicle HV (i.e., the vehicle that functions as the first vehicle), and the vehicle HV (i.e., the vehicle that functions as the second vehicle) is automatically driven by the automatic path parking control based on the obtained optimum going-around path and the obtained optimum parking path. Therefore, the vehicle HV can be automatically parked into one of a plurality of the parking spaces that are included in the parking area.
[0146] In addition, according to the apparatus DS, the vehicle HV is firstly automatically driven from the first specific region in such a manner that the HV travels along the first path (in the present example, the reference going-around path that is the optimum going-around path), by the automatic path parking control where the first path is used as the target path. When the vacant parking space (the available parking space) is detected while the vehicle HV is traveling along the first path, the vehicle HV is automatically driven along the second path (in the present example, the reference path which is the optimum parking path) to / for the detected parking space, by the automatic path parking control where the second path is used as the target path. Accordingly, even when the vacant space cannot be specified at the time point at which the vehicle enters the predetermined parking area, the vehicle HV can be parked in to the vacant parking space automatically.
[0147] Note that the processes of step 610 and step 625, shown in FIG. 6, may be executed, when the vehicle HV functioning as the second vehicle has reached the predetermined area within the predetermined distance from the entrance point of the parking area Pn (i.e., from the point, represented by the latitude and the longitude, specified by the parking area entrance point information) which has been set as the destination point (in other words, the predetermined area corresponding to the first specific region). Namely, the processes of step 610 and step 625 may be executed, when the vehicle HV has entered the predetermined area greater (wider) than the first specific region. In this case, if the accumulation / optimization of the path for the target parking area Pn in the cloud server 101 has not been completed, the CPU directly proceeds to step 615 when the CPU makes a "Yes" determination at step 605. Whereas, if the accumulation / optimization of the path for the target parking area Pn in the cloud server 101 has been completed, the CPU directly proceeds to step 630 when the CPU makes a "Yes" determination at step 605. Namely, the apparatus DS proposes to use the automatic path parking when the vehicle HV functioning as the second vehicle enters the predetermined area corresponding to the first specific region, and permits to start the automatic path parking control when the utilization of the automatic path parking is selected. When the automatic path parking control is permitted, the automatic path parking control is started when the vehicle HV functioning as the second vehicle enters the first specific region.
[0148] <First modified example> The first modified example of the apparatus DS uses the reference passage travel path (e.g., refer to the reference passage travel path El shown in FIG. 10) in place of the reference going-around path.
[0149] Namely, the first modified example can be available for (or can be applied to) the parking area that does not have the going-around path, as shown in FIG. 10. In the parking area that does not have the going-around path, as shown in FIG. 10, when the CPU of the vehicle HV functioning as the first vehicle proceeds to step 750 shown in FIG. 7, the CPU determines whether or not the vehicle HV has traveled from the first specific region determined by the entrance point Pl of the target parking area Pn to a third specific region determined by an exit point P5 shown in FIG. 10 of the target parking area Pn without being parked via a passage TR of the target parking area Pn.
[0150] When the vehicle HV has traveled from the first specific region to the third specific region without being parked via a passage TR, the CPU makes a "Yes" determination at step 750 to proceed to step 760.
[0151] At step 760, the CPU transmits (uploads), to the cloud server 101 the "sets of the feature point information to specify the manual driving / parking path (i.e., the manual driving / parking path specifying data" that has been obtained and stored by the process of step 615 in a period from the time point at which the vehicle HV passes through the first specific region determined by the entrance point Pl of the target parking area Pn to the time point at which the vehicle HV reaches the third specific region determined by the exit point P5 of the target parking area Pn, as actual passage travel path specifying information which specifies an actual passage travel path, while associating the "sets of the feature point information to specify the manual driving / parking path" with the data which specifies the target parking area Pn. Thereafter, the CPU proceeds to step 740, and then, to proceeds to step 795.
[0152] At step 850 shown in FIG. 8, the server executes a third process described below, in addition to the first process.
[0153] The third process: When the manual driving / parking path specifying data transmitted from the vehicle HV is transmitted as actual passage travel path specifying information which specifies the actual passage travel path, the server obtains (specifies) the actual passage travel path based on actual passage travel path specifying information and the target parking area information of the target parking area Pn. Then, the server stores (accumulates) the obtained actual passage travel path in the involatile memory while associating the actual passage travel path with the target parking area Pn.
[0154] At step 860, the server determines whether or not a sufficient number of the manual driving / parking paths (i.e., the actual paths) for the target parking area Pn have been accumulated and a sufficient number of the actual passage travel paths have been accumulated. When the server makes a "Yes" determination at step 860, the server executes the processes of step 870 and step 880, sequentially, and proceeds to step 895 to terminate the present routine tentatively. Note that, at step 870, the server obtains and stores the optimum parking path (i.e., the reference path) for each of the parking spaces, and executes the above-described path optimization process on the actual passage travel paths for the target parking area Pn that have been accumulated to obtain the optimum passage travel path as a reference passage travel path. Thereafter, the server stores the optimum passage travel path (i.e., the reference passage travel path) into the involatile memory while associating the optimum passage travel path with the target parking area Pn.
[0155] In addition, when the operation button for selecting the automatic path parking is operated by the passenger(s) including the driver, the CPU of the vehicle HV functioning as the second vehicle makes a "Yes" determination at step 630 shown in FIG. 6 to proceed to step 635a. At step 635a, the CPU transmits the download requirement for the first path together with the data which specifies the target parking area Pn (i.e., the parking area specifying information) to the cloud server 101. Consequently, the server makes a "Yes" determination at step 910 shown in FIG. 9 to proceed to step 920. At step 920, the server transmits (downloads) the data which specifies the reference passage travel path (i.e., the optimum passage travel path) which is the reference passage travel path specifying information which specifies the reference passage travel path as the first path of the target parkin area Pn to the vehicle HV which has transmitted the download requirement. Thereafter, the server proceeds to step 930. In other words, at step 635a shown in FIG. 6, the CPU of the vehicle HV functioning as the second vehicle downloads the reference passage travel path specifying information as the data which specifies the first path, from the cloud server 101.
[0156] Subsequently, the CPU proceeds to step 640 to automatically drive the vehicle HV in such a manner that the vehicle HV moves along the first path (i.e., in the present example, the reference passage travel path specified by the reference passage travel path specifying information) by the automatic path parking control where the target path is set at the first path. Simultaneously, the CPU starts to search for the vacant parking space.
[0157] In the example shown in FIG. 10, the parking space PS3 and the parking space PS9 are both vacant parking spaces. Thus, while the vehicle HV is traveling along the reference passage travel path El which is the first path by the automatic path parking control, the parking space PS3 is detected as the vacant parking space prior to a time point at which the parking space PS9 is detected as the vacant parking space.
[0158] When the parking space PS3 is detected as the vacant parking space, the CPU makes a "Yes" determination at step 645 to proceed to step 650. At step CPU 650, the CPU transmits a download requirement for the second path which is the optimum parking path to the detected vacant parking space (i.e., in the present example, the parking space PS3) together with the data specifying the target parking area Pn and the data (i.e., the vacant parking space specifying information) which specifies the detected vacant parking space (i.e., in the present example, the parking space PS3), to the cloud server 101. Consequently, the CPU downloads, as data which specifies the optimum parking path D2 to the detected vacant parking space (i.e., in the present example, the parking space PS3) in the target parking space Pn, from the cloud server 101, as the data which specifies the second path (i.e., the second reference path specifying information which is the reference path specifying information).
[0159] Subsequently, the CPU proceeds to step 655 to let the vehicle HV automatically travel / run along the second path (i.e., the reference path D2) by the automatic path parking control in which the second path is used as the target path. Namely, the CPU switches the target path used in the automatic parking control from the reference passage travel path El which is the first path to the reference path D2 which is the second path. As a result, the vehicle HV is automatically parked into the parking pace PS3 which is the detected parking space.
[0160] Note that, when the vacant parking space has not been detected while the vehicle HV is traveling along the first path (i.e., the reference passage travel path El) by the automatic path parking control, the CPU makes a "No" determination at step 645 to proceed to step 660. At step 660, the CPU determines whether or not the vehicle HV has reached a point in the vicinity of an end point of the first path (i.e., an area in the vicinity of the end point of the reference passage travel path El, and in this case, the third specific region determined by the exit point P5 of the parking area Pn). When the vehicle HV has not reached in the vicinity of the end point of the first path, the CPU returns to step 640 from step 660. When the vehicle HV has reached in the vicinity of the end point of the first path, the CPU proceeds to step 665 from step 660.
[0161] As described above, according to the first modified example, when the vehicle HV enters the target parking area Pn, the vehicle HV is automatically traveled by the automatic path parking control using the reference passage travel path in place of the reference going-around path that is used in the above-described embodiment. Therefore, the first modified example can be utilized for the target parking area that does not have the going-around path.
[0162] <Second modified example> The second modified example of the apparatus DS uses, as the first path, a tentative reference path that is the reference path to a predetermined parking space (i.e., a tentative parking space which is predetermined one of the parking spaces), instead of the reference going-around path or the reference passage travel path. Specifically, the apparatus DS according to the second modified example is different from the apparatus DS according to the above-described embodiment only in that the CPU of the parking assistance ECU 10 of the vehicle HV functioning as the second vehicle executes the routine shown in FIG. 6 where step 635 shown in step FIG. 6 is replaced with step 635b. This difference will next be described.
[0163] When the operation button for selecting the automatic path parking is operated by the passenger(s) including the driver, the CPU makes a "Yes" determination at step 630 shown in FIG. 6 to proceed to step 635b. At step 635b, the CPU transmits the download requirement for the first path together with the data which specifies the target parking area Pn (i.e., the parking area specifying information) to the cloud server 101. Consequently, the server makes a "Yes" determination at step 910 shown in FIG. 9 to proceed to step 920. At step 920, the server transmits (downloads) the "data which specifies the optimum parking path (i.e., the tentative reference path which is the reference path) DI, which is the reference path specifying information which specifies the reference path" to the predetermined parking space (i.e., the tentative parking space) PS 10. The tentative parking space is the farthest away from the entrance point Pl of the target parking area Pn shown in FIG. 11 (i.e., the tentative parking space that has been determined in advance among a plurality of the parking spaces in the target parking area Pn). Thereafter, the server proceeds to step 930. As a result, at step 635b shown in FIG. 6, the CPU of the vehicle HV functioning as the second vehicle downloads the reference path specifying information which specifies the "reference path to the predetermined parking space PS 10 (i.e., the tentative parking space) as the first path of the target parking area Pn", from the cloud server 101.
[0164] Subsequently, the CPU proceeds to step 640 to automatically drive the vehicle HV in such a manner that the vehicle HV travels / moves along the first path (i.e., the tentative reference path) DI by the automatic path parking control where the target path is set at the first path. Simultaneously, the CPU starts to search for the vacant parking space.
[0165] In the example shown in FIG. 11, the parking space PS3 and the parking space PS10 are both vacant parking spaces. Thus, while the vehicle HV is traveling along the first path by the automatic path parking control, the parking space PS3 is detected as the vacant parking space prior to a time point at which the parking space PS 10 is detected as the vacant parking space.
[0166] When the parking space PS3 is detected as the vacant parking space, the CPU makes a "Yes" determination at step 645 to proceed to step 650. At step CPU 650, the CPU transmits a download requirement for the second path which is the optimum parking path (i.e., the reference path) to the detected vacant parking space (i.e., in the present example, the parking space PS3) together with the data which specifies the target parking area Pn and the data (i.e., the vacant parking space specifying information) which specifies the detected vacant parking space (i.e., in the present example, the parking space PS3), to the cloud server 101. Consequently, the CPU downloads, as data which specifies the second path (i.e., the reference path specifying information which specifies the reference path, namely the second reference path specifying information), the data which specifies the reference path (i.e., the second path, the second reference path) D2 which is the optimum parking path to the detected vacant parking space (i.e., in the present example, the parking space PS3) in the target parking space Pn, from the cloud server 101.
[0167] Subsequently, the CPU proceeds to step 655 to let the vehicle HV automatically travel / run along the second path (i.e., the optimum parking path D2) by the automatic path parking control in which the second path is used as the target path. Namely, the CPU switches the target path used in the automatic parking control from the optimum parking path DI which is the first path to the optimum parking path D2 which is the second path.
[0168] Note that, when the vacant parking space has not been detected while the vehicle HV is traveling along the first path by the automatic path parking control, the CPU makes a "No" determination at step 645 to proceed to step 660. At step 660, the CPU determines whether or not the vehicle HV has reached a point in the vicinity of an end point of the first path (i.e., an area in the vicinity of the end point of the first path, and in this case, the fourth specific region shown in FIG. 11). When the vehicle HV has not reached in the vicinity of the end point of the first path, the CPU returns to step 640 from step 660. When the vehicle HV has reached in the vicinity of the end point of the first path, the CPU proceeds to step 665 from step 660.
[0169] As has been described above, according to the second modified example, when the vehicle HV enters the target parking area Pn, the vehicle HV is automatically traveled by the automatic path parking control using the tentative reference path which is the optimum parking path DI to the parking space PS 10 (i.e., the tentative parking space) that is furthest away from the entrance point Pl of the target parking area Pn, in place of the optimum going-around path that is used in the above-described embodiment. Therefore, the second modified example can be utilized for the target parking area that does not have the going-around path.
[0170] Note that, the tentative parking space does not have to be the parking space which is furthest away from the entrance point Pl of the parking area. For example, the tentative parking space may be the n-th parking space from the entrance point Pl. In this case, when the vacant parking space is not detected while the vehicle HV is traveling by the automatic path parking control using the tentative reference path to that tentative parking space as the target path, the tentative parking space may be switched to the (n+m)-th parking space, and the CPU may search for the vacant parking space while the vehicle HV is traveling by the automatic path parking control using the tentative reference path to the new (switched) tentative parking space as the target path. Namely, in this manner, the tentative parking space may sequentially be switched.
[0171] cThird modified example> The third modified example of the apparatus DS is different from the apparatus DS in the above-described embodiment only in that the CPU of the parking assistance ECU 10 executes a routine shown by a flowchart in FIG. 12 in place of FIG. 6. This difference will next be described. Note that a step shown in FIG. 12 whose process is the same as the process executed at one of the steps shown in FIG. 6 is given a reference sign which is the same as one given to the step shown in FIG. 6. Descriptions for those steps will be omitted as appropriate.
[0172] When the accumulation / optimization of the path for the target parking area Pn has been completed in the cloud server 101, the CPU makes a "Yes" determination at step 610 shown in FIG. 12 to proceed to step 1210 shown in FIG. 12.
[0173] At step 1210, the CPU causes the display 19 to display the message that the automatic path parking will be executed and the operation button to prohibit (not utilize) the automatic path parking. Subsequently, the CPU proceeds to step 1220 to determine whether or not the operation button to prohibit the automatic path parking has been operated.
[0174] When the operation button to prohibit the automatic path parking has not been operated, the CPU makes a "No" determination at step 1220, and executes the processes of step 635 and steps after step 635. This causes the automatic path parking to be executed.
[0175] Whereas, when the operation button to prohibit the automatic path parking has been operated, the CPU makes a "Yes" determination at step 1220, and directly proceeds to step 1295 to terminate the present routine tentatively. In this case, the automatic path parking is not executed. Note that, when the CPU makes a "Yes" determination at step 1220 in a case where the vehicle HV is autonomously being driven by the autonomous driving ECU 30 to the destination point that has been set by the user (i.e., to the point specified by the latitude and the longitude of the target parking space Pn which is specified by the parking area specifying information), the CPU may proceed to step 665.
[0176] As has been described, the third modified example automatically starts the automatic path parking unless the passengers show their intention to prohibit (not to use) the automatic path parking. Therefore, the passengers do not have to perform any operation to perform / start the automatic path parking, and thus, they can more easily utilize the automatic path parking.
[0177] Note that the processes of step 610 and step 1210, shown in FIG. 12, may be executed, when the vehicle HV functioning as the second vehicle has reached the predetermined area within the predetermined distance from the entrance point of the parking area Pn (i.e., from the point, represented by the latitude and the longitude, specified by the parking area entrance point information) which has been set as the destination point (in other words, the predetermined area corresponding to the first specific region). Namely, the processes of step 610 and step 1210, shown in FIG. 12, may be executed, when the vehicle HV has entered the predetermined area greater (wider) than the first specific region. In this case, if the accumulation / optimization of the path for the target parking area Pn in the cloud server 101 has not been completed, the CPU directly proceeds to step 615 shown in FIG. 12, when the CPU makes a "Yes" determination at step 605. Whereas, if the accumulation / optimization of the path for the target parking area Pn in the cloud server 101 has been completed, the CPU directly proceeds to step 1220 shown in FIG. 12, when the CPU makes a "Yes" determination at step 605. Namely, the apparatus DS notifies the passengers that the automatic path parking will be started when the vehicle HV functioning as the second vehicle enters the predetermined area corresponding to the first specific region, and permits to start the automatic path parking control unless the usage of the automatic path parking is not prohibited. When the automatic path parking control is permitted, the CPU starts the automatic path parking control, when the vehicle HV functioning as the second vehicle enters the first specific region.
[0178] <Fourth modified example> The fourth modified example of the apparatus DS is different from the apparatus DS in the above-described embodiment only in that the CPU of the parking assistance ECU 10 executes a routine shown by a flowchart in FIG. 13 in place of FIG. 6. This difference will next be described. Note that a step shown in FIG. 13 whose process is the same as the process executed at one of the steps shown in FIG. 6 is given a reference sign which is the same as one given to the step shown in FIG. 6. Descriptions for those steps will be omitted as appropriate.
[0179] When the operation button for selecting the automatic path parking is operated by the passenger(s) including the driver, the CPU makes a "Yes" determination at step 630 shown in FIG. 13 to proceed to step 1310.
[0180] In this modified example, the parking area management device 150 shown in FIG. 1 is provided in the vicinity of the entrance point Pl of the target parking area Pn. The parking area management device 150 comprises an unillustrated communication device and a plurality of unillustrated vehicle detection sensors. Each of the vehicle detection sensors is provided to each of all of the parking spaces in the target parking area Pn, and detects whether or not a vehicle is parked (present) in each of the corresponding parking spaces. The parking area management device 150 obtains information which specifies vacant spaces in the target parking area Pn, based on signals from the vehicle detection sensors. Note that, the parking area management device 150 may obtain a satellite photograph of the target parking space from an artificial satellite, or a photograph taken by a drone or a camera that is installed at the top of a tower, and may obtain information which specifies vacant spaces in the target parking area Pn based on the obtained photograph. In addition, the parking area management device 150 may be located at a point away from the target parking area Pn.
[0181] At step 1310, the CPU obtains the information (vacant parking space specifying information) which specifies vacant spaces in the target parking area Pn from the parking area management device 150 corresponding to the target parking space Pn via the communication ECU 20. Thereafter, the CPU proceeds to step 1320 to determine whether or not the there is a vacant space in the target parking area Pn, based on the vacant parking space specifying information obtained from the parking area management device 150.
[0182] When there is no vacant parking space in the target parking area Pn, the CPU makes a "No" determination at step 1320 to directly proceed to step 1395 so as to terminate the present routine tentatively.
[0183] Whereas, when there is at least one vacant space in the target parking area Pn, the CPU makes a "Yes" determination at step 1320 to proceed to step 1330. At step 1330, the CPU selects one of the vacant spaces in the target parking area Pn as the target parking space, based on the vacant parking space specifying information obtained from the parking area management device 150 and a predetermined rule. For example, this predetermined rule is a rule that causes the CPU to select a parking space whose distance in a straight line from the entrance point Pl of the target parking space Pn is the shortest among the vacant parking spaces, as the target parking space. Alternatively, the predetermined rule may be a rule that causes the CPU to select a parking space whose number is the smallest among the vacant parking spaces, as the target parking space, in a case where the parking spaces in the target parking area Pn are numbered in order. In addition, the rule may be another rule. Furthermore, this process to select one of the vacant parking spaces as the target parking space may be executed by the parking area management device 150. Or, the vacant parking spaces may be displayed on the display to the passenger(s), and the passenger(s) may select one of them as the target parking space.
[0184] Thereafter, the CPU proceeds to step 1340. At step 1340, the CPU transmits a download requirement for the optimum parking path (i.e., the reference path) to the target parking space selected at step 1330 together with the data which specifies the target parking area Pn (i.e., the parking area specifying information) and the data which specifies the target parking space which is the vacant parking space (i.e., vacant parking space specifying information), to the cloud server 101. Consequently, the CPU downloads, as data which specifies the second path, the data specifying the optimum parking path to the target parking space (i.e., the reference path specifying information which specifies the reference path which has been stored in the cloud server 101 while being associated with the parking space which is the same as the target parking space), from the cloud server 101. Note that, at step 1340, the CPU may transmit a download requirement for the optimum parking path (i.e., the reference path) to the target parking space selected at step 1330 together with the data specifying the vacant parking space which is the target parking space (i.e., the vacant parking space specifying information) only, to the cloud server 101. In this case as well, the CPU can download, from the cloud server 101, the reference path specifying information which specifies the reference path which has been stored in the cloud server 101 while being associated with the parking space which is the same as the vacant parking space specified by the vacant parking space specifying information.
[0185] Subsequently, the CPU proceeds to step 1350 to let the vehicle HV automatically travel / run along the reference path (i.e., the optimum parking path) specified by the downloaded reference path specifying information, by the automatic path parking control in which the reference path (i.e. the optimum parking path) is used as the target path. Namely, the CPU let the vehicle HV automatically travel / run in such a manner that the feature point information obtained continuously based on the vehicle surrounding image coincides with the feature point information represented by the optimum parking path. As a result, the vehicle HV is automatically parked into the vacant parking space.
[0186] As has been described, the fourth modified example obtains the information on the vacant spaces in the target parking space Pn from the parking area management device 150. Therefore, the parking assistance ECU 10 according to the fourth modified example can omit the process to search for the vacant space while having the vehicle HV travel along the first path, i.e., the process executed by the above-described embodiment and the first to the third modified example.
[0187] It should be noted that the present invention is not limited to the above-described embodiments and its modified examples, and may adopt various modified examples within the scope of the present invention including examples described below.
[0188] (Fifth modified example) The parking system may utilize "actual paths, actual going-around paths, actual passage travel paths, reference paths, reference going-around paths, and reference passage travel paths" that are set for each vehicle size (large vehicles, small vehicles, light passenger vehicle, or the like) on which the apparatus DS is mounted.
[0189] Namely, at step 730 shown in FIG. 7, the apparatus DS of the vehicle functioning as the first vehicle transmits the actual path specifying information while associating vehicle size information which specifies the vehicle size of the vehicle on which the apparatus DS is mounted together with the other data to the cloud server 101. At step 760 shown in FIG> 7, the apparatus DS of the vehicle functioning as the first vehicle transmits the actual going-around path specifying information or the actual passage travel path specifying information while associating vehicle size information which specifies the vehicle size of the vehicle on which the apparatus DS is mounted together with the other data to the cloud server 101.
[0190] At step 850, the cloud server 101 stores (accumulates) the actual path in the involatile memory while associating the actual path with the target parking area Pn, the parking space corresponding to the manual parking completed space, and the vehicle size. In addition, at step 850, the cloud server 101 stores (accumulates) the actual going-around path or the actual passage travel path in the involatile memory while associating the actual going-around path or the actual passage travel path with the target parking area Pn and the vehicle size.
[0191] At step 870, the cloud server 101 obtains the reference path for each of combinations of the target parking area Pn, the parking space, and the vehicle size, and stores the reference path into the involatile memory while associating the reference path with the combination of the target parking area Pn, the parking space, and the vehicle size. At step 870, the cloud server 101 obtains the going-around path or the reference passage travel path for each of the combinations of the target parking area Pn, the parking space, and the vehicle size, and stores the going-around path or the reference passage travel path into the involatile memory while associating the going-around path or the reference passage travel path with the combination of the target parking area Pn, and the vehicle size.
[0192] At step 635, the apparatus DS of the vehicle functioning as the second vehicle downloads, as the data which specifies the first path, the data which specifies "the reference going-around path or the reference passage travel path" that has been stored in the cloud server 101 while being associated with the target parking area Pn and the vehicle size which is the same as the vehicle size of that second vehicle.
[0193] Furthermore, at step 650, the apparatus DS of the vehicle functioning as the second vehicle downloads, as the data which specifies the second path, data which specifies the reference path that has been stored in the cloud server 101 while being associated with the target parking area Pn , the parking space which is the vacant parking space, and the vehicle size which is the same as the vehicle size of that second vehicle.
[0194] Note that, in the fifth modified example, the cloud server 101 may obtain "the reference path, the reference going-around path, and the reference passage travel path" for the specific vehicle size, when the number of data of "the reference path and either the actual going-around path or the actual passage travel path" for the specific vehicle size becomes sufficiently large, even if the number of those data for the other vehicle size is not sufficient. In this case, when "the reference path and / or either the actual going-around path or the actual passage travel path" for the vehicle size of the vehicle functioning as the second vehicle have not been obtained and thus not been stored in the cloud server 101, the cloud server 101 may downloads (transmits), to the apparatus DS, "the reference path and / or either the actual going-around path or the actual passage travel path" for the vehicle size that is different from the vehicle size of the vehicle which has transmitted the download requirement with information indicating the vehicle size is different from the vehicle size of the vehicle which has transmitted the download requirement. Thereafter, when the vehicle HV enters the target parking area, the apparatus DS may cause the display 18 to display a message that the automatic path parking is available according to the path which is obtained based on the vehicle whose vehicle size is different from the vehicle size of the vehicle HV (i.e., the host vehicle), and an operation button to inquire whether the passengers want to use the automatic path parking. Alternatively, at step 1210, the apparatus DS according to the fifth modified example may cause the display 18 to display a message that the automatic path parking according to the path which is obtained based on the vehicle whose vehicle size is different from the vehicle size of the vehicle HV (i.e., the host vehicle) will be started, and the operation button to prohibit the automatic path parking.
[0195] (Sixth modified example) The apparatus DS of the vehicle functioning as the second vehicle may perform a so-called autonomous driving by the autonomous driving ECU 30. In this case, when the vehicle HV approaches the first specific region by the autonomous driving, the CPU makes a "Yes" determination at step 605 to cancel the autonomous driving, and starts the automatic path parking control of the above-described embodiment and the abovedescribed modified examples.
[0196] In addition, while automatically driving the second vehicle by the automatic path parking control in which the optimum parking path is used as the target path, the CPU of the parking assistance ECU 10 which is mounted on the second vehicle according to the above-described embodiment and the each of the above-described modified examples may cancel the automatic path parking control due to an instruction from the passengers or due to a presence of an obstacle. For example, the CPU lets the second vehicle move to a point in the vicinity of the vacant parking space by the automatic path parking control in which the optimum parking path to the vacant parking space is used as the target path. When the parking assistance switch 17 is operated at the time point at which the second vehicle has reached the point in the vicinity of the vacant parking space, the CPU may terminate the automatic path parking control, and obtain, through a well-known method, a target parking path to the vacant parking space from the position of the second vehicle at that time point. Thereafter, the CPU may park the second vehicle into the vacant parking space by moving the second vehicle along the target parking path.
[0197] (Seventh modified example) The above-described vehicle functioning as the first vehicle is configured to upload the actual path specifying information which represents the actual path to the server when the vehicle is parked into the parking space by the manual driving (or is manually parked into the parking space), but is not limited to this configuration. For example, the vehicle HV functioning as the first vehicle may be configured to: let the vehicle HV move to a point in the vicinity of a predetermined parking space by the autonomous driving where the destination point is set at a point which specifies the predetermined parking space using the latitude and the longitude in the target parking area Pn using the autonomous driving ECU 30, after the vehicle HV has reached the first specific region; stop the vehicle HV in the vicinity of the predetermined parking space; calculate a parking path to the predetermined parking space from the point where the vehicle HV has stopped based on the vehicle surrounding image; let the vehicle HV move along the calculated parking path to the predetermined parking space; obtain a travel path, as the actual path, in the target parking area Pn, when the vehicle HV is parked in the predetermined parking space; and upload the actual path specifying information which specifies the obtained travel path (i.e., the actual path) to the server.
[0198] The embodiments including above-described embodiment and the above-described modified examples may be said to be configured as follows.
[0199] The parking system according to the one of the embodiments comprises a plurality of the first vehicles, the second vehicle, and the server, and lets the second vehicle travel / move to one of the parking spaces in the parking area including a plurality of the parking spaces to park the second vehicle into the parking space.
[0200] Each of a plurality of the first vehicles (HV) is configured to upload (transmit) the actual path specifying information which specifies the actual path (i.e., the manual driving / parking path Cl) (i.e., the data which specifies the manual driving / parking path) in the period in which the first vehicle is traveled / moved from the first specific region determined by the first specific point (e.g., the entrance point Pl) (i.e., the region from where the entrance point Pl can be recognized based on the vehicle surrounding image) to one of the parking spaces (step 615, step 620, step 730).
[0201] The server (101) is configured to: store the reference path (i.e., the optimum parking path) generated based on the uploaded actual path specifying information (i.e., the data which specifies the manual driving / parking path) (step 870); be capable of downloading the reference path specifying information which specifies the reference path that has been stored (e.g., the data which specifies the first path or the second path) (step 920 and step 940).
[0202] The second vehicle (HV) is configured to automatically travel (move) by the automatic path parking control in such a manner that the second vehicle travels (moves) along the reference path (e.g., the first path or the second path) specified by the reference path specifying information (e.g., the data which specifies the first path or the second path) downloaded from the server, wherein the automatic path parking control use the reference path as the target path (step 635, step 640, step 650, and step 655).
[0203] According to the above configuration, a large number of the "actual paths of when (or obtained in a period in which) the first vehicles are moved to and parked in one of a plurality of the parking spaces in the parking aera by the manual driving" are collected from the first vehicles. The server stores the reference path obtained based on a large number of the actual paths. The second vehicle is automatically moved along the reference path by the automatic path parking control. As a result, the second vehicle is automatically parked into one of a plurality of the parking spaces, or is automatically moved toward one of a plurality of the parking spaces. Accordingly, the passenger (i.e., the user) of the second vehicle can easily park the second vehicle into one of a plurality of the parking spaces included in the parking area.
[0204] In one of the embodiments, the server is configured to perform the predetermined optimization process (i.e., the path optimization process) on the actual paths (i.e., the manual driving / parking paths) specified by the uploaded actual path specifying information to obtain the reference path which is stored in the server (step 870).
[0205] In one of the embodiments, the second vehicle is configured to: when the second vehicle approaches the first predetermined point (e.g., the entrance point Pl) (e.g., when the second vehicle enter the first specific region or the predetermined area corresponding to the first specific region), propose the passenger(s) of the second vehicle to utilize the automatic path parking control (step 625); and starts the automatic path parking control (i.e., permits the start of the automatic path parking control) when the passenger agrees to the usage of the automatic path parking control (step 630: Yes, step 640, step 655).
[0206] According to the above configuration, the passenger of the second vehicle can use the automatic path parking control in accordance with his / her intention to move the second vehicle along the reference path.
[0207] In one of the embodiments, the second vehicle is configured to: when the second vehicle approaches the first predetermined point (e.g., the entrance point Pl) (e.g., when the second vehicle enters the first specific region or the predetermined area corresponding to the first specific region), notify the passenger(s) of the second vehicle that the automatic path parking control will be executed (step 1210); and permit to start the automatic path parking control (i.e., permit to start the automatic path parking control) unless starting the automatic path parking control is prohibited by the passenger (step 1220; No, step 635, step 655).
[0208] According to the above configuration, the passenger of the second vehicle can automatically move the second vehicle along the reference path without performing a specific operation, unless he / she expresses his / her intention that he / she does not want to use the automatic path parking control to automatically move the second vehicle along the reference path.
[0209] In one of the embodiments, the first vehicle is configured to upload the actual path specifying information (i.e., the data which specifies the manual driving / parking path) to the server while associating the actual path specifying information with the parking area specifying information which specifies the parking area which includes the parking space into which the first vehicle is manually parked (i.e., the data which specifies the target parking area Pn) (step 730).
[0210] The server is configured to store the actual path (i.e., the manual driving / parking path) specified by the uploaded actual path specifying information while associating the actual path with the parking area (Pn) specified by the parking area specifying information which is associated with the actual path specifying information (step 850); and store the reference path (i.e., the optimum parking path) which is generated based on the stored actual path while associating the reference path with the parking area (Pn) which is associated with the actual path (step 870).
[0211] Furthermore, in this embodiment, the second vehicle is configured to transmit the download requirement for the reference path together with the parking area specifying information which specifies the parking area (Pn) in which the second vehicle is going to be parked (i.e., the data which specifies the target parking area) to the server (step 635, step 650).
[0212] Furthermore, the server is configured to download (transmit) the reference path specifying information which specifies the reference path (i.e., the first path) which has been stored while being associated with the parking area (Pn) specified by the parking area specifying information that has been transmitted together with the download requirement for the reference path (i.e., the data which specifies the first path) to the second vehicle (step 910, step 920).
[0213] According to the above configuration, the actual paths are accumulated for each of the "parking areas having a plurality of the parking spaces" that are objectives of this parking system. In addition, this system can let the second vehicle travel along the reference path to automatically park the second vehicle into one of the parking spaces in the parking area (Pn) which is the objective of this system, or can let the second vehicle travel toward one of the parking spaces in the parking area (Pn) which is the objective of this system.
[0214] In one of the embodiments, the first vehicle is configured to: obtain the parking area specifying information which specifies the parking area (Pn) (i.e., the data which specifies the target parking area); when the first vehicle is parked into one of a plurality of the parking spaces by the manual driving, obtain the manual parking completed space specifying information which specifies the manual parking completed space which is the parking space into which the first vehicle is parked (i.e., the data specifying the manual parking completed space) and the actual path specifying information (step 605, step 615, step 730); when the first vehicle is traveled (moved) from the first specific region to the second specific region specified / determined by the second predetermined point (P4) via the going-around route (R) without being parked by the manual driving, obtain the actual going-around path specifying information (i.e., the manual driving going-around path specifying data) which specifies the actual going-around path (S) from the first specific region to the second specific region (step 605, step 615); or, when the first vehicle is traveled (moved) from the first specific region to the third specific region specified / determined by the fifth predetermined point (P5) via the passage (TR) of the parking area without being parked by the manual driving, obtain the actual passage travel path specifying information which specifies the actual passage travel path from the first specific region to the third specific region (step 605, step 615); when the actual path specifying information is obtained, upload the actual path specifying information to the server while associating the actual path specifying information with the parking area specifying information and the manual parking completed space specifying information (step 730); when the actual going-around path specifying information is obtained, upload the actual going-around path specifying information to the server while associating the actual going-around path specifying information with the parking area specifying information (step 760); or, when the actual passage travel path specifying information is obtained, upload the actual passage travel path specifying information to the server while associating the actual passage travel path specifying information with the parking area specifying information (step 760).
[0215] The server is configured to: store the actual path specified by the uploaded actual path specifying information while associating the actual path with "the parking area (Pn) specified by the parking area specifying information which is associated with the actual path specifying information" and "the manual parking completed space specifying information which is associated with the actual path specifying information" (step 850); store the actual going-around path specified by the uploaded actual going-around path specifying information while associating the actual going-around path with the parking area (Pn) specified by the parking area specifying information which is associated with the actual going-around path specifying information (step 850); or, store the actual passage travel path specified by the uploaded actual passage travel path specifying information while associating the actual passage travel path with the parking area (Pn) specified by the parking area specifying information which is associated with the actual passage travel path specifying information (step 850); store the reference path (i.e., the optimum parking path) which is generated (produced) based on the stored actual path, while associating the reference path with "the parking area stored while being associated with the actual path" and "the parking space stored while being associated with the actual path" (step 870); store the reference going-around path which is generated (produced) based on the stored actual going-around path, while associating the reference going-around path with the parking area stored while being associated with the actual going-around path (step 870); or, store the reference passage travel path which is generated (produced) based on the stored actual passage travel path, while associating the reference passage travel path with the parking area stored while being associated with the actual passage travel path.
[0216] The second vehicle is configured to: when the second vehicle is located in the first specific region of the parking area (i.e., the region specified (determined) by the entrance point Pl), download ,from the server, "the reference going-around path specifying information which specifies the reference going-around path stored in the server while being associated with the parking area" or "the reference passage travel path specifying information which specifies the reference passage travel path stored in the server while being associated with the parking area" (step 635); automatically travel (move), by the automatic path parking control, along the reference going-around path (i.e., the first path) specified by the downloaded reference going-around path specifying information or the reference passage travel path (i.e., the first path) specified by the downloaded reference passage travel path specifying information (step 640); search for the vacant parking space among a plurality of the parking spaces in the parking area while automatically traveling along the reference going-around path or the reference passage travel path (step 645); when the vacant parking space is detected (step 645: Yes), download, from the server, the reference path specifying information which specifies the reference path (i.e., the second path, the optimum parking path) stored in the server while being associated with the parking space which is the same as the vacant parking space (i.e., the data specifying the optimum parking path to the vacant parking space) (step 650); and automatically travel (move) by the automatic path parking control in which the target path is set at the reference path (i.e., the second path, the optimum parking path) which is specified by the downloaded reference path specifying information (i.e., the data specifying the optimum parking path to the vacant parking space) (step 655).
[0217] According to the above configuration, the second vehicle is firstly automatically moved along "the reference going-around path or the reference passage travel path" functioning as the first path by the automatic path parking control. When the vacant parking space (the available parking space) is detected while the second vehicle is traveling along the reference going-around path or the reference passage travel path, the second vehicle is caused to automatically travel along the reference path (i.e., the optimum parking path) to the vacant parking space by the automatic path parking control. Therefore, even when the vacant parking space cannot be specified when the second vehicle enters the parking area, the second vehicle can be parked into the vacant parking space.
[0218] In one of the embodiments, the first vehicle is configured to: obtain the parking area specifying information which specifies the parking area (Pn) (i.e., the data specifying the parking area) and the manual parking completed space specifying information which specifies "one of the parking spaces" into which the first vehicle is parked by the manual driving (i.e., the data specifying the manual parking completed space) (step 605, step 615, step 730); and upload the actual path specifying information (i.e., the data specifying the manual driving / parking path) to the server while associating the actual path specifying information with the parking area specifying information and the manual parking completed space specifying information (step 730).
[0219] The server is configured to: store the actual path (i.e., the manual driving / parking path) specified by the uploaded actual path specifying information while associating the actual path with the parking area (Pn) specified by the parking area specifying information that is associated with the actual path specifying information and the parking space specified by the manual parking completed space specifying information that is associated with the actual path specifying information (step 850); and store the reference path (i.e., the optimum parking path) which is generated (produced) based on the stored actual path while associating the reference path with "the parking area stored while being associated with the actual path" and "the parking space stored while being associated with the actual path" (step 870).
[0220] The second vehicle is configured to: when the second vehicle is located in the first specific region (i.e., the region specified (determined) by the entrance point Pl) of the parking area, download, from the server, the first reference path specifying information which is the reference path specifying information and specifies the first reference path (i.e. the first path, for example, the refence path which is stored while being associated with the parking space that is furthest away from the entrance point Pl) that is "one of the reference paths (i.e., the optimum parking paths)" stored while being associated with the parking area in the server (step 635a); automatically travel by the automatic path parking control in which the target path is set at the first reference path serving as the reference path specified by the first reference path specifying information (step 640); search for the vacant parking space among a plurality of the parking spaces in the parking area while automatically traveling by the automatic path parking control in which the target path is set at the first reference path (step 645); when the vacant parking space is detected (step 645: Yes), download, from the server, the second reference path specifying information which is the reference path specifying information which specifies the second reference path (i.e. the second path, the optimum parking path) stored in the server while being associated with the parking space which is the same as the vacant parking space (i.e., the data which specifies the optimum parking path to the vacant parking space) (step 650); and automatically travel (move) by the automatic path parking control in which the target path is set at the second reference path (i.e., the second path, the optimum parking path) which is the reference path which is specified by the downloaded second reference path specifying information (i.e., the data specifying the optimum parking path to the vacant parking space) (step 655).
[0221] According to the above configuration, the second vehicle is firstly automatically moved along the first reference path which is one of the reference paths (i.e., one of the optimum parking paths, the first reference path) by the automatic path parking control. When the vacant parking space (the available parking space) is detected while the second vehicle is traveling along the first reference path, the second vehicle is caused to automatically travel along the second reference path (i.e., the optimum parking path, the second path) which is the reference path to the vacant parking space by the automatic path parking control. Therefore, even when the vacant parking space cannot be specified when the second vehicle enters the parking area, the second vehicle can be parked into the vacant parking space.
[0222] In one of the embodiments, the first vehicle is configured to: obtain the parking area specifying information which specifies the parking area (Pn) (i.e., the data specifying the parking area) and the manual parking completed space specifying information which specifies "one of the parking spaces" into which the first vehicle is parked by the manual driving (i.e., the data specifying the manual parking completed space) (step 605 in FIG. 13, step 615 in FIG. 13, step 730 in FIG. 7); and upload the actual path specifying information (i.e., the data specifying the manual driving / parking path) to the server while associating the actual path specifying information with the parking area specifying information and the manual parking completed space specifying information (step 730).
[0223] The server is configured to: store the actual path (i.e., the manual driving / parking path) specified by the uploaded actual path specifying information while associating the actual path with the parking area (Pn) specified by the parking area specifying information that is associated with the actual path specifying information and the parking space specified by the manual parking completed space specifying information that is associated with the actual path specifying information (step 850); and store the reference path (i.e., the optimum parking path) which is generated (produced) based on the stored actual path while associating the reference path with the parking area stored while being associated with the actual path and the parking space stored while being associated with the actual path (step 870).
[0224] The second vehicle is configured to: when the second vehicle is located in the first specific region (i.e., the region specified (determined) by the entrance point Pl) of the parking area, obtain, from a parking area management device (150) that corresponds to the parking area, the vacant parking space specifying information which specifies the vacant parking space among a plurality of the parking spaces in the parking area (step 1310); download "the reference path specifying information (i.e., the data which specifies the optimum parking path) which specifies the reference path (i.e., the optimum parking path)" stored while being associated with the parking area and the parking space which is the same as the vacant parking space specified by the vacant parking space specifying information in the server (step 1340); and automatically travel by the automatic path parking control in which the target path is set at the reference path (i.e., the optimum parking path) specified by the downloaded reference path specifying information (i.e., the data which specifies the optimum parking path) (step 1350).
[0225] According to the above configuration, the second vehicle obtains the information which specifies the vacant parking space from the parking area management device, obtains the reference path (i.e., the optimum parking path) to one of the vacant parking spaces specified by the information which specifies the vacant parking space from the server, and automatically travels along the reference path by the automatic path parking control. Therefore, the second vehicle does not have to search for the vacant parking space while traveling, and thus, can be parked to the vacant parking space smoothly.
[0226] In one of the embodiments, the first vehicle is configured to generate (produce) the actual path specifying information using the feature point information extracted from the vehicle surrounding image that is obtained from the cameras (11-14) mounted on the first vehicle; and the second vehicle is configured to automatically travel by the automatic path parking control based on the feature point information extracted from the vehicle surrounding image that is obtained from the cameras (11-14) mounted on the second vehicle and the reference path specifying information which is downloaded from the server.
[0227] In addition, the first predetermined point is the point at which the three-dimensional structure (e.g., the sign, the landmark, or the like) indicating the entrance point (Pl) of the parking area is provided; the first vehicle is configured to recognize the three-dimensional structure based on the vehicle surrounding image, and generate (produce) the actual path specifying information while associating the actual path specifying information with the position of the recognized three-dimensional structure; and the server is configured to generate (produce) the reference path while associating the reference path with the position of the recognized three-dimensional structure.
[0228] According to the above configuration, the actual path specifying information and the reference path specifying information can be easily generated, and the second vehicle can be easily traveled along the reference path by the automatic path parking control. Reference Signs List
[0229] 10 Parking assistance ECU 11 Front camera 12 Back camera 13 Right side camera 14 Left side camera 20 Communication ECU 100 Data center 101 Cloud server
Claims
Claims
1. A parking system comprising a first vehicle, a second vehicle, and a server, for parking said second vehicle into one of a plurality of parking spaces in a parking area by letting said second vehicle travel to said one of said parking spaces, wherein, said first vehicle is configured to upload, to said server, actual path specifying information which specifies an actual path of when said first vehicle is traveled from a first specific region to said one of said parking spaces to be parked into said one of said parking spaces, said server is configured to be capable of downloading reference path specifying information which specifies a reference path which is generated based on said actual path specified by said uploaded actual path specifying information, and said second vehicle is configured to automatically travel by an automatic path parking control that uses, as a target path, said reference path specified by said reference path specifying information which is downloaded from said server.
2. The parking system according to claim 1, wherein, said server is configured to generate said reference path by performing a predetermined path optimization process on said actual path specified by said uploaded actual path specifying information.
3. The parking system according to claim 1, wherein, said second vehicle is configured to: propose to use said automatic path parking control to a passenger of said second vehicle, when the second vehicle enters a predetermined area corresponding to said first specific region; and permit to start said automatic path parking control, when said passenger agrees to use said automatic path parking control.
4. The parking system according to claim 1, wherein, said second vehicle is configured to: notify said passenger of said second vehicle that said automatic path parking control will be started, when said second vehicle enters a predetermined area corresponding to said first specific region; andpermit to start said automatic path parking control, unless said passenger prohibits starting said automatic path parking control.
5. The parking system according to any one of claims 1 to 4,wherein, said first vehicle is configured to:obtain parking area specifying information which specifies said parking area; andupload said actual path specifying information to said server while associating said actual path specifying information with said parking area specifying information,said server is configured to store said reference path while associating said reference path with said parking area specified by said parking area specifying information which is associated with said uploaded actual path specifying information,said second vehicle is configured to transmit a download requirement for a reference path to said server together with parking area specifying information which specifies a parking area where said second vehicle is going to be parked, andsaid server is configured to download, to said second vehicle, said reference path specifying information which specifies said reference path stored while being associated with said parking area specified by said parking area specifying information which is transmitted together with said download requirement for said reference path.
6. The parking system according to any one of claims 1 to 4,wherein, said first vehicle is configured to:obtain parking area specifying information which specifies said parking area;when said first vehicle is parked into said one of said parking spaces,obtain parking completed space specifying information which specifies a parking completed space which is said parking space into which said first vehicle is parked and said actual path specifying information;upload, to said server, said actual path specifying information while associating said actual path specifying information with at least said parking completed space specifying information;when said first vehicle is moved from said first specific region to asecond specific region via a going-around route without being parked, obtain actual going-around path specifying information whichspecifies an actual going-around path from said first specific region to said second specific region; andupload said actual going-around path specifying information to said server while associating said actual going-around path specifying information with said parking area specifying information, said server is configured to:store said reference path while associating said reference path with said parking space specified by said parking completed space specifying information which is associated with at least said uploaded actual path specifying information; andstore reference going-around path which is generated based on said actual going-around path specified by said uploaded actual going-around path specifying information while associating said reference going-around path with said parking area specified by said parking area specifying information which is associated with said uploaded actual going-around path specifying information, andsaid second vehicle is configured to:when said second vehicle is located in said first specific region of a predetermined parking area, download, from said server, reference going-around path specifying information which specifies said reference going-around path stored in said server while being associated with said predetermined parking area;start automatic traveling by an automatic path parking control that uses said reference going-around path specified by said downloaded reference going-around path specifying information as a target path;search for a vacant parking space among a plurality of said parking spaces in said predetermined parking area while traveling by said automatic path parking control that uses said reference going-around path as said target path;when said vacant parking space is detected, download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as said detected vacant parking space; andtravel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference pathspecifying information as said target path.
7. The parking system according to any one of claims 1 to 4,wherein,said first vehicle is configured to:obtain parking area specifying information which specifies said parking area;when said first vehicle is parked into said one of said parking spaces,obtain parking completed space specifying information which specifies said one of said parking spaces into which said first vehicle is parked and said actual path specifying information;upload, to said server, said actual path specifying information while associating said actual path specifying information with said parking completed space specifying information;when said first vehicle is moved from said first specific region to a third specific region via a passage of said parking area without being parked,obtain an actual passage travel path specifying information which specifies an actual passage travel path from said first specific region to said third specific region; andupload, to said server, said actual passage travel path specifying information while associating said actual passage travel path specifying information with said parking area specifying information;said server is configured to:store said reference path while associating said reference path with said parking space specified by said parking completed space specifying information which is associated with at least said uploaded actual path specifying information; andstore reference passage travel path which is generated based on said actual passage travel path specified by said uploaded actual passage travel path specifying information while associating said reference passage travel path with said parking area specified by said parking area specifying information which is associated with said uploaded actual passage travel path specifying information, said second vehicle is configured to:when said second vehicle is located in said first specific region of a predetermined parking area, download, from said server, reference passage travel path specifying information which specifies saidreference passage travel path stored in said server while being associated with said predetermined parking area;start automatic traveling by an automatic path parking control that uses said reference passage travel path specified by said downloaded reference passage travel path specifying information as a target path;search for a vacant parking space among a plurality of said parking spaces in said predetermined parking area while traveling by said automatic path parking control that uses said reference passage travel path as said target path;when said vacant parking space is detected, download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as said detected vacant parking space; andtravel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference path specifying information as said target path.
8. The parking system according to any one of claims 1 to 4,wherein, said first vehicle is configured to:obtain parking completed space specifying information which specifies one of a plurality of said parking spaces into which said first vehicle is parked; andupload, to said server, said actual path specifying information while associating said actual path specifying information with said parking completed space specifying information;said server is configured to:store said reference path while associating said reference path with said parking space specified by said parking completed space specifying information which is associated with said uploaded actual path specifying information, and said second vehicle is configured to:when said second vehicle is located in said first specific region of a predetermined parking area, download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as a tentative parking space which is a predetermined one of a plurality of said parking spaces;start automatic traveling by an automatic path parking control that uses a tentative reference path which is said reference path specified by said downloaded reference path specifying information as a target path;search for a vacant parking space among a plurality of said parking spaces in said predetermined parking area while traveling by said automatic path parking control that uses said tentative reference path as said target path;when said vacant parking space is detected, download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as said detected vacant parking space; andtravel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference path specifying information as said target path.
9. The parking system according to any one of claims 1 to 4,wherein, said first vehicle is configured to:obtain parking completed space specifying information which specifies one of a plurality of said parking spaces into which said first vehicle is parked; andupload, to said server, said actual path specifying information while associating said actual path specifying information with said parking completed space specifying information;said server is configured to:store said reference path while associating said reference path with said parking space specified by said parking completed space specifying information which is associated with said uploaded actual path specifying information, and said second vehicle is configured to:when said second vehicle is located in said first specific region of a predetermined parking area, obtain, from a parking area management device which corresponds to said predetermined parking area, vacant parking space specifying information which specifies a vacant parking space among a plurality of said parking spaces;download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as saidvacant parking space specified by said vacant parking space specifying information; and travel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference path specifying information as said target path.
10. The parking system according to any one of claims 1 to 4, wherein, said first vehicle is configured to generate said actual path specifying information using feature point information extracted from a vehicle surrounding image that is obtained from cameras mounted on said first vehicle; and said second vehicle is configured to automatically travel by said automatic path parking control based on said feature point information extracted from said vehicle surrounding image that is obtained from cameras mounted on said second vehicle and said reference path specifying information which is downloaded from said server.
11. The parking system according to claim 10, wherein, said first specific region is a predetermined surrounding region around a point at which a three-dimensional structure indicating an entrance point of said parking area is provided; said first vehicle is configured to: recognize said three-dimensional structure based on said vehicle surrounding image; and generate said actual path specifying information while associating said actual path specifying information with a position of said recognized three-dimensional structure; and said server is configured to generate said reference path while associating said reference path with said position of said recognized three-dimensional structure.
12. A vehicle, capable of communicating with a server, configured to, when said vehicle is moved from a first specific region to one of a plurality of parking spaces in a parking area to park said vehicle into said one of said parking spaces, upload, to said server, actual path specifying information which specifies an actual path from said first specific region to said one of said parking spaces into which said vehicle is parked.
13. The vehicle according to claim 12, wherein,said vehicle is configured to:obtain parking area specifying information which specifies said parking area; andupload said actual path specifying information to said server while associating said actual path specifying information with said parking area specifying information,
14. The vehicle according to claim 12, wherein,said vehicle is configured to:obtain parking completed space specifying information which specifies a parking completed space which is said one of said parking space into which said first vehicle is parked; andupload, to said server, said actual path specifying information while associating said actual path specifying information with said parking completed space specifying information.
15. The vehicle according to claim 14, wherein,said vehicle is configured to:obtain actual going-around path specifying information which specifies an actual going-around path of when said first vehicle is moved from said first specific region to a second specific region via a going-around route of said parking area without being parked; andupload said actual going-around path specifying information to said server while associating said actual going-around path specifying information with parking area specifying information which specifies said parking area.
16. The vehicle according to claim 14, wherein,said vehicle is configured to:obtain actual passage travel path specifying information which specifies an actual passage travel path of when said first vehicle is moved from said first specific region to a third specific region via a passage in said parking area; andupload said actual passage travel path specifying information to said server while associating said actual passage travel path specifying information with parking area specifying information which specifies said parking area.
17. The vehicle according to claim 12, wherein,said vehicle is configured to generate said actual path specifying information using feature point information extracted from a vehicle surrounding image that is obtained from cameras mounted on said vehicle.
18. The vehicle according to claim 12, wherein, said vehicle is configured to: recognize a three-dimensional structure indicating an entrance point of said parking area, based on said vehicle surrounding image; and generate said actual path specifying information while associating said actual path specifying information with a position of said recognized three-dimensional structure.
19. A server, capable of communicating with a first vehicle and a second vehicle, configured to: receive, from said first vehicle, said actual path specifying information which specifies an actual path of when said first vehicle is moved from a first specific region to one of a plurality of parking spaces in a parking area to one of said parking spaces to park said first vehicle into said one of said parking spaces; and transmit, to said second vehicle, reference path specifying information which specifies a reference path that is generated based on said received actual path specifying information.
20. The server according to claim 19, wherein, said server is configured to generate said reference path by performing a predetermined path optimization process on said actual path specified by said received actual path specifying information.
21. The server according to claim 19, wherein, said server is configured to: receive parking area specifying information which specifies said parking area of when said first vehicle obtains said actual path specifying information, as information which is associated with said actual path specifying information; and store said reference path while associating said reference path with said parking area specified by said received parking area specifying information which is associated with said actual path specifying information.
22. The server according to claim 19, wherein, said server is configured to: receive parking area specifying information which specifies said parking area where said first vehicle is traveled when said first vehicle obtains said actual path specifying information, as information which is associated with said actual path specifying information; and store said reference path while associating said reference path withsaid parking area specified by said received parking area specifying information which is associated with said actual path specifying information.
23. The server according to claim 19, wherein, said server is configured to: receive parking completed space specifying information which specifies one of a plurality of said parking spaces into which said first vehicle is parked, as information which is associated with said actual path specifying information; and store said reference path while associating said reference path with said parking space specified by said received parking completed space specifying information which is associated with said actual path specifying information.
24. A vehicle, capable of communicating with a server, wherein, said vehicle is configured to: download, from said server, reference path specifying information which specifies reference path for moving said vehicle from a first specific region to one of a plurality of parking spaces in a parking area to park said vehicle into said one of a plurality of said parking spaces; and automatically travel by an automatic path parking control that uses, as a target path, said reference path specified by said reference path specifying information which is downloaded from said server.
25. The vehicle according to claim 24, wherein, said vehicle is configured to: propose to use said automatic path parking control to a passenger of said vehicle, when the vehicle enters a predetermined area corresponding to said first specific region; and permit to start said automatic path parking control, when said passenger agrees to use said automatic path parking control.
26. The vehicle according to claim 24, wherein, said vehicle is configured to: notify said passenger of said vehicle that said automatic path parking control will be started, when said vehicle enters a predetermined area corresponding to said first specific region; and permit to start said automatic path parking control, unless said passenger prohibits starting said automatic path parking control.
27. The vehicle according to claim 24, wherein,said vehicle is configured to transmit, to said server, a download requirement for a reference path together with parking area specifying information which specifies a parking area where said vehicle is going to be parked.
28.
29. The vehicle according to claim 24, wherein,said vehicle is configured to:when said vehicle is located in said first specific region of a predetermined parking area, download, from said server, reference going-around path specifying information which specifies said reference going-around path which specifies reference going-around path which is a path for moving said vehicle from said first specific region of said predetermined parking area to a second specific region via a going-around route of said predetermined area without being parked and is stored in said server while being associated with said predetermined parking area;start automatic traveling by an automatic path parking control that uses said reference going-around path specified by said downloaded reference going-around path specifying information as a target path;search for a vacant parking space among a plurality of said parking spaces in said predetermined parking area while traveling by said automatic path parking control that uses said reference going-around path as said target path;when said vacant parking space is detected, download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as said detected vacant parking space; andtravel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference path specifying information as said target path.The vehicle according to claim 24, wherein,said vehicle is configured to:when said vehicle is located in said first specific region of a predetermined parking area, download, from said server, reference passage travel path specifying information which specifies said reference passage travel path for moving said vehicle from said first specific region to a third region via a passage in said parking area;start automatic traveling by an automatic path parking control thatuses said reference passage travel path specified by said downloaded reference passage travel path specifying information as a target path; search for a vacant parking space among a plurality of said parking spaces in said predetermined parking area while traveling by said automatic path parking control that uses said reference passage travel path as said target path; when said vacant parking space is detected, download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as said detected vacant parking space; and travel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference path specifying information as said target path.
30. The vehicle according to claim 24, wherein, said vehicle is configured to: when said vehicle is located in said first specific region of a predetermined parking area, obtain, from a parking area management device which corresponds to said predetermined parking area, vacant parking space specifying information which specifies a vacant parking space among a plurality of said parking spaces; download, from said server, said reference path specifying information which specifies said reference path stored in said server while being associated with a parking space which is the same as said vacant parking space specified by said vacant parking space specifying information; and travel automatically by said automatic path parking control that uses said reference path specified by said downloaded reference path specifying information as said target path.
31. The vehicle according to any one of claims 24 to 30, wherein, said vehicle is configured to automatically travel by said automatic path parking control based on feature point information extracted from an vehicle surrounding image that is obtained from cameras mounted on said vehicle and said reference path specifying information which is downloaded from said server.
32. A parking method comprising: a step of uploading, to a server, actual path specifying information which specifies an actual path of when a first vehicle is moved from afirst specific region to one of a plurality of parking spaces in a parking area to be parked into said one of parking spaces;a step of storing, into said server, a reference path which is generated based on said uploaded actual path specifying information;a step of downloading, to a second vehicle, reference path specifying information which specifies said reference path; anda step of automatically traveling said second vehicle by an automatic path parking control that uses, as a target path for said second vehicle, said reference path specified by said reference path specifying information which said second vehicle downloads from said server