Method for detecting multiple targets using radar and apparatus for the same
11567184 · 2023-01-31
Assignee
- Electronics And Telecommunications Research Institute (Daejeon, KR)
- Pukyong National University Industry-University Cooperation Foundation (Busan, KR)
Inventors
- Sung Hyun Hwang (Daejeon, KR)
- Woo Jin Byun (Daejeon, KR)
- Sung Jin Yoo (Daejeon, KR)
- Jae Hyun Park (Busan, KR)
Cpc classification
G01S13/878
PHYSICS
International classification
G01S13/58
PHYSICS
Abstract
An operation method performed by an apparatus for detecting multiple targets may comprise transmitting first signals using M.sub.t transmit antennas included in the apparatus; receiving the first signals reflected by the multiple targets through M.sub.r receive antennas included in the apparatus; generating a first function for estimating a velocity and an azimuth of each of the multiple targets using the first signals and the reflected first signals; estimating a velocity and an azimuth that maximize a result of the first function as a velocity and an azimuth of a first target closest to the apparatus among the multiple targets; generating a second function by cancelling interference caused by the first target from the first function; and estimating a velocity and an azimuth that maximize a result of the second function as a velocity and an azimuth of a second target among the multiple targets.
Claims
1. An operation method performed by an apparatus for detecting multiple targets, the operation method comprising: transmitting first signals using M.sub.t transmit antennas included in the apparatus; receiving the first signals reflected by the multiple targets through M.sub.r receive antennas included in the apparatus; generating a first function for estimating a velocity and an azimuth of each of the multiple targets using the first signals and the reflected first signals; estimating a velocity and an azimuth that maximize a result of the first function as a velocity and an azimuth of a first target closest to the apparatus among the multiple targets; generating a first matrix based on the velocity and the azimuth of the first target estimated based on the first function; generating a projected matrix by projecting the first matrix on an orthogonal region; generating a second function for estimating a velocity and an azimuth of a second target among the multiple targets, by performing an eigen-value decomposition on a sample covariance matrix of the projected matrix; and estimating a velocity and an azimuth that maximize a result of the second function as the velocity and the azimuth of the second target, wherein a distance between the apparatus and the second target is greater than or equal to a distance between the apparatus and the first target, and each of M.sub.t and M.sub.r is a natural number greater than or equal to 2.
2. The operation method according to claim 1, wherein the first signals transmitted by the M.sub.t transmit antennas are orthogonal to each other.
3. The operation method according to claim 1, wherein the first function is generated based on a 2-dimensional multiple signal classification (MUSIC) algorithm.
4. The operation method according to claim 1, wherein the first function comprises the first matrix formed by velocities and azimuths of the multiple targets, a Hermitian matrix for the first matrix, a second matrix formed by a noise subspace, and a Hermitian matrix for the second matrix.
5. The operation method according to claim 1, wherein M.sub.t×M.sub.r virtual array elements are implemented by the M.sub.t transmit antennas and the M.sub.r receive antennas, and the first function is generated based on the first signals and the reflected first signals transmitted and received through the M.sub.t×M.sub.r virtual array elements.
6. The operation method according to claim 1, further comprising: generating a second signal comprising a beat frequency indicative of the distance between the apparatus and the first target using the first matrix; and estimating a result of a fast Fourier transform (FFT) on the second signal as the distance between the apparatus and the first target.
7. An apparatus for detecting multiple targets, the apparatus comprising a processor, M.sub.t transmit antennas transmitting first signals according to control of the processor, M.sub.r receive antennas receiving the first signals reflected by the multiple targets according to control of the processor, and a memory storing at least one instruction executable by the processor, wherein the processor is configured to: generate a first function for estimating a velocity and an azimuth of each of the multiple targets using the first signals and the reflected first signals; estimate a velocity and an azimuth that maximize a result of the first function as a velocity and an azimuth of a first target closest to the apparatus among the multiple targets; generating a first matrix based on the velocity and the azimuth of the first target estimated based on the first function; generating a projected matrix by projecting the first matrix on an orthogonal region; generate a second function for estimating a velocity and an azimuth of a second target among the multiple targets, by performing an eigen-value decomposition on a sample covariance matrix of the projected matrix; and estimate a velocity and an azimuth that maximize a result of the second function as the velocity and the azimuth of the second target, wherein a distance between the apparatus and the second target is greater than or equal to a distance between the apparatus and the first target, and each of M.sub.t and M.sub.r is a natural number greater than or equal to 2.
8. The apparatus according to claim 7, wherein the first function comprises the first matrix formed by velocities and azimuths of the multiple targets, a Hermitian matrix for the first matrix, a second matrix formed by a noise subspace, and a Hermitian matrix for the second matrix.
9. The apparatus according to claim 7, wherein M.sub.t×M.sub.r virtual array elements are implemented by the M.sub.t transmit antennas and the M.sub.r receive antennas, and the first function is generated based on the first signals and the reflected first signals transmitted and received through the M.sub.t×M.sub.r virtual array elements.
10. The apparatus according to claim 7, wherein the processor is further configured to: generate a second signal comprising a beat frequency indicative of the distance between the apparatus and the first target using the first matrix; and estimate a result of a fast Fourier transform (FFT) on the second signal as the distance between the apparatus and the first target.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) Embodiments of the present disclosure will become more apparent by describing in detail embodiments of the present disclosure with reference to the accompanying drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7) It should be understood that the above-referenced drawings are not necessarily to scale, presenting a somewhat simplified representation of various preferred features illustrative of the basic principles of the disclosure. The specific design features of the present disclosure, including, for example, specific dimensions, orientations, locations, and shapes, will be determined in part by the particular intended application and use environment.
DETAILED DESCRIPTION OF THE EMBODIMENTS
(8) Embodiments of the present disclosure are disclosed herein. However, specific structural and functional details disclosed herein are merely representative for purposes of describing embodiments of the present disclosure. Thus, embodiments of the present disclosure may be embodied in many alternate forms and should not be construed as limited to embodiments of the present disclosure set forth herein.
(9) Accordingly, while the present disclosure is capable of various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that there is no intent to limit the present disclosure to the particular forms disclosed, but on the contrary, the present disclosure is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the present disclosure. Like numbers refer to like elements throughout the description of the figures.
(10) It will be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of the present disclosure. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
(11) It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element or intervening elements may be present. In contrast, when an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (i.e., “between” versus “directly between,” “adjacent” versus “directly adjacent,” etc.).
(12) The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
(13) Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this present disclosure belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
(14) Hereinafter, embodiments of the present disclosure will be described in greater detail with reference to the accompanying drawings. In order to facilitate general understanding in describing the present disclosure, the same components in the drawings are denoted with the same reference signs, and repeated description thereof will be omitted.
(15)
(16) Referring to
(17) The detection apparatus may transmit signals using the M.sub.t transmit antennas and the signals transmitted from the M.sub.t transmit antennas may be reflected by K targets. K may be a natural number. The M.sub.t transmit antennas may transmit signals having waveforms orthogonal to each other. Signals having mutually orthogonal waveforms may be generated by adjusting frequency offsets of the signals transmitted from the M.sub.t transmit antennas. Alternatively, signals having orthogonality may be generated based on a time division scheme. The reflected signals from the K targets may be obtained at M.sub.r receive antennas. The signals obtained at M.sub.r receive antennas can be separated.
(18) When different frequency offsets are applied to M.sub.t transmit antennas, a signal (e.g., FMCW signal) transmitted from an m.sub.t-th transmit antenna among M.sub.t transmit antennas may be defined as Equation 1 below. That is, the detection apparatus may transmit S.sub.m.sub.
S.sub.m.sub.
(19) S.sub.m.sub.
(20)
(21) γ.sub.k may be determined in consideration of a reflection coefficient of the target, a path loss due to a range, an antenna gain, and the like. τ.sub.m.sub.
(22)
(23) R.sub.km.sub.
(24)
(25) Referring to
(26) In Equation 3, v.sub.k may be the velocity of the target. For example, v.sub.k may be a relative velocity of the target relative to the direction of the radar (e.g., antenna). According to
(27)
in Equation 3, the distance from the antenna to the target may be re-expressed in consideration of the effect of transmitting and receiving signals in the linear array antenna including the virtual array elements. R.sub.k0 may be the distance from the virtual array element (e.g., reference element) included in the linear array antenna to the target.
(28)
may be a relative position of the virtual array element formed by the m.sub.t-th transmit antenna and the m.sub.r-th receive antenna. θ.sub.k may be the azimuth of the target and may be determined based on the virtual array element included in the linear array antenna. When the index of the virtual array element included in the linear array antenna is m, and the interval between the virtual array elements is d,
(29)
in Equation 3 may be defined.
(30) In order to process the signals of the FMCW MIMO radar, the detection apparatus may perform deconvolution and low-pass filtering on the signals transmitted from the transmit antennas and the signals received at the receive antennas to derive the signal x.sub.m.sub.
(31)
(32) x.sub.m.sub.
(33)
(34) When a total of S pulses are used to detect multiple targets, the n-th sampled signal of the s-th pulse belonging to the S pulses may be defined as Equation 6 below.
(35)
(36)
(37)
(38) a(θ.sub.k) may be an array response vector, and
(39)
may be defined. x[n, s] may be represented as a vector form for all pulses as shown in Equation 8 below.
(40)
(41) In Equation 8, b(v.sub.k) may be defined as Equation 9 below.
(42)
(43)
(44) .square-solid. 2D Multiple Signal Classification (MUSIC) Algorithm
(45) The detection apparatus may calculate a sample covariance matrix based on
(46)
(47) E.sub.S may be a matrix generated based on an eigenvector spanning a signal subspace. E.sub.n may be a matrix generated based on an eigenvector spanning a noise subspace. When f(v.sub.k, θ.sub.k)=b(v.sub.k).Math.a(θ.sub.k) is defined, the signal subspace may be orthogonal to the noise subspace. Therefore, Equation 12 below may be defined.
(48)
(49) The detection apparatus may estimate the velocity v and the azimuth θ maximizing J(v,θ) by performing a two-dimensional grid search.
(50) .square-solid. 2D MUSIC Algorithm to which an Orthogonal Projection-Based Interference Cancellation Technique is Applied
(51) In case where J(v,θ) has the maximum value in Equation 12, the detection apparatus may estimate a velocity v and an azimuth θ determined so that J(v,θ) has the maximum value as a velocity v and an azimuth θ of the target. However, due to the noise and the side-lobe of f(v.sub.k, θ.sub.k), attenuation of the signal reflected by the target located relatively far from the detection apparatus may be large. In this case, the magnitude of the signal reflected by the target located relatively far from the detection apparatus may be smaller than the magnitude of the side-lobe for the target located relatively close from the detection apparatus. Therefore, estimating the parameters (e.g., distance, azimuth, velocity) of the target may be difficult.
(52) In order to solve this problem, the detection apparatus may generate a function used to estimate the parameters of the target (e.g., the function defined in Equation 12) based on the original received signal (e.g., the signal defined in Equation 2). The detection apparatus may calculate the maximum value of J(v,θ) defined in Equation 12, estimate the parameters of the target using the maximum value, and cancel the interference in the original received signal by performing orthogonal projection using the estimated parameters. For example, the detection apparatus may generate a first received signal by cancelling the interference caused by the target closest to the detection apparatus from the original received signal.
(53) Thereafter, the detection apparatus may re-calculate the maximum value of J(v,θ) based on the first received signal, estimate the parameters of the target using the maximum value (e.g., the maximum value that is less than the maximum value calculated based on the original received signal), and cancel interference in the first received signal by performing orthogonal projection using the estimated parameters. For example, the detection apparatus may generate a second received signal by cancelling interference caused by the second closest target from the detection apparatus from the first received signal.
(54) That is, when the parameters (e.g., velocity and azimuth) for the target reflecting the signal that generates the largest J(v,θ) are estimated, the detection apparatus may calculate f({circumflex over (v)}.sub.1, {circumflex over (θ)}.sub.1) using the estimated parameters, and calculate a matrix projected on a region orthogonal to f({circumflex over (v)}.sub.1, {circumflex over (θ)}.sub.1). The matrix projected on the region orthogonal to f({circumflex over (v)}.sub.1, {circumflex over (θ)}.sub.1) may be defined as Equation 13 below.
P.sub.1.sup.⊥=I.sub.MN−f({circumflex over (v)}.sub.1,{circumflex over (θ)}.sub.1)*f.sup.H({circumflex over (v)}.sub.1,{circumflex over (θ)}.sub.1)f({circumflex over (v)}.sub.1,{circumflex over (θ)}.sub.1)).sup.−1f.sup.H({circumflex over (v)}.sub.1,{circumflex over (θ)}.sub.1) [Equation 13]
(55) Further, the detection apparatus may calculate Equation 12 by performing eigen-value decomposition based on the sample covariance matrix
(56)
In this case, the detection apparatus may cancel the interference effect due to the parameters of the target reflecting the signal having the greatest strength, and accurately estimate the parameters of the next target with the interference effect cancelled. The detection apparatus may estimate the parameters of the K targets (e.g., the K targets shown in
(57) .square-solid. 2D Root MUSIC Algorithm
(58) Since the computational complexity of the 2D grid search is very large, the detection apparatus may estimate the parameters of the target using a 2D root MUSIC algorithm. The detection apparatus may define 2 vectors defined in Equation 14 below.
(59)
(60) Using 2 vectors defined in Equation 14, the denominator in Equation 12 may be defined as Equation 15 below.
f.sup.H(v,θ)E.sub.nE.sub.n.sup.Hf(v,θ)=0⇔f(z.sub.v.sup.−1,z.sub.θ.sup.−1)Πf(z.sub.v,z.sub.θ)=0 with Π=E.sub.nE.sub.n.sup.H [Equation 15]
(61) f(z.sub.v, z.sub.θ) may be defined as Equation 16 below.
f(z.sub.v,z.sub.θ)b(z.sub.v).Math.a(z.sub.θ)=[a.sup.T(z.sub.θ)z.sub.va.sup.T(z.sub.θ) . . . z.sub.v.sup.S-1a.sup.T(z.sub.θ)].sup.T [Equation 16]
(62) Obtaining the parameters maximizing J(v,θ) in Equation 12 may be equivalent to finding roots of the equation for (z.sub.v, z.sub.θ) in Equation 15. Equation 15 may be transformed into Equation 17 below.
(63)
(64) The detection apparatus may calculate Z.sub.v satisfying Equation 18 below.
(65)
is defined, a velocity-related root among the roots of Equation 18 may be located on a unit circle of size 1. Thus, in order to estimate the velocities of the K targets, the detection apparatus may select K roots (e.g., {circumflex over (Z)}.sub.v.sup.(k),k−1, . . . ,K) closest to the unit circle and estimate the velocities of the K targets based on Equation 19 below.
(66)
(67) The detection apparatus may calculate ({circumflex over (Π)}.sub.k=[Σ.sub.i,j=1.sup.S({circumflex over (Z)}.sub.v.sup.(k)).sup.j-i Π.sub.ij], k=1, . . . , K) based on {circumflex over (Z)}.sub.v.sup.(k), k−1, . . . , K. The detection apparatus may obtain Equation 20 below by inputting ({circumflex over (Π)}.sub.k=[Σ.sub.i,j=1.sup.S({circumflex over (Z)}.sub.v.sup.(k)).sup.j-iΠ.sub.ij]) into Equation 17.
(68)
is defined, an azimuth-related root among the roots of Equation 20 may be located on a unit circle of size 1. Thus, to estimate the azimuths of the K targets, the detection apparatus may select K roots closest to the unit circle from the roots of Equation 20 and estimate the azimuths of K targets based on Equation 21 below.
(69)
(70) .square-solid. 2D Root MUSIC Algorithm Based on Low-Complexity Approximation
(71) Equation 14 is a function for
(72)
and when Z.sub.v=e.sup.jØ is defined, D(Z.sub.v) may be represented as D(Ø). That is, D(Ø) may be a periodic function having a periodicity of 2π. The detection apparatus may express D(Ø) as a Fourier series as shown in Equation 22 below.
(73)
(74) F.sub.n may be defined as Equation 23 below.
(75)
(76) The detection apparatus may derive Equation 24 by approximating the determinant of Equation 18 through the Fourier series.
(77)
(78) A polynomial degree for z in Equation 24 may be (S−1)×M. In this case, the polynomial degree may increase as S or M increases. If the polynomial order for z in Equation 24 is set to satisfy N<(S−1)×M, the detection apparatus may efficiently find the roots of Equation 24 with low polynomial degree. The detection apparatus may estimate the velocities of K targets using the roots of Equation 24 and Equation 19, and may estimate the azimuths of K targets using the roots of Equation 24 and Equations 20 and 21. Since the degree of the equation used for the azimuth estimation is not high, the detection apparatus may accurately estimate the azimuth without approximation. When necessary, the detection apparatus may estimate the azimuth by performing approximation.
(79) .square-solid. 2D Root MUSIC Algorithm Based on Low-Complexity Approximation Considering Weight Values
(80) The detection apparatus may approximate D(e.sup.jØ.sup.
(81)
(82) When D(e.sup.jØ.sup.
(83)
(84) D(e.sup.jØ.sup.
(85)
(86) The parameters of Equation 27 may be defined as Equation 28 below.
u=[G.sub.0,Re(G.sub.1), . . . ,Re(G.sub.M),Im(G.sub.1), . . . , Im(G.sub.M)].sup.T
d=[D(e.sup.jϕ.sup.
B=[1.sub.L,2Re({tilde over (B)}),2 Im({tilde over (B)})],[{tilde over (B)}].sub.l,m=e.sup.jmϕ.sup.
(87) The detection apparatus may calculate the roots of Equation 27 based on Equation 29 below.
u=(B.sup.TWB).sup.−1BWd [Equation 29]
(88) Therefore, the detection apparatus may calculate the roots satisfying Σ.sub.m=−M.sup.M G.sub.me.sup.jmØ.sup.
(89) The detection device may estimate the distance between the detection apparatus (e.g., antenna) and the target using the estimated velocity and azimuth. The detection apparatus may calculate f({circumflex over (v)}.sub.k, {circumflex over (θ)}.sub.k) using the estimated velocity and azimuth. f({circumflex over (v)}.sub.k, {circumflex over (θ)}.sub.k) may be defined as Equation 30 below.
f({circumflex over (v)}.sub.k,{circumflex over (θ)}.sub.k)=b({circumflex over (v)}.sub.k).Math.a({circumflex over (θ)}.sub.k) [Equation 30]
(90) The detection apparatus may calculate y.sub.k defined in Equation 31 by multiplying f.sup.H({circumflex over (v)}.sub.k, {circumflex over (θ)}.sub.k) and
(91)
(92) Since an effect similar to passing the vector f.sup.H({circumflex over (v)}.sub.k, {circumflex over (θ)}.sub.k) formed by the velocity and azimuth of the target through a matched filter occurs, the received vector may be combined so that a signal-to-noise ratio (SNR) toward the target is maximized. Therefore, signals reflected from other targets may be nulled. y.sub.k may be a signal obtained by adding a noise to a signal obtained by sampling a single tone signal generated by a single beat frequency kτ.sub.0k corresponding to a distance between the k-th target and the detection apparatus (e.g., antenna) every T.sub.s. A peak frequency that is a result of a fast Fourier transform (FFT) on y.sub.k may be a beat frequency, and the detection apparatus may estimate the distance between the k-th target and the detection apparatus (e.g., antenna) using Equation 32 below.
(93)
(94) Meanwhile, the performances according to the above-described embodiments may be as follows. The operating frequency f.sub.c, the transmit antennas, and the receive antennas of the detection apparatus may be defined as shown in Table 1 below.
(95) TABLE-US-00001 TABLE 1 Parameters Value Operating frequency 77 GHz Number of transmit antennas (M.sub.t) 2 Number of receive antennas (M.sub.r) 8
(96) It may be assumed that there are three targets in front of the detection apparatus. The parameters (e.g., distances, azimuths, and velocities) of the three targets may be defined as shown in Table 2 below.
(97) TABLE-US-00002 TABLE 2 Target #1 Target #2 Target #2 Distance 70 m 80 m 90 m Azimuth θ.sub.k −10° 0° −13° Velocity v.sub.k 50 m/s 80 m/s 70 m/s
(98) The distance may be a distance between the detection apparatus (e.g., antenna) and each target. The azimuth θ.sub.k of the target may be determined on the basis of the detection apparatus. The velocity v.sub.k of the target may be a velocity relative to the detection apparatus. k may be the index of the target.
(99) The signals transmitted from the transmit antennas may be reflected by the targets and the receive antennas may receive the reflected signals from the targets. The strengths of the received signals at the receive antennas may be assumed to be inversely proportional to the fourth power of the distances defined in Table 2. Here, additive white Gaussian noise (AWGN) may exist, and a variance value may be set to 8.57×10.sup.−4.
(100) The results of the conventional 2D MUSIC algorithm based on the parameters defined in Table 1 and Table 2 may be as shown in
(101)
(102) Referring to
(103) On the other hand, when the 2D MUSIC algorithm based on an orthogonal projection-based interference cancellation technique is used, the detection apparatus may estimate the parameters of the target #1 based on the received signal, derive a first signal by cancelling the interference caused by the target #1 from the received signal, estimate the parameters of the target #2 based on the first signal, derive a second signal by cancelling the interference caused by the target #2 from the first signal, and estimate the parameters of the target #3 based on the second signal. The results of the 2D MUSIC algorithm using the orthogonal projection-based interference cancellation technique may be as shown in
(104)
(105) Referring to
(106) On the other hand, when the conventional 2D MUSIC algorithm is used, a complicated calculation process may be required to derive the roots of Equation 12 with respect to 120×120 grids. Further, when the conventional 2D MUSIC algorithm is used, the detection apparatus may estimate the distance of the target by performing the FFT. In this case, an estimation error may occur. For example, when estimating the distance, an error may occur as follows.
(107)
(108) Referring to
(109) Meanwhile, the mean squared error (MSE) for the velocity estimated by the conventional 2D MUSIC algorithm and the MSE for the velocity estimated by the 2D MUSIC algorithm proposed by the present disclosure may be as shown in Table 3 below.
(110) TABLE-US-00003 TABLE 3 SNR Algorithm 0 5 10 15 20 25 Conventional 2D MUSIC 53.9 53.1 55.5 55.2 55.2 55.1 2D MUSIC to which an 2.24 × 10.sup.−3 2.41 × 10.sup.−3 2.50 × 10.sup.−3 2.57 × 10.sup.−3 2.56 × 10.sup.−3 2.60 × 10.sup.−3 orthogonal projection- based interference cancellation technique is applied 2D root MUSIC based on 0.34 0.16 0.52 0.27 0.46 0.29 low-complexity approximation
(111) The MSE for the azimuth estimated by the conventional 2D MUSIC algorithm and the azimuth estimated by the 2D MUSIC algorithm proposed by the present disclosure may be as shown in Table 4 below.
(112) TABLE-US-00004 TABLE 4 SNR Algorithm 0 5 10 15 20 25 Conventional 715 713 717 723 723 721 2D MUSIC 2D MUSIC to 175 175 175 176 172 172 which an orthogonal projection- based interference cancellation technique is applied 2D root 1.86 3.08 2.01 2.15 1.64 1.99 MUSIC based on low-complexity approximation
(113) The embodiments of the present disclosure may be implemented as program instructions executable by a variety of computers and recorded on a computer readable medium. The computer readable medium may include a program instruction, a data file, a data structure, or a combination thereof. The program instructions recorded on the computer readable medium may be designed and configured specifically for the present disclosure or can be publicly known and available to those who are skilled in the field of computer software.
(114) Examples of the computer readable medium may include a hardware device such as ROM, RAM, and flash memory, which are specifically configured to store and execute the program instructions. Examples of the program instructions include machine codes made by, for example, a compiler, as well as high-level language codes executable by a computer, using an interpreter. The above exemplary hardware device can be configured to operate as at least one software module in order to perform the embodiments of the present disclosure, and vice versa.
(115) While the embodiments of the present disclosure and their advantages have been described in detail, it should be understood that various changes, substitutions and alterations may be made herein without departing from the scope of the present disclosure.