Giới thiệu dự án

Hệ thống hỗ trợ người lái nâng cao (Advanced Driver Assistance Systems - ADAS) và xe tự hành đang định hình lại tương lai của ngành giao thông vận tải toàn cầu. Theo báo cáo của Tổ chức Y tế Thế giới (WHO) và Cục Quản lý An toàn Giao thông Đường cao tốc Quốc gia Hoa Kỳ (NHTSA), hơn 90% các vụ tai nạn giao thông xuất phát từ lỗi chủ quan của người điều khiển phương tiện, trong đó hiện tượng chệch làn đường chiếm tỷ lệ thương vong cao hàng đầu. Do đó, Hệ thống Cảnh báo Chệch làn đường (Lane Departure Warning System - LDWS) và Điều hướng Tự động (Autonomous Navigation) trở thành yêu cầu an toàn bắt buộc trên các dòng xe hiện đại.

+-----------------------------------------------------------------------------+
|                          LUỒNG XỬ LÝ TỔNG THỂ HỆ THỐNG                       |
+-----------------------------------------------------------------------------+
 [ Analog Video ] --> [ ADV7180 Decoder ] --> [ ITU-R BT.656 Stream ]
                                                        |
                                                        v
 [ Ackermann Output ] <-- [ CORDIC-Hough Core ] <-- [ Pipeline Pre-Processing ]

Vấn đề cốt lõi của bài toán nhận diện làn đường theo thời gian thực nằm ở sự đánh đổi giữa độ chính xác thuật toán và tài nguyên tính toán. Thuật toán Biến đổi Hough (Hough Transform) từ lâu đã chứng minh tính ưu việt vượt trội trong việc phát hiện vạch kẻ đường bị đứt gãy, mờ nhòe hoặc chịu tác động của nhiễu môi trường nhờ cơ chế tích lũy không gian tham số (Accumulator Space). Tuy nhiên, Hough Transform tiêu chuẩn đòi hỏi khối lượng khổng lồ các phép toán lượng giác ($\sin\theta, \cos\theta$) và phép nhân dấu chấm động, dẫn đến nghẽn cổ chai tính toán (computational bottleneck) và tiêu tốn bộ nhớ khi triển khai trên các bộ xử lý nhúng truyền thống (Embedded CPUs/DSP).

Đề tài "Hệ thống điều hướng tự động dựa trên phần cứng" (Hardware-based Autonomous System for Navigation) được thực hiện nhằm giải quyết triệt để thách thức trên. Bằng cách thiết kế kiến trúc xử lý dòng dữ liệu song song (Pipelined Hardware Architecture) trên nền tảng FPGA Cyclone V (DE1-SoC), kết hợp thuật toán tính toán góc quay số CORDIC (Coordinate Rotation Digital Computer) để loại bỏ hoàn toàn các phép toán lượng giác phức tạp, hệ thống đạt tốc độ xử lý chuẩn công nghiệp 60 khung hình/giây (fps) với mức tiêu thụ tài nguyên tối ưu.

Mục tiêu đề tài

  1. Hiện thực hóa thành công chuỗi xử lý ảnh tiền xử lý (Pre-Image Processing Pipeline) dạng streaming từ luồng video chuẩn ITU-R BT.656 của chip giải mã ADV7180 trên phần cứng FPGA.
  2. Thiết kế và tối ưu kiến trúc phần cứng cho thuật toán Hough Transform sử dụng giải thuật CORDIC, loại bỏ hoàn toàn phép nhân dấu chấm động và bảng tra lượng giác dung lượng lớn.
  3. Tích hợp mô hình Động học lái Ackermann (Ackermann Steering Kinematics) trực tiếp trên phần cứng để đưa ra tín hiệu điều hướng thời gian thực (Rẽ trái, Rẽ phải, Đi thẳng).
  4. Đạt tốc độ xử lý thời gian thực 60 fps tại xung nhịp hoạt động tối đa 69.42 MHz mà không phụ thuộc vào bộ nhớ SDRAM ngoài, loại bỏ độ trễ bộ đệm khung hình (Zero Frame-Buffer Latency).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Nhiều giải pháp nhận diện làn đường đã được công bố trên thế giới với các cách tiếp cận phần cứng và thuật toán khác nhau. Tuy nhiên, phần lớn đều gặp phải các rào cản về tài nguyên hoặc băng thông bộ nhớ.

