Đăng ký Đăng nhập
Trang chủ Nhận dạng hành động người bằng kỹ thuật học sâu 3d cnn...

Tài liệu Nhận dạng hành động người bằng kỹ thuật học sâu 3d cnn

.PDF
75
7
144

Mô tả:

MỤC LỤC TRANG BÌA LỜI CAM ĐOAN MỤC LỤC TRANG TÓM TẮT LUẬN VĂN DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC HÌNH MỞ ĐẦU ......................................................................................................................... 1 1. Lý do chọn đề tài .................................................................................................. 1 2. Mục đích nghiên cứu ............................................................................................ 1 3. Tổng quan về các nghiên cứu liên quan ............................................................... 2 4. Đối tượng và phạm vi nghiên cứu ........................................................................ 2 5. Phương pháp nghiên cứu ...................................................................................... 2 6. Ý nghĩa khoa học và ý nghĩa thực tiễn ................................................................. 3 7. Cấu trúc luận văn .................................................................................................. 3 CHƯƠNG 1. TỔNG QUAN ........................................................................................... 4 1.1. Tổng quan về các hệ thống thông minh ................................................................... 4 1.1.1. Khái niệm ........................................................................................................ 4 1.1.2. Hệ thống tương tác người - máy (robot) ......................................................... 4 1.1.3. Hệ thống tương tác thực ảo ............................................................................. 5 1.1.4. Hệ thống hỗ trợ chăm sóc bệnh nhân, người già ............................................ 6 1.2. Trí tuệ nhân tạo và ứng dụng .................................................................................... 6 1.2.1. Một số khái niệm chung.................................................................................. 6 1.2.2. Một số ứng dụng của trí tuệ nhân tạo ............................................................. 7 1.2.3. Học máy .......................................................................................................... 7 1.2.4. Phân loại phương pháp học máy..................................................................... 8 1.2.5. Mạng neural nhân tạo ..................................................................................... 9 1.3. Trích chọn và biểu diễn đặc trưng hình ảnh ........................................................... 11 1.3.1. Đặc trưng ảnh ................................................................................................ 11 1.3.2. Một số phương pháp trích chọn đặc trưng đơn giản ..................................... 12 1.3.3. Mô tả đặc trưng Haar .................................................................................... 14 1.3.4. Mô tả đặc trưng HOG ................................................................................... 15 1.3.5. Mô tả đặc trưng SIFT .................................................................................... 19 1.3.6. Một số ứng dụng trong nhận dạng đối tượng ............................................... 23 1.4. Kỹ thuật học sâu ..................................................................................................... 23 1.4.1. Một số khái niệm .......................................................................................... 23 1.4.2. Một lĩnh vực ứng dụng của kỹ thuật học sâu ................................................ 23 1.4.3. Mạng neural học sâu ..................................................................................... 24 CHƯƠNG 2. KỸ THUẬT MẠNG TÍCH CHẬP TRONG NHẬN DẠNG HÀNH ĐỘNG ............................................................................................................................ 25 2.1. Mạng neural tích chập ............................................................................................ 25 2.1.1. Giới thiệu mạng tích chập ............................................................................. 25 2.1.2. Cấu trúc của mạng tích chập CNN ............................................................... 25 2.2. Một số mạng neural học sâu sử dụng trong nhận dạng .......................................... 27 2.2.1. Mạng LeNet .................................................................................................. 27 2.2.2. Mạng AlexNet ............................................................................................... 28 2.2.3. Mạng ZFNet .................................................................................................. 31 2.2.4. Mạng GoogLeNet ......................................................................................... 31 2.3. Mạng neural tích chập 3D-CNN............................................................................. 34 2.3.1. Phép tích chập 3D ......................................................................................... 35 2.3.2. Kiến trúc 3D- CNN ....................................................................................... 37 2.4. Giải pháp nhận dạng hành động bằng mạng tích chập ........................................... 38 2.4.1. Bài toán nhận dạng hành động ...................................................................... 38 2.4.2. Thiết kế mô hình nhận dạng hành động........................................................ 39 2.4.3. Thiết kế mạng neural tích chập nhận dạng hành động ................................. 41 CHƯƠNG 3. THỰC NGHIỆM VÀ ĐÁNH GIÁ ......................................................... 45 3.1. Môi trường và các công cụ sử dụng thực nghiệm .................................................. 45 3.2. Dữ liệu thực nghiệm nhận dạng hành động............................................................ 45 3.3. Thiết lập các tham số thực nghiệm hệ thống .......................................................... 46 3.3.1. Tiền xử lý video: ........................................................................................... 46 3.3.2. Tạo các lớp: ................................................................................................... 46 3.3.3. Quá trình huấn luyện vào đánh giá: .............................................................. 48 3.4. Phân tích, đánh giá kết quả thực nghiệm ................................................................ 48 3.5. Xử lý tăng cường dữ liệu ........................................................................................ 49 3.6. Kết quả thực nghiệm............................................................................................... 50 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .................................................................... 56 TÀI LIỆU THAM KHẢO ............................................................................................. 57 QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN ................................................................ 59 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 TÓM TẮT LUẬN VĂN NHẬN DẠNG HÀNH ĐỘNG NGƯỜI BẰNG KỸ THUẬT HỌC SÂU 3D-CNN Học viên: Lê Công Hiếu Chuyên ngành: Ngành Khoa Học Máy Tính Mã số: 8480101 Khóa: 34 Trường Đại học Bách khoa - ĐHĐN Tóm tắt – Nhận dạng hành động đống một vai trò quan trọng trong hệ thống giám sát, tương tác robot-con người và hệ thống tự vận hành. Tuy nhiên, có rất nhiều thử thách vấn đề do các hình dạng, điều kiện chiếu sáng và sự phức tạp của hành động. Thời gian tính toán và độ chính xác thường là những thách thức chính đối với hệ thống nhận dạng hành động. Kỹ thuật mạng nơ-ron học sâu như một kỹ thuật của nghệ thuật trong xử lý hình ảnh. Khả năng học sâu cao về hành động theo chiều thời gian từ phân tích video đã bị cản trở vì không đồng nhất trong phân lớp, sự giống nhau về hành động. Trong luận văn này trình bày cách tiếp cận mới dựa trên mạng nơ-ron học sâu liên tục và tăng cường dữ liệu để cải thiện độ chính xác. Đầu tiên, mạng nơ-ron học sâu được xây dựng bằng cách sử dụng một số inceptions được sử dụng phép tích chập song song khác nhau nhằm rút ngắn thời gian xử lý. Thứ hai, tăng cường hình ảnh từ tập dữ liệu huấn luyện tạo ra dữ liệu lớn hơn đủ cho mạng nơ-ron học sâu thực hiện huấn luyện. Mục đích của nó là tránh vấn đề dữ liệu nhỏ trong huấn luyện, dễ dẫn tới kết quả lỗi lớn, đồng nghĩa là dữ liệu học lớn mạng học sâu tăng cường khả năng học tốt hơn. Đánh giá kết quả dựa trên một vài tập dữ liệu chuẩn đề xuất. Kết quả đánh giá thử nghiệm về tập dữ liệu điểm chuẩn cho thấy cách tiếp cận được đề xuất nâng cao hiệu suất lên độ chính xác 89,53%. So sánh kết quả khác cho thấy rằng phương pháp đề xuất của tôi trong luận văn này đạt cao hơn hiệu suất hơn hầu hết các phương pháp khác. Từ khóa – Nhận dạng hành động, mạng học sâu, hệ thống giám sát. IDENTIFY HUMAN ACTIONS WITH 3D-CNN DEEP LEARNING NETWORK Abstract – Action recognition plays an important task insurveillance systems, robot-human interaction and autonomous, systems. However, there are many challenging problems due to varieties of shape, illumination conditions, and complex of actions. Consuming time and precision are typicallythe main challenges for action recognition systems. Deep neural network techniques have dramatically become the state of the art in image processing. The high capacity deep learning on the temporal action from video analysis has been impeded because of varieties of classes, similarity of actions. This thesis presents a new approach based on sequential deep neuralnetwork and data augmentation for improving accuracy. First,the deep neural network is constructed using several inceptions with different parallel convolutional operations which support reducing consuming time. Second, image augmentation of training dataset generates a larger data enough for deep neural network learning. This proposed task is aimed to address the small data problem. It is utilized for enhancing capabilities of deep learning. The proposed approach was evaluated on some benchmark datasets. Experimental evaluation on public benchmark dataset shows that the proposed approach enhances performance to 89.53% accuracy. Comparison results illustrated that our proposed method reaches higher performance than almost state- of- the- art methods. Key words - Action recognition, deep learning, surveillance systems. DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Ký hiệu Diễn giải Tiếng Anh Trí tuệ nhân tạo Tiếng Việt Trí tuệ nhân tạo AI ANN Artificial intelligence Trí tuệ nhân tạo Artificial Neural Network Mạng nơ-ron nhân tạo CNN Convolution Neural Network Mạng nơ-ron tích chập DNN Deep Neural Network Mạng neural sâu GPU NN Graphics Processing Unit Đơn vị xử lý đồ họa Neural Network Mạng nơ-ron ReLU Rectified Linear Unit Hiệu chỉnh đơn vị tuyến tính SIFT Scale-Invariant Feature Transform Biến đổi đặc trưng tỉ lệ không thay đổi SOM Self Organizing Maps Support Vetor Machines Mạng nơ-ron tự tổ chức Máy vector hỗ trợ TTNT SVM DANH MỤC CÁC HÌNH Hình 1.1. Các yếu tố trong tương tác người máy. ........................................................... 5 Hình 1.2. Mô hình mạng neural..................................................................................... 10 Hình 1.3. Quá trình xử lý của một ANN. ...................................................................... 10 Hình 1.4. Ảnh minh họa vector liên kết hệ số góc và liên kết giữa các biên cạnh........ 13 Hình 1.5. Các mẫu đặc trưng cơ bản của Haar. ............................................................. 14 Hình 1. . Tính nhanh tổng giá trị pixel trong vùng chữ nhật bất kỳ ............................ 15 Hình 1.7. Quá trình trích đặc trưng HOG ...................................................................... 16 Hình 1.8. Mẫu ảnh đầu vào được chia thành các cell và block để tính đặc trưng HOG. ........................................................................................................................ 16 Hình 1.9. Tính hướng và độ lớn gradient ...................................................................... 17 Hình 1.10. Tính gradient ảnh: (a) ảnh đa mức xám, (b) giá trị gradient theo các chiều X và Y, (c) hướng và độ lớn gradient ................................................................. 17 Hình 1.11. Chia hướng theo các bin của lược đồ hướng gradient ................................. 18 Hình 1.12. Sơ đồ tổng quan về trích rút đặc trưng HOG. ............................................. 19 Hình 1.13. Đối tượng trong vùng cửa sổ thay đổi khi co giãn ảnh ............................... 20 Hình 1.14. Tính DoG theo các mức tỷ lệ tạo thành hình chóp ...................................... 21 Hình 1.15. Xác định điểm cực trị dựa vào các mức giá trị DoG ................................... 21 Hình 1.16. Kết quả minh họa tính DoG và tính xác điểm cực trị.................................. 22 Hình 1.17. Mô tả đặc trưng keypoint bằng lược đồ hướng gradient ............................. 22 Hình 2.1. Mô hình mạng neural tích chập (nguồn internet) .......................................... 25 Hình 2.2. Phép tích chập với bộ lọc (nguồn internet) .................................................. 26 Hình 2.3. Phép MaxPooling (2x2), stride=2 (nguồn internet) ..................................... 27 Hình 2.4. Kiến trúc mạng LeNet-5 ................................................................................ 28 Hình 2.5. Kiến trúc 8 lớp của mô hình AlexNet ........................................................... 29 Hình 2.6. Kiến trúc 8 lớp của mô hình FZNet. .............................................................. 31 Hình 2. . Một dạng cụ thể của kiến trúc mạng GoogLeNet. ........................................ 32 Hình 2. . Module Inception........................................................................................... 33 Hình 2. . Mạng neural học sâu đơn giản gồm 3 inception............................................ 34 Hình 2.1 . Ph p tích chập khối (3D-CNN) ................................................................... 34 Hình 2.11. (a) Tích chập 2D, (b) Tích chập 3D ........................................................... 36 Hình 2.12. Kiến trúc 3D CNN cho nhận dạng hành động, bao gồm 1 lớp hardwired, 3 lớp tích chập, 2 lớp subsampling và 1 lớp full connection. ............................ 37 Hình 2.13. Kiến trúc 3D-CNN ...................................................................................... 37 Hình 2.14. Một và hành động đáng ngờ. ....................................................................... 39 Hình 2.15. Tổng quan kiến trúc hệ thống nhận dạng hành động bất thường ................ 40 Hình 2.16. Sơ đồ tổng thể kiến trúc mạng học sâu cho nhận dạng hành động ............. 42 Hình 2.17. Giản đồ của từng mạng Inception. .............................................................. 43 Hình 2.18. Nhận dạng hành động dựa trên phép lai của học máy sử dụng DNN và SVM ................................................................................................................ 44 Hình 3.1. Một vài loại lớp hành động của tập dữ liệu HMDB51 .................................. 45 Hình 3.2. Một vài loại lớp hành động leo trèo và đi bộ tập UCF101. ........................... 46 Hình 3.3. Mạng DNN huấn luyện và xác thực trên tập dữ liệu UCF101: (a) độ chính xác và (b) giá trị hàm lỗi hội tụ đến giá trị kỳ vọng sau một vài epochs. ...... 48 Hình 3.4. Ví dụ về tăng cường hình dữ liệu hình ảnh ................................................... 49 Hình 3.5. Trọng số của mặt nạ lọc của lớp tích chập đầu tiên. ..................................... 51 Hình 3.6. Kết quả kích hoạt của một số lớp DNN ........................................................ 52 Hình 3. . Kiến trúc hai luồng phân loại video .............................................................. 53 Hình 3.8. Kiến trúc thực hiện TDD ............................................................................... 55 1 MỞ ĐẦU 1. Lý do chọn đề tài Cùng với sự phát triển của khoa học công nghệ của cuộc cách mạng công nghiệp 4.0, các ứng dụng về trí tuệ nhân tạo (TTNT) và học máy ngày càng phát triển và là lĩnh vực được quan tâm nhiều nhất hiện nay, trong đó lĩnh vực học sâu (Deep Learning) là một loại phổ biến của máy học đã có những thành tựu phát triển vượt bậc. Nó đã mở ra một bước ngoặc mới trong việc giải quyết các bài toán về TTNT trước đây đã gặp phải khó khăn như nhận thức sự vật (object perception), nhận diện hình ảnh, hành động, hệ thống gợi ý (recommend system) trên các nền tảng dữ liệu lớn….Trong đó phải kể đến sự phát triển của lĩnh vực thị giác máy tính (computer vision), đặt nền tảng cho nhiều ứng dụng trong thực tiển như các hệ thống xe tự hành, rôbôt thông minh, nhận dạng hành động trong các hệ thống tương tác người – máy. Lĩnh vực học sâu (Deep Learning) là một kỹ thuật trong học máy sử dụng mạng nơron nhiều lớp để giải quyết các bài toán phức tạp dựa trên phương pháp tích chập và trích chọn các đặc trưng từ tập dữ liệu lớn và đã đem lại kết quả chính xác cao trong giải quyết các bài toán TTNT. Cụ thể là nó đã tập trung giải quyết các vấn đề liên quan đến mạng neural về thị giác máy tính, xử lý ngôn ngữ tự nhiên, xử lý giọng nói… Hiện nay, cũng có nhiều nghiên cứu về nhận diện hành động con người thông qua video để xác định hành vi của con người. Tuy nhiên đây là lĩnh vực này tương đối rộng và hiện có nhiều kỹ thuật khác nhau để giải quyết bài toán này. Vì vậy, trong phạm vi luận văn này tập trung nghiên cứu lý thuyết và sử dụng các kỹ thuật mạng học sâu 3D CNN vào việc giải quyết bài toán nhận diện hành động con người trong tương tác người–máy, tập trung hướng đến các hành động bất thường của con người trong lĩnh vực xác định hành động đáng ngờ. Thông qua đó nghiên cứu đề xuất cải tiến các tham số đầu vào và các thuật toán để tăng hiệu quả về thời gian xử lý và độ chính xác nhận dạng, so sánh kết quả thực hiện với một số cơ sở dữ liệu chuẩn đã có nhằm đánh giá tính hiệu quả của các kỹ thuật mới được áp dụng. 2. Mục đích nghiên cứu Mục tiêu chính của đề tài là nghiên cứu nhận dạng hành động người, tập trung vào các hành động bất thường dựa trên các kỹ thuật học sâu mạng tích chập 3D-CNN trong lĩnh vực thị giác máy tính, các nguyên lý hệ thống tương tác người máy. Thực nghiệm áp dụng kỹ thuật mạng tích chập 3D-CNN trong trích xuất đặc trưng hình ảnh từ video để dự đoán hành động con người phục vụ các hệ thống tương tác người máy. Từ đó phân tích, đánh giá hiệu quả và độ chính xác trên các thư viện chuẩn có sẵn. Xây dựng tập dữ liệu và thực nghiệm đoán nhận một số hành động bất thường trong hệ thống camera giám sát an ninh. 2 3. Tổng quan về các nghiên cứu liên quan Trong những năm gần đây, lĩnh vực trí tuệ nhân tạo đã được các nhà khoa học, giớ chuyên gia và các công ty công nghệ quan tâm và đầu tư nghiên cứu ứng dụng vào thực tiển nhiều như Google, Baidu,Apple,… ). Các cuộc hội thảo về các lĩnh vực trí tuệ nhân tạo cũng được tổ chức thường xuyên để giải quyết các bài toán về thị giác máy tính ( Computer Vision), nhận dạng giọng nói, xử lý ngôn ngữ tự nhiên…Song song với đó, kỹ thuật học sâu sử dụng trong lĩnh vực thị giác máy tính ngày càng phổ biến (nhận diện hình ảnh, các lĩnh vực khác) và phát triển nhờ vào tính ưu việt và hỗ trợ của thiết bị phần cứng để tăng tốc độ xử lý (GPU/ GPGPU). Đối với bài toán nhận dạng hành động cũng là một lĩnh vực không mới, có rất nhiều bài báo [2] [4][15] [16][17][18] tại các hội thảo trình bày này đã được trình bày. Có nhiều giải pháp, kiến trúc mạng học sâu được đề xuất và đưa ra với các kết quả khác nhau như phương pháp “Two-stream model (fusion by SVM)” của nhóm tác giả Karen Simonyan, Karen Simonyan [16] cho ra kết quả độ chính xác 88% ( trên tập UCF101), 59.4% ( trên tập HMDB-51); phương pháp ResNeXt-101 [17] cho ra kết quả độ chính xác 90.7% (trên tập UCF101),63.8% ( trên tập HMDB-51); TDD and iDT [18] cho ra kết quả độ chính xác 91.5% ( trên tập UCF101),65.9% ( trên tập HMDB-51)… Ở Việt Nam, việc nghiên cứu về thị giác máy tính (Computer Vision) và các kỹ thuật xử lý ảnh, trí tuệ nhân tạo (AI) để áp dụng giải quyết các bài toán tự động nhận dạng hành động, nhận diện khuôn mặt …chưa được nghiên cứu nhiều. Các sản phẩm thực tế ứng dụng từ các kỹ thuật và công nghệ này chưa phổ biến. Vì thế trong luận văn này, tôi nghiên cứu các kỹ thuật học sâu ứng dụng nhận dạng hành động đáng ngờ nhằm hỗ trợ các hệ thống giám sát dựa trên đề xuất kiến trúc mới nhằm cải tiến và tối ưu hóa để cho ra kết quả khả quan hơn các phương pháp trên về độ chính xác, hiệu năng chương trình. 4. Đối tượng và phạm vi nghiên cứu Nghiên cứu về các phương pháp học máy (Machine Learning), các lĩnh vực học máy và thị giác máy tính trong nhận dạng hành động con người trong tương tác người máy, đặc biệt là các hành động đáng ngờ phục vụ cảnh báo giám sát an ninh thông qua hệ thống camera giám sát. - Hệ thống tương tác người máy và các hệ thống thông minh. - Lý thuyết về trí tuệ nhân tạo, mạng neural và mạng học sâu [12], [13]. - Đánh giá trên một số cơ sở dữ liệu chuẩn như UCF1 1[5], HMDB51[ ] - Công cụ lập trình Mathlab [15], Python 3. , các thư viện [14]… 5. Phương pháp nghiên cứu - Nghiên cứu lý thuyết: Tổng hợp thu thập và nghiên cứu các tài liệu có liên quan đến đề tài như đã nêu trong mục 3 bao gồm: lý thuyết về xử lý ảnh, trích xuất đặc 3 trưng ảnh. Lý thuyết về học máy, mạng neural tích chập, kỹ thuật học sâu trong mạng 3D-CNN trong nhận dạng hành động con người để phân loại, nhận dạng. - Phương pháp thực nghiệm: Đánh giá một số kỹ thuật thị giác máy tính trong nhận dạng hành động con người, phân tích thiết kế hệ thống nhận dạng hành động bằng kỹ thuật học sâu 3D-CNN. Lựa chọn công cụ đã có để cài đặt, đề xuất mô hình và thể hiện cụ thể những kết quả đã nghiên cứu, kết quả thực nghiệm so với các cơ sở dữ liệu chuẩn để so sánh đánh giá. 6. Ý nghĩa khoa học và ý nghĩa thực tiễn Với việc nghiên cứu và thực nghiệm kỹ thuật học sâu trong kiến trúc mạng 3D CNN để nhận dạng hành động con người cho ra kết quả mong muốn, sử dụng tập dữ liệu huấn luyện lớn đóng vai trò quan trọng trong việc xây dựng mô hình để dự đoán kết quả đầu ra chính xác hơn. Với các tập/bộ dữ liệu lớn bao gồm nhiều hành động thì có thể áp dụng vào xây dựng các hệ thống trong thực tế mang tính thực tiển cao như các hành động bất thường trong hệ thống tương tác người máy như hỗ trợ giám sát an ninh, chăm sóc y tế, người già,… 7. Cấu trúc luận văn Luận văn được chia làm 3 chương: - Chương Mở đầu. - Chương 1: Cơ sở lý thuyết Trình bày được các cơ sở lý thuyết sau: + Tổng quan các hệ thống thông minh. + Trí tuệ nhân tạo và ứng dụng: các khái niệm về học máy, các phương pháp học máy, mạng neuron nhân tạo. + Lý thuyết về xử lý ảnh: tìm hiểu các phương pháp trích chọn và biểu diễn đặc trưng ảnh. + Kỹ thuật học sâu (Deep Learning): khái niệm, mạng neuron học sâu, mạng neuron tích chập. - Chương 2: Mạng tích chập 3D-CNN trong nhận dạng phát hiện hành động Trình bày về các nội dung: + Tích chập 3D. + Kiến trúc 3D CNN trong nhận dạng. + Thiết kế mô hình nhận dạng hành động. + Phân tích các thành phần hệ thống. + Phát biểu bài toán. - Chương 3: Thực nghiệm và đánh giá. - Kết luận và hướng phát triển. - Tài liệu tham khảo. 4 CHƯƠNG 1. TỔNG QUAN 1.1. Tổng quan về các hệ thống thông minh 1.1.1. Khái niệm Hệ thống thông minh (Intelligent Systems – IS) là một hệ thống thực thi một mục đích hoạt động xã hội nào đó, nó được xem như một máy tính được kết nối với các máy tính khác qua hệ thống mạng internet, có khả năng thu thập và phân tích dữ liệu và giao tiếp các hệ thống khác. Các tiêu chí của hệ thống thông minh bao gồm khả năng học hỏi từ kinh nghiệm, bảo mật, kết nối, khả năng thích ứng theo dữ liệu hiện tại và khả năng giám sát và quản lý từ xa. Trong ngành công nghệ thông tin, một hệ thống thông minh được định nghĩa là một tập hợp các phần tử (elements) hoặc các thành phần (components) tạo nên một hệ thống thực hiện một mục đích chung. Như vậy, ngoài việc nó cấu thành từ các thiết bị thông minh, nó còn bao gồm các hệ thống kết nối các thiết bị lại với nhau: bao gồm mạng và các hệ loại hệ thống lớn hơn, các hệ thống phần mềm thông minh (AI) như chatbots, hệ chuyên gia và những loại phần mềm khác. Như vậy hệ thống thông minh có các đặc điểm sau: - Cung cấp cách tiếp cận về mặt phương pháp luận chuẩn để giải quyết những vấn đề quan trọng, phức tạp và nhận được các kết quả nhất quán, đáng tin cậy qua thời gian. - Có khả năng kết nối, giao tiếp với các hệ thống khác, quản lý từ xa. - Có Trí tuệ bao gồm khả năng lĩnh hội, khả năng hiểu, khả năng rút kinh nghiệm, khả năng thu lượm và duy trì tri thức, khả năng đáp ứng nhanh và thành công với các tình huống mới… - Trí tuệ nhân tạo là một cơ sở cốt yếu để xây dựng các hệ thống thông minh. Các hệ thống thông minh hiện nay được ứng dụng rất rộng rãi trong tất cả các lĩnh vực như y tế (hệ thống chẫn đoán bệnh), giáo dục (trường học thông minh), sản xuất Công nghiệp (Công nghệ in 3D), robot thông minh (nổi bật nhất là thành tựu về robot Sophia được cấp quyền công dân đầu tiên trên thế giới vào ngày 25-10-2017 tại Ả Rập Saudi), hệ thống xe tự hành, thành phố thông minh... là các hệ thống thông minh phổ biến hiện nay ở các nước phát triển. 1.1.2. Hệ thống tương tác người - máy (robot) Tương tác người - máy (Human-computerinteraction (HCI)) nghiên cứu về việc thiết kế công nghệ máy tính, đặc biệt tập trung tương tác giữa con người (người dùng) và máy tính. (Theo www.interaction-design.org) 5 Hình 1.1 Các yếu tố trong tương tác người máy. Các vấn đề nghiên cứu về lĩnh vực HCI (Human-Computer-Interaction) đều dựa trên cách thức quan sát tương tác con người với máy tính và thiết kế các kỹ thuật mà cho ph p con người tương tác với máy tính theo các cách thức mới lạ. 1.1.3. Hệ thống tương tác thực ảo Thực tế ảo (virtual reality- VR) là một hệ thống giao diện cao cấp giữa người sử dụng và máy tính. Hệ thống này mô phỏng các sự vật và hiện tượng theo thời gian thực và tương tác với người sử dụng qua tổng hợp các kênh cảm giác ( thị giác, thính giác, xúc giác, khứu giác và vị giác) (Grigore C. Burda, Philippe Coiffet) - Đặc tính cơ bản của hệ thống thực tế ảo là: + Tương tác thời gian thực (real-time interactitity). + Cảm giác đắm chìm (immersion) + Tính tưởng tượng (imagination). - Hệ thống VR gồm 5 thành phần: + Phần mềm. + Phần cứng. + Mạng liên kết. + Người dùng. + Các ứng dụng. - Một số ứng dụng chính của VR: 6 + Công nghiệp ôtô: dùng cho công đoạn thiết kế, thử nghiệm an toàn và bán hàng. Các chuyên gia thiết kế có thể xem hình dạng, cũng như chức năng xe mà không cần sản xuất ra một mẩu thử nghiệm. + Quân sự: trong lĩnh vực quân sự như trãi nghiệm các môi trường chiến đấu, vũ khí. + Y học: phẩu thuật nội soi trên môi trường ảo. + Giáo dục: các lớp học ảo từ các chuyên gia ngành. 1.1.4. Hệ thống hỗ trợ chăm sóc bệnh nhân, người già Cùng với sự phát triển của trí tuệ nhân tạo, hệ thống robot chăm sóc sức khỏe cho người già ra đời và phát triển mạnh ở các nước phát triển như Nhật Bản, rô-bôt có thể thay thế con người trong một số nhiệm vụ chăm sóc người già như tập thể dục, rô-bôt điều dưỡng chăm sốc người già, tuy nhiên nó vẫn là mang tính hỗ trợ, giải phóng các lao động giãn đơn của y tá và chưa hoàn toàn thay thế con người trong tất cả các dịch vụ chăm sóc y tế cho người già. 1.2. Trí tuệ nhân tạo và ứng dụng 1.2.1. Một số khái niệm chung Có rất nhiều khái niệm về trí tuệ nhân tạo, trong đó chúng ta có thể hiểu theo cách cơ bản như sau: “Trí tuệ nhân tạo hay trí thông minh nhân tạo là khoa học nghiên cứu các hành vi thông minh nhằm giải quyết các vấn đề được đặt ra đối với chương trình máy tính”(Wikipedia - theo Học viện kỹ thuật quân sự). Hay “Trí tuệ nhận tạo nghiên cứu các mô hình máy tính có thể nhận thức, lập luận và hành động”(Winston, 1992). Ở đây khái niệm về “hành vi thông minh” của một đối tượng thường biểu hiện qua các hoạt động: + Sự hiểu biết và nhận thức được tri thức. + Sự suy luận tạo ra các giá trị tri thức mới dựa trên lượng tri thức đã có. + Quyết định/hành động theo kết quả dựa trên các suy luận. + Tạo ra các kỹ năng qua quá trình học những tri thức mới. “Tri thức” là được hiểu là bao gồm: + Các khái niệm cơ bản mang tính quy ước hay khái niệm phát triển được hình thành từ các khái niệm cơ bản tạo thành phức hợp phức tạp hơn. + Các phương pháp nhận thức: các qui luật, các thủ tục, phương pháp suy diễn hay lý luận. Trí tuệ nhân tạo được chia thành hai lĩnh vực đó là TTNT truyền thống và Trí tuệ tính toán. 7 + Đối với TTNT truyền thống hầu hết bao gồm các phương pháp hiện được phân loại là phương pháp học máy (machine learning), các phương pháp phổ biến như hệ chuyên gia, lập luận theo tình huống hay mạng Bayes. + Trí tuệ tính toán nghiên cứu việc học hoặc phát triển lặp, quá trình học dựa trên dữ liệu kinh nghiệm, các phương pháp chính gồm như: mạng Neural, hệ mờ, tính toán tiến hóa. 1.2.2. Một số ứng dụng của trí tuệ nhân tạo Ngày nay, TTNT ngày càng được ứng dụng nhiều trong các lĩnh vực khác nhau, từ việc phục vụ đời sống hàng ngày của con người cho đến giáo dục, tài chính ngân hàng, y học, rô-bôt, ôtô tự hành… và thực tế chứng minh rằng việc ứng dụng trí tuệ nhân tạo giúp nâng cao hiệu suất lao động, cải thiện chất lượng cuộc sống của con người, phát triển kinh doanh cho các doanh nghiệp và nó cũng sẽ là nền tảng của rất nhiều các ứng dụng và dịch vụ mới khác của tương lai. Nhờ sự phát triển khoa học vật lý lượng tử giúp cho việc tính toán và xử lý song song của các hệ thống nhanh hơn đáng kể, vì thế việc áp dụng các phương pháp học máy vào xử lý các bài toán thực tế ngày một thuận lợi hơn. Trong đó, gần đây kỹ thuật học sâu (deep learning) đã được quan tâm và phát triển mạnh giúp cho máy tính giải quyết các bài toán trong lĩnh vực học máy ngày càng tốt hơn, mà cụ thể đó là các bài toán tương tác người – máy trong lĩnh vực thị giác máy tính, nhận thức sự vật, gợi ý trong các hệ thống lớn, chẩn đoán các bệnh hiếm gặp... Một số ứng dụng phổ biến hiện nay như: + Lĩnh vực giáo dục: mô hình trường học thông minh hay học trực tuyến ngày một phát triển nhờ ứng dụng TTNT vào quá trình tương tác học tập giữa nhà trường và học sinh/sinh viên tạo ra một hệ sinh thái về giáo dục mà ở đó nhà trường và học sinh tương tác với nhau một cách thuận lợi và nhanh chóng thông qua hệ sinh thái này. + Lĩnh vực y tế: chẩn đoán, điều trị và theo dõi bệnh giúp nâng cao chăm sóc sức khỏe con người, giảm chi phí chữa bệnh cho người dân, trong đó kể cả các dự án như điều trị ưng thư bằng TTNT ( Microsoft đang theo đuổi nghiên cứu). Rô-bôt chăm sóc y tế… + Lĩnh vực y tế: Nhận dạng hình ảnh, giọng nói, rô-bôt thông minh, xe tự hành, hệ thống tương tác thực ảo…đã phát triển mạnh mẽ nhờ sự phát triển của mạng Neural học sâu/hệ thống xử lý phân tán song song (Parallel Distributed processing). 1.2.3. Học máy “Học máy hay máy học(machine learning) là một lĩnh vực của TTNT liên quan đến việc nghiên cứu và xây dựng các kỹ thuật cho phép các hệ thống “học” tự động từ dữ liệu để giải quyết những vấn đề cụ thể nào đó”(Theo wikipedia). Để hiểu gần gũi hơn chúng ta có thể nói học máy là một ngành khoa học giúp máy tính dự đoán được các dữ liệu mới (hay tri thức mới) từ các dữ liệu đã biết (Training Dataset) thông qua các giải thuật học máy. 8 Ví dụ như các máy có học cách phân loại thư điện tử xem có phải thư rác (spam) hay không và tự động xếp thư vào thư mục tương ứng; dạy máy tính (rô-bôt) cách băng qua đường thì theo cách truyền thống bạn sẽ đưa cho nó một loạt quy tắc hướng dẫn cách nhìn trái phải hay đợi xe và người đi qua,… Tuy nhiên nếu dùng học máy chúng ta sẽ cho máy tính xem hàng nghìn video quay cảnh người ta băng qua đường an toàn và hàng nghìn video quay cảnh con người đó bị xe đâm để nó tự học. Từ đó máy tính có thể nhận thức và phân tích nhiều đặc trưng tốt hơn (thông minh hơn) từ các video để nhận biết được các sự vật hiện tượng mới xung quanh thông qua kho dữ liệu đã huấn luyện. Trong lĩnh vực nhận dạng hình ảnh, ví dụ như đưa cho máy học nhiều dữ liệu – 10.000 ảnh mô tả con vật (chó, mèo…) và mong muốn chương trình của bạn thể đoán 1 bức ảnh chưa gặp bao giờ là con vật nào (chó, mèo, …). Do vậy, yêu cầu đặt ra là mỗi lần xem qua một ảnh, học máy sẽ phải “ghi nhớ” đặc trưng của con vật nào: màu lông, vóc dáng, kích thước… Đồng thời học máy phải có khả năng tổng quát hóa những ảnh nó đã xem để có thể dự đoán cho những bức ảnh chưa bao giờ thấy. 1.2.4. Phân loại phương pháp học máy Theo phân nhóm dựa trên phương thức học thì học máy có 4 nhóm sau: + Học có giám sát ( Supervised learning): là học với tập dữ liệu huấn luyện ban đầu hoàn toàn được gán nhãn từ trước. Học có giám sát là phương pháp học sử dụng cho lớp bài toán phân lớp, phân loại (Classification). Đối với bài toán học có giám sát chúng ta thực hiện 3 bước như sau: 1. Thực hiện phân lớp: chuẩn bị một tập dữ liệu huấn luyện (trainning dataset), sau đó thực hiện gán nhãn cho tập dữ liệu này để có tập dữ liệu huấn luyện. 2. Dùng một số thuật toán phân lớp (ví dụ như là thuật toán SVM (Support Vector Machine), K láng giềng gần nhất (K Nearest Neighbours – KNN); tiếp cận xác suất thống kê (Naïve Bayes); Cây quyết định (Decision Tree); sử dụng mạng neural (Neural Network);…) để xây dựng bộ phân lớp để học tập dữ liệu huấn luyện. Quá trình này sẽ dung tập dữ liệu huấn luyện để huấn luyện bộ phân lớp. 3. Sử dụng một tập dữ liệu kiểm tra (Test Dataset) đã được gán nhãn trước, để kiểm tra tính đúng đắn của bộ phân lớp. Sau đó, có thể dùng bộ phân lớp để phân lớp cho các dữ liệu mới. + Học không có giám sát (unsupervised learning) là học với tập dữ liệu huấn luyện ban đầu hoàn toàn chưa được gán nhãn, là phương pháp học sử dụng cho các lớp bài toán gom cụm, phân cụm (clustering). Đối với bài toán học không có giám sát chúng ta thực hiện các bước như sau: 1. Phân cụm: để thực hiện phân cụm trước tiên cần một tập dữ liệu huấn luyện (Training dataset) – là một tập các mẫu dữ liệu học (Training examples). Trong đó, mỗi mẫu dữ liệu học chỉ chứa thông tin biểu diễn mà không có bất kỳ thông tin gì về nhãn lớp hoặc giá trị dữ liệu đầu ra mong muốn. 9 2. Áp dụng một thuật toán học không có giám sát để học hàm/mô hình mục tiêu (trong trường hợp này là hàm phân cụm ứng với thuật toán được chọn). Việc lựa chọn sử dụng thuật toán nào tùy thuộc vào dữ liệu và mục đích của các bài toán yêu cầu, tuy nhiên các thuật toán phổ biến thường hay được sử dụng là: k-means, HAC (Hiearchical Agglomerative Clustering), SOM (Self-Organizing Map), DBSCAN, FCM,... 3. Sử dụng một phương pháp thử nghiệm (có thể kết hợp với một tập dữ liệu có gán nhãn) để đánh giá độ chính xác của hàm mục tiêu học được. + Học bán giám sát (semi-supervised learning) là quá trình học với tập dữ liệu huấn luyện bao gồm cả dữ liệu đã được gán nhãn và dữ liệu chưa được gán nhãn để huấn luyện, thường là dữ liệu gán nhãn là lượng dữ liệu nhỏ và dữ liệu chưa gán nhãn là tập dữ liệu lớn. Tuỳ vào từng mục đích cụ thể, học bán giám sát có thể được áp dụng cho bài toán phân lớp hoặc phân cụm. Đối với bài toán học không có giám sát chúng ta thực hiện các bước như sau: 1. Tập dữ liệu ban đầu là tập huấn luyện (training set): tập có nhãn (thường là số lượng ít), tập học chưa có nhãn (thường là số lượng nhiều). 2. Sử dụng các thuật toán học bán giám sát ( như self-training, Co-training, SVM truyền dẫn (TSVM- Transductive Support Vector Machine) sẽ học các ví dụ có nhãn, sau đó tiến hành gán nhãn (có lựa chọn) cho các ví dụ không có nhãn một cách hợp lý, có đánh giá chất lượng công việc hay độ chính xác. Tiếp theo, chọn các ví dụ vừa được gán nhãn có độ tin cậy cao (vượt trên một ngưỡng chọn trước) đưa vào kết hợp tập dữ liệu có nhãn, tạo thành một tập dữ liệu huấn luyện mới. 3. Áp dụng một phương pháp kiểm thử (Test Dataset) để đánh giá độ chính xác của mô hình/bài toán. + Học tăng cường/cũng cố (reinforcement learning) là tổ hợp của cả hai mô hình (học có giám sát và không giám sát). Cụ thể là với vector đầu vào, quan sát vector đầu ra do mạng tính được. Nếu kết quả được xem là “tốt” thì mạng sẽ được thưởng bằng cách tăng các trọng số kết nối lên; ngược lại mạng sẽ bị phạt, các trọng số kết nối không thích hợp sẽ được giảm xuống. Điều này có nghĩa là với cách học này sẽ giúp cho một hệ thống tự động xác định hành vi dựa trên hoàn cảnh để đạt được lợi ích cao nhất (maximizing the performance). 1.2.5. Mạng neural nhân tạo Mạng neural nhân tạo (Artificial Neural Network - ANN), hay thường gọi ngắn gọn là mạng neural, là mô hình xử lý thông tin được mô phỏng theo cách thức xử lý thông tin của các hệ neural sinh học. Nó bao gồm có một nhóm các neural nhân tạo (mỗi neural là một nút) kết nối với nhau qua các liên kết ( biểu diễn bằng các trọng số w), và xử lý thông tin bằng cách truyền theo các kết nối như một thể thống nhất để giải quyết một vấn đề nào đó. Một mạng neural nhân tạo được xây dựng cho một ứng dụng cụ thể (nhận dạng mẫu, phân loại,...) thông qua một quá trình học từ tập các mẫu 10 huấn luyện. Trong nhiều trường hợp, mạng neural nhân tạo là một hệ thống thích ứng (adaptive system) tự thay đổi cấu trúc của mình dựa trên các thông tin bên ngoài hay bên trong chảy qua mạng trong quá trình học. Về mặt bản chất học ở đây chính là quá trình điều chỉnh giá trị trọng số (w) liên kết giữa các neural sao cho giá trị hàm lỗi là nhỏ nhất. Kiến trúc ANN là tập hợp các neural được kết nối, các đầu ra của một số neural có thể trở thành đầu vào của các neural khác. x1 w11 x2 w21 Hw,b(x) W33 x... Output layer xn Input layer Hidden layer Hình 1.2 Mô hình mạng neural. Một ANN gồm 3 thành phần đó là Input Layer, Hidden Layer và Output Layer. Trong đó, lớp ẩn (Hidden Layer) gồm các neural, nhận dữ liệu input từ các neural ở lớp trước đó và chuyển đổi các input này cho các lớp xử lý tiếp theo. Trong một ANN có thể có nhiều lớp Hidden Layer. Các thành phần cơ bản của một neural nhân tạo bao gồm: + Tập các đầu vào (Inputs): là các tín hiệu vào (input signals) của neural, các tín hiệu này thường là một vec-tơ N chiều. + Tập các đầu ra (Outputs): Là tín hiệu đầu ra của một neural, với mỗi neural sẽ có tối đa là một đầu ra. Đầu vào (Inputs) x1 Trọng số (Weights) W1j Đầu ra (outputs) Y j x1 W2j Nơ-ron j =wijxi xn Wnj Hàm tổng f Hàm truyền Hình 1.3 Quá trình xử lý của một ANN. 11 + Tập các liên kết (trọng số liên kết - weights): Mỗi liên kết được thể hiện bởi một trọng số liên kết – Synaptic weight. Trọng số liên kết giữa tín hiệu vào thứ i với nơron k được kí hiệu là Wik. Đây là thành phần rất quan trọng của một mạng ANN, nó thể hiện giá trị (độ mạnh) của neural vào thứ i đối với quá trình xử lý thông tin đầu ra cho neural k. Các trọng số này thường được khởi tạo giá trị ngẫu nhiên ở thời điểm khởi tạo và được cập nhật (điều chỉnh) liên tục trong quá trình học (Learning Processing) của ANN để có được kết quả mong muốn. + Hàm tổng (Summation Function): là hàm tính tổng trọng số của tất cả các input (neural đầu vào). Hàm tổng của một neural cho biết khả năng kích hoạt của neural đó trong mạng ANN và là đầu vào cho các layer tiếp theo. Hàm tổng của 1 neural có n input được tính theo công thức sau: ∑ (1) Hàm tổng đối với nhiều neural trong cùng một Layer: ∑ (2) + Hàm truyền (Transfer function): Hàm này được dùng để giới hạn phạm vi đầu ra của mỗi nơron. Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng. (3) Trong đó: YT: Hàm chuyển đổi. Y: Hàm tổng. 1.3. Trích chọn và biểu diễn đặc trưng hình ảnh 1.3.1. Đặc trưng ảnh Một hình ảnh bao gồm các thuộc tính màu sắc, hình dạng, kết cấu (texture), các đặc trưng cục bộ (local features)…, tất cả các thành phần này cấu thành nên một bức ảnh và chúng gọi là các đặc trưng của ảnh. Các đặc trưng chính của ảnh bao gồm: - Đặc trưng màu sắc: Màu sắc là một đặc trưng nổi bật và được sử dụng phổ biến nhất trong tìm kiếm ảnh theo nội dung. Mỗi một điểm ảnh (thông tin màu sắc) có thể được biểu diễn như một điểm trong không gian màu sắc ba chiều. Các không gian màu sắc thường dùng là: RGB, Munsell, CIE, HSV. - Đặc trưng kết cấu: Kết cấu hay còn gọi là vân (texture), là một đối tượng dùng để phân hoạch ảnh ra thành những vùng được quan tâm và để phân lớp những vùng đó. Vân cung cấp thông tin sự sắp xếp về mặt không gian của màu sắc và cường độ của một ảnh. - Đặc trưng hình dạng: Hình dạng của một ảnh hay một vùng là một đặc trưng quan trong trong việc xác định và phân biệt ảnh trong nhận dạng mẫu. Mục tiêu chính của biểu diễn hình dạng trong nhận dạng mẫu là đo thuộc tính hình học của một đối tượng được dùng trong phân lớp, so sánh và nhận dạng đối tượng. 12 1.3.2. Một số phương pháp trích chọn đặc trưng đơn giản 1.3.2.1. Trích chọn đặc trưng ảnh dựa trên màu sắc - Lược đồ màu (Histogram): Là đại lượng đặc trưng cho phân bố màu cục bộ của ảnh. Độ đo tính tương tự về màu sắc được tính bằng phần giao của 2 lược đồ màu ảnh truy vấn H(IQ) và ảnh trong cơ sở dữ liệu ảnh H(ID). Kết quả sẽ là một lược đồ màu thể hiện độ giống nhau giữa 2 ảnh trên. Tuy nhiên vì lược đồ màu chỉ thể hiện tính phân bố màu toàn cục của ảnh mà không x t đến tính phân bố cục bộ của điểm ảnh nên có thể có 2 ảnh trông rất khác nhau nhưng lại có cùng lược đồ màu. - Vector liên kết màu (Color Coherence Vector): Là lược đồ tinh chế lược đồ màu, chia mỗi ô màu thành 2 nhóm điểm ảnh: nhóm liên kết màu (coherence pixels) và nhóm không liên kết màu (noncoherence pixels). Vector liên kết màu còn giúp giải quyết khuyết điểm về tính không duy nhất của lược đồ màu đối với ảnh. Hai ảnh có thể có chung lược đồ màu nhưng khác nhau hoàn toàn, đây là khuyết điểm của lược đồ màu. Nhưng với tìm kiếm theo đặc trưng vector liên kết màu thì nó sẽ giải quyết được khuyết điểm không duy nhất này. 1.3.2.2. Trích chọn đặc trưng ảnh dựa trên kết cấu Kết cấu hay còn gọi là vân (texture), là một đối tượng dùng để phân hoạch ảnh ra thành những vùng được quan tâm và để phân lớp những vùng đó. Vân cung cấp thông tin sự sắp xếp về mặt không gian của màu sắc và cường độ của một ảnh. Ví dụ cấu trúc của vân của một số loại lá cây. Ma trận đồng hiện (Co-occurence Matrix): Ma trận đồng hiện là ma trận lưu trữ số lần xuất hiện của những cặp điểm ảnh trên một vùng đang x t. Các cặp điểm này được tính theo những quy luật cho trước. Ví dụ với ảnh f như sau: f= ta có ma trận đồng hiện P(1,0) với P(1,0)= - Phép biến đổi Wavelet: Vân thu được từ biến đối wavelet được hầu hết các nghiên cứu công nhận là đặc trưng về vân tốt nhất cho việc phân đoạn ảnh. 14 Thuật toán tính ra các đặc trưng vân theo biến đổi Wavelet: 1. Tính biến đổi Wavelet trên toàn ảnh. 2. Ứng với mỗi vùng cần tính, ta tính được 3 thành phần ứng với các miền HL, LH và HH. 13 3. Khi áp dụng biến đổi wavelet ở những mức sâu hơn, ta sẽ có tương ứng 3xV thành phần ứng với V là chiều sâu của biến đổi Wavelet. - Các đặc trưng lọc Gabor: Lọc Gabor được sử dụng rộng rãi để trích rút các đặc trưng ảnh, đặc biệt là các đặc trưng kết cấu. Nó tối ưu về mặt cực tiểu hoá sự không chắc chắn chung trong miền không gian và miền tần số, và thường được sử dụng như một hướng và tỷ lệ biên điều hướng và phát hiện đường. Có nhiều cách tiếp cận đã được đề xuất để mô tả các kết cấu của các ảnh dựa trên các lọc Gabor. - Các đặc trưng biến đổi sóng: Tương tự với lọc Gabor, biến đổi sóng cung cấp một cách tiếp cận đa độ phân giải đối với phân tích kết cấu và phân lớp. Các biến đổi sóng phân rã một tín hiệu với một họ các hàm cơ sở ѱ mn(x) thu được thông qua dịch chuyển sự có giãn của song ѱ (x) ѱ (x) = 2-1/2 ѱ (2-mx - n) Hơn nữa, theo so sánh của các đặc trưng biến đổi sóng khác nhau, chọn riêng lọc sóng không là then chốt cho phân tích kết cấu. 1.3.2.3. Trích chọn đặc trưng ảnh dựa trên hình dạng - Trích chọn đặc trưng theo biên: + Lược đồ hệ số góc: Lược đồ gồm 73 phần tử trong đó: 2 phần tử đầu chứa số điểm ảnh có hệ số gốc từ 0 – 355 độ, các hệ số góc này cách nhau 5 độ. Phần tử cuối chứa số phần tử không nằm trên biên cạnh. + Vector liên kết hệ số góc (Edge Direction Coherence Vector): Là lược đồ tinh chế lược đồ hệ số góc, chia mỗi ô chứa thành 2 nhóm điển ảnh: Nhóm điểm liên kết hệ số góc (coherent pixels) và nhóm điểm không liên kết hệ số góc (non-coherence pixels). Một pixel trong một ô chứa được gọi là điểm liên kết hệ số góc (coherent) nếu nó thụôc vùng gồm các điểm thuộc cạnh có hệ số góc tương tự với kích thướt lớn (thường vào khoảng .1% kích thước ảnh). Hình 1.4 Ảnh minh họa vector liên kết hệ số goc và liên kết giữa các biên cạnh (nguồn internet) Trích chọn đặc trưng theo vùng: Ảnh gồm tập hợp các vùng hay còn gọi là đoạn. Đây là đặc trưng đặc biệt của ảnh. Với đặc trưng vùng sẽ giúp cho chúng ta có thể giải quyết được một vấn đề lớn đang cản trở bước phát triển việc truy tìm ảnh dựa vào nội dung là dữ liệu nhập được mô phỏng gần gũi hơn với suy nghĩ của con người và ảnh tìm được có thể mang nội dung ngữ nghĩa rất khác so với ảnh truy vấn. - 14 1.3.3. Mô tả đặc trưng Haar 1.3.3.1. Đặc trưng Haar Phương pháp biểu diễn đặc trưng Haar-like feature (gọi tắt là phương pháp Haar) được giới thiệu bởi Viola và Jones [31] tại hội nghị quốc tế về thị giác máy tính và nhận dạng mẫu năm 2 1. Phương pháp Haar phát triển dựa trên nguyên lý Haarwavelet, dùng các đáp ứng cải thiện từ ba bậc đầu tiên của sóng Haar-wavelet như là tập đặc trưng: 1 1 1 1 1 1 , , . 1 1 1 1 1 1 Nguyên lý cơ bản phương pháp Haar là tính độ sai khác về tổng giá trị mức xám giữa các vùng với nhau. Phương pháp Haar lần đầu tiên được giới thiệu và áp dụng thành công cho nhận dạng mặt người theo thời gian thực nhờ kết hợp phương pháp tính nhanh theo tích phân ảnh (intergral image). Ban đầu, bộ mô tả Haar chỉ sử dụng 4 loại mẫu đặc trưng cơ bản là sự kết hợp của hai, ba hoặc bốn vùng phân phối theo các dạng tương ứng như minh họa. 1.1 f ( x) I (i, j ) I (i, j ) ( i , j ) white regions ( i , j ) black regions (a) (b) Hình 1.5 Các mẫu đặc trưng cơ bản của Haar: (a) các khối và phân phối của nó theo đề xuất của Viola, (b) ứng dụng trong nhận dạng mặt người. Như vậy, mỗi đặc trưng Haar chính là giá trị khác biệt giữa tổng giá trị mức xám điểm ảnh trong vùng đen và vùng trắng tương ứng theo từng loại mẫu và từng kích thước vùng khác nhau. Trong thực nghiệm và ứng dụng thực tế, kích thước của mỗi hình chữ nhật đen và trắng được thay đổi tương ứng từ ngưỡng dưới đến ngưỡng trên, mỗi lần thay đổi theo hệ số tỷ lệ nào đó để trích ra tập nhiều đặc trưng và được ghép kết hợp lại với nhau theo một thứ tự nhất định thành một vector đặc trưng. 1.3.3.2. Trích xuất đặc trưng Haar Để tính các giá trị của đặc trưng Haar, ta phải tính tổng giá trị pixel trong các vùng trên ảnh. Việc này được thực hiện lặp đi lặp lại toàn bộ vị trí trên ảnh mẫu (quét qua toàn bộ ảnh) và thực hiện với các kích thước vùng khác nhau. Một hạn chế trong tính đặc trưng Haar là tuy giá trị mức xám pixel không đổi nhưng việc tính tổng được lặp đi lặp lại nhiều lần dẫn đến chi phí tính toán lớn, không đáp ứng được đòi hỏi xử lý thời gian thực (real time). Do đó, tác giả Viola và Jones đã đề xuất giải pháp tính nhanh đặc trưng mà không cần thực hiện lặp lại cho mỗi mức scale ảnh và mỗi kích thước vùng (đen/ trắng) bằng cách sử dụng phương pháp tích phân ảnh (integral image). Phương pháp này sử dụng một mảng hai chiều có kích thước bằng với kích
- Xem thêm -

Tài liệu liên quan