The present invention relates generally to GNSS/INS receivers and more particularly to GNSS/INS receivers for low dynamic vessels.
Oceangoing vessels typically utilize some form of satellite navigation system, such as a GNSS system. The GNSS system may be paired with an inertial navigation system (INS) for improved accuracy. The combined GNSS/INS system provides current location and navigation information that may be utilized by the captain and/or crew of the vessel to navigate safely. The INS system may aid in navigation when the GNSS system loses accuracy. The GNSS system may lose accuracy when, e.g., multipath situations occur. A multipath situation occurs when, e.g., signals transmitted from GNSS satellites are reflected by local terrain and/or buildings, thereby resulting in a plurality of signals being received by the GNSS receiver. Due to the plurality of signals being received, each of which may be phase shifted and/or time delayed, the GNSS receiver may not be able to accurately detect its location.
Low dynamic vessels may provide serious challenges for INS systems. As used herein, a low dynamic vessel generally means a vessel that is moving at a low velocity and/or experiencing small dynamic sensations, such as pitch/roll. In a low dynamic environment, the INS system may not provide accurate navigation information to the combined GNSS/INS system. Thus, if the GNSS system also loses accuracy, such as due to entering a multipath environment, the overall navigation system for the vessel may be severely hindered in its accuracy. This may be problematic when, e.g., a vessel is entering a harbor or other environment where precise navigation is required. During harbor entry, the vessel is typically moving at a low velocity, thereby rendering the INS system less accurate. Concurrently, multipath issues with the harbor may similarly render the GNSS system less accurate. As will be appreciated by those skilled in the art, loss of accurate navigation information during harbor entry may be problematic due to the plurality of navigation obstacles typically found within a harbor environment.
The disadvantages of the prior art are overcome by providing a novel GNSS/inertial navigation system (INS) that is augmented by a vision system to provide accurate navigation and location information for low dynamic vessels. A vision system is utilized in conjunction with the GNSS/INS system to obtain additional location information when the vessel is operated in a low dynamic environment, e.g., when operating at a low velocity. Illustratively, the vision system analyzes an obtained image from an image acquisition device having a fixed field of view to calculate a horizon within the acquired image. From the calculated horizon within the acquired image, the vision system then determines the pitch and/or roll of the vessel. Furthermore, if navigation targets, such as buoys at known locations or geographic features at known locations, are within the fixed field of view, the vision system may track them as they move between consecutively acquired images to determine heading and/or velocity information.
The location from the GNSS system, the INS system and the vision system is input into a Kalman filter that illustratively lowers the weighting of INS information in low dynamic environments and raises the weighting of the vision system information in a low dynamic environment. When operating in a non-low dynamic environment, such as when the vessel is operating at a high velocity in e.g., the open ocean, the weightings are reversed, i.e., a higher weighting for the INS information and lower weighting for the vision system information.
The above and further advantages of the present invention are explained in relation to the following figures in which like reference numerals indicate similar functional or structural components, of which:
The vessel 105 illustratively includes a GNSS/INS navigation system 300, describe further below in reference to
Navigation environment 200 is exemplary shown as a narrow channel such as what may be encountered in a harbor or other restricted navigational area in which accurate navigation information is required. A set of navigation targets 205A, B are shown within the channel. Illustratively, navigation targets 205 may comprise a buoy moored at a known and predefined geographic location. The vision system, by detecting changes in the location of the navigation targets 205 between acquired images taken at different points in time, may calculate the vessel's heading, as described further below in reference to
The low dynamic vessel 105 illustratively utilizes a GNSS/INS system 300 that provides location and navigation information regarding the low dynamic vessel 105 in accordance with an illustrative embodiment of the present invention. In alternative environments, a GNSS-only or INS-only navigation system may be utilized. However, for improved precision and accuracy, a combined GNSS/INS system is typically utilized. As such, the description of GNSS/INS system should be taken as exemplary only. One exemplary GNSS/INS system is described in U.S. Pat. No. 6,721,657, entitled INERTIAL GPS NAVIGATION SYSTEM, by Thomas J. Ford, et al, issued on Apr. 13, 2004, the contents of which are hereby incorporated by reference.
For ease of understanding, the description of the processing operations of the two systems are made without specific reference to the processor 330. The system may instead include dedicated GNSS and INS sub-processors that communicate with one another at appropriate times to exchange information that is required to perform the various GNSS and INS calculation operations discussed below. For example, the INS sub-processor communicates with the GNSS processor when IMU data is provided to the sub-processor, in order to time-tag the data with GNSS time. Further, the GNSS sub-processor communicates with the INS sub-processor to provide GNSS position information at the start of each measurement interval, and so forth.
At start-up, the GNSS system 325 operates in a known manner to acquire the signals from at least a minimum number of GNSS satellites and calculate pseudoranges to the respective satellites and associated Doppler rates. Based on the pseudoranges, the GNSS system determines its position relative to the satellites. The GNSS system may also determine its position relative to a fixed-position base receiver (not shown), either through the use of differential correction measurements generated at the base station or after resolving associated carrier cycle ambiguities.
At the same time, the INS system 320 processes the IMU data, that is, the measurements from the various accelerometers 305 and gyroscopes 310, to determine the initial attitude and velocity of the receiver. The INS system further processes both the IMU data and the GNSS position and associated covariance information to set up various matrices for a Kalman filter 345. At the start of each measurement interval, the INS subsystem updates the Kalman filter and provides updated error states to a mechanization process. The mechanization process uses the updated information and the IMU data to propagate, over the measurement interval, the inertial position, attitude and velocity, with the inertial position and other system element errors being controlled with GNSS positions at the start of the measurement interval.
The IMU 315 plugs into a port (not shown) of the processor 330 and through the port supplies accelerometer and gyroscope measurement data to the processor. The IMU may be selected from a number of models and/or types, each associated with a different scaling factor and nominal accelerometer and gyroscope bias levels. The user may select a particular IMU model for navigation operations based on price and/or on the particular characteristics of the IMU.
At start-up, the INS system must thus determine which IMU is connected to the processor 330, in order to ensure that the IMU measurements are scaled correctly, and also to assign initial uncertainties to the attitude calculations. The INS system tests for a particular IMU by determining the scale factor associated with the accelerator measurements. The process thus compares a ratio of the magnitude of the normal gravity vector and the length of the scaled acceleration vector with stored ratios associated with the various IMU scale factors and selects the appropriate model/type.
A generic Kalman filter 345 processes estimates a series of parameters that describe and predict the behavior of a system. The Kalman filter 345 operates with a set of state variables that describe errors in the system and an associated variance covariance matrix that describes the current knowledge level of the state. The Kalman filter 345 maintains an optimal estimate of the system errors and associated covariance over time and in the presence of external measurements through the use of propagation and updating processes.
To propagate the state and its covariance from some past time to the current time, the Kalman filter propagation uses knowledge of the state dynamic behavior determined from the physics of the system and the stochastic characteristics of the system over time. Kalman filter updates thus uses the linear relationship between the state and observation vectors in conjunction with the covariance matrices related to those vectors to determine corrections to both the state vector and the state covariance matrix.
As noted above, the description contained herein comprises an exemplary embodiment of a GNSS/INS system. It is expressly noted that the principles of the present invention may be utilized with any system capable of providing real time location and navigation information for a heavy equipment vehicle. As such, the description contained herein should be taken as exemplary only.
An image acquisition device, such as camera 110, obtains one or more images of a fixed field of view. Illustratively, the camera 110 obtains a plurality of images of its fixed field of view every second. The images are conveyed to a vision processor 335 that executes software (not shown) for calculating navigation and location information described further below. Illustratively, the vision processor 335 is operatively connected to the clock 340 so that acquired images may be time stamped to a common clock that is also utilized for the GNSS and INS measurements. This enables the vision system 335 to provide location and navigation information at a particular point in time that is synchronized with the GNSS/INS system. In one illustrative embodiment, the clock 340 operates as a master clock to which the GNNS, INS and vision systems are slaves.
In operation, the INS system 320 generates inertial location information, the GNSS system 325 generates GNSS location information and the vision system 335 generates vision system location information. All three sets of location information are fed into the Kalman filter 345. As will be appreciated by those skilled in the art, the Kalman filter 345 weights various inputs to generates a set of output location information. In accordance with an illustrative embodiment of the present invention, the Kalman filter 345 lowers the weighting of the inertial location information when the vessel 105 enters a low dynamic environment. Additionally, when entering a low dynamic environment, the Kalman filter 345 increased the weighting of the vision system location information. That is, as the vessel enters the low dynamic environment, the navigation system illustratively compensates for the potential loss of accuracy in the inertial system by de-weighting the information from the inertial system. Conversely, when a vessel then enters a non-low dynamic environment, the inertial system will improve in accuracy and therefore its weighting is increased while the vision system's weighting is decreased.
The vision processor 335 then analyzes the acquired image 400 and determined horizon line 405 to determine roll information relating to the vessel. As used herein, the roll of a vessel is the amount that the vessel is a rotating along an axis running in the vessel's direction of travel. That is, to an observer on the vessel, the roll of the vessel is how far the vessel is leaning to port or starboard (left or right) around a central axis of the vessel. Illustratively, the vision processor determines the height 410 above the horizon 405. The height 410 above the horizon 405 represents the amount of the fixed field of view of the image acquisition device that is above the horizon line 405. Illustratively, the height is obtained at both the left 410A and right 410B sides of the acquired image 400. Similarly, the vision system 335 identifies an amount of the image 400 below 415 the horizon line 405. This amount below 415 the horizon line 405 is also illustrative calculated for both the left 415A and right 415B sides of the acquired image 400.
By calculating the amount of the image above 410 and below 415 the horizon line 405 on both the left and right sides of the image 400, the vision system 335 may determine the roll of the vessel. The slope of the horizon line represents the current roll of the vessel. For example if the vessel is running perfectly level with no roll, then the amount of the image above the horizon line 405 on both the left 410A and right 410B sides of the image will be equal. However, if the vessel is rolling to the left (or port side) of the vessel, then the amount above the horizon line 405 on the left side 410A will be larger than the amount above the horizon line 405 on the right side 410B. Similarly, if the vessel is rolling to the right (or starboard) side of the vessel, then the amount above the horizon line 405 on the left side 410A will be less than the amount on the right side 410B.
As will be appreciated by those skilled in the art, these calculations may be performed using only the amount above the horizon line 410. However, by also calculating the amount below the horizon line 415, an additional check may be performed. Further, the calculations may be performed using only the amount of the image below the horizon line 415. Additionally, in an alternative embodiment, once the horizon line has been determined, the calculation is performed using the horizon line to determine its slope and therefore the roll of the vessel without requiring a calculation of the amount above 410 or below 415 the horizon line 405. As such, the description of calculating roll information based on the amount above/below the horizon line should be taken as exemplary only.
In accordance with an illustrative embodiment of the present invention, the vision system acquires a plurality of images 400. By calculating changes in the horizon line 405 over time, the vision system may determine the pitch of the vessel. That is, as the image acquisition devices are fixed to the vessel and have a fixed field of view, changes in the horizon line up and down within the acquired image represents an up or down motion of the vessel. Collectively, this pitch information may be obtained by measuring the height below the horizon line 415 between consecutively acquired images. As used herein, the pitch of the vessel represents the rotation of the vessel around an axis perpendicular to its roll access. Typically, the pitch of the vessel determines how far up or down the bow of the vessel is as the vessel rotates around a central axis running from port to starboard. As will be discussed further below, the roll and pitch information may be provided to the Kalaman filter 345 for augmenting navigation and location information in accordance with an illustrative embodiment of the present invention.
In an alternative embodiment of the present invention, the fixed field of view of the image acquisition device may capture certain celestial objects, such as the sun, the moon and/or stars in the night sky. In response to these celestial objects being within the fixed field of view, the vision system may utilize information relating to them to determine certain position information. For example, the height above the horizon of certain celestial objects in combination with the current time may enable to vision system to function similar to a sextant and provide latitude and/or longitude information for the low dynamic vessel. Similarly, by identifying the location of certain stars, location information may be determined. In such embodiments where celestial objects are within the fixed field of view, any computed location information may be fed into the Kalman filter as additional vision system location information to provide additional accuracy when operating in low dynamic environments
The vision system also identifies any features in the acquired image in step 820. Illustratively, these features may comprise geographic features that are at known locations, buoys moored at predefined locations, etc. The acquisition of features from the acquired image are described above in relation to
The present invention has been described in relation to a low dynamic waterborne vessel that utilizes a GNSS/INS system augmented by a vision system to improve accuracy of navigation information. However, it should be noted that alternative embodiments of the present invention may utilize other navigation systems and/or vehicles other than water vessels. As such, the description of a waterborne vessel should be taken as exemplary only. Further, while the present invention is described in relation to a GNSS/INS system, the principles of the present invention may utilize an INS only or GNSS only system. As such, the description of the GNSS/INS system should be taken as exemplary only. It is expressly contemplated that the principles of the present invention may be implemented in hardware, software, including a non-transitory computer readable media, firmware or any combination thereof. As such, the description of actions being performed by a vision processor should be taken as exemplary only.