CONTROL OF HOST DEVICE USING THREE-DIMENSIONAL POSITION AND VELOCITY
20180259637 ยท 2018-09-13
Assignee
Inventors
Cpc classification
G06V20/58
PHYSICS
B60W10/18
PERFORMING OPERATIONS; TRANSPORTING
B60W30/09
PERFORMING OPERATIONS; TRANSPORTING
B60W2554/00
PERFORMING OPERATIONS; TRANSPORTING
B60W2754/10
PERFORMING OPERATIONS; TRANSPORTING
B60W2300/34
PERFORMING OPERATIONS; TRANSPORTING
International classification
G01S13/86
PHYSICS
B60W10/18
PERFORMING OPERATIONS; TRANSPORTING
B60W30/09
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A system and method of controlling operation of a host device in real-time, the host device operatively connected to an optical device and a radar device. The optical device is configured to obtain visual data of at least one object. The object is located at an incline, relative to the host device, the incline being characterized by an elevation angle () and an azimuth angle (). The radar device is configured to obtain radar data, including a radial distance (r) of the object from the host device, the azimuth angle (), and a range rate (dr/dt). The controller is programmed to determine a time-to-contact for the host device and the object based at least partially on a 3-D position and 3-D velocity vector. The operation of the host device is controlled based at least partially on the time-to-contact.
Claims
1. A system of controlling operation of a host device in real-time, the system comprising: an optical device operatively connected to the host device and configured to obtain visual data of at least one object; wherein the at least one object is located at an incline relative to the host device, the incline being characterized by an elevation angle () and an azimuth angle (); a radar device operatively connected to the host device and configured to obtain radar data, including the azimuth angle (), a radial distance (r) of the at least one object from the host device and a change rate of the range (dr/dt); a controller operatively connected to the host device and including a processor and tangible, non-transitory memory on which is recorded instructions, execution of the instructions by the processor causing the controller to: determine a 3-D position matrix (r, , ) and a 3-D rate of change matrix (dr/dt, d/dt, d/dt) based on the visual data and the radar data; and control operation of the host device based at least partially on the 3-D position matrix (r, , ) and the 3-D rate of change matrix (dr/dt, d/dt, d/dt).
2. The system of claim 1, wherein prior to determining the 3-D position matrix (r, , ) and the 3-D rate of change matrix (dr/dt, d/dt, d/dt), the controller is configured to: obtain respective bounding boxes around the at least one object in the visual data; determine an optical flow of the respective bounding boxes, including determining a change rate of the elevation angle (d/dt) and a change rate of the azimuth angle (d/dt); and match the respective bounding boxes with the radar data.
3. The system of claim 2, wherein the controller is configured to: obtain a 3-D position vector (X, Y, Z) and a 3-D velocity vector (v.sub.x, v.sub.y, v.sub.z) from the 3-D position matrix (r, , ) and the 3-D change rate matrix (dr/dt, d/dt, d/dt); and determine a time-to-contact for the host device and the at least one object based at least partially on the 3-D position vector (X, Y, Z) and the 3-D velocity vector (v.sub.x, v.sub.y, v.sub.z).
4. The system of claim 3, wherein the controller is configured to: communicate with a remote module such that the remote module is not physically connected to the controller; transfer a location coordinate of the host device to the remote module; receive a location assessment factor (LAF) from the remote module, based at least partially on the location coordinate; and determine the time-to-contact only if the location assessment factor (LAF) is at or above a threshold value.
5. The system of claim 3, wherein the controlling operation of the host device includes: sending a signal to a user of the host device, if the time-to-contact is less than a first predefined threshold but greater than a second predefined threshold; and wherein the first predefined threshold is greater than the second predefined threshold.
6. The system of claim 5, wherein: the host device includes an automatic braking module configured to decelerate the host device; and controlling operation of the host device includes activating the automatic braking module, if the time-to-contact is less than the second predefined threshold.
7. The system of claim 3, wherein: the controller includes an association module configured to perform the matching of the respective bounding boxes with the radar data.
8. The system of claim 3, wherein: the controller includes a Kalman filter module configured to perform the combining of the visual data and the radar data.
9. The system of claim 3, wherein the time-to-contact (t) is defined as:
t={square root over ((X/v.sub.x).sup.2+(Y/v.sub.y).sup.2+(Z/v.sub.z).sup.2)}
10. The system of claim 3, wherein: the respective bounding boxes include a first bounding box B.sub.1 characterized by an initial position (u,v); the optical flow is characterized by a first displacement change (u) of the respective bounding boxes in row coordinates and a second displacement change (v) of the respective bounding boxes in column coordinates, both over a predefined unit of time (t); and the 3-D position matrix (r, , ) and the 3-D change rate matrix (dr/dt, d/dt, d/dt) include respective components determined as a function of the optical flow, the initial position (u,v), an optical focal length (f) and the predefined unit of time (t) such that:
=inverse tangent(u/f);
=inverse tangent(v/f);
(d/dt)=v/(f*t); and
(d/dt)=u/(f*t).
11. The system of claim 3, wherein respective components of the 3-D position vector (X, Y, Z) and the 3-D velocity vector (v.sub.x, v.sub.y, v.sub.z) are defined as:
X=r sin cos ;
Y=r sin sin ;
Z=r cos ;
v.sub.x=[(dr/dt)sin cos +r(d/dt)cos cos r(d/dt)sin sin ];
v.sub.y=[(dr/dt)sin e sin +r(d/dt)cos sin +r(d/dt)sin cos ]; and
v.sub.z=[(dr/dt)cos r(d/dt)sin ].
12. A method of controlling operation of a host device in real-time, the host device operatively connected to an optical device and a radar device, the method comprising: obtaining visual data of at least one object; wherein the at least one object is located at an incline relative to the host device, the incline being characterized by an elevation angle () and an azimuth angle (); obtaining radar data via the radar device, the radar data including the azimuth angle (), a radial distance (r) of the at least one object from the host device and a change rate of the range (dr/dt); obtaining respective bounding boxes around the at least one object in the sequence of images in the visual data; determining an optical flow of the respective bounding boxes, including determining a change rate of the elevation angle (d/dt) and a change rate of the azimuth angle (d/dt); matching the respective bounding boxes with the radar data; determining a 3-D position matrix (r, , ) and a 3-D rate of change matrix (dr/dt, d/dt, d/dt) based on a combination of the visual data and the radar data; obtaining a 3-D position vector (X, Y, Z) and a 3-D velocity vector (v.sub.x, v.sub.y, v.sub.z) from the 3-D position matrix (r, , ) and the 3-D change rate matrix (dr/dt, d/dt, d/dt); determining a time-to-contact for the host device and the at least one object based at least partially on the 3-D position vector (X, Y, Z) and the 3-D velocity vector (v.sub.x, v.sub.y, v.sub.z); and controlling operation of the host device based at least partially on the time-to-contact.
13. The method of claim 12, wherein the controlling operation of the host device includes: sending a signal to a user of the host device, if the time-to-contact is less than a first predefined threshold but greater than a second predefined threshold.
14. The method of claim 13, wherein the host device includes an automatic braking module configured to decelerate the host device and controlling operation of the host device includes: activating the automatic braking module, if the time-to-contact is less than the second predefined threshold.
15. The method of claim 12, wherein the time-to-contact (t) is defined as:
t={square root over ((X/v.sub.x).sup.2+(Y/v.sub.y).sup.2+(Z/v.sub.z).sup.2)}
16. A system of controlling operation of a host device in real-time, the system comprising: an optical device operatively connected to the host device and configured to obtain visual data of at least one object; wherein the at least one object is located at an incline relative to the host device, the incline being characterized by an elevation angle () and an azimuth angle (); a radar device operatively connected to the host device and configured to obtain radar data, including the azimuth angle (), a radial distance (r) of the at least one object from the host device and a change rate of the range (dr/dt); a controller operatively connected to the host device and including a processor and tangible, non-transitory memory on which is recorded instructions, execution of the instructions by the processor causing the controller to: obtain respective bounding boxes around the at least one object in the visual data; determine an optical flow of the respective bounding boxes, including determining a change rate of the elevation angle (d/dt) and a change rate of the azimuth angle (d/dt); match the respective bounding boxes with the radar data; determine a 3-D position matrix (r, , ) and a 3-D rate of change matrix (dr/dt, d/dt, d/dt) by combining the visual data and the radar data; and determine a time-to-contact for the host device and the at least one object based at least partially on the 3-D position vector (X, Y, Z) and the 3-D velocity vector (v.sub.x, v.sub.y, v.sub.z); and control operation of the host device based at least partially on the time-to-contact.
17. The system of claim 16, wherein the controller is configured to: communicate with a remote module such that the remote module is not physically connected to the controller; transfer a location coordinate of the host device to the remote module; receive a location assessment factor (LAF) from the remote module, based at least partially on the location coordinate; and determine the time-to-contact only if the location assessment factor (LAF) is at or above a threshold value.
18. The system of claim 17, wherein the host device includes an automatic braking module configured to decelerate the host device, and the controlling of the operation of the host device includes: sending a signal to a user of the host device, if the time-to-contact is less than a first predefined threshold but greater than a second predefined threshold; and activating the automatic braking module, if the time-to-contact is less than the second predefined threshold.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0011]
[0012]
[0013]
DETAILED DESCRIPTION
[0014] Referring to the drawings, wherein like reference numbers refer to like components,
[0015] Referring to
[0016] Referring to
[0017] Referring to
[0018] Referring to
[0019] Referring now to
[0020] In block 102A of
[0021] In block 102B of
[0022] In block 104, the controller C is programmed to obtain respective bounding boxes around the object 20 in each of the images in the visual data. Referring to
[0023] In block 104 of
[0024] Block 104 includes determining the change rate of the elevation angle (d/dt) and the change rate of the azimuth angle (d/dt). The elevation angle (), azimuth angle (), the change rate of the elevation angle (d/dt) and the change rate of the azimuth angle (d/dt) may be determined as a function of the optical flow, the initial position (u,v), an optical focal length (f) .e., the projection of the radial distance (r) on the X-Y plane in the first coordinate system 24 and the predefined unit of time (t) such that:
(d/dt)=u/(f*t);
(d/dt)=v/(f*t);
=inverse tangent(u/f); and
=inverse tangent(v/f).
[0025] In block 106 of
[0026] In block 108 of
[0027] In block 110 of
x=r sin cos ;y=r sin sin ;z=r cos ;
v.sub.x=[(dr/dt)sin cos +r(d/dt)cos cos r(d/dt)sin sin ];
v.sub.y=[(dr/dt)sin sin +r(d/dt)cos sin +r(d/dt)sin cos ];
v.sub.z=[(dr/dt)cos r(d/dt)sin ].
[0028] From block 110, the method 100 may proceed to block 111 (or block 114 directly, as shown by line 112). In block 111, the controller C is programmed to transmit a location coordinate (i.e., geophysical coordinates) of the host device 12 to the remote module 30 (see
[0029] From block 111, the method 100 proceeds to block 113, where the controller C is programmed to determine if the location assessment factor (LAF) is at or above a threshold value (e.g. 0.5). In one embodiment, the controller C is programmed to proceed to block 114 and determine the time-to-contact as long as the location assessment factor (LAF) is at or above the threshold value.
[0030] As noted above, the method 100 may proceed to block 114 directly from block 110 or from block 113. In block 114 of
t={square root over ((X/v.sub.x).sup.2+(Y/v.sub.y).sup.2+(Z/v.sub.z).sup.2)}
[0031] In block 116 of
[0032] The controller C (and execution of the method 100) improves the functioning of the host device 12 by precisely obtaining time-to-contact between the host device 12 and the respective ones of the plurality of objects 20 and controlling operation of the host device 12 based at least partially on the time-to-contact. The controller C of
[0033] The controller C includes a computer-readable medium (also referred to as a processor-readable medium), including a non-transitory (e.g., tangible) medium that participates in providing data (e.g., instructions) that may be read by a computer (e.g., by a processor of a computer). Such a medium may take many forms, including, but not limited to, non-volatile media and volatile media. Non-volatile media may include, for example, optical or magnetic disks and other persistent memory. Volatile media may include, for example, dynamic random access memory (DRAM), which may constitute a main memory. Such instructions may be transmitted by one or more transmission media, including coaxial cables, copper wire and fiber optics, including the wires that comprise a system bus coupled to a processor of a computer. Some forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, other magnetic media, a CD-ROM, DVD, other optical media, punch cards, paper tape, other physical media with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, other memory chips or cartridges, or other media from which a computer can read.
[0034] Look-up tables, databases, data repositories or other data stores described herein may include various kinds of mechanisms for storing, accessing, and retrieving various kinds of data, including a hierarchical database, a set of files in a file system, an application database in a proprietary format, a relational database management system (RDBMS), etc. Each such data store may be included within a computing device employing a computer operating system such as one of those mentioned above, and may be accessed via a network in one or more of a variety of manners. A file system may be accessible from a computer operating system, and may include files stored in various formats. An RDBMS may employ the Structured Query Language (SQL) in addition to a language for creating, storing, editing, and executing stored procedures, such as the PL/SQL language mentioned above.
[0035] The detailed description and the drawings or FIGS. are supportive and descriptive of the disclosure, but the scope of the disclosure is defined solely by the claims. While some of the best modes and other embodiments for carrying out the claimed disclosure have been described in detail, various alternative designs and embodiments exist for practicing the disclosure defined in the appended claims. Furthermore, the embodiments shown in the drawings or the characteristics of various embodiments mentioned in the present description are not necessarily to be understood as embodiments independent of each other. Rather, it is possible that each of the characteristics described in one of the examples of an embodiment can be combined with one or a plurality of other desired characteristics from other embodiments, resulting in other embodiments not described in words or by reference to the drawings. Accordingly, such other embodiments fall within the framework of the scope of the appended claims.