Giải pháp nghiên cứu Phương pháp xử lý Băng thông bộ nhớ Độ phân giải Tốc độ xử lý Nhược điểm chính
Nghiên cứu Canny-Hough [7] Canny rút gọn + Hough Transform SDRAM ngoài $640 \times 480$ 24 fps Nghẽn băng thông SDRAM, độ trễ truy xuất lớn
Nghiên cứu Sobel-Kalman [8] Sobel + Kalman Tracking + Hough SRAM ngoài $720 \times 480$ 25 fps Không đạt chuẩn thời gian thực 60 fps
Kiến trúc Song song [9] Multi-stage Pipeline Canny-Hough On-chip / External $1024 \times 768$ 61 fps Độ phức tạp logic cực cao, tiêu tốn nhiều tài nguyên ALM
Giải pháp đề xuất Streaming Pre-filter + CORDIC-Hough Dual-port On-chip SRAM $640 \times 480 \to 160 \times 120$ 60 fps Tối ưu hóa tài nguyên logic, xử lý dòng không độ trễ

Yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have (Bắt buộc): Giải mã video ITU-R BT.656 thời gian thực, bộ lọc không gian Gaussian 5x5, toán tử Sobel 3x3, lõi CORDIC-Hough Pipeline, bộ phân loại điều hướng Ackermann.
  • Should Have (Nên có): Cơ chế giải quyết tranh chấp bus (Arbitrator) giữa DMA Controller và vi xử lý hiển thị, bộ đệm dòng (Line Buffers) sử dụng On-chip Block RAM.
  • Could Have (Có thể mở rộng): Tự động điều chỉnh ngưỡng nhị phân hóa cục bộ thích nghi theo cường độ sáng môi trường.
  • Won't Have (Chưa thực hiện): Nhận diện các biển báo giao thông hoặc chướng ngại vật 3D phức tạp (nằm ngoài phạm vi bài toán điều hướng làn đường).

Thiết kế hệ thống

Kiến trúc phần cứng được chia làm hai phân vùng chính: Quá trình Tiền xử lý ảnh (Pre-Image Processing) và Quá trình Xử lý ảnh (Image Processing Core), liên kết đồng bộ thông qua các tín hiệu điều khiển phần cứng.

graph TD
    A[Camera Analog NTSC] -->|Composite Video| B[TV Decoder ADV7180]
    B -->|ITU-R BT.656 27MHz| C[Module VIDEO IMAGE]
    C -->|I2C / Delay Timer / Divider| D[YCbCr 4:2:2 to 4:4:4]
    D --> E[YCbCr to RGB Converter]
    E --> F[RGB to Grayscale Module]
    F --> G[5x5 Gaussian Filter]
    G --> H[3x3 Sobel Operator]
    H --> I[Brightest Intensity Pixel Detector]
    I --> J[Downsampling 160x120 & Split 2x 80x120]
    J --> K[CORDIC Hough Transform Region I & II & III]
    K --> L[Voting Array Memory Accumulator]
    L --> M[Peak Detector & Ackermann Steering Logic]
    M --> N[Control Signals: LEFT / RIGHT / STRAIGHT]
    M --> O[Dual-Port SRAM Display Buffer]
    O --> P[VGA DAC ADV7123 / Monitor]

