Tiểu luận môn Máy học và ứng dụng Mạng nơ-ron nhân tạo vào ứng dụng nhận dạng biển số xe

35 1K 3
Tiểu luận môn Máy học và ứng dụng Mạng nơ-ron nhân tạo vào ứng dụng nhận dạng biển số xe

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN - - BÀI THU HOẠCH MÔN HỌC MÁY HỌC VÀ ỨNG DỤNG Đề tài: Mạng nơ-ron nhân tạo vào ứng dụng nhận dạng biển số xe Giảng viên hướng dẫn: PGS.TS Vũ Thanh Nguyên Học viên thực hiện: Lê Bảo Trung MSHV: CH1301112 TP Hồ Chí Minh, tháng năm 2014 PHỤ LỤC Bài thu hoạch Máy học & Ứng dụng I HVTH: Lê Bảo Trung GIỚI THIỆU ĐỀ TÀI Ngày nay, với phát triển không ngừng ngành cơng nghệ thơng tin nói chung khoa học máy tính nói riêng, có nhiều thành tựu đề tài nghiên cứu ứng dụng rộng rãi, hiệu vào đời sống người, góp phần giúp đời sống người ngày đại, giảm công việc nặng nhọc đời sống ngày, từ làm thu ngắn thời gian lao động nâng cao đáng kể hiệu suất làm việc Đặc biệt, phương pháp máy học với công nghệ xử lý ảnh ngày đónggóp vai trị to lớn tự động hóa vấn đề phức tạp tưởng chừng có người thực Có thể kể tên ứng dụng phổ biến mà máy học xử lý ảnh áp dụng rộng rãi vào đời sống như: xử lý ảnh chụp vệ tinh, dự báo thời tiết, điều khiển giao thông công cộng, nhận dạng chữ viết tay, phân tích chữ ký, nhận dạng vân tay, nhận dạng mặt người, nhận dạng hành động người,… Hiện nay, hầu hết bãi giữ xe nước ta quản lí cách thức thủ cơng đơn giản khơng có suất làm việc cao Quy trình giữ xe mơ tả cách đơn giản sau: người đọc biển số, người khác ghi biển số xe vào thẻ giữ xe, sau bấm vào xe phần vé xe, phần lại đưa cho chủ xe giữ Sau xe bãi nhiều người trơng chừng tùy theo bãi xe rộng hay hẹp, có nhiều hay góc khuất,… Phương pháp thủ cơng người sử dụng cách rộng rãi lý tính đơn giản khơng cần thiết bị phức tạp, đồng thời khơng thể có giải pháp khác việc sử dụng giác quan người để nhận biết bảng số xe phương tiện giao thông Phương pháp tồn nhiều nhược điểm, đặc biệt trường hợp đơng xe độ trễ phương pháp trở ngại đáng kể dẫn đến tượng ùn ứ đầu bãi giữ xe,thêm vào lãng phí nguồn nhân lực, phương pháp phải cần nhiều người để quản lý tốt tồn bãi giữ xe Độ xác đơi khơng đảm bảo, việc đọc, ghi biển số xe người thực nên khơng thể tránh khỏi sai sót Độ an toàn thấp, dùng nhiều người nên việc quản lí Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung người phức tạp, hay việc giám sát người nên khó bao qt tốt tồn bãi xe Và đa số vé xe đơn giản dễ nhầm lẫn , việc đối chiếu lúc xe người (dễ bị ảnh hưởng yếu tố chủ quan , nhầm lẫn) nên kẻ gian tráo vé , sửa đổi vé làm vé giả để qua mặt nhân viên giữ xe…tốc độ công việc không cao, thực việc xe vào qua nhiều khâu đọc biển số, ghi vé, bấm vé, …Và cuối nhược điểm phương pháp khơng có chứng để lưu giữ thông tin xe vào bãi, thời gian khỏi bãi, …Do cố xảy (mất xe, vé xe,…) khơng có thơng tin để kiểm tra, đối chiếu Khơng có khả thống kê, tính tốn lượng xe ra, vào … Tóm lại nhược điểm phương pháp tốc độ hiệu thấp, khả quản lý, kiểm soát Rất dễ xảy mát tài sản Xuất phát từ nhược điểm trên, toán đặt làm để tăng hiệu việc quản lý giữ xe, với giả thiết ta đặt camera vị trí cổng giữ xe, có xe vào camera chụp ảnh biển số Sau phân tích xử lý ảnh chương trình máy tính lưu giữ lại biển số xe in phần vé cho người gởi xe? Phương pháp khắc phục nhược điểm phương pháp thủ công, giai đoạn nhận ảnh từ camera, xử lý, nhận dạng ký tự biển số Trong báo cáo đề tài trình bày phương pháp mạng noron nhân tạo máy học, phương pháp phổ biến ứng dụng rộng rãi giải nhiều toán máy học đạt kết tố thử nghiệm ứng dụng vào thực tế Dựa sở lý thuyết mạng nơron nhân tạo, qua giới thiệu tốn nhận dạng biển số xe; ứng dụng có tính hữu ích cao nghiên cứu với nhiều phương pháp khác Trang | Bài thu hoạch Máy học & Ứng dụng II HVTH: Lê Bảo Trung MẠNG NƠ RON NHÂN TẠO Khái niệm mạng noron a) Mạng nơ-ron sinh học Mạng nơ-ron sinh học mạng lưới (plexus) nơ-ron có kết nối có liên quan mặt chức trực thuộc hệ thần kinh ngoại biên (peripheral nervous system) hay hệ thần kinh trung ương (central nervous system) Trong ngành thần kinh học (neuroscience), thường dùng để nhóm nơron thuộc hệ thần kinh đối tượng nghiên cứu khoa học định Hệ thống thần kinh người xem hệ thống gồm ba tầng: - Trung tâm hệ thống não tạo nên mạng lưới thần kinh, lien tục tiếp nhận thông tin, nhận thức thông tin, thực - định phù hợp Các tiếp nhận bên não làm nhiệm vụ chuyển đổi kích thích từ thể người hay từ mơn trường bên ngồi thành xung điện; - xung điện vận chuyển thong tin tới mạng lưới thần kinh Các tác động có nhiệm vụ chuyển đổi xung điện sinh mạng lưới thần kinh thành đáp ứng thấy (dưới nhiều dạng khác nhau), đầu hệ thống Sơ đồ khối hệ thống thần kinh Hai số thành phần não mà cần quan tâm đến yếu tố định khả tính tốn não tế bào thần kinh (neuron) khớp nối thần kinh (synapse) Người ta ước tính có xấp xỉ 10 tỷ neuron 60 nghìn tỷ synapse vỏ não người Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Các neuron đơn vị xử lý thông tin sở não với tốc độ xử lý chậm từ tới lần cổng logic silicon Các synapse lả đơn vị cấu trúc chức làm trung gian kết nối neuron Kiểu synapse chung synapse hóa học Trong não, có số lượng lớn tổ chức giải phẫu quy mô lớn nhỏ cấu tạo dựa sở neuron synapse; chứng phân thành nhiều cấp theo quy mô chức đặc thù Cần phải nhận thấy kiểu cấu trúc phân cấp hoàn hảo đặc trưng não, chúng không tìm thấy nơi máy tính số, khơng đâu đạt tới gần tái tạo lại chúng Tuy nhiên, tiến hành bước đường dần tới phân cấp mức tính tốn tương tự vậy, gọi neuron nhân tạo Các neuron nhân tạo mà dùng để thiết kế nên mạng neuron nhân tạo thực cịn thơ sơ so với tìm thấy não Nhưng với tiến đáng ghi nhận nhiều lĩnh vực thập kỷ vừa qua, có quyền hy vọng thập kỷ tới mạng neuron nhân tạo tinh vi nhiều so với b) Khái niệm mạng nơ-ron nhân tạo Dựa tảng mạng noron thần kinh não người, q trình mơ xây dựng mạng noron nhân tạo nghiên cứu thực nhằm nâng cao tính “thơng minh” cho thiết bị điện tử, vi tính Mạng nơ-ron nhân tạo hay thường gọi ngắn gọn mạng nơ-ron mơ hình tốn học hay mơ hình tính tốn xây dựng dựa mạng nơ-ron sinh học Nó gồm có nhóm nơ-ron nhân tạo (nút) nối với nhau, xử lý thông tin cách truyền theo kết nối tính giá trị nút (cách tiếp cận connectionism tính tốn) Trong nhiều trường hợp, mạng nơ-ron nhân tạo hệ thống thích ứng (adaptive system) tự thay đổi cấu trúc dựa thơng tin bên ngồi hay bên chảy qua mạng trình học Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Trong thực tế sử dụng, nhiều mạng nơ-ron cơng cụ mơ hình hóa liệu thống kê phi tuyến Chúng dùng để mơ hình hóa mối quan hệ phức tạp liệu vào kết để tìm kiếm dạng/mẫu liệu Mạng noron có tính chất đặc trưng sau: - Thông tin xử lý phần tử đơn giản gọi noron Tính hiệu lan truyền noron thông qua kết nối (synapse) Mỗi kết nối có trọng số ( nhân với tín hiệu lan truyền) Mỗi noron có hàm kích hoạt (thường phi tuyến) tác động lên đầu vào để tạo thành đầu Trong mạng noron có kiểu đơn vị: 1) Các đơn vị đầu vào (input units), nhận tín hiệu từ bên ngồi; 2) Các đơn vị đầu (Output units), gửi liệu bên ngoài; 3) Các đơn vị ẩn (Hidden units), tín hiệu vào nằm mạng Mỗi đơn vị j có nhiều đầu vào, x0,x1,…,xn, có đầu zj Một đầu vào tới đơn vị liệu từ bên mạng, đầu đơn vị khác, đầu c) Q trình hình thành phát triển noron nhân tạo Mạng noron nhân tạo xây dựng từ năm 1940 nhằm mô số chức não người Dựa quan điểm cho não người điều khiển Mạng noron nhân tạo thiết kế tương tự noron sinh học có khả giải hàng loạt tốn tính tốn tối ưu, điều khiển, cơng nghệ robot… Quá trình nghiên cứu phát triển noron nhân tạo chia thành giai đoạn sau: Giai đoạn 1: Có thể tính từ nghiên cứu William (1890) tâm lý học với liên kết noron thần kinh Năm 1940 Mc Culloch Pitts cho biết noron mơ hình hố thiết bị ngưỡng (Giới hạn) để thực cácphép tính logic mơ hình mạng noron Mc Culloch – Pitts với giải thuật huấnluyện mạng Hebb đời năm 1943 Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Giai đoạn 2: vào khoảng gần năm 1960, số mơ hình noron hồn thiện đưa như: Mơ hình Perceptron Rosenblatt (1958), Adalile Widrow (1962) Trong mơ hình Perceptron quan tâm ngun lý đơn giản, có hạn chế Marvin Minsky Seymour papert MIT ( Massachurehs Insritute of Technology) chứng minh khơng dùng cho hàm logic phức (1969) Còn Adaline mơ hình tuyến tính, tự chỉnh, dùng rộng rãi điều khiển thích nghi, tách nhiễu phát triển Giai đoạn 3: Có thể tính vào khoảng đầu thập niên 80 Những đóng góp lớn cho mạng noron giai đoạn phải kể đến Grossberg, Kohonen, Rumelhart Hopfield Trong đóng góp lớn Hopfield gồm hai mạng phản hồi: Mạng rời rạc năm 1982 mạng liên tục năm 1984 Đặcbiệt, ông dự kiến nhiều khả tính tốn lớn mạng mà nơron khơng có khả Cảm nhận Hopfield Rumelhart, Hinton vàWilliams đề xuất thuật toán sai số truyền ngược tiếng để huấn luyện mạng noron nhiều lớp nhằm giải toán mà mạng khác không thực Nhiều ứng dụng mạnh mẽ mạng noron đời với mạng theo kiểu máy Boltzmann mạng Neocognition Fukushima Giai đoạn 4: Tính từ năm 1987 đến nay, hàng năm giới mở hội nghị toàn cầu chuyên ngành nơron IJCNN (International Joit Conference on Neural Networks) Rất nhiều cơng trình nghiên cứu để ứng dụng mạng nơron vào lĩnh vực nh ư: Kỹ thuật tính, điều khiển, toán tối ưu, y học, sinh học, thống kê, giao thơng, hố học, Cho đến mạng nơron tìm khẳng định đ ược vị trí nhiều ứng dụng khác Mơ hình mạng nơ-ron nhân tạo a) Mơ hình cấu trúc mộ nơ-ron nhân tạo Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Để mô tế bào thần kinh khớp nối thần kinh não người, mạng noron nhân tạo có thành phần có vai trị tương tự noron nhân tạo kết nối synapse Một noron nhân tạo đơn vị tính tốn hay đơn vị xử lý thông tin sở cho hoạt động mạng noron Chúng ta xác định ba thành phần mơ hình moron: - Một tập synapse hay kết nối, mà chúng đặc trưng trọng số riêng Tức tín hiệu xj đầu vào synapse j nối với neuron k nhân với trọng số synapse wkj Ở k số neuron đầu synapse xét, j điểm đầu vào synapse Các trọng số neuron nhân tạo có - thể nhận giá trị âm giá trị dương Một cộng để tính tổng tín hiệu đầu vào neuron, nhân với trọng số - synapse tương ứng; phép tốn mơ tả tạo nên tổ hợp tuyến tính Một hàm kích hoạt (activation function) để giới hạn biên độ đầu neuron Hàm kích hoạt xem xét hàm né; giới hạn phạn vi biên độ cho phép tính hiệu đầu khoảng giá trị hữu hạn Mơ hình neuron cịn bao gồm hệ số hiệu tác độ từ bên ngồi, bk Hệ số hiệu bk có tác dụng tang lên giảm đầu vào thực hàm kích hoạt, tùy theo dương hay âm Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Mơ hình phi tuyến neuron Ta mô tả noron k cặp công thức sau: (2.1) Và (2.2) Trong đó: - x1,x2,…,xm tín hiệu đầu vào wk1,wk2,…,wkm trọng số synapse neuron uk đầu tổ hợp tuyến tính tương ứng bk hệ số hiệu chỉnh b) Hàm kích hoạt Hàm kích hoạt, ký hiệu , xác định đầu noron Có kiểu hàm kích hoạt sau: 1) Hàm ngưỡng: Cịn gọi hàm Heaviside 2) Hàm vùng tuyến tính 3) Hàm sigma: Hàm sigma dạng chung hàm kích hoạt, sử dụng cấu trúc mạng noron nhân tạo, Nó làm hàm tăng thể trung gian tuyến tính phi tuyến tính Một ví dụ hàm hàm logistics, xác định sau: Trong đó: a tham số độ dốc hàm sigma v hệ số góc độ dốc Bằng việc biến đổi tham số a, thu hàm sigma với độ dốc - khác Trang | Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung c) Kiến trúc mạng nơ-ron Trong não người, tế bào thần kinh liên kết với thông qua khớp nối thần kinh tạo thành mạng lưới với kiến trúc vô phức tạp dạng Đối với mạng noron nhân tạo, có ba lớp kiến trúc sau: 1) Các mạng tiến đơn mức Trong mạng noron phân mức, noron tổ chức dạng mức Dạng đơn giản mạng phân mức bao gồm mức đầu vào nút nguồn chiếu trực tiếp tới mức đầu noron (các nút tính tốn) Mạng noron khơng có chu trình đơn giản gọi lại mạng đơn mức, tức có mức mức đầu gồm nút tính tốn mạng tiến đơn mức 2) Các mạng tiến đa mức Lớp thứ mạng noron tiến phân biệt có mặt hay nhiều mức ẩn, mà nút tính tốn chúng gọi noron ẩn hay đơn vị ẩn ( “ẩn” mang ý nghĩa không tiếp xúc với môi trường bên ngoài) Chức noron ẩn can thiệp vào đầu vào đầu mạng hữu hiệu Bằng biệc thêm vài mức ẩn, mạng có khả rút thống kê bậc cao tính hiệu đầu vào Khả noron ẩn rút thông kệ bậc cao đặc biệt có giá trị mức đầu vào có kích thước lớn Trang | 10 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung height=height+1; else { top=i; flag=1; } else if (height>=h) bottom=i; } Tách ảnh mới: đỉnh top, đáy bottom=RowImage i=0; thiết lập giá trị ban đầu; flag=0; for (i=0; i=ngưỡng) If (flag=1) width=width+1; Trang | 21 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung else { left=i; flag=1; } else if (width>=w) right=i; } Biển số xe= ảnh với cạnh trái left cạnh phải right } Trang | 22 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Một số ảnh sau tách biển số Tổng kết thuật tốn trích biển số: Theo thuật tốn kết nhận biển số, tốn nhiều thời gian xử lý Nếu ảnh đầu vào thỏa điều kiện nêu phần chụp ảnh, thời gian xử lý nhanh kích thước ảnh nhỏ Tiền xử lý: Sau nhận ảnh biển số, cơng việc xử lý ảnh biển số không phần quan trọng, khơng phải tất biển số rõ ràng mà cịn tùy thuộc vào thời gian tồn biển số, ảnh hưởng điều kiện chụp ảnh (sáng, tối,…), ảnh hưởng đinh ốc,… Ảnh bảng số − Chuyển ảnh sang ảnh Gray Level: Trang | 23 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Ảnh bảng số (Gray level) − Xử lý ảnh giải thuật K-means: Ảnh bảng số (K-mean) − Đảo ngược màu (Invert ): Ảnh bảng số (Invert) − Lọc Median: Trang | 24 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Ảnh bảng số (Median) − Bộ lọc BlobsFiltering: Ảnh bảng số (BlobsFiltering) Thuật toán tách ký tự: Input: ảnh biển số trích từ thuật tốn trích biển số qua tiền xử lý Output: mảng ký tự biển số Với h: ngưỡng cao w: ngưỡng rộng Functiondefine_line ( image, thres) { i=0; c=0; Trang | 25 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung thiết lập giá trị ban đầu; flag=0; for (i=0; i=ngưỡng) If (flag=1) height=height+1; else { top[c]=i; flag=1; } else if(height>=h) { bottom[c]=i; c++; } } Tách ảnh mới: đỉnh top, đáy bottom= RowImage } Functiondefine_pos( image, thres) { Trang | 26 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung i=0; thiết lập giá trị ban đầu; c=0; flag=0; for (i=0; i=ngưỡng) If (flag=1) width=width+1; else { left[c]=i; flag=1; } else if (width>=w) { right[c]=i; c++; } } Tách ảnh ký tự ‘c’ với cạnh trái left[c], cạnh phải right[c] } Trang | 27 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Ứng dụng mạng nơron lan truyền ngược cho toán nhận dạng ký tự số biển số xe Mơ hình mạng Neural nhân tạo sử dụng để huấn luyện mạng tiến đa mức lan truyền ngược sai số (Back – Propagation Neural Network) với lớp: lớp vào, lớp ẩn lớp Ký tự tách từ bảng số, chuẩn hóa kích thước thành 20 x 10, sau ta chuyển thành mảng chiều 200 x 1, tương ứng với 200 pixel với giá trị Vậy mạng Neural thiết kế với 200 nút lớp vào ( tương ứng 200 pixel) 100 nút lớp ẩn, 10 nút lớp mạng nhận dạng số 21 nút mạng nhận dạng chữ Quátrình huấn luyện mạng : Huấn luyện mạng neural nhiều lớp sử dụng thuật tốn lan truyền ngược gồm hai q trình: Q trình truyền tuyến tính q trình truyền ngược: Trang | 28 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Q trình truyền tuyến tính: Dữ liệu từ lớp nhập qua lớp ẩn đến lớp xuất để:  Thay đổi giá trị trọng số liên kết W neural mạng biểu diễn liệu học  Tìm khác giá trị thật hàm mẫu mà mạng tính kết dự đoán mạng gọi lỗi (học có giám sát) Q trình truyền ngược: Giá trị lỗi truyền ngược lại cho trình huyến luyện(học) tìm trọng số Wi để lỗi nhỏ Bước1:Lan truyền xi đầu vào Xs={x1,x2,…,xn}quamạng: • • Đầu nơron j lớp ẩn yj =g (ii xi - θj) (1) Đầu nơron lớp : Yk =g (j wjk ) = g( jk g ( ij xi - θj ) - θk ) (2) Bước 2: Lan truyền ngược sai số: So sánh phần tử vectơ đầu thực với phần tử tương ứng vectơ đầu mẫu để tính độ sai lẹch ek =tk -yk Tổng bình phương sai số mạng ứng với mẫu học ( Xs Ts) E = yk – tk )2 Thơngtinvềsaisốđượclantruyềnngượcquamạngđểđiềuchỉnhlạicácgiátrị trọngsố vịnglặp thứl: Với liên kết giữanơronẩn vànơron ra: ∆wjk =η.δk (l).yj(l) ,vớiηlà hệsố học δκ (l) = ek (l) gk ( yk (l) ) Wjk ( l+1) = w jk (l) + ∆wjk (3) Trang | 29 Bài thu hoạch Máy học & Ứng dụng HVTH: Lê Bảo Trung Với liên kết giữanơronvào vànơron ẩn: ∆wij = η.δ j (l) xi δ (l) = gj’ (yj) δκ (l) Wjk ( l+1 ) Wij (l+1 )= wij + ∆w+ij Saukhihiệuchỉnhtrọng số,mẫu Xs tiếptụcđượcđưavàomạng lầnthứ thứ(l+1)và tiếptụcthuậttốnhiệuchỉnhtrọngsốchođếnkhiE

