I 've been reading it for almost two weeks. Let's talk about my own understanding.
The general process is as follows: system initialization-field synchronous signal detection-video sampling-speed extraction-black line extraction-steering gear control-Speed Control
I read a complete piece of code from someone else, and I also have some related information. Image acquisition, storage, binarization, and de-noise are similar, and they are not the biggest difficulty. It is mainly to extract to the center of the black line, how to control the steering gear and the speed of the car.
This part of the code is written in autocontrol. C. It feels very simple. First, the black line center offset in the distance, middle, and near is obtained through image processing. The output of the steering gear is the central value of the steering gear-center offset of the middle position of the black line * 23. I don't know what this 23 means; then the output of the speed seems to be controlled by the offset of the center position in the distance. The offset at the nearest point is not seen.
In another document, this section is very detailed. The steering gear is mainly controlled by three variables. Valid_line: valid line (that is, line with black line coverage), even_diff: black line offset, d_diff: slope of a certain segment of the black line. Use a valid row to segment the extracted data. If there are enough valid rows, it indicates a straight line. The smaller the valid rows, the larger the curvature. The offset and slope are used to calculate the number of outgoing Steering gears. How to control the speed is not mentioned here.
This is probably the case. It will take two to three hours every day for more understanding.