Ngăn xếp công nghệ (Technology Stack)

  • Phần cứng mục tiêu: Terasic DE1-SoC Development Board (Altera/Intel Cyclone V SoC FPGA - mã 5CSEMA5F31C6).
  • Chip thu nhận & Giải mã: Analog Devices ADV7180 10-bit Video Decoder (Hỗ trợ NTSC/PAL).
  • Chip xuất hình ảnh: Analog Devices ADV7123 Triple 10-bit High-Speed Video DAC.
  • Ngôn ngữ mô tả phần cứng: Verilog HDL (IEEE 1364-2001 Standard).
  • Môi trường thiết kế & Mô phỏng: Intel Quartus Prime Design Suite v18.1 / v20.1, ModelSim-Altera Edition.
  • Phần mềm giám sát: C/C++ trên bộ xử lý nhúng (Nios II / ARM Cortex-A9 HPS).

Phương pháp nghiên cứu và phát triển (Methodology)

Dự án áp dụng quy trình thiết kế phần cứng chuẩn V-Model kết hợp các chu kỳ phát triển linh hoạt (Hardware Agile Sprints) trên nền tảng RTL:

[ Phân tích thuật toán CORDIC/Hough ]
                  |
                  v
[ Mô hình hóa mức phần mềm (C/OpenCV/MATLAB) ]
                  |
                  v
[ Thiết kế kiến trúc RTL (Verilog HDL) ]
                  |
                  v
[ Mô phỏng chức năng & Chu kỳ (ModelSim Testbench) ]
                  |
                  v
[ Tổng hợp mạch, Phân tích Timing (Quartus Prime) ]
                  |
                  v
[ Kiểm thử thực tế trên KIT FPGA DE1-SoC & Camera NTSC ]

Implementation và kết quả

Chi tiết các khối thuật toán phần cứng

1. Bộ giải mã ITU-R BT.656 và Trích xuất khung hình

Dữ liệu từ ADV7180 truyền theo luồng 8-bit tại tần số 27 MHz. Khối ITU-R BT.656 DECODER thực hiện bắt mã SAV (Start of Active Video) và EAV (End of Active Video). Cấu trúc mã đồng bộ 4 byte: 0xFF 0x00 0x00 0xXY.

Khối DIVIDER loại bỏ điểm ảnh thứ 9 bằng phép chia số nguyên để chuyển đổi độ phân giải ngang từ 720 về 640 điểm ảnh hoạt động, đồng thời loại bỏ các dòng Vertical Blanking để thu về khung hình $640 \times 480$.

// Trích xuất điểm ảnh hợp lệ bằng cách loại bỏ điểm ảnh thứ 9
module pixel_decimator (
    input  wire        clk,
    input  wire        rst_n,
    input  wire [9:0]  tv_x,
    output reg         pixel_valid
);
    always @(posedge clk or negedge rst_n) begin
        if (!rst_n)
            pixel_valid <= 1'b0;
        else begin
            // Kiểm tra điểm ảnh thứ 9 thông qua số dư (tv_x % 9 == 0)
            if ((tv_x % 9) == 0)
                pixel_valid <= 1'b0; // Bỏ qua điểm ảnh thứ 9
            else
                pixel_valid <= 1'b1;
        end
    end
endmodule

2. Tiền xử lý không gian màu và Bộ lọc hình ảnh

Chuyển đổi YCbCr sang RGB bằng các phép toán dịch bit số nguyên xấp xỉ thay vì sử dụng dấu chấm động:

$$\begin{cases} R = Y + 1.402(Cr - 128) \approx Y + \left[((Cr - 128) \times 359) \gg 8\right] \ G = Y - 0.344(Cb - 128) - 0.714(Cr - 128) \approx Y - \left[((Cb - 128) \times 88) \gg 8\right] - \left[((Cr - 128) \times 183) \gg 8\right] \ B = Y + 1.772(Cb - 128) \approx Y + \left[((Cb - 128) \times 454) \gg 8\right] \end{cases}$$

Chuyển đổi mức xám Gray thực thi trực tiếp bằng toán tử logic dịch phải:

$$\text{GRAY} = 0.299R + 0.587G + 0.114B \approx (R \gg 2) + (G \gg 1) + (B \gg 3)$$

Khối GRID GENERATOR triển khai các hàng Line Buffer bên trong FPGA để tạo cửa sổ trượt $5 \times 5$ cho bộ lọc Gauss và $3 \times 3$ cho toán tử Sobel.