Ngày đăng: 21/05/2015, 12:49

Từ khóa liên quan

Mục lục

  • I. GIỚI THIỆU ĐỀ TÀI

  • II. MẠNG NƠ RON NHÂN TẠO

    • 1. Khái niệm mạng noron

      • a) Mạng nơ-ron sinh học

      • b) Khái niệm mạng nơ-ron nhân tạo

      • c) Quá trình hình thành và phát triển noron nhân tạo

      • 2. Mô hình của một mạng nơ-ron nhân tạo

        • a) Mô hình cấu trúc mộ nơ-ron nhân tạo

        • b) Hàm kích hoạt

        • c) Kiến trúc mạng nơ-ron

        • 3. Ứng dụng

        • 4. Ưu – nhược điểm của mạng noron

          • Ưu điểm:

          • Nhược điểm:

          • III. ỨNG DỤNG MẠNG NƠRON NHÂN TẠO VÀO BÀI TOÁN NHẬN DẠNG BIỂN SỐ XE

            • 1. Bài toán xử lý ảnh

              • a) Kỹ thuật chuyển ảnh sang ảnh mức xám (Gray Level):

              • b) Lược đồ mức xám (Histogram):

              • c) Xử lý ảnh bằng thuật toán K-means:

              • d) Lọc trung vị (Median):

              • e) Bộ lọc BlobsFiltering:

              • f) Thuật toán tách ký tự

              • 2. Ứng dụng mạng nơron lan truyền ngược cho bài toán nhận dạng ký tự số trên biển số xe

                • Quátrình huấn luyện mạng :

                • 3. Xây dựng chương trình

                • IV. KẾT LUẬN

                • TÀI LIỆU THAM KHẢO

Tài liệu cùng người dùng

Tài liệu liên quan