Thuật toán chuyển đổi từ không gian màu RGB sang IHLS

Một phần của tài liệu NHẬN DIỆN BIỂN BÁO GIAO THÔNG DÙNG KỸ THUẬT XỬ LÝ ẢNH TRÊN NỀN VI ĐIỀU KHIỂN (Trang 33)

Thuật toán nhận diện đối tượng dựa trên màu sắc của đối tượng đó dựa trên không gian màu IHSL (Improved Hue Luminance Saturation) [7]

Mục đích của thuật toán, đầu vào là ảnh RGB, đầu ra là ảnh trắng đen với những pixel trắng là pixel giống màu tham khảo, ngược lại pixel đó có màu đen.

Không gian màu IHLS được lựa chọn để tránh việc biến đổi theo độ sáng. Ngưỡng lựa chọn linh động theo giá trị độ sáng của tất cả các pixel chứ không cố định như việc sử dụng YcbCr rồi chọn 1 ngưỡng Cr. Bên cạnh tính hiệu quả cao, nó cũng có nhược điểm là quá trình tính toán phức tạp, sẽ làm tăng kích thước chương trình và tốc độ xử lý chậm đi.

Thuật toán được áp dụng cho từng giá trị pixel, gồm các bước sau :

Bước 1: Chuyển từ không gian màu RGB sang không gian màu IHSL theo công thức sau: 𝑆 = max(𝑅, 𝐺, 𝐵) − min⁡(𝑅, 𝐺, 𝐵) (3.4) 𝐿 = 0.2125𝑅 + 0.7154𝐺 + 0.0721𝐵 (3.5) 𝜃𝐻 = { 0, 𝑛ế𝑢⁡𝑐𝑟 = 0 arccos (𝑐𝑟1 𝑐𝑟) , 𝑛ế𝑢⁡𝑐𝑟 ≠ 0⁡𝑣à⁡𝑐𝑟2 ≤ 0⁡ 3600− arccos (𝑐𝑟1 𝑐𝑟) , 𝑛ế𝑢⁡𝑐𝑟 ≠ 0⁡𝑣à⁡𝑐𝑟2 > 0 (3.6) Trong đó:

𝑅, 𝐺, 𝐵 lần lượt là các giá trị đỏ, lục, lam của pixel trong không gian màu RGB

𝑐𝑟1 = 𝑅 −𝐺+𝐵

2 (3.7)

𝑐𝑟2 =√3

2 (𝐵 − 𝐺) (3.8) 𝑐𝑟 = √𝑐𝑟12+ 𝑐𝑟22 (3.9)

16

Vì 𝜃𝐻 ∈ [0, 3590], 𝑆 ∈ [0,255], 𝐿 ∈ [0,255], ta chuẩn hóa 𝜃𝐻 về [0,255] để phù hợp với kiểu dữ liệu 8 bit, thuận tiện cho việc tính toán:

𝜃𝐻 =255359𝜃𝐻 (3.10)

Bước 2: Tính ngưỡng thích nghi:

𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑 = 𝑒−𝑁𝑚𝑒𝑎𝑛 (3.11)

Trong đó, 𝑁𝑚𝑒𝑎𝑛⁡được xác định như sau:

𝑁𝑚𝑒𝑎𝑛 = 1

256. 1

𝑀.𝑁∑ ∑𝑁−1𝐿(𝑖, 𝑗)

𝑗=0 𝑀−1

𝑖=0 ,với M, N là 2 kích thước của bức ảnh

Bước 3: Tính giá trị khoảng cách dựa vào H và S

𝑑 = √(𝑆2𝑐𝑜𝑠𝐻2− 𝑆1𝑐𝑜𝑠𝐻1)2+ (𝑆2𝑠𝑖𝑛𝐻2− 𝑆1𝑠𝑖𝑛𝐻1)2 (3.12) Trong đó:

𝐻1, 𝐻2 lần lượt là góc Hue của màu chuẩn và màu đang xét

𝑆1, 𝑆2 lần lượt là giá trị Saturation của màu chuẩn và màu đang xét

Hình 3.6 Hình tròn không gian màu HSL

Nguồn:

http://vi.wikipedia.org/wiki/Kh%C3%B4ng_gian_m%C3%A0u_HSB#mediaviewer /File:HLSColorSpace.png

17

Màu chuẩn chính trong nhận diện biển báo giao thông gồm có: màu đỏ (cho các biển báo cấm, và biển báo nguy hiểm), màu vàng (cho biển báo nguy hiểm), màu

lam (cho biển báo chỉ dẫn).

Bảng 3.1 Các thông số S và H của các màu chuẩn

Màu chuẩn S H H chuẩn hóa

Đỏ 255 00 0

Vàng 255 600 42.6

Lam 255 2400 170.5

Bước 4: So sánh kết quả giữa khoảng cách tính được và giá trị ngưỡng

𝑁ế𝑢⁡𝑑 ≤ 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑⁡𝑡ℎì⁡𝑜𝑢𝑡𝑝𝑢𝑡 = 1, pixel đang xét có màu như màu chuẩn

𝑁ế𝑢⁡𝑑 > 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑⁡𝑡ℎì⁡𝑜𝑢𝑡𝑝𝑢𝑡 = 0, pixel đang xét có là background

Ví dụ 3.3: Ứng dụng thuật toán. Ta lấy màu chuẩn là màu đỏ: S = 255, H = 0

Hình 3.7 Ảnh vào

18

Ví dụ 3.4: Chọn màu chuẩn là màu lam S =255, H =170.5

Hình 3.9 Ảnh vào

Hình 3.10 Ảnh ra

Nhận xét:

Phương pháp chuyển sang không gian màu IHLS so với phương pháp chuyển qua YCBCr có cả các ưu điểm và nhược điểm. Ưu điểm là áp dụng được cho nhiều màu sắc, chỉ cần xác định được màu chuẩn, và không cần phải chọn ngưỡng vì nó thay đổi linh động theo từng bức ảnh. Tuy nhiên, khối lượng tính toán cho thuật toán này lại phức tạp và cồng kềnh.

19

Một phần của tài liệu NHẬN DIỆN BIỂN BÁO GIAO THÔNG DÙNG KỸ THUẬT XỬ LÝ ẢNH TRÊN NỀN VI ĐIỀU KHIỂN (Trang 33)

Tải bản đầy đủ (PDF)

(97 trang)