Hệ thống tự động phát hiện và nhận dạng biển báo giao thông áp dụng các kỹ thuật xử lý ảnh và thị giác máy tính đã và đang được nhiều nhà nghiên cứu quan tâm.. Trong giai đoạn phát hiện
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
TRẦN THU MAI
XÂY DỰNG ỨNG DỤNG TỰ ĐỘNG PHÁT HIỆN VÀ NHẬN DẠNG BIỂN BÁO GIAO THÔNG ĐƯỜNG BỘ
LUẬN VĂN THẠC SĨ KỸ THUẬT
Đà Nẵng - Năm 2017
Trang 2ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
TRẦN THU MAI
XÂY DỰNG ỨNG DỤNG TỰ ĐỘNG PHÁT HIỆN VÀ NHẬN DẠNG BIỂN BÁO GIAO THÔNG ĐƯỜNG BỘ
Chuyên ngành : Khoa học máy tính
Mã số : 60.48.01.01
LUẬN VĂN THẠC SĨ KỸ THUẬT
Người hướng dẫn khoa học: TS TRẦN THẾ VŨ
Đà Nẵng - Năm 2017
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan kết quả của luận văn này là công trình nghiên cứu của riêng cá
nhân tôi dưới sự hướng dẫn trực tiếp của TS.Trần Thế Vũ
Mọi tài liệu tham khảo trong luận văn đều được trích dẫn rõ ràng tên tác giả, tên
công trình, thời gian và địa điểm công bố
Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa từng
được ai công bố trong bất kỳ công trình nào khác
Người cam đoan
Trần Thu Mai
Trang 4TÓM TẮT LUẬN VĂN
XÂY DỰNG ỨNG DỤNG TỰ ĐỘNG PHÁT HIỆN VÀ NHẬN DẠNG BIỂN
BÁO GIAO THÔNG ĐƯỜNG BỘ
Học viên: Trần Thu Mai Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01 Khóa: 31 Trường Đại học Bách khoa - ĐHĐN
Tóm tắt - Ngày nay, công nghệ thông tin đang phát triển và ứng dụng rộng rãi trong
nhiều lĩnh vực, trong đó có lĩnh vực giao thông Hệ thống tự động phát hiện và nhận dạng biển báo giao thông áp dụng các kỹ thuật xử lý ảnh và thị giác máy tính đã và đang được nhiều nhà nghiên cứu quan tâm
Trong luận văn, để đáp ứng được yêu cầu bài toán phát hiện và nhận dạng biển báo giao thông phải thực hiện thông qua nhiều giai đoạn
Giai đoạn thứ nhất là thu thập dữ liệu ảnh đầu vào cho việc nhận dạng bằng cách
là chụp ảnh và quay lại các video có biển báo trên các tuyến đường sau đó điều chỉnh các hình ảnh về cùng một kích thước là 640x480 để tiện cho việc xử lý sau này Hình ảnh sau khi được điều chỉnh về cùng một kích thước sẽ được chuyển sang không gian màu HSV để xử lý phân đoạn màu dựa trên đặc trưng màu của biển báo là màu đỏ và màu xanh lơ
Trong giai đoạn phát hiện biển báo, kỹ thuật dò biên và phân tích hình dạng đặc trưng của đối tượng được áp dụng để tìm ra các vùng có khả năng là biển báo Tiếp theo
đó các vùng này sẽ được cắt ra phục vụ cho việc nhận dạng
Để huấn luyện và nhận dạng đối tượng mô hình máy học được xây dựng kết hợp với rút trích đặc trưng Surf gán các điểm nổi bật và hướng cho các đối tượng Sau khi đã
có bộ mô tả thì phần tạo lập chỉ mục và so khớp dữ liệu được áp dụng để nhận dạng đúng loại biển báo trong danh sách dữ liệu mẫu
Trong luận văn đã huấn luyện và nhận dạng khoảng 30 biển báo giao thông thuộc các nhóm: biển báo cấm, biển báo nguy hiểm, biển báo chỉ dẫn và biển báo hiệu lệnh Kết quả đạt trên 90% đối với từng loại biển báo
Từ khóa - Tự động phát hiện và nhận dạng biển báo giao thông; thị giác máy tính;
không gian màu HSV; máy học; đặc trưng Surf
Trang 5BUILDING APPLICATION FOR TRAFFIC ROAD SIGN AUTOMATIC
DETECTION AND RECOGNITION Abstract - Nowadays, information technology is developing and widely applied in
many fields, including the field traffic The detection and recognition of traffic control signs system using handle image technique and computer vision have been attracted by many researchers
In this thesis, the detection and recognition of traffic control signs problem is resolved through many phase
The first phase, input image data is collected for recognition by the way taking a picture and video there are traffic signs on the routes, then the images are adjusted to the same size is 640x480 Images that are adjusted to the same size will be switched to the HSV color space to process the color segment based on the red and blue
The traffic sign detection phase, the detection of object edge and analysis of the edge shape technique are used to figure out the image areas which are capable of the traffic signs Then these areas will be croped for for recognition
To train and recognition object, machine learning model are built in conjunction with Surf feature to calculate keypoint and direction of objects Once a descriptor was created, the indexing and matching are applied to recognition the traffic sign in the sample data list
In the thesis, have been trained and recognited about 30 traffic signs in the following groups: forbidden sign, hazardous sign, instructive sign, command sign Results of over 90% for each type of signs
Keyworks - The detection and recognition of traffic control signs; computer vision;
HSV color space; machine learning; Surf feature
Trang 6MỤC LỤC
LỜI CAM ĐOAN i
TÓM TẮT LUẬN VĂN ii
MỤC LỤC iiiv
DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT vii
DANH MỤC CÁC BẢNG viii
DANH MỤC CÁC HÌNH ix
CHƯƠNG 1 MỞ ĐẦU 1
1.1 Lý do chọn đề tài 1
1.1.1 Bối cảnh chung 1
1.1.2 Phương pháp thực hiện 2
1.2 Mục tiêu và nhiệm vụ của đề tài 3
1.2.1 Mục tiêu 3
1.2.2 Nhiệm vụ 3
1.3 Đối tượng và phạm vi nghiên cứu 3
1.3.1 Đối tượng nghiên cứu 3
1.3.2 Phạm vi nghiên cứu 4
1.4 Phương pháp nghiên cứu 4
1.4.1 Phương pháp lý thuyết 4
1.4.2 Phương pháp thực nghiệm 4
1.5 Mục đích và ý nghĩa của đề tài 4
1.5.1 Mục đích 4
1.5.2 Ý nghĩa khoa học và thực tiễn đề tài 5
1.6 Bố cục luận văn 5
CHƯƠNG 2 NGHIÊN CỨU TỔNG QUAN 7
2.1 Báo hiệu giao thông đường bộ 7
2.2 Tổng quan về xử lý ảnh 7
2.2.1 Xử lý ảnh là gì? 7
2.2.2 Một số khái niệm trong xử lý ảnh 8
2.3 Các mô hình màu 9
2.3.1 Giới thiệu 9
2.3.2 Mô hình màu RGB 9
2.3.3 Mô hình màu HLS 10
2.3.4 Mô hình màu IHLS 10
2.3.5 Mô hình màu HSV 11
Trang 72.4 Lọc số ảnh 13
2.4.1 Lọc số ảnh là gì? 13
2.4.2 Nhân chập ảnh với phép lọc số ảnh 13
2.4.3 Một số kỹ thuật lọc nhiễu 14
2.4.3.1 Lọc trung bình 14
2.4.3.2 Lọc trung vị [5] 15
2.4.3.3 Lọc thông thấp 16
2.4.3.4 Lọc thông cao 16
2.5 Các phép toán hình thái học 16
2.5.1 Giới thiệu 16
2.5.2 Phép toán giãn nở (dilation) 16
2.5.3 Phép toán co (erosion) 17
2.5.4 Phép toán mở và đóng (opening, closing) 17
2.6 Phân vùng ảnh 17
2.6.1 Phân vùng theo ngưỡng biên độ 18
2.6.2 Phân vùng theo miền đồng nhất 19
2.6.2.1 Phương pháp tách cây tứ phân 19
2.6.2.2 Phương pháp cục bộ 21
2.6.2.3 Phương pháp tổng hợp 21
2.6.3 Phân vùng theo kết cấu bề mặt 21
2.6.4 Phân vùng dựa trên sự phân lớp điểm ảnh 22
2.6.4.1 Mô hình bài toán 22
2.6.4.2 Thuật toán 22
2.7 Phát hiện biên 23
2.7.1 Phát hiện biên trực tiếp 23
2.7.1.1 Kỹ thuật phát hiện biên Gradient 23
2.7.1.2 Kỹ thuật phát hiện biên Laplace [4] 25
2.7.1.3 Kỹ thuật phát hiện biên Canny [4] 25
2.7.2 Phát hiện biên gián tiếp 26
2.8 Máy học (machine learning) 27
2.8.1 Giới thiệu 27
2.8.2 Các loại giải thuật 27
2.9 Các hướng tiếp cận nhận dạng hình ảnh 28
2.9.1 Giới thiệu 28
2.9.2 Đặc trưng HOG 28
2.9.3 Đặc trưng Sift (Scale invariant feature transform) 30
Trang 82.9.3.1 Xây dựng không gian tỉ lệ 30
2.9.3.2 Dò tìm cực trị cục bộ 31
2.9.3.3 Loại bỏ keypoint có độ tương phản (contrast) thấp 31
2.9.3.4 Loại bỏ keypoint nằm trên biên cạnh 32
2.9.3.5 Gán hướng cho keypoint 33
2.9.3.6 Miêu tả đặc trưng 33
2.9.4 Đặc trưng Surf (Speed Up Robust Features) 33
2.9.4.1 Giới thiệu 33
2.9.4.2 Xác định điểm nổi bật [12][17] 34
2.9.4.3 Gán hướng cho điểm nổi bật và mô tả đặc trưng Surf [12] 35
2.9.4.4 Lập chỉ mục và so khớp 36
CHƯƠNG 3 GIẢI PHÁP ĐỀ XUẤT XÂY DỰNG HỆ THỐNG 37
3.1 Sơ đồ tổng quát giải quyết bài toán 37
3.2 Thu thập dữ liệu 37
3.3 Xử lý dữ liệu đầu vào 38
3.4 Phát hiện và nhận dạng đối tượng 39
3.4.1 Phát hiện và trích xuất vùng đặc trưng 39
3.4.1.1 Đặc trưng biển báo 39
3.4.1.2 Phương pháp phát hiện biển báo 39
3.4.1.3 Trích xuất vùng đặc trưng 43
3.4.2 Nhận dạng đối tượng biển báo bằng đặc trưng Surf 44
CHƯƠNG 4 TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 46
4.1 Môi trường triển khai 46
4.2 Kết quả thực nghiệm 46
4.3 Đánh giá 52
KẾT LUẬN 53
DANH MỤC TÀI LIỆU THAM KHẢO 54 QUYẾT ĐỊNH GIAO ĐỀ TÀI
BẢN SAO KẾT LUẬN CỦA HỘI ĐỒNG, BẢN SAO NHẬN XÉT CỦA CÁC PHẢN BIỆN
Trang 9DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT
CÁC CHỮ VIẾT TẮT:
Adaboots Adaptive Boosting
CMYK Cyan, Magenta, Yellow an Key
HLS Hue, Luminance and Saturation
HOG Histograms of Oriented Gradients
HSV Hue, Saturation and Value
IHLS Improved Hue, Luminance and Saturation OpenCV Open Source Computer Vision
RGB Red, Green and Blue
SIFT Scale-Invariant Feature Transform
SURF Speed Up Robust Features
Trang 113.7 Minh họa kết quả vẽ đường bao định vị và cắt vùng ảnh
Trang 12Số hiệu
4.1 Kết quả thử nghiệm với biển báo cấm ở góc nhìn thẳng 48 4.2 Kết quả thử nghiệm với biển báo cấm ở góc nhìn nghiêng 48 4.3 Kết quả thử nghiệm với biển báo cấm bị sáng chói 49 4.4 Kết quả thử nghiệm với biển báo nguy hiểm ở góc nhìn
Trang 13bổ nâng cao đời sống văn hóa thì vấn đề về giao thông cũng từng bước được cải thiện
và phát triển mạnh mẽ góp phần vào sự phát triển chung của toàn xã hội
Giao thông luôn là một trong những vấn đề nóng của xã hội Nóng từ quy mô phát triển đến chất lượng cơ sở hạ tầng Nhưng để tham gia giao thông một cách an toàn, bên cạnh việc tuân thủ các luật giao thông đường bộ, thì một vấn đề quan trọng không kém đó là việc ghi nhớ hết ý nghĩa của các biển báo hiệu giao thông đường bộ Các biển báo hiệu này được dùng để thông báo, chỉ dẫn người tham giao thông điều khiển phương tiện lưu thông nhằm đảm bảo an toàn Hiện nay, số lượng biển báo hiệu
ở nước ta rất nhiều, việc ghi nhớ hết ý nghĩa của các biển báo hiệu là điều không dễ [19] Theo một số khảo sát cho thấy, sự mong muốn có một hệ thống có khả năng cảnh báo được trang bị trên xe giúp tài xế ý thức hơn về những nguy hiểm tiềm ẩn khi điều khiển phương tiện lưu thông đang là vấn đề cấp thiết Hơn nữa việc ứng dụng công nghệ cao trong việc tạo ra các loại xe tự điều khiển là xu hướng thiết yếu của xã hội phát triển [20][24]
Hình 1.1 Khảo sát số lượng xe tự lái từ năm 2015-2020 [24]
Trang 14Để xe tự điều khiển được an toàn bên cạnh việc kiểm soát tay lái, tốc độ, phanh, phát hiện các xe đi trên đường, phát hiện các chướng ngại vật trên đường, nhận dạng con đường và làn đường xe chạy, … thì việc phát hiện và giải thích các tín hiệu giao thông hay đơn giản hơn là việc phát hiện và nhận dạng các biển báo hiệu giao thông đường bộ là rất quan trọng để giúp hệ thống vận chuyển với một đôi mắt robot hoặc một camera trong khi lái xe trên đường Việc phát hiện và nhận dạng được các biển báo sẽ cung cấp thông tin phản hồi cho hệ thống giúp xe tự điều khiển an toàn hơn và đúng theo các quy luật đã được ban hành
1.1.2 Phương pháp thực hiện
Vấn đề xây dựng một hệ thống nhận dạng biển báo giao thông là một vấn đề lớn và có nhiều hướng tiếp cận để giải quyết bài toán Vấn đề này được các quốc gia phát triển về ngành tự động hóa quan tâm từ sớm và cũng đã cho nhiều kết quả khả quan
Phương pháp mô tả một hệ thống thị giác máy tính (Computer Vision) xử lý việc phát hiện, theo vết và nhận dạng các biển báo giao thông dựa trên màu sắc, hình dạng và thông tin trong thời gian thực Phương pháp tiếp cận này sử dụng các đặc trưng Haar kết hợp với bộ tăng tốc Adaboost để phát hiện biển báo Sau khi phát hiện
và theo vết biển báo thì biển báo được phân loại bằng mô hình Bayes Với phương pháp này có thể phát hiện và phân loại được một số biển báo giao thông với tỉ lệ chính xác cao trong điều kiện 10frames/1 giây [18] [7];
Dựa trên nền tảng chung cho việc nhận dạng và theo vết các biển báo giao thông đó là thông tin màu sắc Phương pháp tiếp cận này gồm hai thành phần Phần đầu sử dụng một tập phân phối Gauss để phát hiện đường và các biển báo giao thông Phần thứ hai là theo vết đối tượng đã được xác định ở bước trước đó Kết quả thử nghiệm cho thấy rằng hệ thống đề xuất nhận dạng trung bình trong thời gian thực với các đối tượng ở gần tuy nhiên với điều kiện tác động của ánh sáng, bóng của các đối tượng xung quanh, thời tiết, sẽ làm giảm hiệu năng của việc phát hiện và nhận dạng đối với phương pháp này [14][16];
Phương pháp áp dụng thuật toán xử lý ảnh và máy học để tự động phát hiện
và nhận dạng biển báo giao thông đường bộ sử dụng đặc trưng cục bộ HOG và mạng Nơ-ron nhân tạo cũng được nghiên cứu qua với khả năng nhận dạng cũng rất khả quan [9][13][1][22][23]
Với mong muốn góp phần vào việc ứng dụng các công nghệ tự động cho điều khiển giao thông Sau khi nghiên cứu, tìm hiểu các bài báo trong nước và quốc tế liên
quan đến cùng mảng đề tài, tôi đã chọn đề tài “Xây dựng ứng dụng tự động phát hiện
và nhận dạng biển báo giao thông đường bộ”
Trang 151.2 Mục tiêu và nhiệm vụ của đề tài
1.2.2 Nhiệm vụ
Để thực hiện được mục tiêu của đề tài, nhiệm vụ cơ bản đặt ra là phải nghiên cứu
và nắm được ý nghĩa của các loại báo hiệu giao thông đường bộ hiện nay Tìm hiểu các phương pháp, thuật toán nhận dạng hình ảnh mà cụ thể là nhận dạng biển báo giao thông
Về lý thuyết
- Tìm hiểu về lý thuyết nhận dạng hình ảnh;
- Xử lý hình ảnh thu được từ tập dữ liệu ban đầu: bao gồm tập dữ liệu hình ảnh, video, hình ảnh thu được từ camera;
- Tìm hiểu các bước phát hiện báo hiệu giao thông, các phương pháp máy học
có liên quan để phát hiện đối tượng hình ảnh;
- Tìm hiểu các bước nhận dạng báo hiệu giao thông: gồm quá trình phân tích thành phần chính và huấn luyện để nhận dạng biển báo hiệu giao thông
là thông tin cảnh báo dưới dạng hình ảnh và văn bản
1.3 Đối tượng và phạm vi nghiên cứu
1.3.1 Đối tượng nghiên cứu
Các báo hiệu giao thông đường bộ đang được sử dụng;
Trang 16Các lý thuyết xử lý ảnh Các phương pháp và giải thuật phát hiện hình ảnh như: phương pháp tiếp cận dựa trên màu sắc cho phép giảm thiểu kết quả sai lệch khi nhận dạng [15][6], phương pháp tiếp cận dựa trên màu xám tập trung vào các hình dạng của đối tượng để phát hiện và nhận dạng ra nó [10][11] Bên cạnh đó, còn nghiên cứu thêm về không gian màu, phương pháp phân đoạn màu, kỹ thuật phát hiện biên đối tượng, phân tích hình dáng và phương pháp trích đặc trưng ảnh Lý thuyết máy học;
Thư viện xử lý ảnh và thị giác máy tính nguồn mở OpenCV
1.4.2 Phương pháp thực nghiệm
Triển khai ứng dụng bắt đầu bằng việc thu thập dữ liệu (ảnh, video), thiết kế và xây dựng một hệ thống dựa trên máy tính để có thể tự động phát hiện và nhận dạng các báo hiệu giao thông từ việc cài đặt các mô-đun phát hiện và trích đặc trưng đối tượng, huấn luyện và nhận dạng các báo hiệu giao thông cho đến khi hoàn thành hệ thống
1.5 Mục đích và ý nghĩa của đề tài
1.5.1 Mục đích
Nghiên cứu, xây dựng một hệ thống dựa trên máy tính để có thể tự động phát hiện và nhận dạng các báo hiệu giao thông ứng dụng các công nghệ tự động cho điều khiển giao thông
Trang 171.5.2 Ý nghĩa khoa học và thực tiễn đề tài
Về khoa học: dựa vào các nghiên cứu khoa học, bài báo liên quan đã được công
bố trong nước và quốc tế, áp dụng và đề xuất phương pháp nhận dạng các báo hiệu giao thông đường bộ
Về thực tiễn: mô phỏng thành công phương pháp phát hiện và nhận dạng các báo
hiệu giao thông đường bộ ứng dụng vào công nghệ tự động cho điều khiển giao thông
1.1 Lý do chọn đề tài
1.2 Mục tiêu và nhiệm vụ đề tài
1.3 Đối tượng và phạm vi nghiên cứu
1.4 Phương pháp nghiên cứu
1.5 Mục đích và ý nghĩa của đề tài
1.6 Bố cục luận văn
CHƯƠNG 2 NGHIÊN CỨU TỔNG QUAN
Trong chương 2 giới thiệu về cơ sở lý thuyết Trình bày các biển báo giao thông đường bộ Việt Nam, giới thiệu các phương pháp tổng quan xử lý ảnh Trình bày các lý thuyết về không gian màu, kỹ thuật phân đoạn và lọc ảnh
để giảm nhiễu Bên cạnh đó còn trình bày kỹ thuật phát hiện biên và các phương pháp trích đặc trưng ảnh
2.1 Báo hiệu giao thông đường bộ
2.2 Các phương pháp tổng quan
2.3 Máy học
2.4 Các hướng tiếp cận nhận dạng hình ảnh
CHƯƠNG 3 GIẢI PHÁP ĐỀ XUẤT XÂY DỰNG HỆ THỐNG
Chương 3 tập trung trình bày các bước xây dựng hệ thống Nội dung bắt đầu bằng sơ đồ tổng quát các bước xây dựng hệ thống, tiếp sau đó là thu
Trang 18thập dữ liệu, phân đoạn màu phát hiện vùng ứng viên và cuối cùng là huấn luyện và nhận dạng biển báo giao thông
3.1 Sơ đồ tổng quát giải quyết bài toán
3.2 Thu thập dữ liệu
3.3 Xử lý dữ liệu đầu vào
3.4 Phát hiện và nhận dạng đối tượng
CHƯƠNG 4 TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ
Chương 4 trình bày môi trường triển khai Kết quả thực nghiệm của chương trình và đánh giá
4.1 Môi trường triển khai
4.2 Kết quả thực nghiệm
4.3 Đánh giá
Trang 19Chương 2 NGHIÊN CỨU TỔNG QUAN
2.1 Báo hiệu giao thông đường bộ
Biển báo giao thông đường bộ hay còn được gọi là hệ thống báo hiệu đường bộ
là hệ thống rất nhiều biển báo giao thông được đặt ven đường cung cấp thông tin cụ thể cho người tham gia giao thông Theo Quy chuẩn QCVN 41:2016/BGTVT - Quy chuẩn kỹ thuật quốc gia về báo hiệu đường bộ [21], biển báo bao gồm 6 nhóm: biển báo cấm, biển báo nguy hiểm và cảnh báo, biển hiệu lệnh, biển chỉ dẫn trên đường ôtô không phải là đường cao tốc, biển phụ - biển viết bằng chữ, biển chỉ dẫn trên đường cao tốc Trong đề tài này chỉ nghiên cứu trên 4 nhóm chính sau:
Biển báo cấm: là loại biển báo giao thông nhằm báo những điều cấm, hoặc
hạn chế mà người tham gia giao thông phải tuyệt đối tuân theo Nhóm biển báo cấm có dạng hình tròn (trừ biển số 122 "dừng lại" có hình bát giác đều) Hầu hết các biển đều có viền đỏ, nền màu trắng, trên nền có hình vẽ màu đen đặc trưng cho điều cấm hoặc hạn chế sự đi lại của các phương tiện cơ giới, thô sơ và người đi bộ Nhóm biển báo cấm gồm 40 kiểu, đánh số từ 101 đến 140;
Biển báo nguy hiểm và cảnh báo: để cảnh báo các tình huống nguy hiểm có
thể xảy ra được dùng để báo cho người sử dụng, chủ yếu là người lái xe cơ giới biết được tính chất của sự nguy hiểm trên tuyến đường phía trước để phòng ngừa Khi gặp biển báo nguy hiểm người lái xe phải giảm tốc độ Nhóm biển báo này có dạng hình tam giác đều, viền đỏ, nền vàng, hình vẽ màu đen gồm 47 kiểu được đánh số từ 201 đến 247;
Biển hiệu lệnh: là biển báo cho người tham gia giao thông biết các điều bắt
buộc phải chấp hành Nhóm biển báo này có dạng hình tròn, nền xanh với hình vẽ màu trắng gồm 10 kiểu, được đánh số từ 301 đến 310;
Biển chỉ dẫn trên đường ôtô không phải là đường cao tốc: chỉ dẫn hướng
đi hoặc các điều cần thiết nhằm giúp người tham gia giao thông trong việc điều khiển phương tiện và hướng dẫn giao thông trên đường được thuận lợi, đảm bảo an toàn Nhóm biển báo này có dạng hình vuông hoặc hình chữ nhật, nền xanh, hình vẽ màu trắng gồm 47 kiểu được đánh số từ 401 đến 447
2.2 Tổng quan về xử lý ảnh
2.2.1 Xử lý ảnh là gì?
Con người thu nhận thông tin qua các giác quan, trong đó thị giác đóng vai trò quan trọng nhất Những năm trở lại đây với sự phát triển của phần cứng máy tính, xử
Trang 20lý ảnh và đồ họa phát triển một cách mạnh mẽ và có nhiều ứng dụng trong cuộc sống, đóng một vai trò quan trọng trong tương tác người máy
Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho
ra kết quả mong muốn Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh
“tốt hơn” hoặc một kết luận
Sơ đồ tổng quát của một hệ thống xử lý ảnh:
Hình 2.1: Sơ đồ tổng quát của một hệ thống xử lý ảnh
2.2.2 Một số khái niệm trong xử lý ảnh
Ảnh và điểm ảnh: gốc của ảnh (ảnh tự nhiên) là ảnh liên tục về không gian
và độ sáng Để xử lý bằng máy tính, ảnh cần phải được số hóa Số hóa ảnh là sự biến đổi gần đúng một ảnh liên tục thành một tập điểm phù hợp với ảnh thật về vị trí (không gian) và độ sáng (mức xám) Khoảng cách giữa các điểm ảnh đó đựợc thiết lập sao cho mắt người không phân biệt được ranh giới giữa chúng Mỗi một điểm như vậy gọi là điểm ảnh và ảnh được xem như là 1 tập hợp các điểm ảnh;
Mức xám của ảnh: mức xám của điểm ảnh là cường độ sáng của nó được
gán bằng giá trị số tại điểm đó Giá trị mức xám thông thường: 16, 32, 64, 128, 256;
Ảnh đen trắng: là ảnh có hai màu đen, trắng (không chứa màu khác) với
mức xám ở các điểm ảnh có thể khác nhau;
Ảnh nhị phân: là ảnh chỉ có 2 mức đen trắng phân biệt, tức dùng 1 bit mô
tả 21 mức khác nhau Mỗi điểm ảnh của ảnh nhị phân chỉ có thể là 0 hoặc 1;
Điểm biên: một điểm ảnh được coi là điểm biên nếu có sự thay đổi nhanh
hoặc đột ngột về mức xám (hoặc màu);
Đường biên (đường bao: boundary): tập hợp các điểm biên liên tiếp tạo
thành một đường biên hay đường bao;
Ý nghĩa của đường biên: đường biên là một loại đặc trưng cục bộ tiêu biểu
trong phân tích, nhận dạng ảnh Người ta sử dụng biên làm phân cách các vùng xám cách biệt
Thu nhận
ảnh Số hóa Tiền xử lý Phân tích ảnh Nhận dạng ảnh
Trang 212.3 Các mô hình màu
2.3.1 Giới thiệu
Mô hình màu hay không gian màu là một mô hình toán học dùng để mô tả các màu sắc trong thực tế được biểu diễn dưới dạng số học Trên thực tế có rất nhiều không gian màu khác nhau như RGB, HSV, CMYK, HLS, IHLS
Trong lĩnh vực xử lý ảnh, mô hình màu là một chỉ số kỹ thuật của một hệ tọa độ màu ba chiều với tập các màu nhỏ thành phần có thể trông thấy được trong hệ thống tọa độ màu thuộc một gam màu đặc trưng
2.3.2 Mô hình màu RGB
RGB là không gian màu rất phổ biến được dùng trong đồ họa máy tính và nhiều thiết bị kĩ thuật số khác Ý tưởng chính của không gian màu này là sự kết hợp của 3 màu sắc cơ bản: màu đỏ (R, Red), xanh lục (G, Green) và xanh lơ (B, Blue) để mô tả tất cả các màu sắc khác
Hình 2.2: Không gian màu RGB
Nếu như một ảnh số được mã hóa bằng 24bit, nghĩa là 8bit cho kênh R, 8bit cho kênh G, 8bit cho kênh B, thì mỗi kênh màu này sẽ nhận giá trị từ 0-255 Với mỗi giá trị khác nhau của các kênh màu kết hợp với nhau ta sẽ được một màu khác nhau, như vậy ta sẽ có tổng cộng 255x255x255 = 1.66 triệu màu sắc
Ví dụ: màu đen là sự kết hợp của các kênh màu (R, G, B) với giá trị tương ứng (0, 0, 0) màu trắng có giá trị (255, 255, 255), Nếu ta dùng 16bit để mã hóa một kênh màu (48bit cho toàn bộ 3 kênh màu) thì dãi màu sẽ trãi rộng lên tới 3*2^16 = Một con số rất lớn
Trang 22Hình 2.3: Mô hình màu RGB
2.3.3 Mô hình màu HLS
Mô hình màu HLS xác định các màu bằng ba thông số: màu sắc (H - Hue), độ sáng (L - Lightness) và độ bão hòa (S - Saturation) Có thể minh họa mô hình màu HLS bằng một hình nón lục giác đôi, có màu trắng ở đỉnh đầu màu đen ở dưới
Hình 2.4: Mô hình màu HLS
2.3.4 Mô hình màu IHLS
Mô hình màu IHLS được cải tiến từ mô hình màu HLS Mô hình màu này rất giống với mô hình màu HLS nhưng nó tránh được sự bất tiện của các mô hình màu khác được thiết kế cho đồ họa máy tính hơn là xử lý ảnh
Trang 23HLS và IHLS định nghĩa thông số màu sắc như nhau, còn độ sáng và độ bão hòa thì khác nhau Các công thức dưới đây minh họa sự giống nhau và khác nhau khi chuyển đổi từ mô hình màu RGB sang
Đối với mô hình màu HLS [1]
H = Hue: màu sắc
S = Saturation: độ đậm đặc, sự bảo hòa
V = value: giá trị cường độ sáng
Không gian màu này thường được biểu diễn dưới dạng hình trụ hoặc hình nón
(2.1)
(2.2)
Trang 24Hình 2.5: Mô hình màu HSV
Theo đó, đi theo vòng tròn từ 0 -360 độ là trường biểu diễn màu sắc (Hue) Trường này bắt đầu từ màu đỏ đầu tiên (red primary) tới màu xanh lục đầu tiên (green primary) nằm trong khoảng 0-120 độ, từ 120 - 240 độ là màu xanh lục tới xanh lơ (green primary - blue primary) Từ 240 - 360 là từ màu đen tới lại màu đỏ
Theo như cách biểu diễn không gian màu theo hình trụ như trên, đi từ giá trị độ sáng (V) được biểu diễn bằng cách đi từ dưới đáy hình trụ lên và nằm trong khoảng từ
0 -1 Ở đáy hình trụ V có giá trị là 0, là tối nhất và trên đỉnh hình trụ là độ sáng lớn nhất (V = 1) Đi từ tâm hình trụ ra mặt trụ là giá trị bão hòa của màu sắc (S) S có giá trị từ 0 - 1 0 ứng với tâm hình trụ là chỗ mà màu sắc là nhạt nhất S = 1 ở ngoài mặt trụ, là nơi mà giá trị màu sắc là đậm đặc nhất
Như vậy với mỗi giá trị (H, S, V) sẽ cho ta một màu sắc mà ở đó mô tả đầy đủ thông tin về màu sắc, độ đậm đặc và độ sáng của màu đó
Chuyển đổi từ RGB sang HSV [25]
Giả sử ta có một điểm màu có giá trị trong hệ RGB là (R, G, B) ta chuyển sang không gian HSV như sau:
S = C/V Trong trường hợp V hoặc C bằng 0, S = 0
Chuyển đổi từ HSV sang RGB [25]
Giả sử ta có không gian màu HSV với H = [0, 360], S = [0, 1], V = [0, 1] Khi
đó, ta tính:
(2.3)
Trang 25Nguyên tắc chung của các phương pháp lọc là cho ma trận ảnh nhân chập với
một ma trận lọc (Kernel): I dst = M*I src
Isrc, Idst là ảnh gốc và ảnh sau khi thực hiện phép lọc ảnh bằng cách nhân với ma trận lọc M Ma trận M đôi khi còn gọi là mặt nạ (mask), nhân (kernel) Với mỗi phép lọc ta có những ma trận lọc M khác nhau, không có quy định cụ thể nào cho việc xác định M, tuy nhiên ma trận này có một số đặc điểm như sau:
Kích thước của ma trận thường là một số lẻ chẳng hạn 3x3, 5x5 … Khi đó, tâm của ma trận sẽ nằm ở giao của hai đường chéo và là điểm áp đặt lên ảnh mà ta cần tính nhân chập
Tổng các phần tử trong ma trận thông thường bằng 1 Nếu tổng này lớn hơn 1, ảnh qua phép lọc sẽ có độ sáng lớn hơn ảnh ban đầu Ngược lại ảnh thu được sẽ tối hơn ảnh ban đầu
2.4.2 Nhân chập ảnh với phép lọc số ảnh
Để thực hiện một phép lọc số ảnh, ta cần phải tiến hành nhân chập ảnh đầu vào với một ma trận lọc hay cửa sổ nhân chập (Kernel) Toàn bộ các điểm ảnh (Pixel) trên
(2.4)
Trang 26ảnh sẽ được tiến hành nhân chập với ma trận lọc, tâm của ma trận lọc sẽ được đặt trùng vào vị trí của điểm ảnh (Pixel) đang được tính nhân chập làm thay đổi các giá trị của pixel ban đầu [4]
100 100 100 100 100 pixel (2,2) 100 100 100 100 100
100 100 100 100 100 100 100 100 100 100 1/9 1/9 1/9 100 200 205 203 100 100 144 167 203 100 1/9 1/9 1/9 * 100 195 200 200 100 = 100 195 200 200 100 1/9 1/9 1/9 100 200 205 195 100 nhân chập 100 200 205 195 100
100 100 100 100 100 pixel (2,3) 100 100 100 100 100
Và kết quả cuối cùng ta có
100 100 100 100 100 100 100 100 100 100 1/9 1/9 1/9 100 200 205 203 100 100 144 167 145 100 1/9 1/9 1/9 * 100 195 200 200 100 = 100 167 200 168 100 1/9 1/9 1/9 100 200 205 195 100 nhân chập 100 144 166 144 100
Ý tưởng của lọc trung bình là sử dụng một ma trận lọc (Kernel) (3x3) quét qua từng điểm ảnh của ảnh đầu vào Isrc Tại vị trí mỗi điểm ảnh lấy giá trị của các điểm ảnh tương ứng trong vùng (3x3) của ảnh gốc đặt vào ma trận lọc (Kernel) Giá trị điểm ảnh
(2.5)
Trang 27của ảnh đầu ra Idst là giá trị trung bình của tất cả các điểm trong ảnh trong ma trận lọc (Kernel)
là giá trị chính giữa của tất cả các giá trị của các điểm trong vùng lân cận
Lọc trung vị hiệu quả trong việc giảm đi điểm nhiễu trong ma trận lọc (Kernel) lớn hay bằng một nửa số điểm trong ma trận lọc (Kernel)
Cho một dãy số X1, X2, X3, , Xn được sắp xếp theo thứ tự tăng dần hoặc giảm dần Khi đó Xtv được tính bởi công thức:
Trang 28Các phép toán này được định nghĩa như sau: giả thiết ta có đối tượng X và phần
tử cấu trúc (mẫu) B trong không gian Euclide hai chiều Kí hiệu Bx là dịch chuyển của
B tới vị trí x [4]
2.5.2 Phép toán giãn nở (dilation)
Là một trong các hoạt động cơ bản trong hình thái toán học Phép toàn này có tác dụng làm cho đối tượng ban đầu trong ảnh tăng lên về kích thước (Giãn nở ra)
Công thức của phép toán giãn nở:
𝐴⨁𝐵 = {𝑐|𝑐 = 𝑎 + 𝑏, 𝑎 ∈ 𝐴, 𝑏 ∈ 𝐵}
Trong đó:
A: ma trận điểm ảnh của ảnh nhị phân
B: phần tử cấu trúc
Phép giãn nở (dilation) ảnh sẽ cho ra một tập điểm ảnh c thuộc D(i), hoàn toàn
dễ dàng thấy rằng đây là một phép tổng giữa A và B A sẽ là tập con của D(i)
(2.8)
Trang 292.5.3 Phép toán co (erosion)
Phép toán co (erosion) là một trong hai hoạt động cơ bản trong hình thái học có ứng dụng trong việc giảm kích thước của đối tượng, tách rời các đối tượng gần nhau, làm mảnh và tìm xương của đối tượng
2.5.4 Phép toán mở và đóng (opening, closing)
Phép toán mở (opening) và đóng (closing) là sự kết hợp của phép co (erosion)
và giản (dilation) chúng được định nghĩa như sau:
là một tập hợp các điểm có cùng hoặc gần cùng một tính chất nào đó: mức xám, mức màu, độ nhám… Vùng ảnh là một trong hai thuộc tính của ảnh Nói đến vùng ảnh là nói đến tính chất bề mặt Đường bao quanh một vùng ảnh (Boundary) là biên ảnh Các điểm trong một vùng ảnh có độ biến thiên giá trị mức xám tương đối đồng đều hay tính kết cấu tương đồng
Phân vùng có thể được tiếp cận từ hai quan điểm: bằng cách nhận dạng các đường biên (hoặc đường) hoặc bằng cách nhận ra các vùng (region, area) bên trong
(2.9)
(2.10) (2.11)
Trang 30ảnh Các phép toán phân vùng có thể xem như là đối ngẫu của các phép toán tìm biên (hay tách cạnh), bởi vì khi tìm biên được kết thúc, điều đó tương đương với việc tách một vùng làm hai Một cách lý tưởng, các phép toán tách cạnh và phân vùng sẽ cho cùng một kết quả phân đoạn, tuy nhiên trong thực tế ít khi đạt được như vậy
Vùng ảnh là tập hợp các điểm ảnh có thuộc tính tương tự (gần giống nhau) Ta
có thể xem một ảnh X chính là một tập các điểm ảnh pi , ký hiệu X= { pi }, i∈ [1, N.M], với N.M là kích thước của hình ảnh Như vậy, phân vùng ảnh là quá trình tìm các tập con Ri ={ tập các điểm ảnh có thuộc tính tương tự} của các vùng ảnh sao cho:
U i=1 K R i =X và R i ∩R j , ∀i≠j,i,j=1…K, với K là số vùng của ảnh X
Phân vùng ảnh là quá trình xử lý một ảnh số thành một tập các vùng, mỗi vùng
là một tập hợp các điểm ảnh Chính xác hơn, phân vùng ảnh là quá trình gán nhãn cho mỗi điểm ảnh trong ảnh sao cho các điểm ảnh có các thuộc tính tương tự nhau thì có cùng một nhãn Đường bao quanh một vùng ảnh được gọi là đường biên
2.6.1 Phân vùng theo ngưỡng biên độ
Đặc tính đơn giản nhất và có thể hữu ích nhất của ảnh đó là biên độ của các tính chất vật lý của ảnh như: độ tương phản, độ truyền sáng, màu sắc hoặc quang phổ
Như vậy, có thể dùng ngưỡng biên độ để phân vùng khi biên độ đủ lớn đặc trưng cho ảnh Thí dụ, biên độ trong bộ cảm biến ảnh hồng ngoại có thể phản ánh vùng
có nhiệt độ thấp hay vùng có nhiệt độ cao Kỹ thuật phân ngưỡng theo biên độ rất có lợi đối với ảnh nhị phân như văn bản in, đồ họa, ảnh màu hay ảnh X-quang
Việc chọn ngưỡng rất quan trọng Nó bao gồm các bước:
Xem xét lược đồ xám của ảnh để xác định các đỉnh và các khe Nếu ảnh
có dạng rắn lượn (nhiều đỉnh và khe), các khe có thể dùng để chọn ngưỡng
Chọn ngưỡng t sao cho một phần xác định trước η của toàn bộ số mẫu là thấp hơn t
Điều chỉnh ngưỡng dựa trên lược đồ xám của các điểm lân cận
Chọn ngưỡng theo lược đồ xám của những điểm thỏa mãn tiêu chuẩn chọn Ví dụ, với ảnh có độ tương phản thấp, lược đồ của những điểm có biên độ Laplace g(m,n) lớn hơn giá trị t định trước (sao cho từ 5% đến 10% số điểm ảnh với Gradient lớn nhất sẽ coi như biên) sẽ cho phép xác định các đặc tính ảnh lưỡng cực tốt hơn ảnh gốc
Khi có mô hình phân lớp xác suất, việc xác định ngưỡng dựa vào tiêu chuẩn xác suất nhằm cực tiểu xác suất sai số hoặc dựa vào một số tính chất khác của luật Bayes
Trang 31Để hiểu rõ hơn nguyên tắc phân vùng dựa vào ngưỡng biên độ, xét ví dụ sau:
Hình 2.6: Lược đồ rắn lượn và cách chọn ngưỡng
Giả sử ảnh có lược đồ xám và cách chọn các ngưỡng như hình trên với: T0=Lmin, …, T4=Lmax Ta có 5 ngưỡng và phân ảnh thành 4 vùng, ký hiệu Ck là vùng thứ k của ảnh, k=1,2,3,4 Cách phân vùng theo nguyên tắc:
P(m,n) ∈ Ck nếu Tk-1 ≤ P(m,n) < Tk , k=1,2,3,4
Khi phân vùng xong, nếu ảnh rõ nét thì việc phân vùng coi như kết thúc Nếu không, cần điều chỉnh ngưỡng
2.6.2 Phân vùng theo miền đồng nhất
Kỹ thuật phân vùng ảnh thành các miền đồng nhất dựa vào các tính chất quan trọng nào đó của miền ảnh Việc lựa chọn các tính chất của miền sẽ xác định tiêu chuẩn phân vùng Tính đồng nhất của một miền ảnh là điểm chủ yếu xác định tính hiệu quả của việc phân vùng Các tiêu chuẩn hay được dùng là sự thuần nhất về mức xám, màu sắc đối với ảnh màu, kết cấu sợi và chuyển động Các phương pháp phân vùng ảnh theo miền đồng nhất thường áp dụng là:
Phương pháp tách cây tứ phân Phương pháp cục bộ
Phương pháp tổng hợp
2.6.2.1 Phương pháp tách cây tứ phân
Về nguyên tắc, phương pháp này kiểm tra tính đúng đắn của tiêu chuẩn đề ra một cách tổng thể trên miền lớn của ảnh Nếu tiêu chuẩn được thỏa mãn, việc phân đoạn coi như kết thúc Trong trường hợp ngược lại, chia miền đang xét thành 4 miền nhỏ hơn Với mỗi miền nhỏ, áp dụng một cách đệ quy phương pháp trên cho đến khi tất cả các miền đều thỏa mãn điều kiện
Phương pháp này có thể mô tả như sau:
Procedure PhanDoan(Mien)
Begin
(2.12)
Trang 32If miền đang xét không thỏa Then
Begin
Chia miền đang xét thành 4 miền : Z1, Z2, Z3, Z4 For i=1 to 4 do PhanDoan (Zi)
End Else exit
End
Tiêu chuẩn xét miền đồng nhất ở đây có thể dựa vào mức xám Ngoài ra, có thể dựa vào độ lệch chuẩn hay độ chênh giữa giá trị mức xám lớn nhất và giá trị mức xám nhỏ nhất Giả sử Max và Min là giá trị mức xám lớn nhất và nhỏ nhất trong miền đang xét Nếu :|Max – Min| < T (ngưỡng) ta coi miền đang xét là đồng nhất Trường hợp ngược lại, miền đang xét không là miền đồng nhất và sẽ được chia làm 4 phần
Thuật toán kiểm tra tiêu chuẩn dựa vào độ chênh lệch max, min được viết: Function Examin_Criteria(I, N1, M1, N2, M2, T)
/* Giả thiết ảnh có tối đa 255 mức xám (N1, M1), (N2, M2) là tọa độ điểm đầu và điểm cuối của miền; T là ngưỡng */
Begin
1 Max=0 ; Min=255
2 For i = N1 to N2 do
If I[i,j] < Min Then Min=I[i,j];
If I[i,j] < Max Then Max=I[i,j];
3 If ABS(Max–Min)<T Then Examin_Criteria=0
Else Examin_Criteria=1;
End
Nếu hàm trả về giá trị 0, có nghĩa vùng đang xét là đồng nhất, nếu không thì không đồng nhất Trong giải thuật trên, khi miền là đồng nhất cần tính lại giá trị trung bình và cập nhật lại ảnh đầu ra
Giá trị trung bình được tính bởi : tổng giá trị mức xám / tổng số điểm ảnh trong vùng thuật toán này tạo nên một cây mà mỗi nút cha có 4 nút con ở mọi mức trừ mức ngoài cùng Vì thế, cây này có tên là cây tứ phân Cây cho hình ảnh rõ nét về cấu trúc phân cấp của các vùng tương ứng với tiêu chuẩn Một vùng thỏa mãn điều kiện sẽ tạo nên một nút lá; nếu không nó sẽ tạo nên một nút trong và có 4 nút con tương ứng Tiếp tục như vậy cho đến khi phân chia xong để đạt các vùng đồng nhất
Trang 332.6.2.2 Phương pháp cục bộ
Ý tưởng của phương pháp là xét ảnh từ các miền nhỏ nhất rồi nối chúng lại nếu thỏa mãn tiêu chuẩn để được một miền đồng nhất lớn hơn Tiếp tục với các miền thu được cho đến khi không thể nối thêm được nữa Số miền còn lại cho kết quả phân đoạn Như vậy, miền nhỏ nhất của bước xuất phát là điểm ảnh
Phương pháp này hoàn toàn ngược với phương pháp tách Song điều quan trọng
ở đây là nguyên lý nối 2 vùng Việc nối 2 vùng được thực hiện theo nguyên tắc sau:
Hai vùng phải đáp ứng tiêu chuẩn, ví dụ như cùng màu hay cùng mức xám Hai vùng phải kế cận nhau
Trong xử lý ảnh, người ta dùng khái niệm liên thông để xác định tính chất kế cận Có hai khái niệm về liên thông là 4 liên thông và 8 liên thông Với 4 liên thông một điểm ảnh I(x,y) sẽ có 4 kế cận theo 2 hướng x và y; trong khi đó với 8 liên thông, điểm I(x,y) sẽ có 4 liên thông theo 2 hướng x, y và 4 liên thông khác theo hướng chéo
hệ giữa các miền
Vì nhược điểm này, người ta nghĩ đến phối hợp cả 2 phương pháp Trước tiên, dùng phương pháp tách để tạo nên cây tứ phân, phân đoạn theo hướng từ gốc đến lá Tiếp theo, tiến hành duyệt cây theo chiều ngược lại và hợp các vùng có cùng tiêu chuẩn Với phương pháp này thu được một cấu trúc ảnh với các miền liên thông có kích thước tối đa
2.6.3 Phân vùng theo kết cấu bề mặt
Kết cấu thường được nhận biết trên bề mặt của các đối tượng như gỗ, cát, vải vóc… Kết cấu là thuật ngữ phản ánh sự lặp lại của các phần tử sợi (texel) cơ bản Sự
Trang 34lặp lại này có thể ngẫu nhiên hay có tính chu kì hoặc gần chu kì Một texel chứa rất nhiều điểm ảnh Trong phân tích ảnh, kết cấu được chia làm hai loại chính là: loại thống kê và loại cấu trúc
Khi đối tượng xuất hiện trên một nền có tính kết cấu cao, việc phân đoạn dựa vào tính kết cấu trở nên quan trọng Nguyên nhân là kết cấu sợi thường chứa mật độ cao các gờ (edge) làm cho phân đoạn theo biên kém hiệu quả, trừ phi ta loại tính kết cấu
Nhìn chung, việc phân loại và phân vùng dựa vào kết cấu là một vấn đề phức tạp Trong thực tế, thường chỉ giải quyết vấn đề này bằng cách cho biết trước các loại kết cấu (dựa vào quy luật hay cách phân bố của nó) Có thể tham khảo thêm ở [5]
2.6.4 Phân vùng dựa trên sự phân lớp điểm ảnh
2.6.4.1 Mô hình bài toán
Cho ảnh X ={pi} , i ∈ [1,N.M] , với N là chiều rộng của ảnh và M là chiều cao của ảnh, pi là điểm ảnh thứ i và A(pi) là thuộc tính của pi Đối tượng phân lớp ở đây là các pi
Phân vùng ảnh X chính là phân lớp tập X thành các lớp Ci sao cho từ Ci phát triển thành các vùng Ri Chỉ tiêu phân lớp ở đây chính là độ đồng đều (tương tự) về thuộc tính của các điểm ảnh
Quá trình phân lớp có thể sử dụng các phương pháp học máy và quyết định phân lớp
2.6.4.2 Thuật toán
Thuật toán ISODATA trong phân vùng ảnh:
Đầu vào: X = {p i }, i ∈ [1,N.M], A(p i ) là giá trị mức xám của p i
Chọn các giá trị ngưỡng ban đầu của các lớp theo nguyên tắc sau:
T 0 = l min , T K = l max và T i (t)=i l min - l max
K + T 0 , với i=1…K-1
2 Bước lặp
Trang 35Thực hiện phân lớp điểm theo các ngưỡng Ti(t-1)
P i∈ C k nếu T i (t-1) ≤ A(p i ) ≤ T i+1 (t-l) , ∀k∈ [l,K]
Tính giá trị trung bình của mỗi lớp tại thời điểm t
3 Phân lớp các lớp Ck theo các Ti, i=1 K-1 đã ổn định Hình thành các vùng Rk
từ các lớp Ck Gán nhãn các vùng theo giá trị trung bình của lớp và hiển thị ảnh các vùng đã phân bố
2.7 Phát hiện biên
Biên (edge) là một thay đổi đột ngột của cường độ sáng Phát hiện biên là tìm biên của đối tượng trên ảnh nhằm mục đích làm rõ đối tượng Tùy theo từng ứng dụng, người ta đưa ra các độ đo khác nhau về biên, một trong các độ đo đó là sự thay đổi đột ngột về mức xám Các kỹ thuật phát hiện biên thường được dùng là: Gradient, Laplace
và kỹ huật dò biên tổng quát Các kỹ thuật tìm biên có thể được xếp vào phương pháp trực tiếp hoặc gián tiếp [4]
2.7.1 Phát hiện biên trực tiếp
Phương pháp này làm nổi biên dựa vào sự biến thiên mức xám của ảnh Kỹ thuật chủ yếu dùng để phát hiện biên ở đây là kỹ thuật lấy đạo hàm Nếu lấy đạo hàm bậc nhất của ảnh ta có các kỹ thuật Gradient, nếu lấy đạo hàm bậc hai của ảnh ta có kỹ thuật Laplace Ngoài ra còn có một số cách tiếp cận khác
2.7.1.1 Kỹ thuật phát hiện biên Gradient
Gradient là một vectơ f(x, y) có các thành phần biểu thị tốc độ thay đổi mức xám của điểm ảnh (theo hai hướng x, y trong bối cảnh xử lý ảnh hai chiều) [4]
Trang 36Trong đó, dx, dy là khoảng cách (tính bằng số điểm) theo hướng x và y Tuy là lấy đạo hàm nhưng thực chất chỉ là mô phỏng và xấp xỉ đạo hàm bằng các kỹ thuật nhân chập vì ảnh số là tín hiệu rời rạc nên đạo hàm không tồn tại (thực tế chọn dx= dy=1)
Theo định nghĩa về Gradient, nếu áp dụng vào xử lý ảnh, việc tính toán sẽ rất phức tạp Để đơn giản mà không mất tính chất của phương pháp Gradient, người ta sử dụng kỹ thuật Gradient dùng cặp mặt nạ H1, H2 trực giao (theo 2 hướng vuông góc)
Mặt nạ Prewitt [4]
- Kỹ thuật sử dụng 2 mặt nạ nhân chập xấp xỉ đạo hàm theo 2 hướng x và y là:
H x = [ -1 0 1 -1 0 1 -1 0 1
] H 2 = [ -3 5 5 0 -3 5
-3 -3 -3
]
H 3 = [ -3 -3 5 0 5 5 -3 -3 -3
Trang 37- Kết quả thu được bằng cách tính ∑8 I ⨂ H i
i=1
2.7.1.2 Kỹ thuật phát hiện biên Laplace [4]
Toán tử Laplace được định nghĩa như sau:
2.7.1.3 Kỹ thuật phát hiện biên Canny [4]
Đây là một thuật toán tương đối tốt, có khả năng đưa ra đường biên mảnh, và phát hiện chính xác điểm biên với điểm nhiễu
Ta có thuật toán như sau:
- Bước 1: làm trơn ảnh
Tính I ⨂ H, với:
(2.16)
(2.17)
Trang 38Gọi G là kết quả lọc nhiễu: G = I ⨂ H
- Bước 2: tính gradient của ảnh bằng mặt nạ Prewitt, kết quả đặt vào Gx,Gy
Gx = G ⨂ Hx , Gx = G ⨂ Hx
- Bước 3: tính gradient hướng tại mỗi điểm (i,j) của ảnh Hướng này sẽ được
nguyên hóa để nằm trong 8 hướng [0 7], tương đương với 8 lân cận của một điểm ảnh
- Bước 4: dùng ràng buộc “loại bỏ những điểm không phải là cực đại” để xóa
bỏ những điểm không là biên Xét (i,j), θ là gradient hướng tại (i,j) I1, I2 là hai điểm lân cận của (i,j) theo hướng θ Theo định nghĩa điểm biên cục bộ thì (i,j) là biên nếu I(i,j) cực đại địa phương theo hướng gradient → Nếu I(i,j) > I1 và I(i,j) > I2 thì mới giữ lại I(i,j), ngược lại xóa I(i,j) về điểm ảnh nền
Hình 2.8: Minh họa xác định điểm biên
- Bước 5: phân ngưỡng Với các điểm được giữ lại, thực hiện lấy ngưỡng
gradient biên độ lần cuối để xác định các điểm biên thực sự
2.7.2 Phát hiện biên gián tiếp
Nếu bằng cách nào đấy thu được các vùng ảnh khác nhau thì đường phân cách giữa các vùng đó chính là biên Nói cách khác, việc xác định đường bao của ảnh được thực hiện từ ảnh đã được phân vùng Phương pháp dò biên gián tiếp khó cài đặt nhưng
áp dụng tốt khi sự biến thiên độ sáng nhỏ Để có thể tiến hành xác định biên theo cách gián tiếp này, cần giải quyết được bài toán phân vùng ảnh [5]
(2.18)
(2.19)
Trang 392.8 Máy học (machine learning)
2.8.1 Giới thiệu
Máy học là một phần của trí tuệ nhân tạo trong đó các thuật toán máy tính được
sử dụng để tự học từ dữ liệu và thông tin Trong machine learning, máy tính không cần phải được lập trình một cách rõ ràng mà có thể tự thay đổi và cải thiện các thuật toán của mình
Biểu diễn: là một trong những vấn đề quan trọng của học máy Biểu diễn ở đây
có thể hiểu làm sao ghi mã (encode) những thông tin của thế giới thật giúp hoàn thành nhiệm vụ một cách hiệu quả và đầy đủ nhất có thể Thông tin ở đây bao hàm cả thông tin về dữ liệu đầu vào, đầu ra hay các trạng thái của hệ thống; cũng như cách đánh giá hiệu quả của chương trình
Tính phổ quát: là tính chất của chương trình có thể làm việc tốt với dữ liệu mà
nó chưa gặp bao giờ Một chương trình chỉ hiệu quả với dữ liệu đã gặp nhìn chung không có nhiều tính hữu dụng
Tương tác với con người: một số hệ thống học máy nỗ lực loại bỏ nhu cầu trực
giác của con người trong việc phân tích dữ liệu, trong khi các hệ thống khác hướng đến việc tăng sự cộng tác giữa người và máy Không thể loại bỏ hoàn toàn tác động của con người vì các nhà thiết kế hệ thống phải chỉ định cách biểu diễn của dữ liệu và những cơ chế nào sẽ được dùng để tìm kiếm các đặc tính của dữ liệu Học máy có thể được xem là một nỗ lực để tự động hóa một số phần của phương pháp khoa học
2.8.2 Các loại giải thuật
Học có thầy: đặc điểm cơ bản của kỹ thuật này là người ta có một thư viện các
mẫu chuẩn Mẫu cần nhận dạng sẽ được đem so sánh với mẫu chuẩn để xem nó thuộc loại nào Vấn đề chủ yếu là thiết kế một hệ thống để có thể đối sánh đối tượng trong ảnh với mẫu chuẩn và quyết định gán cho chúng vào một lớp Việc đối sánh nhờ vào các thủ tục ra quyết định dựa trên một công cụ gọi là hàm phân lớp hay hàm ra quyết định
Học không có thầy: kỹ thuật này phải tự định ra các lớp khác nhau và xác định
các tham số đặc trưng cho từng lớp Học không có thầy đương nhiên là gặp khó khăn hơn Một mặt, do số lớp không được biết trước, mặt khác những đặc trưng của lớp cũng không được biết trước Kỹ thuật này nhằm tiến hành mọi cách gộp nhóm có thể
và chọn lựa cách tốt nhất Bắt đầu từ tập dữ liệu, nhiều thủ tục xử lý khác nhau nhằm phân lớp và nâng cấp dần để đạt được một phương án phân loại