Vehicle path restoration system through sequential image analysis and vehicle path restoration method using the same

20230230391 · 2023-07-20

    Inventors

    Cpc classification

    International classification

    Abstract

    Disclosed are a vehicle path restoration system through sequential image analysis which includes: an image capturing unit that acquires sequential images from the front camera installed in the subject vehicle; an image analysis unit for generating multiple lanes that can be recognized from the sequential images of the video file acquired by the image capturing unit and multi-paths calculated using the geometric characteristics of the lanes recognized at the current time and the speed of the subject vehicle, that restores the path of the subject vehicle and restores the path of the front vehicle driving in front of the subject vehicle; a memory for storing path data of the subject vehicle and the front vehicle restored by the image analysis unit; and a display unit that expresses the path data of the subject vehicle and the front vehicle stored in the memory in the form of a top view.

    Claims

    1. Vehicle path restoration system through sequential image analysis, comprising: an image capturing unit that acquires sequential images from the front camera installed in the subject vehicle; an image analysis unit for generating multiple lanes that can be recognized from the sequential images of the video file acquired by the image capturing unit and multi-paths calculated using the geometric characteristics of the lanes recognized at the current time and the speed of the subject vehicle, that restores the path of the subject vehicle and restores the path of the front vehicle driving in front of the subject vehicle; a memory for storing path data of the subject vehicle and the front vehicle restored by the image analysis unit; and a display unit that expresses the path data of the subject vehicle and the front vehicle stored in the memory in the form of a top view.

    2. The vehicle path restoration system through sequential image analysis of claim 1, wherein the multi paths are located by a plurality of indexes in a predefined memory space, so that it is possible to store path data even when the subject vehicle changes lanes left and right between the multi paths.

    3. Vehicle path restoration method through sequential image analysis, comprising: acquiring sequential images from a front camera of an image capturing unit installed in a subject vehicle; generating a path of a subject vehicle and a front vehicle by receiving the sequential image and performing image analysis in an image analysis unit; and expressing the image analysis of the image analysis unit in the form of a top view on the display unit, wherein performing image analysis in the image analysis unit comprises: determining a lane of the current time; generating a multi-lane recognizable in the front camera image and a multi-path for each index calculated using geometric characteristics of the lane recognized at the current time and the speed of the subject vehicle; generating path data of the subject vehicle; and generating path data of the front vehicle.

    4. The vehicle path restoration method through sequential image analysis of claim 3, wherein creating a path set of each index in the multi-path comprises: receiving input information that is input data for creating a path set; determining whether the path is a curved line or a straight lane; generating a curved path when the path is determined as a curved lane, and generating a straight path when the path is determined as a straight lane; and creating a path set of the corresponding index by integrating the curved path and the straight path.

    5. The vehicle path restoration method through sequential image analysis of claim 4, wherein the input data for creating the path set are the speed of the subject vehicle, the path index number, the equation coefficient of a straight line and the equation coefficient of the curve suitable for the lane recognized in the image, the radius of curvature, and the curve discrimination coefficient.

    6. The vehicle path restoration method through sequential image analysis of claim 3, wherein generating the multi-path for each index includes: determining an index of a path connected to the lane recognized in the current frame in the front camera image as an active path index, and determining an index of a path not connected to the lane recognized in the current frame in the front camera image as an inactive path index; the active path index is passed to the active multi-path to generate an active multi-path; and the inactive path index is transferred to the inactive multi-path, and in the inactive multi-path generation, a new path is not added, but according to the movement of the subject vehicle, correcting the location of the path stored in the past time.

    7. The vehicle path restoration method through sequential image analysis of claim 6, wherein the active multi-path generation is the entire process of a method of creating a path set of each individual index, and the active single path generation step is performed several times as many as the number of lanes recognized in the current image.

    8. The vehicle path restoration method through sequential image analysis of claim 3, wherein generating path data of the subject vehicle comprises: obtaining equation coefficients of straight lines and the equation coefficients of curve of a driving lane, which are both lanes of a subject vehicle; determining the equation coefficients of the straight line and the equation coefficients of curve for the path of the subject vehicle by using the equation coefficients of the straight line and the equation coefficients of the curve of the driving lane; determining whether the path is a curved line or a straight lane; generating a curved path when the path is determined as a curved lane, and generating a straight path when the path is determined as a straight lane; and generating a set of paths for the subject vehicle by integrating the curved path and the straight path.

    9. The vehicle path restoration method through sequential image analysis of claim 8, further comprising: making the driving lane in a parallel state: determining a lane probability variable that is a probability of being a lane with respect to a right lane and a left lane; when the difference between the left lane and the right lane probability variable is less than or equal to a predetermined error tolerance, obtaining a median value of the slope and curvature of the two lane information, and calculating the equations of straight lines and curves for the path with respect to the left and right lanes; comparing the sizes of the left lane and right lane probability variables when the difference between the left and right lane probability variables is out of a predetermined error tolerance; if the right-lane probability variable is larger than the left-lane probability variable, calculate the equations of straight lines and curves for the left-lane path, such as the slope and curvature of the right-lane; and if the right-lane probability variable is smaller than the left-lane probability variable, calculate the equations of straight lines and curves for the right-lane path, such as the slope and curvature of the left-lane.

    10. The vehicle path restoration method through sequential image analysis of claim 3, wherein when the location of the multi-lane is changed because the subject vehicle is changed to a lane, the information of the multi-lane is moved together.

    11. The vehicle path restoration method through sequential image analysis of claim 3, wherein generating of the path data of the front vehicle includes: determining a vector b representing that the front vehicle moves from a specific position of an image of a previous frame to a specific position of an image of a current frame when the camera coordinates of the subject vehicle are taken as the origin; determining a motion vector h of the subject vehicle connecting the current coordinates and the coordinates of the previous frame in the path of the subject vehicle; and obtaining a motion vector v of the front vehicle that is a vector addition of the vector b and the vector h.

    Description

    BRIEF DESCRIPTION OF THE DRAWING FIGURES

    [0024] The above object and advantages of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which:

    [0025] FIG. 1 is a diagram illustrating a vehicle path restoration system through sequential image analysis according to an embodiment of the present invention.

    [0026] FIG. 2 is a flowchart illustrating a vehicle path restoration method through sequential image analysis according to an embodiment of the present invention.

    [0027] FIG. 3 is a view illustrating recognition of multiple lanes and a front vehicle in an input image according to an embodiment of the present invention.

    [0028] FIG. 4 is a diagram illustrating a top view made from an input image according to an embodiment of the present invention.

    [0029] FIG. 5 is a diagram illustrating a multi-lane and multi-path according to an embodiment of the present invention.

    [0030] FIG. 6 is a diagram illustrating a case in which paths are expanded to 12 paths according to an embodiment of the present invention.

    [0031] FIG. 7 is a view after changing one lane to the left in FIG. 6 according to an embodiment of the present invention.

    [0032] FIG. 8 is a flowchart illustrating a method of creating one path set in the image analysis unit according to an embodiment of the present invention.

    [0033] FIG. 9 is a diagram illustrating a method of generating a curved path according to an embodiment of the present invention.

    [0034] FIG. 10 is a diagram illustrating a method of generating a straight line path according to an embodiment of the present invention.

    [0035] FIG. 11 is a diagram illustrating a process of forming a multi-path in an image analysis unit according to an embodiment of the present invention.

    [0036] FIG. 12 is a diagram illustrating a lane probability variable according to an embodiment of the present invention.

    [0037] FIG. 13 is a diagram illustrating an algorithm for making driving lanes parallel to each other using probability variables (P.sub.L, P.sub.R) according to an embodiment of the present invention.

    [0038] FIGS. 14 to 17 are views continuously illustrating a state in which a subject vehicle changes a location from an initial lane to a left lane according to an embodiment of the present invention.

    [0039] FIGS. 18 and 19 are diagrams illustrating a method of moving multi-lane information when a subject vehicle changes lanes.

    [0040] FIG. 20 is a diagram illustrating a path of a subject vehicle according to an embodiment of the present invention.

    [0041] FIGS. 21 to 23 are diagrams for explaining a method for generating a path of a front vehicle using a motion vector of a subject vehicle according to an embodiment of the present invention.

    [0042] FIG. 24 is a view showing a top view by calculating a motion vector of a front vehicle according to an embodiment of the present invention.

    [0043] FIG. 25 is a view illustrating a general state in which vectors of a front vehicle are connected to each other to form a path set according to an embodiment of the present invention.

    DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

    [0044] Hereinafter, vehicle path restoration system through sequential image analysis and vehicle path restoration method using the same according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

    [0045] FIG. 1 is a diagram illustrating a vehicle path restoration system through sequential image analysis according to an embodiment of the present invention.

    [0046] Referring to FIG. 1, sequential images are acquired by the image capturing unit 100 which is a front camera installed in a subject vehicle.

    [0047] The image analysis unit 200 analyzes the sequential images of the video files obtained by the image capturing unit 100 to generate a multi-lane path and restore the path of the subject vehicle. In addition, the image analysis unit 200 restores the path of the front vehicle driving ahead.

    [0048] The path data of the subject vehicle and the front vehicle is stored in the memory 300. It is stored with respect to the time frame of the sequential image.

    [0049] Finally, the above data is expressed in the form of a top view on the display unit 400.

    [0050] FIG. 2 is a flowchart illustrating a vehicle path restoration method through sequential image analysis according to an embodiment of the present invention.

    [0051] Referring to FIG. 2, sequential images are acquired from the front camera of the image capturing unit 100 installed in the subject vehicle (S101).

    [0052] Next, the image analysis unit 200 performs image analysis by inputting sequential images (S102). The image analysis unit 200 includes technologies such as lane recognition, vehicle recognition, and object recognition.

    [0053] First, a lane of the current time for displaying the top view is determined (S1021).

    [0054] A multi-lane path is generated for each index by using information on various objects on the road obtained through image analysis (S1022).

    [0055] A path data of the subject vehicle is formed through image analysis (S1023).

    [0056] A path data of the front vehicles are generated through image analysis (S1024).

    [0057] Next, the information obtained in S1021-S1024 is expressed in the form of a top view (S103).

    [0058] FIG. 3 is a view showing recognition of multiple lanes and a front vehicle in the input image according to an embodiment of the present invention, and FIG. 4 is a view showing a top view made from the input image according to an embodiment of the present invention.

    [0059] Referring to FIG. 3, it shows recognition of multiple lanes and a front vehicle in an input image. This operation is repeated for sequential images, and a path data set is generated from the geometrical correlation of the recognized lanes. Once this data set and the lane data recognized in the current frame are combined and expressed in the world coordinate system, a top view as shown in FIG. 4 can be created.

    [0060] Referring to FIG. 4, the four solid lines on the upper part mean that four multi-lanes are recognized as curves in the image (FIG. 3) of the current frame, and the four dotted lines represent the four multi-paths generated in previous time frames.

    [0061] In addition, the vehicle picture located between the solid line and the dotted line shows the location of the subject vehicle 10 in which the camera is installed. The vehicle picture displayed on the upper end of the subject vehicle 10 shows the position of the front vehicle 20 (boundary box) detected in FIG. 3.

    [0062] The present invention analyzes the video in real time, and aims to show a lot of information at the moment of the accident. Therefore, the past multi-path 30 and the forward multi-lane 40 recognized at the present time are shown together.

    [0063] (Multi-Lane and Multi-Path Structure)

    [0064] Hereinafter, the structures of the multi-lane 40 and the multi-path 30 will be described.

    [0065] The multi-lane 40 means a lane recognizable in the front camera image, for example 4 lanes in FIGS. 3 and 4.

    [0066] FIG. 5 is a diagram illustrating a multi-lane and multi-path according to an embodiment of the present invention.

    [0067] Referring to FIG. 5, as a basic view of the multi-lane 40 and the multi-path 30, the picture of the vehicle in the center means the subject vehicle 10 in which the camera is installed. The four straight lines in the upper part mean the multi-lane 40 recognized in the current image.

    [0068] The circular number ({circle around (0)}{circle around (1)}{circle around (2)}{circle around (3)}) shows that a number is assigned to each multi-lane 40.

    [0069] The lanes {circle around (1)} and {circle around (2)} mean the left and right lanes recognized from the left and right sides of the subject vehicle 10, and these are called driving lanes.

    [0070] Lane {circle around (0)} and {circle around (3)} are lanes recognized from the left and right sides of the driving lane and are called extended lanes.

    [0071] In addition, four dotted lines ([0][1][2][3]) existing under the subject vehicle 10 mean the multi-path 30. Here, the past multi-path is calculated using the geometrical characteristics of the lane recognized at the present time and the speed of the subject vehicle.

    [0072] For example, if the lane {circle around (1)} in the path [1] is a straight line, the predicted path can be calculated using the vehicle speed and the linear function. If the lane {circle around (1)} in the path [1] is a curve, the expected path can be calculated using the vehicle speed, the movement vector using the inscribed circle of the parabola, and the correction of the entire path etc. A detailed description of obtaining a movement path of a curved lane is disclosed in Korean Patent Registration No. 10-2296520 (corresponding U.S. patent application Ser. No. 17/159,150) of the present applicant.

    [0073] FIG. 5 is an example illustrating a state in which a subject vehicle travels without changing a lane. In an actual driving environment, since the subject vehicle changes lanes, n lane paths may exist. In the actual invention implementation process, the number of paths is limited due to limitations in the amount of computation and memory.

    [0074] FIG. 6 is a diagram illustrating a case in which paths are expanded to 12 according to an embodiment of the present invention.

    [0075] Referring to FIG. 6, as a case in which 12 paths are expressed, the 12 paths ([0] to [11]) are located in a memory space predefined for recording the paths of lanes existing in the sequential image.

    [0076] The orthogonal coordinate system displayed on the picture of the subject vehicle in FIG. 6 means a coordinate system of a multi-lane and multi-path and is a world coordinate system having the position of the camera installed in the subject vehicle 10 as an origin. The subject vehicle 10 may move left and right between these paths. In FIG. 6, the subject vehicle 10 currently located in the center can store path data even when changing lanes 5 times to the left and right, respectively.

    [0077] FIG. 7 is a view after changing one lane to the left in FIG. 6 according to an embodiment of the present invention.

    [0078] Referring to FIG. 7, the multi-lane structure ({circle around (0)}{circle around (1)}{circle around (2)}{circle around (3)}) has moved one step to the left from the location of the previous path ([4][5][6][7]) to ([3][4][5][6]).

    [0079] In the present invention, a path set is formed for each multi-path index [0] to [11].

    [0080] FIG. 8 is a flowchart illustrating a method of creating one path set in the image analysis unit 200 according to an embodiment of the present invention.

    [0081] Referring to FIG. 8, the image analysis unit 200 receives input information (S801).

    [0082] The input information is input data for creating a path set. Specifically, the input data includes the speed of the subject vehicle, the path index number ([0] to [11] in FIG. 6), the equation coefficients of a straight line (a, b) and the equation coefficients of the curve (c, d, e) suitable for the lane recognized in the image, radius of curvature, curve discriminant coefficient, etc. The curve discriminant coefficient is a variable that is set to 0 if the lane recognized in the image is a straight line, and set to 1 if it is a curved line.

    [0083] Next, it is determined whether it is a curved or straight lane (S802). It is a conditional statement that divides into the next step according to the value of the curve discriminant coefficient.

    [0084] The method to obtain the curve discriminant coefficient is as follows. For the skeleton coordinates constituting the lane, fit the equation of a straight line or curve using the least squares method. In this case, the shortest distance d.sub.S between the coordinates of the skeleton and the equation of the straight line can be obtained. This shortest distance can be obtained for the number N of all skeleton coordinates, and the average value can be obtained.

    [0085] By applying the above contents, it can be expressed as in Equation 1, μ.sub.S and can be called an error rate of a straight line with respect to a lane.

    [00001] μ S = 1 N .Math. d S [ Equation 1 ]

    [0086] Similarly to the above method, the shortest distance d.sub.c between the skeleton coordinates and the equation of the curve is obtained. This shortest distance can be obtained for the number N of all skeleton coordinates, and the average value can be obtained. By applying the above contents, it can be expressed as in Equation 2, and μ.sub.c can be called the error rate of the curve with respect to the lane.

    [00002] μ C = 1 N .Math. d C [ Equation 2 ]

    [0087] If the error rate of the straight line is smaller than the error rate of the curve, the curve discriminant coefficient is set to 0, and if the error rate of the straight line is greater than the error rate of the curve, the curve discriminant coefficient is set to 1.

    [0088] Next, when it is determined as a curved lane, a curved path is generated (S803). A method of generating a curved path is disclosed in Korean Patent Registration No. 10-2296520 (corresponding U.S. patent application Ser. No. 17/159,150) of the present applicant.

    [0089] In addition, when it is determined as a straight lane, a straight path is generated (S804). A method of generating a straight path will be described later.

    [0090] Next, a path set of the corresponding index is generated by integrating the above-described curved path and straight path (S805).

    [0091] FIG. 9 is a diagram illustrating a method of generating a curved path according to an embodiment of the present invention. Since the method for generating a curved path is disclosed in Korean Patent Registration No. 10-2296520 (corresponding U.S. patent application Ser. No. 17/159,150) of the present applicant, it will be briefly described.

    [0092] Referring to FIG. 1, a method of detecting a curved lane includes acquiring forward images of a curved lane by using a monocular vision camera which captures the front from a vehicle, in operation S110, detecting curved lane candidates from the forward images, in operation S120, detecting a skeleton line having a thickness of 1 pixel by using a median value of the curved lane candidates, in operation S130, estimating a parabolic function which is curve-fitted by using the skeleton line, in operation S140, generating an inscribed circle inscribing in a parabola that corresponds to the parabolic function at a location where a world coordinate value Y is 0, in operation S150, generating a set of moving paths after anticipated coordinates of representative points in a current frame are calculated from coordinates of representative points which are tangent points of the parabola in a previous frame and the inscribed circle on the circumference of the inscribed circle, in operation S160, determining whether the skeleton line satisfies a specific condition for curve fitting in a current frame, in operation S170, when the skeleton line does not satisfy the specific condition, determining the parabola that fits the skeleton line as a curved lane, in operation S180, and when the skeleton line satisfies the specific condition, estimating the parabola which is curve-fitted to all skeleton line and set of the moving paths as a curved lane, in operation S190. Accordingly, the curved lane may be estimated by using the moving paths on the curved lane in the past.

    [0093] FIG. 10 is a diagram illustrating a method of generating a straight line path according to an embodiment of the present invention.

    [0094] Referring to FIG. 10, P.sub.1=(X.sub.0, Y.sub.0) is a representative point of the current time at Y.sub.0=0 with respect to the equation of the straight line Here, the representative point means coordinates that can represent the movement path of the lane on a straight line. P.sub.2=(X.sub.E, Y.sub.E) is the expected coordinates of the next time.


    L.sub.c=√{square root over ((X.sub.0−X.sub.E).sup.2+(Y.sub.0−Y.sub.E).sup.2)}  [Equation 3]


    X.sub.E=a+bY.sub.E  [Equation 4]

    [0095] L.sub.S in Equation 3 means the Euclidean length of the vector {right arrow over (P.sub.1P.sub.0)}. Here, since the unknown is (X.sub.E, Y.sub.E), by substituting Equation 4 into Equation 3, a quadratic equation (Equation 5) can be obtained.


    (b.sup.2+1)Y.sub.E.sup.2−2{b(X.sub.0−a)+Y.sub.0}Y.sub.E+(X.sub.0−a).sup.2+Y.sub.0.sup.2−L.sub.S.sup.2=0  [Equation 5]

    [0096] Among the two values of Y.sub.E obtained in Equation 5, a negative number is selected and inputted in Equation 4 to obtain X.sub.E. Through the above method, a path of a straight lane can be obtained.

    [0097] FIG. 11 is a diagram illustrating a process of forming a multi-path in the image analysis unit 200 according to an embodiment of the present invention.

    [0098] Referring to FIG. 11, the index of the path connected to the lane recognized in the current frame is determined as the active path index (S1101), and the non-activated path is determined as the inactive path index (S1105).

    [0099] What is important in the process of creating a multi-path is whether or not a lane is detected in the corresponding path. For example, in FIG. 6, there are 4 lanes detected in the image, which are connected to the path [4][5][6][7]. If this state is maintained, in the path index [4][5][6][7], new representative points are added to the path every frame, and a new path will be displayed on the screen of the top view. At this time, it is defined that the paths are activated.

    [0100] The active path index is transferred to the active multi-path (S1102).

    [0101] In the active multi-path, each active single path is generated (S1103, S1104). Here, each active single path generation (S1103, S1104) is the entire process of the method for creating the path set described in FIG. 8. That is, the active single path generation step is performed several times as many as the number of lanes recognized in the current image.

    [0102] When the index of the path connected to the lane recognized in the current frame is determined as the inactive path index (S1105), it is transferred to the inactive multi-path (S1106). In the inactive single path generation (S1107, S1108), a new path is not added, but the location of the path stored in the past time is corrected according to the movement of the subject vehicle.

    [0103] The remaining paths [0][1][2][3][8][9][10][11] other than the lane path [4][5][6][7] detected in FIG. 6 do not connect with the current lanes, so no new paths are added to the top view screen. At this time, it is defined that the paths are inactive. However, existing paths in the inactive paths are continuously modified according to the movement of the subject vehicle. Therefore, the step of generating the inactive multi-path (S1106) in FIG. 11 is also executed for every frame.

    [0104] (How to Restore Multi-Lane to Parallel State)

    [0105] A method is required to ensure that multiple lanes remain parallel.

    [0106] If the result of lane recognition is used as it is for path generation, multi-lane paths cannot be maintained parallel to each other. For example, the slopes of the left and right lanes obtained by image recognition in a straight section cannot completely match. (See FIG. 3) When these data are used as path data as they are, the left and right paths may become closer or farther away from each other as time passes.

    [0107] To solve the above problem, lane information for a path managed separately from lane information recognized as an image is generated. In the multi-lane case, both lanes of the subject vehicle as a reference are called driving lanes.

    [0108] Although the average value of the information of the two driving lanes may be used, in this case, incorrect lane information may be input and an error of the path may occur.

    [0109] Hereinafter, a method for reducing a path error will be described.

    [0110] In order to create a driving lane in a parallel state, a reference lane must be selected among the two lanes. The reference lane may mean a lane having a higher probability of being the lane among the two lanes.

    [0111] The probability that the data detected in the image is a lane is defined as a lane probability variable.

    [0112] FIG. 12 is a diagram for explaining a lane probability variable according to an embodiment of the present invention.

    [0113] Referring to FIG. 12, a dotted line is geometrically expressed. The lower lane is L.sub.2, and the upper lane is L.sub.2. And, an empty section between these two lanes is expressed by a dotted line.

    [0114] The lane probability variable of the present invention will be described.

    [0115] The first probability is the ratio of the number of fitted skeleton line to the total number of skeleton line. A method of making a skeleton line is disclosed in Korean Patent Registration No. 10-2296520 (corresponding U.S. patent application Ser. No. 17/159,150) of the present applicant.

    [0116] The first probability is about how long the lanes of the image look. This can be expressed as a mathematical expression as follows.

    [00003] p 1 = n s N [ Equation 6 ]

    [0117] Here, N denotes the maximum length in which the lane skeleton line can exist in the image. n.sub.S means the length of the skeleton line of the lane detected in the current image.

    [0118] The second probability relates to how close the y.sub.2.sup.d value of the lower coordinate c.sub.1.sup.d of the skeleton line L.sub.1 is to the subject vehicle. This means that the closer the skeleton line is to the subject vehicle, the higher the probability of obtaining the correct lane.

    [0119] Equation 7 shows how to obtain the probability p.sub.2.

    [00004] d = .Math. "\[LeftBracketingBar]" y 1 d - y 0 d .Math. "\[RightBracketingBar]" [ Equation 7 ] p 2 = 1 w × d + 1

    [0120] Here, y.sub.0.sup.d means the Y-coordinate of the lowermost end of the image.

    [0121] As the y.sub.1.sup.d value of the dotted line is closer to the bottom of the image, the value of approaches 1, and as the y.sub.1.sup.d value of the dotted line moves away from the bottom of the image, the value of p.sub.2 approaches 0. w is a weight value for adjusting the probability value. For example, when y.sub.1.sup.d exists at about 30 m, if you want to make probability p.sub.2 0.5, you can set w to 1/30.

    [0122] The lane probability variable P for one lane means the joint probability of the probabilities p.sub.1 and p.sub.2.

    [0123] Since the probabilities p.sub.1 and p.sub.2 and are independent events, they can be expressed by Equation 8.


    P=p.sub.1×p.sub.2  [Equation 8]

    [0124] Since the driving lane consists of left and right, the left lane random variable is and the right lane random variable is p.sub.R.

    [0125] The relationship between the two lane probability variables (P.sub.L, P.sub.R) can be defined in three ways.

    [0126] The first relationship is when two lane probability variables have similar values. It can be expressed as a conditional expression as in Equation 9.


    |P.sub.L−P.sub.R|<θ  [Equation 9]

    [0127] In Equation 9, θ is the difference between the lane probability variables of the left and right lanes, and means an error tolerance value. For example, if θ is 0.2, if the difference between the lane probability variables of the left lane and the right lane has a value of 0.2 or less, it may be determined that they are similar.

    [0128] The second relation is the case where P.sub.R is greater than P.sub.L, and the third relation is the case where P.sub.R is less than P.sub.L.

    [0129] FIG. 13 is a diagram illustrating an algorithm for making driving lanes parallel to each other using lane probability variables (P.sub.L, P.sub.R) according to an embodiment of the present invention.

    [0130] Referring to FIG. 13, it is determined whether the difference between the lane probability variables of the left lane and the right lane, which is the condition of Equation 9, is equal to or less than θ(S1301).

    [0131] If Equation 9 is satisfied, a median value of the slope and curvature of the two lane information is obtained, and the equations of the straight line and the curve for the path are calculated for the left and right lanes (S1302).

    [0132] If Equation 9 is not satisfied, the values of P.sub.L, and P.sub.R are compared (S1303).

    [0133] When P.sub.R, is greater than P.sub.L, the equation of straight line and curve for the path of the left lane, such as the slope and curvature of the right lane, is calculated (S1304).

    [0134] When P.sub.R is less than P.sub.L, equation of straight line and curve for the path of the right lane, such as the slope and curvature of the left lane, is calculated (S1305).

    [0135] The form of the equation of the straight line (Equation 10) and the equation of the curve (Equation 11) used in the present invention is as follows.


    x=a+by  [Equation 10]


    x=c+dy+ey.sup.2  [Equation 11]

    [0136] Coefficients a, b, c, d, and e in Equations 10 and 11 denote the results of image recognition, where a and b are coefficients of a straight line, and c, d, and e are coefficients of a parabola.

    [0137] a.sup.v, b.sup.v, c.sup.v, d.sup.v, e.sup.v, which will be described later, is defined as an equation coefficient of a straight line and a curve for a path.

    [0138] In the case of step S1302 in FIG. 13, since two lanes have similar shapes, an equation of a straight line and a curve for a path is calculated by calculating a median value of the reference lane among the two lanes.

    [0139] In the case of a straight line, the intermediate value of the slope b of the straight line of the two lanes is set as the slope of the reference lane. This slope is set to b.sup.v, and the coefficient a.sup.v for a straight line passing through the skeleton line coordinates of the lane is obtained using the least square method. At this time, the equation of a straight line of the left and right lanes can be obtained, and this is used for path generation. The coefficient of the left path straight line is a.sub.L.sup.v, and the right path straight coefficient is denoted as a.sub.R.sup.v.

    [0140] In the case of the curve, the median value of the slope d of the curve of the two lanes is set as the slope d.sup.v of the reference lane. Also, an intermediate value of the curvature e of the curves of the two lanes is set as the curvature e.sup.v of the reference lane. The slope d.sup.v and the curvature e.sup.v are fixed as constant values, and the curve coefficient for a path passing through the skeleton coordinates of the lane is calculated using the least squares method. At this time, the equation of the curve of the left and right lanes can be obtained, and this is used for path generation. The coefficient of the left path curve is c.sub.L.sup.v, and the coefficient of the right path curve is denoted as c.sub.R.sup.v.

    [0141] Steps S1304 and S1305 in FIG. 13 are cases in which Equation 9 is not satisfied, which means a case in which either lane is determined as the reference lane.

    [0142] In the case of step S1304, the lane probability variable of the right lane is large, and the coefficients b, d, and e of the right lane are fixed as constants b.sup.v, d.sup.v, e.sup.v with the right lane as the reference lane. Using the least-squares method, the straight line and curve of the left lane for the path are set by obtaining the lane coefficient a.sub.L.sup.v, c.sub.L.sup.v for the path passing through the skeleton line coordinates of the left lane.

    [0143] In the case of step S1305, the lane probability variable of the left lane is large, and coefficients b, d, and e of the left lane are fixed as constant b.sup.v, d.sup.v, e.sup.v using the left lane as the reference lane. Using the least-squares method, the straight line and curve of the driving lane for the path are set by obtaining the lane coefficient a.sub.R.sup.v, c.sub.R.sup.v for the path that passes through the coordinates of the skeleton line of the right lane.

    [0144] The lane information for the path of the extended lane uses the lane information of the driving lane for the path generated above. By inputting the coefficient of the left driving lane and the coordinates of the skeleton line, the coefficient b.sub.L.sup.v, d.sub.L.sup.v, e.sub.L.sup.v of the left extension lane may be calculated using the least squares method. The remaining coefficient b.sub.L.sup.x, d.sub.L.sup.x, e.sub.L.sup.x of left extended lane are equal to the coefficient b.sub.L.sup.v, d.sub.L.sup.v, e.sub.L.sup.v of left driving lane. By inputting the coefficient b.sub.R.sup.x, d.sub.R.sup.x, e.sub.R.sup.x of the right driving lane and the coordinates of the skeleton line, the coefficient a.sub.R.sup.x, c.sub.R.sup.x of the right extension lane can be calculated using the least squares method. The remaining coefficient b.sub.R.sup.x, d.sub.R.sup.x, e.sub.R.sup.x of right extended lane are equal to the coefficient b.sub.R.sup.v, d.sub.R.sup.v, e.sub.R.sup.v of right driving lane.

    [0145] (Interlocking Method of Multi-Lane and Multi-Path when Changing Lanes)

    [0146] Hereinafter, when a lane change occurs, a method of interlocking multi-lanes and multi-paths will be described.

    [0147] FIGS. 14 to 17 are views continuously illustrating a state in which a subject vehicle changes a location from an initial lane to a left lane according to an embodiment of the present invention.

    [0148] Referring to FIG. 14, the subject vehicle 10 is in a state before changing a lane.

    [0149] Referring to FIG. 15, the subject vehicle 10 is in a state just before changing the lane to the left, the multi-lane connection structure and the multi-path connection structure are the same as in FIG. 14. That is, the multi-lane ({circle around (0)}{circle around (1)}{circle around (2)}{circle around (3)}) is connected with the index of the multi-path ([4][5][6][7]).

    [0150] Referring to FIG. 16, the subject vehicle 10 is immediately after a lane change occurs, and at this time the multi-lane moves one step to the left, and the multi-lane ({circle around (0)}{circle around (1)}{circle around (2)}{circle around (3)}) is connected with the index of the multi-path ([3][4][5][6]).

    [0151] Referring to FIG. 17, the subject vehicle 10 is in a state after changing a lane.

    [0152] A method of detecting a lane change is as follows.

    [0153] For example, in FIGS. 14 to 17, a moment when the latest x-coordinate value of the path [5] changes from a negative number to a positive number is used as a lane change condition. This phenomenon occurs because the coordinate system used in the present invention uses the camera coordinate system (orthogonal arrow in the drawing) of the subject vehicle. In FIG. 15, the x coordinate value of the path [5] is negative, and in FIG. 16, the x coordinate value of the path [5] is positive.

    [0154] Summarizing the above in a formula, it is as follows:


    (X.sub.k−1.sup.L<0)∩(X.sub.k.sup.L>0)  [Equation 12]

    [0155] When the condition of Equation 12 is satisfied, it may be determined that the lane has changed to the left. Here, X.sub.k−1.sup.L is the X value of the left lane of the previous frame, and X.sub.k.sup.L is the X value of the left lane of the current frame.

    [0156] In the world coordinate system, (X, Y)=(0, 0) is the position of the camera installed on the subject vehicle. In other words, if the left lane is located to the left in the previous frame and to the right in the current frame of the reference value, it may be determined that the lane is changed to the left.

    [0157] The following Equation 13 is a discriminant for occurrence of a lane change in the subject vehicle to the right.


    (X.sub.k−1.sup.R<0)∩(X.sub.k.sup.R>0)  [Equation 13]

    [0158] Here, X.sub.k−1.sup.R is the X value of the right lane of the previous frame, and X.sub.k.sup.R is the X value of the right lane of the current frame.

    [0159] When the lane change of the subject vehicle occurs, the location of the multi-lane changes with respect to the path as shown in FIGS. 14 to 17. In this case, information on the multi-lane must be moved. Multi-lane information typically includes coefficients (a, b, c, d, e in Equations 10 and 11) of straight-line and curved equations.

    [0160] FIGS. 18 and 19 are diagrams illustrating a method of moving multi-lane information when a subject vehicle changes lanes.

    [0161] Referring to FIG. 18, when a subject vehicle changes into a left lane, a method of moving multi-lane information is shown. The circular number means the circular number of FIGS. 14 and 15. FIG. 18 is an operation performed immediately after changing into a left lane.

    [0162] When explaining the meaning of each row in FIG. 18, information on the right extended lane {circle around (3)} is deleted. Copy the information on the right driving lane {circle around (2)} to the right extension lane {circle around (3)}. Copy the information from the left driving lane {circle around (1)} to the right driving lane {circle around (2)}. Copy the information on the left extension lane {circle around (0)} to the left driving lane {circle around (1)}. Copy the new lane information to the left extended lane {circle around (0)}.

    [0163] Referring to FIG. 19, when a subject vehicle changes into a right lane, a method of moving multi-lane information is shown.

    [0164] When explaining the meaning of each row in FIG. 19, information on the left extended lane {circle around (0)} is deleted. Copy the information on the left driving lane {circle around (1)} to the left extension lane {circle around (0)}. Copy the information from the right driving lane {circle around (2)} to the left driving lane {circle around (1)}. Copy the information from the right extension lane {circle around (3)} to the right driving lane {circle around (2)}. Copy the new lane information to the right extension lane {circle around (3)}.

    [0165] (Generate Path of Subject Vehicle)

    [0166] Hereinafter, a method for generating a path of a subject vehicle will be described. Since the path of the subject vehicle can be estimated using the path of the driving lane, it can be obtained using the method of creating one path of FIG. 8.

    [0167] The average value of the coefficients of the equation of the driving lane is used as input information in step S801 of FIG. 8.

    [0168] Equation 14 shows a method of calculating path input information of a subject vehicle.

    [00005] a S v = 0 [ Equation 14 ] b S v = b L v + b R v 2 c S v = 0 d S v = d L v + d R v 2 e S v = e L v + e R v 2

    [0169] In Equation 14, a.sub.S.sup.v and b.sub.S.sup.v denote a coefficient of the equation of a straight line (Equation 8), c.sub.S.sup.v, d.sub.S.sup.v, and e.sub.S.sup.v denote a coefficient of the equation of a curve (Equation 11). b.sub.S.sup.v, d.sub.S.sup.v, and e.sub.S.sup.v denote the slope and curvature of the path of the subject vehicle. The average value of the slope and curvature of the driving lane may be estimated as a coefficient of the equation of the path of the subject vehicle. a.sub.S.sup.v and c.sub.S.sup.v mean the position of the x-axis of the subject vehicle, and since the coordinate system based on the present invention is the world coordinate system with the position of the camera of the subject vehicle as the origin, a.sub.S.sup.v and c.sub.S.sup.v have a value of 0.

    [0170] If the subject vehicle information obtained in Equation 14 is input in step S801 of FIG. 8, a path set of the subject vehicle may be obtained in step S805.

    [0171] FIG. 20 is a diagram illustrating a path of a subject vehicle according to an embodiment of the present invention.

    [0172] Referring to FIG. 20, the path of the subject vehicle 10 obtained by using the above-described method is shown, and arrows displayed at the lower end of the subject vehicle mean the path of the subject vehicle.

    [0173] (How to Create a Path for the Front Vehicle)

    [0174] Hereinafter, a method for generating a path for front vehicle will be described.

    [0175] Front vehicle seen by the front camera of the subject vehicle can be recognized using a deep learning method using tensorflow. World coordinate values can be obtained with the information on the positions of the front vehicle, but these are coordinate values with the subject vehicle as the origin of the coordinate axis.

    [0176] FIGS. 21 to 23 are diagrams for explaining a method for generating a path of a front vehicle using a motion vector of a subject vehicle according to an embodiment of the present invention. In order to find the path of the front vehicle, we show how to find the motion vector v of the front vehicle in the world coordinate system.

    [0177] Referring to FIG. 21, when the camera coordinates of the subject vehicle are taken as the origin, the vector b means that the front vehicle moves from a specific position of the image of the previous frame to a specific position of the image of the current frame as a vector. It is the movement of the front vehicle that can be obtained only from images captured by the camera without input of other information. In other words, it has the same meaning as when there is no movement of the subject vehicle. The starting point b.sub.S of the vector b means the coordinates of the front vehicle of the previous frame, and the end point b.sub.E means the coordinates of the front vehicle of the current frame.

    [0178] In FIG. 21, a vector h denotes a motion vector of a subject vehicle. The starting point h.sub.S of the vector ii means the coordinates of the subject vehicle of the previous frame, and the end point h.sub.E means the coordinates of the subject vehicle of the current frame. The motion vector of the subject vehicle refers to a connection between the current coordinates and the coordinates of the previous frame in the path of the subject vehicle. A method of obtaining the path of the subject vehicle has been previously described.

    [0179] Referring to FIG. 22, a state of finding a vector addition v of a vector b and a vector h is shown. In the world coordinate system, the motion vector v of the front vehicle means that the motion vector h of the subject vehicle is added to the vector b.

    [0180] In the case of FIG. 22, the starting point of the vector addition v and the starting point of the vector b are the same, but the ending points b.sub.E and v.sub.E exist at different positions. Since we want to maintain the position of the end point b.sub.E (meaning the current position of the front vehicle) of the existing vector b, we use a different version of the vector addition shown in FIG. 23.

    [0181] Referring to FIG. 23, using this method, the vector v maintains the current position v.sub.E of the front vehicle, and it is possible to know the position v.sub.S of the front vehicle of one frame before.

    [0182] FIG. 24 is a top view showing a motion vector of a front vehicle according to an embodiment of the present invention.

    [0183] Referring to FIG. 24, a vehicle denotes the subject vehicle 10, and a motion vector h of the subject vehicle denotes a bottom arrow. The vehicle means the front vehicle 20, and the motion vector v of the front vehicle means the upper arrow.

    [0184] In the embodiment, the subject vehicle and the front vehicle are moving at a constant velocity at a speed of about 70 km/h, and since the vector b has a relatively small vector quantity, the vector component of the subject vehicle is successfully applied to the vector calculation of the front vehicle. Additionally, the motion vector v denotes the instantaneous speed of the front vehicle.

    [0185] The vector v of the front vehicle described above is for the current frame. The vectors v.sub.k obtained in the past time are stored in the memory in the form of a set.

    [0186] Hereinafter, a method of concatenating vector sets into a path set will be described.

    [0187] FIG. 25 is a view illustrating a general state in which vectors of a front vehicle are connected to each other to form a path set according to an embodiment of the present invention.

    [0188] Referring to FIG. 25, since the start point of the previous vector and the end point of the current vector are always connected in the path set, coordinates are defined as


    {(x.sub.0,y.sub.0),(x.sub.1,y.sub.1), . . . ,(x.sub.n,y.sub.n)}.

    [0189] The vector component of v.sub.1 is (a.sub.1, b.sub.1) and the vector component of v.sub.n is (a.sub.n, b.sub.n).

    [0190] In FIG. 25, the coordinates of the end point v.sub.cE of v.sub.2 are the same as the coordinates of the start point v.sub.1S of v.sub.1. If the coordinates of the starting point v.sub.2s of v.sub.2 is (x.sub.2, y.sub.2), the coordinates of (x.sub.2, y.sub.2) can be obtained as in Equation 15 by subtracting the vector component (a.sub.2, b.sub.2) from the starting point (x.sub.1, y.sub.1) of v.sub.1.


    x.sub.2=x.sub.1−a.sub.2


    y.sub.2=y.sub.1−b.sub.2  [Equation 15]

    [0191] If Equation 15 is expanded into a general expression that can be calculated for all path coordinates, Equation 16 is obtained.


    x.sub.k+1=x.sub.k−a.sub.k+1


    y.sub.k+1=y.sub.k−b.sub.k+1


    1≤k≤(n−1)  [Equation 16]

    [0192] In Equation 16, the range of k is limited to 1 to n−1. n means the number of total vectors. Here, the starting point (x.sub.1, y.sub.1) and the ending point (x.sub.0, y.sub.0) of the vector v.sub.1 should be input as initial values. The starting point (x.sub.1, y.sub.1) and the ending point (x.sub.0, y.sub.0) mean v.sub.S and v.sub.E in FIG. 23, and the method of obtaining the coordinates has been described above.

    [0193] All path coordinates of the front vehicle can be obtained using the above method, and red arrows in FIG. 24 show an embodiment in which path coordinates of the front vehicle (red) are obtained.

    [0194] While the present invention has been particularly shown and described with reference to preferred embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims