1. Field of the Invention
The present invention relates to a method and system for recognizing objects from a vehicle and more particularly to a method and system for detecting gaps between objects.
2. Description of the Related Art
When driving in an automobile, a driver is scanning the road constantly for gaps between objects in order to determine where the driver can move his automobile. For example, the driver may wish to park the automobile in an empty parking space or safely change lanes between multiple automobiles. However, when determining where gaps exist between objects, the driver is limited by ocular capabilities. Even if the driver has 20/20 vision, he can only see with a limited angle and for a limited distance. Furthermore, the driver cannot peer through objects. Thus, the driver must drive closer to the parking space to determine if the parking space exists or not. However, in driving closer to the parking space, the driver may pass up other parking spaces. If the parking space that the driver thought was empty is actually filled, the driver must now turn around and attempt to remember which parking spaces are empty. This can be frustrating for the driver and be time and fuel consuming.
The problem is also compounded by the presence of different types of parking spaces such as perpendicular parking spaces and parallel parking spaces, each of which have different visual characteristics which are not easily discernable by the human eye.
Thus, there is a need for a better method and system to determine gaps between objects for assisting drivers of vehicles.
The present invention is directed to a method and system to determine gaps between objects. A sensor acquires a set of scanning data. A noise filter unit filters the set of scanning data and a data derivative unit generates a set of derivative data from the set of scanning data. A data analysis unit determines locations of gaps by selectively analyzing the set of derivative data which exceed a first predetermined distance and/or a second predetermined distance.
The first predetermined distance can be selected to correspond to a width of an automobile and/or a parking width of the automobile. The second predetermined distance can be selected to correspond to a length of the automobile and/or a parking length of the automobile. By selectively analyzing the set of derivative data, the present invention increases a processing efficiency of data and also allows the determination of characteristics of the gap such as whether the gap is a perpendicular parking space or a parallel parking space.
The gap definition unit determines the substantial locations, shapes, and sizes of the gaps based on the previously defined location from the data analysis unit. A report generation unit generates a report including the set of gaps defined by the gap definition unit. The report is displayed on a display in a color coded format easily visible and discernable to a driver of the automobile. This allows the driver to easily determine the characteristics of the gaps.
In one embodiment, the present invention is a method for detecting gaps between objects including acquiring a set of scanning data, each of the scanning data indicating, for a sequential location, a distance of a nearest object from a predetermined location, filtering the set of scanning data to remove noise, determining a set of derivative data from the set of scanning data, analyzing the set of derivative data greater than a first predetermined distance, defining a first set of gaps between objects based on the set of derivative data greater than the first predetermined distance, and generating a report including the first set of gaps between objects.
In another embodiment, the present invention is a method for detecting gaps between objects including acquiring a set of scanning data, each of the scanning data indicating, for an angular location, a distance of a nearest object from a predetermined location, filtering the set of scanning data to remove noise, determining a set of derivative data from the set of scanning data, analyzing the set of derivative data greater than a first predetermined distance, analyzing the set of derivative data greater than a second predetermined distance, the second predetermined distance being greater than the first predetermined distance.
The present invention also includes defining a first set of gaps between objects based on the set of derivative data greater than the first predetermined distance, defining a second set of gaps between objects based on the set of derivative data greater than the second predetermined distance, and generating a report including the first set of gaps between objects and the second set of gaps between objects.
In yet another embodiment, the present invention is a system in an automobile for detecting gaps between objects including a sensor acquiring a set of scanning data, each of the scanning data indicating, for a sequential location, a distance of a nearest object from a predetermined location, a noise filter unit communicatively coupled to the sensor filtering the set of scanning data to remove noise, a data derivative unit communicatively coupled to the noise filter extracting a set of derivative data from the set of scanning data, and a data analysis unit communicatively coupled to the data derivative unit analyzing the set of derivative data greater than a first predetermined distance, and analyzing the set of derivative data greater than a second predetermined distance, the second predetermined distance being greater than the first predetermined distance.
The present invention also includes a gap definition unit communicatively coupled to the data analysis unit defining a first set of gaps between objects based on the set of derivative data greater than the first predetermined distance, and defining a second set of gaps between objects based on the set of derivative data greater than the second predetermined distance, and a report generation unit communicatively coupled to the gap generation unit generating a report including the first set of gaps between objects and the second set of gaps between objects.
The features, obstacles, and advantages of the present invention will become more apparent from the detailed description set forth below when taken in conjunction with the drawings, wherein:
Apparatus, systems and methods that implement the embodiments of the various features of the present invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate some embodiments of the present invention and not to limit the scope of the present invention. Throughout the drawings, reference numbers are re-used to indicate correspondence between referenced elements.
In one embodiment, the present invention is a gap detection system 100 for detecting gaps between objects as seen in
As seen in
In
Referring back to
The sensor 104 acquires a set of scanning data. Each of the scanning data indicating, for a sequential location 204, a distance of a nearest object 206 from a predetermined location. The predetermined location can be, for example, an edge of the automobile 200, a location of the sensor 104, or any other component in the automobile 200. The edge of the automobile 200 can be the edge of the automobile 200 closest to the nearest object 206 or another edge of the automobile 200. The sensor 104 can be, for example, an infrared sensor, a radar detector, an image sensor, a laser sensor, an electromagnetic sensor, a thermal sensor, or any other type of device capable of determining distances of an object from a predetermined location. The sensor 104 can also include any number of sensors.
The noise filter unit 106 is communicatively coupled to the sensor 104 and filters the set of scanning data to remove noise. The noise filter unit 106 can apply a time domain frequency filter and/or a spatial domain frequency filter to the set of scanning data.
The data derivative unit 108 is communicatively coupled to the noise filter unit 106 and generate or determining a set of derivative data from the set of scanning data as shown in
The data analysis unit 110 is communicatively coupled to the data derivative unit 108 and analyzes the set of scanning data shown in
In one embodiment, the first predetermined distance is at least a width of the automobile 200 or substantially a width of the automobile 200 as seen by width 808 in a parking space 802 in
In another embodiment, the first predetermined distance is at least a parking width of the automobile 200 as seen by width 804 in the parking space 802 in
The parking width of the automobile 200 and/or the parking length of the automobile 200 can be determined, for example, by an amount of space necessary to completely or partially open one or more doors in the automobile 200, an amount of space necessary for one or more occupants inside the automobile 200 to enter and/or exit the automobile 200, the width of the automobile 200, the length of the automobile 200, the location of objects in an area surrounding the automobile 200, the location of the nearest objects in an area surrounding the automobile 200, or any other factors which would impact an ability of the automobile 200 to park in a gap.
The data analysis unit 110 analyzes the set of derivative data greater than the first predetermined distance when the data analysis unit 110 is searching for perpendicular parking spaces such as perpendicular parking spaces 208 and 210. Perpendicular parking spaces are parking spaces where a line parallel to a lengthwise direction of the parking space is substantially perpendicular to a line parallel to a lengthwise direction of the automobile 200 as shown in
When the data analysis unit 110 is searching for a perpendicular parking space, the data analysis unit 110 analyzes a graph of a set of derivative data corresponding to
In
In one embodiment, the data analysis unit 110 can analyze the graph in
The data analysis unit 110 can also search for parallel parking spaces such as a parallel parking space 414 and/or use multiple sets of scanning data to determine a location of parallel parking spaces as shown in
In
Analyzing the data 512, 514, 612, and 614, the data analysis unit 110 can determine, for example, that the data 514 and 614 correspond to the parallel parking space 414 while the data 512 and 612 correspond to the wall 212. The data analysis unit 110 can, for example, apply algorithms, request and/or receive more data, apply filters, use image data, use video data, use other data from other sets of derivative data, use electromagnetic waves, and/or any other type of analysis which will aid in accurately determining whether the data 512, 514, 612, and/or 614 correspond to a parking space or not. For example, the data analysis unit 110 can compare the set of derivative data in
In one embodiment, the data analysis unit 110 can also determine, in addition to the location of perpendicular parking spaces or parallel parking spaces, the location of an open gate or entrance in a structure surrounded by walls or objects. In such a scenario the data analysis unit 110 can use a third predetermined distance as a threshold to determine which data to analyze further as possible locations for the open gate. The third predetermined distance can be the first predetermined threshold, the second predetermined threshold, or any other type of distance which would provide an indication that an open gate is present at a particular location.
In another embodiment, instead of an open gate, the data analysis unit 110 can also determine the sequential location of a closed gate or entrance which has a sufficient amount of openings within the closed gate to distinguish the closed gate from the surrounding walls. In yet another embodiment the data analysis unit 110 can also analyze data which do not exceed the first predetermined distance and/or the second predetermined distance, but which are within a tolerance level. The tolerance level can be determined based on an accuracy of the sensor, an amount of data collected, and/or any other factors which may reduce an incidence of false negatives.
The gap definition unit 112 is communicatively coupled to the data analysis unit 110 and defines a set of gaps based on the analysis of the set of derivative data greater than the first predetermined distance and/or the second predetermined distance. Once the sequential location of the gaps are determined by the data analysis unit 110, the gap definition unit 112 can more fully define the contour of the gaps and determine, for example, the substantial shape and dimensions of the gaps. The gap definition unit 112 can also determine all of the sequential locations which the gaps cover.
The report generation unit 114 is communicatively coupled to the gap definition unit 112 and generates a report including the defined set of gaps between objects. The report can be displayed, for example, on the display 116. The report, for example, can be a graphical representation of substantial locations, shapes, and dimensions of the gaps relative to the automobile 200.
The report can also be color coded. For example, an object can have a first color, while gaps can have a second color. The first color and the second color can be chosen such that there is sufficient contrast between the first color and the second color to allow easy identification of the gaps and the objects. In addition, perpendicular and parallel parking spaces could also be differentiated by different colors. Likewise, gate openings can also be differentiated by a different color. Furthermore, all or a portion of the color of each of the gaps and/or the objects can be altered in response to the distance from the automobile 200.
Thus, the gap detection system 100 allows an easy detecting of gaps between objects. The gap detection system 100 allows the driver to determine the location of gaps in a more precise manner than relying solely on the ocular capabilities of the driver. This can reduce fuel consumption by allowing the driver to know where gaps such as parking spaces are located and prevent him from inadvertently driving the automobile past a desirable parking space or driving to a perceived parking space which is not actually a parking space. In addition, the gap detection system 100 allows the driver to differentiate between perpendicular parking spaces and parallel parking spaces. This enables the driver to selectively determine which parking space he wants to use for the automobile 200 where one type of parking space may be more desirable than the other type depending on the driver preferences. The gap detection system 100 also allows the driver to easily find other gaps, such as an entrance to a building surrounded, for example, by a wall.
In Step S708, the set of derivative data greater than the first predetermined distance is analyzed. For example, the data analysis unit 110 can analyze the set of derivative data greater than the first predetermined distance to determine a location of gaps such as perpendicular parking spaces as shown in
In Step S710, the set of derivative data greater than the second predetermined distance is analyzed. For example, the data analysis unit 110 can analyze the set of derivative data greater than the second predetermined distance to determine a location of gaps such as parallel parking spaces as shown in
In Step S712, a first set of gaps are defined based on the derivative data greater than the first predetermined distance. For example, the gap definition unit 112 can define the first set of gaps based on the derivative data greater than the first predetermined distance.
In Step S714, a second set of gaps are defined based on the derivative data greater than the second predetermined distance. For example, the gap definition unit 112 can define the second set of gaps based on the derivative data greater than the second predetermined distance.
In Step S716, a report is generated including the first set of gaps and/or the second set of gaps. For example, the report generation unit 114 generates a report including the first set of set of gaps and/or the second set of gaps. In Step S718, the report is displayed. For example, the display 116 displays the report. The display 116 can display the report, for example, such that it is visible to the driver. The process can then repeat by proceeding to step S702 until a natural breaking point and/or an entity such as a person or a machine terminates the process.
The various illustrative logical blocks, units, modules, and circuits described in connection with the examples disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The steps of a method or algorithm described in connection with the examples disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. Furthermore the method and/or algorithm need not be performed in the exact order described, but instead may be varied. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an Application Specific Integrated Circuit (ASIC). The ASIC may reside in a wireless modem. In the alternative, the processor and the storage medium may reside as discrete components in the wireless modem.
The previous description of the disclosed examples is provided to enable any person of ordinary skill in the art to make or use the disclosed methods and apparatus. Various modifications to these examples will be readily apparent to those skilled in the art, and the principles defined herein may be applied to other examples without departing from the spirit or scope of the disclosed method and apparatus. The described embodiments are to be considered in all respects only as illustrative and not restrictive and the scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Number | Name | Date | Kind |
---|---|---|---|
3519805 | Thorne-Booth | Jul 1970 | A |
3783974 | Gilbert et al. | Jan 1974 | A |
3828236 | Close | Aug 1974 | A |
3848671 | Kern | Nov 1974 | A |
3918552 | Kameyama et al. | Nov 1975 | A |
4075500 | Oman et al. | Feb 1978 | A |
4380049 | Makinen | Apr 1983 | A |
4760529 | Takata et al. | Jul 1988 | A |
4926630 | Shekleton | May 1990 | A |
5046919 | Wulf | Sep 1991 | A |
5186270 | West | Feb 1993 | A |
5421432 | Strambi et al. | Jun 1995 | A |
5434927 | Brady et al. | Jul 1995 | A |
5474370 | Ravndal | Dec 1995 | A |
5604821 | Ranganathan et al. | Feb 1997 | A |
5739657 | Takayama et al. | Apr 1998 | A |
5774591 | Black et al. | Jun 1998 | A |
6246787 | Hennessey et al. | Jun 2001 | B1 |
6556775 | Shimada | Apr 2003 | B1 |
6647324 | Creutzburg et al. | Nov 2003 | B2 |
6690815 | Mihara et al. | Feb 2004 | B2 |
6731777 | Nishigaki et al. | May 2004 | B1 |
6804396 | Higaki et al. | Oct 2004 | B2 |
6853738 | Nishigaki et al. | Feb 2005 | B1 |
6907335 | Oswald et al. | Jun 2005 | B2 |
6963656 | Persaud et al. | Nov 2005 | B1 |
6985623 | Prakash et al. | Jan 2006 | B2 |
7000200 | Martins | Feb 2006 | B1 |
7018166 | Gaskell | Mar 2006 | B2 |
7056185 | Anagnostou | Jun 2006 | B1 |
7085693 | Zimmerman | Aug 2006 | B2 |
7106887 | Kinjo | Sep 2006 | B2 |
7142600 | Schonfeld et al. | Nov 2006 | B1 |
7218011 | Hiel et al. | May 2007 | B2 |
7230538 | Lai et al. | Jun 2007 | B2 |
7293790 | Byun et al. | Nov 2007 | B2 |
7340077 | Gokturk et al. | Mar 2008 | B2 |
7340100 | Higaki et al. | Mar 2008 | B2 |
7340393 | Mitsuyoshi | Mar 2008 | B2 |
7354245 | Baba | Apr 2008 | B2 |
7359563 | Dua et al. | Apr 2008 | B1 |
7370466 | Cai | May 2008 | B2 |
7383238 | Iverson | Jun 2008 | B1 |
7391339 | Howard et al. | Jun 2008 | B2 |
7403640 | Zhang et al. | Jul 2008 | B2 |
7440615 | Gong et al. | Oct 2008 | B2 |
7489802 | Smilansky | Feb 2009 | B2 |
7641288 | Baker et al. | Jan 2010 | B1 |
20030075907 | Baumann et al. | Apr 2003 | A1 |
20050002561 | Monachino et al. | Jan 2005 | A1 |
20050063566 | Beek et al. | Mar 2005 | A1 |
20050085984 | Uhler et al. | Apr 2005 | A1 |
20060028556 | Bunn et al. | Feb 2006 | A1 |
20060045354 | Hanna et al. | Mar 2006 | A1 |
20060104488 | Bazakos et al. | May 2006 | A1 |
20070027604 | Cuevas et al. | Feb 2007 | A1 |
20070098222 | Porter et al. | May 2007 | A1 |
20070140595 | Taylor et al. | Jun 2007 | A1 |
20070147678 | Gotting et al. | Jun 2007 | A1 |
20070211947 | Tkacik | Sep 2007 | A1 |
20070297647 | Hung-Chi | Dec 2007 | A1 |
20080002856 | Ma et al. | Jan 2008 | A1 |
20080049150 | Herbin et al. | Feb 2008 | A1 |
20080056548 | Irarrazaval et al. | Mar 2008 | A1 |
20080061559 | Hirshberg | Mar 2008 | A1 |
20080063273 | Shimodaira | Mar 2008 | A1 |
20080069400 | Zhu et al. | Mar 2008 | A1 |
20080095435 | Lipton et al. | Apr 2008 | A1 |
20080144961 | Litzenberger et al. | Jun 2008 | A1 |
20080170748 | Albertson et al. | Jul 2008 | A1 |
20080186386 | Okada et al. | Aug 2008 | A1 |
20080220692 | Torres et al. | Sep 2008 | A1 |
20080253617 | Ernst et al. | Oct 2008 | A1 |
20080260210 | Kobeli et al. | Oct 2008 | A1 |
20080260212 | Moskal et al. | Oct 2008 | A1 |
20080273765 | Tsujimura | Nov 2008 | A1 |
20080292151 | Kurtz et al. | Nov 2008 | A1 |
20090003661 | Ionita et al. | Jan 2009 | A1 |
20090041297 | Zhang et al. | Feb 2009 | A1 |
20090060287 | Hyde et al. | Mar 2009 | A1 |
20090087308 | Presz, Jr. et al. | Apr 2009 | A2 |
20090097964 | Presz, Jr. et al. | Apr 2009 | A1 |
20090146842 | Jung | Jun 2009 | A1 |
20100038960 | Takenaka et al. | Feb 2010 | A1 |
20100096905 | Takenaka et al. | Apr 2010 | A1 |
Number | Date | Country |
---|---|---|
10330922 | Feb 2005 | DE |
1614585 | Jan 2006 | EP |
58086803 | May 1983 | JP |
9058461 | Mar 1997 | JP |
2003259502 | Sep 2003 | JP |
2003338997 | Nov 2003 | JP |
3738266 | Jan 2006 | JP |
2006335277 | Dec 2006 | JP |
2007094990 | Apr 2007 | JP |
2007196867 | Aug 2007 | JP |
2007210576 | Aug 2007 | JP |
2008279848 | Nov 2008 | JP |
WO 86-03132 | Jun 1986 | WO |
WO 2007029454 | Mar 2007 | WO |
WO 2007039927 | Apr 2007 | WO |
WO 2007132323 | Nov 2007 | WO |
Number | Date | Country | |
---|---|---|---|
20110012718 A1 | Jan 2011 | US |