Nghiên cứu Khoa học
Tách biên ảnh sử dụng phương pháp Sobel trên FPGA
Sơ đồ khối hệ thống thiết kế
Hình 1: Sơ đồ khối hệ thống tách biên ảnh sử dụng phương pháp Sobel
1. Khối bộ nhớ
Hình 2: Sơ đồ thiết kế khối bộ nhớ
Khối bộ nhớ :vì khối phát hiện biên Sobel chỉ nhận một pixel 8 bit duy nhất khi tín hiệu i_valid cao, nên đơn vị phải có khả năng lưu trữ tám pixel 8 bit đầu tiên cho đến khi nhận được pixel thứ 9. Ý tưởng chính của mô-đun bộ nhớ là bộ đếm chương trình PC được tăng lên cho mỗi pixel nhận được (khi i_valid có cạnh tăng). Số lượng pixel nhận được xác định giá trị của PC, giá trị này xác định vị trí đặt dữ liệu pixel 8 bit đã nhận vào vector đầu ra 72 bit lớn hơn. Khi nhận được pixel cuối cùng, PC được đặt lại về 0 và mem_status tín hiệu 1 bit được đặt ở mức cao, báo hiệu rằng 9 pixel đã được nhận và đơn vị có thể di chuyển trên các phép tính.
2. Khối tính toán đạo hàm:
Hình 3: Các tín hiệu ra của khối tín hiệu đạo hàm
Khối tính toán đạo hàm : Sau khi nhận trạng thái từ khối bộ nhớ và các pixel ảnh đầu vào, khối tính toán đạo hàm nhằm tính toán các đạo hàm dọc theo bốn hướng của một cạnh NE / SW, N / S, E / W và NW / SE để xác định các giá trị biên.
3. Khối đạo hàm cực đại
Hình 4: Các tín hiệu ra của khối đạo hàm cực đại
Khối đạo hàm cực đại :tìm đạo hàm cực đại, hướng đạo hàm max và giá trị đạo hàm cho hướng vuông góc. Bốn vectơ logic chuẩn 11 bit đại diện cho các giá trị đạo hàm có hướng được nhận làm đầu vào. Ở phía đầu ra, chỉ thị cực đại và đạo hàm theo hướng vuông góc được giải mã dưới dạng vectơ logic chuẩn 11 bit. Tín hiệu 3 bit đại diện cho hướng của cạnh cũng là một phần của các đầu ra. Đầu tiên hệ thống tính toán các giá trị đạo hàm cực đại và hướng của nó. Sau đó, giá trị đạo hàm vuông góc với hướng được định vị và gửi đến đầu ra.
4. Khối phân tích và lọc ngưỡng:
Hình 5: Các tín hiệu ra của khối lọc ngưỡng
Khối phân tích và lọc ngưỡng :khi thành phần phụ đạo hàm tối đa đã hoàn tất quá trình xử lý, dữ liệu sẽ di chuyển trên thành phần phụ tính toán cuối cùng, ngưỡng. Mã trong thành phần phụ này bao gồm một câu lệnh if duy nhất, kiểm tra xem đạo hàm + đạo hàm cực đại theo hướng vuông góc / 8 có bằng hoặc lớn hơn 80 hay không. Việc thêm “/ 8” vào phương trình sẽ giảm trọng lượng hướng vuông góc và giá trị 80 là tùy ý và do đó có thể được đặt thành bất kỳ giá trị mong muốn nào. Nếu sự bình đẳng của câu lệnh if được đáp ứng, thì thiết bị điều khiển được thông báo rằng chín pixel được kiểm tra có chứa một cạnh và hướng của cạnh. Ngược lại, nó sẽ thông báo rằng không có cạnh và đặt hướng thành “000”. Khi câu lệnh if được đánh giá, thành phần phụ này đặt tín hiệu đầu ra 1 bit calc_status thành '1',
5. Máy trạng thái
Hình 6 Thiết kế khối máy trạng thái
Máy trạng thái có chức năng chính dùng để xác định trạng thái của toàn bộ hệ thống trên các yếu tố đầu vào và gửi trạng thái tương ứng đầu ra . Ngoài ra nó còn nhận tín hiệu từ module nhớ và module tính toán đạo hàm và lọc ngưỡng để cho ra tín hiệu đã phát hiện cạnh và trạng thái hiện tại ( trạng thái chờ , tính toán , reset).