// Toán tử Sobel 3x3 tính Gradient theo trục X và Y
module sobel_operator (
    input  wire        clk,
    input  wire [7:0]  p00, p01, p02,
    input  wire [7:0]  p10,      p12,
    input  wire [7:0]  p20, p21, p22,
    output reg  [7:0]  sobel_out
);
    reg signed [10:0] gx, gy;
    reg [10:0] abs_gx, abs_gy;
    wire [10:0] sum_g;

    always @(posedge clk) begin
        // Tính đạo hàm không gian xấp xỉ
        gx <= (p02 + (p12 << 1) + p22) - (p00 + (p10 << 1) + p20);
        gy <= (p00 + (p01 << 1) + p02) - (p20 + (p21 << 1) + p22);

        abs_gx <= (gx < 0) ? -gx : gx;
        abs_gy <= (gy < 0) ? -gy : gy;

        sobel_out <= ((abs_gx + abs_gy) > 8'd100) ? 8'd255 : 8'd0;
    end
endmodule

3. Thuật toán CORDIC Hough Transform trên phần cứng

Biến đổi Hough chuyển đổi không gian ảnh $(x, y)$ sang không gian tham số $(r, \theta)$ thông qua phương trình:

$$r = x\cos\theta + y\sin\theta$$

Thuật toán CORDIC tiếp cận bằng cách quay vector lặp với góc vi sai $\alpha_i = \arctan(2^{-i})$, biến đổi phép nhân ma trận quay thành các phép cộng trừ và dịch bit liên tiếp:

$$\begin{cases} r_i = \left( r_{i-1} \pm r'{i-1} \cdot 2^{-i} \right) \cdot K_i \ r'i = \left( r'{i-1} \mp r{i-1} \cdot 2^{-i} \right) \cdot K_i \end{cases}$$

Trong đó $K_i$ là hệ số co giãn (Scale Factor). Không gian góc quét $\theta \in [0^\circ, 180^\circ]$ được chia làm 3 vùng vi sai (Region I, II, III). Khối VOTE ARRAY tăng giá trị ô nhớ $A(r, \theta)$ tương ứng với mỗi điểm biên được phát hiện. Điểm có số phiếu cao nhất (Max Peak) sau khi quét hết khung hình chính là thông số đại diện cho làn đường.

// Lõi vi sai CORDIC Hough tính bán kính r
module cordic_hough_step (
    input  wire        clk,
    input  wire signed [15:0] r_in,
    input  wire signed [15:0] r_prime_in,
    input  wire [3:0]         shift_stage,
    input  wire               dir, // 1: Cộng, 0: Trừ
    output reg  signed [15:0] r_out,
    output reg  signed [15:0] r_prime_out
);
    always @(posedge clk) begin
        if (dir) begin
            r_out       <= r_in + (r_prime_in >>> shift_stage);
            r_prime_out <= r_prime_in - (r_in >>> shift_stage);
        end else begin
            r_out       <= r_in - (r_prime_in >>> shift_stage);
            r_prime_out <= r_prime_in + (r_in >>> shift_stage);
        end
    end
endmodule

4. Động học lái Ackermann

Sau khi trích xuất được 2 cặp $(r_1, \theta_1)$ cho vạch trái và $(r_2, \theta_2)$ cho vạch phải, góc chuyển hướng được xác định dựa trên nguyên lý Ackermann:

$$\delta_i = \arctan\left(\frac{L}{R - \frac{T}{2}}\right), \quad \delta_o = \arctan\left(\frac{L}{R + \frac{T}{2}}\right)$$

Quy tắc điều khiển phần cứng:

  • RẼ TRÁI (LEFT): $\theta_1 > \theta_2 + \epsilon_{\text{threshold}}$
  • RẼ PHẢI (RIGHT): $\theta_1 < \theta_2 - \epsilon_{\text{threshold}}$
  • ĐI THẲNG (STRAIGHT): $|\theta_1 - \theta_2| \le \epsilon_{\text{threshold}}$

Kết quả thử nghiệm và Đánh giá hiệu năng

Bảng tổng hợp tài nguyên phần cứng (FPGA Resource Utilization)

Hệ thống được tổng hợp và kiểm tra thực tế trên FPGA Intel Cyclone V 5CSEMA5F31C6:

Tài nguyên phần cứng Sử dụng bởi Pre-Processing Sử dụng bởi Hough Core Tổng cộng hệ thống Giới hạn phần cứng FPGA Tỷ lệ sử dụng (%)
Logic Utilization (ALMs) 2,450 5,820 8,270 32,070 25.78%
Dedicated Logic Registers 3,120 7,450 10,570 64,140 16.48%
Block Memory Bits (M10K) 184,320 368,640 552,960 4,065,280 13.60%
DSP Blocks (18x18) 4 0 (Dùng CORDIC) 4 87 4.59%
Tần số hoạt động cực đại ($F_{max}$) 112.5 MHz 69.42 MHz 69.42 MHz - -
Tốc độ xử lý (Frame Rate) 60 fps 60 fps 60 fps - Đạt chuẩn NTSC
+-----------------------------------------------------------------------------+
|               SO SÁNH THỜI GIAN XỬ LÝ KHUNG HÌNH (PROCESSING LATENCY)        |
+-----------------------------------------------------------------------------+
 Software Hough (Embedded CPU) [=========== 250 - 400 ms ===========] (2.5 fps)
 Hardware Canny-Hough [7]      [==== 41.6 ms ====] (24 fps)
 Hardware Sobel-Kalman [8]     [=== 40.0 ms ===] (25 fps)
 Proposed CORDIC-Hough         [= 16.6 ms =] (60 fps - Real-time NTSC)
+-----------------------------------------------------------------------------+

Đổi mới và đóng góp khoa học

  1. Khử hoàn toàn phép toán lượng giác phức tạp trên phần cứng: Việc thay thế phương trình Hough truyền thống bằng thuật toán vi xoay tọa độ CORDIC giúp giảm mức sử dụng khối DSP xuống chỉ còn 4.59%, loại bỏ bảng tra ROM kích thước lớn và cho phép tăng tính song song cực hạn trên FPGA.
  2. Kiến trúc Pipeline xử lý trực tiếp dòng video (On-the-fly Video Pipeline): Hệ thống không ghi toàn bộ khung hình vào SDRAM ngoài để xử lý, mà áp dụng cơ chế giải quyết điểm ảnh trực tiếp qua Line Buffer On-chip. Điều này giúp giảm độ trễ xử lý từ mức hàng trăm mili-giây trên phần mềm xuống chỉ còn $\approx 16.6\text{ ms}$ (tương đương tốc độ quét 60 fps).
  3. Chiến lược phân vùng không gian (Dual-Region Space Decomposition): Khung hình được thu nhỏ về $160 \times 120$ và phân tách thành 2 vùng độc lập $80 \times 120$. Phương pháp này giảm không gian tích lũy biến đổi Hough đi 4 lần, đồng thời tăng gấp đôi tốc độ tính toán phát hiện vạch kẻ hai bên đường.
  4. Tích hợp mô hình Ackermann trực tiếp: Cung cấp tín hiệu điều hướng nhị phân trực tiếp cho hệ thống cơ điện tử xe mà không cần qua tầng vi xử lý trung gian, giảm thiểu rủi ro trễ lệnh trong các tình huống khẩn cấp.

Ứng dụng thực tế và triển khai

Hệ thống có khả năng ứng dụng rộng rãi trong các hệ thống điều khiển công nghiệp và phương tiện thông minh:

                  +----------------------------------+
                  |    ỨNG DỤNG THỰC TẾ HỆ THỐNG     |
                  +----------------------------------+
                                    |
        +---------------------------+---------------------------+
        |                                                       |
        v                                                       v
+-------------------------------+               +-------------------------------+
|     XE TỰ HÀNH AGV / AMR      |               |     HỆ THỐNG ADAS THƯƠNG MẠI  |
|  - Dẫn đường nhà xưởng        |               |  - Cảnh báo chệch làn (LDWS)  |
|  - Chống nhiễu ánh sáng       |               |  - Hỗ trợ giữ làn (LKA)       |
|  - Phản hồi tức thời <16.6ms  |               |  - Tích hợp CAN bus xe hơi    |
+-------------------------------+               +-------------------------------+

Lộ trình triển khai (Deployment Roadmap)

  • Giai đoạn 1 (Thiết kế & Mô phỏng): Tối ưu hóa kiến trúc RTL trên ModelSim và xác thực giải thuật CORDIC trên Quartus Prime.
  • Giai đoạn 2 (Thực nghiệm Lab): Kết nối camera analog với kit DE1-SoC, kiểm thử nhận diện trên mô hình sa bàn làn đường chuẩn với các điều kiện nét liền, nét đứt và ngã rẽ.
  • Giai đoạn 3 (Đóng gói IP Core & Tích hợp công nghiệp): Đóng gói lõi xử lý thành AXI/Avalon IP Core chuẩn, tích hợp lên hệ thống chip SoC-FPGA kết nối với bộ điều khiển động cơ qua bus CAN/UART.

Hạn chế và hướng phát triển

Hạn chế hiện tại

  • Độ cong làn đường lớn: Thuật toán Hough Transform tuyến tính hoạt động hiệu quả nhất với các đoạn đường thẳng hoặc có độ cong vừa phải; với các khúc cua có bán kính gấp, hệ thống cần bổ sung thuật toán khớp đường cong Parabol hoặc Spline.
  • Điều kiện ánh sáng biến động mạnh: Khi môi trường bị lóa sáng diện rộng hoặc bóng râm phức tạp, cơ chế trích xuất điểm ảnh sáng nhất có thể chọn nhầm các điểm biên giả.

Hướng phát triển

  1. Bổ sung bộ lọc Kalman thích nghi (Adaptive Kalman Filter) trên phần cứng để theo vết tọa độ vạch kẻ đường liên tục giữa các khung hình liên tiếp.
  2. Tích hợp mạng nơ-ron tích chập siêu nhẹ (Tiny-CNN / BNN) trên FPGA để phân loại nâng cao bề mặt đường và nhận diện vạch kẻ trong điều kiện thời tiết khắc nghiệt (mưa, ban đêm).
  3. Mở rộng giao tiếp cảm biến hợp nhất (Sensor Fusion) với LiDAR 2D và cảm biến góc lái IMU.

Đối tượng hưởng lợi

+-----------------------------------------------------------------------------+
|                           GIÁ TRỊ MANG LẠI                                  |
+-----------------------------------------------------------------------------+
  Sinh viên & Nghiên cứu sinh : Tài liệu mẫu mực về thiết kế vi mạch xử lý ảnh
  Kỹ sư thiết kế FPGA/RTL     : Codebase tối ưu CORDIC & Pipeline Video streaming
  Doanh nghiệp xe tự hành/AGV : Giải pháp phần cứng chi phí thấp, đáp ứng 60 fps
  Cộng đồng học thuật         : Đóng góp phương pháp tối ưu hóa Hough Transform
+-----------------------------------------------------------------------------+
  • Sinh viên & Nghiên cứu sinh Kỹ thuật Máy tính: Nắm bắt phương pháp chuyển đổi thuật toán phức tạp từ toán học sang kiến trúc RTL thực tế, làm chủ các giao tiếp video tiêu chuẩn (ITU-R BT.656, VGA).
  • Kỹ sư Phần cứng / Vi mạch (RTL Engineers): Tham khảo kiến trúc thiết kế bộ đệm dòng (Line Buffer), giải thuật CORDIC pipeline không sử dụng DSP và cơ chế xử lý video dòng thời gian thực.
  • Doanh nghiệp Sản xuất Xe tự hành & Robot công nghiệp: Ứng dụng ngay giải pháp điều hướng chi phí phần cứng thấp, hoạt động độc lập và ổn định cao trên các dòng FPGA tầm trung mà không cần GPU đắt tiền.

Câu hỏi thường gặp

1. Yêu cầu phần cứng tối thiểu để triển khai kiến trúc này là gì?

Hệ thống yêu cầu dòng FPGA có tối thiểu $10\text{K}$ ALMs (hoặc $\approx 25\text{K}$ Logic Elements), $500\text{ Kbits}$ On-chip Block RAM để tạo Line Buffer và không gian bỏ phiếu Hough, cùng giao diện tương thích Video Decoder (như ADV7180 hoặc tương đương). Kit FPGA Cyclone V DE1-SoC là nền tảng hoàn chỉnh để thực thi.

2. Tại sao CORDIC lại vượt trội hơn bảng tra sin/cos (LUT) trong ứng dụng này?

Mặc dù bảng tra ROM (LUT) có thể truy xuất nhanh, nhưng việc tính toán đồng thời cho nhiều điểm biên trên không gian góc quét liên tục đòi hỏi nhiều cổng truy xuất đồng thời (Multi-port Read Bottleneck) hoặc nhân bản bộ nhớ ROM, gây lãng phí Block RAM. Lõi CORDIC Pipeline cho phép tính toán dòng liên tục mỗi chu kỳ xung nhịp chỉ bằng các bộ cộng/trừ và dịch bit, đạt hiệu suất diện tích silicon tối ưu.

3. Hệ thống xử lý các vạch kẻ đường nét đứt như thế nào?

Bản chất của thuật toán Hough Transform là tích lũy không gian tham số $(r, \theta)$. Các đoạn đứt gãy của cùng một vạch kẻ đường vẫn có cùng hướng nghiêng $\theta$ và khoảng cách $r$. Khi tích lũy vào VOTE ARRAY, các điểm này cộng dồn tạo thành đỉnh cực đại rõ rệt, do đó hệ thống nhận diện làn đường nét đứt với độ ổn định tương đương nét liền.

4. Hệ thống có thể mở rộng lên luồng video độ phân giải Full HD (1080p) không?

Có thể. Nhờ kiến trúc Pipeline trực tiếp, hệ thống có thể mở rộng lên chuẩn 1080p bằng cách tăng dung lượng hàng của bộ đệm Line Buffer trong khối GRID GENERATOR và nâng xung nhịp pixel clock lên $148.5\text{ MHz}$.

5. Chi phí phần cứng và thời gian hoàn vốn (ROI) khi thương mại hóa cho xe AGV?

So với việc sử dụng máy tính nhúng công nghiệp tích hợp GPU (chi phí từ $500 - $1500, công suất tiêu thụ 15W - 30W), giải pháp SoC-FPGA chuyên dụng chỉ tiêu tốn chi phí linh kiện khoảng $80 - $120 với công suất tiêu thụ dưới 3W. Thời gian hoàn vốn đầu tư phần cứng cho đội xe AGV nhà xưởng ước tính dưới 6 tháng nhờ tối ưu năng lượng và độ bền phần cứng công nghiệp.


Kết luận

Đề tài "Hệ thống điều hướng tự động dựa trên phần cứng" đã giải quyết triệt để bài toán nhận diện làn đường thời gian thực bằng cách kết hợp sức mạnh xử lý song song của FPGA với giải thuật vi xoay CORDIC. Bằng việc tối ưu hóa chuỗi tiền xử lý video ITU-R BT.656, xây dựng bộ lọc không gian trực tiếp và loại bỏ hoàn toàn các phép toán dấu chấm động trong biến đổi Hough, hệ thống đạt tốc độ xử lý chuẩn $60\text{ fps}$ tại tần số $69.42\text{ MHz}$ trên FPGA Intel Cyclone V. Kết quả nghiên cứu không chỉ chứng minh tính khả thi vượt bậc của việc hiện thực hóa thuật toán thị giác máy tính trên phần cứng chuyên dụng, mà còn mở ra hướng đi hiệu quả, tiết kiệm chi phí cho các ứng dụng ADAS và xe tự hành công nghiệp thế hệ mới.