4.2.1. Huấn luyện và xây dựng mô hình phân lớp 43
4.2.2. Thực hiện kiểm thử với mô hình 43
4.2.3. Kết quả thực nghiệm và đánh giá 44
4.3. ÁP DỤNG SVM TRÊN ẢNH ĐƯỢC TRÍCH CHỌN ĐẶC TRƯNG DỰA TRÊN BỘ LỌC CANNY 45
4.3.1. Huấn luyện và xây dựng mô hình 45
4.3.2. Thực hiện nhận dạng với mô hình 46
4.2.3. Kết quả thực nghiệm và đánh giá 46
4.4. KẾT LUẬN CHUNG VÀ ĐỀ XUẤT 48
TÀI LIỆU THAM KHẢO 51
DANH MỤC CÁC HÌNH VÀ ĐỒ THỊ
Hình 1.1: Minh hoạ các bước cơ bản trong một hệ thống xử lý và nhận dạng ảnh. 7
Hình 1.2: Một số kiểu đường biên ảnh thông dụng 11
Hình 1.3: Cửa sổ mặt nạ dùng cho toán tử Sobel 13
Hình 1.4: Cửa sổ mặt nạ dùng cho toán tử Prewitt 14
Hình 1.5: Cửa sổ mặt nạ dùng cho toán tử Roberts 14
Hình 1.6: Ví dụ về các hàm thuộc khác nhau số tập mờ số gần 2 20
Hình 1.7: Ví dụ các tập mờ tốc độ chậm, tốc độ trung bình, tốc độ nhanh. 20
Hình 1.8: Ví dụ các tập mờ ở dạng hình tam giác 20
Hình 1.9: Hàm ψ (t) của biến đổi Haar 22
Hình 2.1: Mô hình chung cho bài toán nhận dạng bọt khí 25
Hình 2.2: Biểu diễn tính Entropy các pixel ảnh qua 1 tập ảnh. 29
Hình 2.3: Minh hoạ hàm Activation. 29
Hình 2.4: Hàm ψ (t) của biến đổi Haar 29
Hình 2.5: Mô hình phân lớp ảnh cho bài toán nhận dạng bọt khí 30
Hình 2.6: Mô tả 1 không gian nhiều điểm cho SVM tuyến tính 32
Hình 2.7: Mô tả siêu phẳng cho SVM tuyến tính 32
Hình 2.8: Các mặt phân cách hai lớp cho bài toán SVM 2 lớp 33
Hình 2.9: Margin của hai lớp là bằng nhau và lớn nhất có thể 33
Hình 2.10: Mô tả siêu phẳng cho SVM tuyến tính 34
Hình 3.1: Minh hoạ 1 frame ảnh có bọt khí (xử lý bằng Entropy và Fuzzylogic) 39
Hình 3.2: Minh hoạ 1 frame ảnh không bọt khí (xử lý bằng Entropy và Fuzzylogic) 39
Hình 3.3: Minh hoạ 1 frame ảnh có bọt khí cho việc xử lý tìm biên 41
Hình 3.4: Minh hoạ 1 frame ảnh không bọt khí cho việc xử lý tìm biên 41
DANH MỤC CÁC BẢNG
Bảng 1.1: Ví dụ về các tập mờ điểm thi cho A, B, C 18
Bảng 1.2: Ví dụ minh họa các tập mờ điểm thi cho A, B, C dạng tam giác 21
Bảng 3.1: Kết quả entropy cho ảnh có bọt khí 37
Bảng 3.2: Kết quả entropy cho ảnh không bọt khí 38
Bảng 3.3: So sánh MSE và PSNR cho 1 frame ảnh có bọt 40
Bảng 3.4: So sánh MSE và PSNR cho 1 frame ảnh không bọt 41
Bảng 4.1: Kết quả phân lớp ảnh (trường hợp sử dụng Entropy và Fuzzy logic) 45
Bảng 4.2: Kết quả nhận dạng ảnh (trường hợp dò biên Canny) 47
Bảng 4.3: Minh hoạ lưu kết quả nhận dạng ảnh trên màn hình và lưu file csv 47
PHẦN MỞ ĐẦU
Trong thế kỷ 21, sự phát triển của công nghệ thông tin đã đẩy nhanh sự phát triển nhiều lĩnh vực của đời sống xã hội. Với sự phát triển nhanh chóng của phần cứng máy tính và các thiết bị liên quan về các phương diện thu nhận và hiển thị đã mở ra nhiều hướng mới cho sự phát triển của phần mềm. Trong số đó phải kể đến lĩnh vực giám sát tự động, lĩnh vực này đã và đang được nhiều người quan tâm, nghiên cứu. Các vấn đề liên quan đến giám sát tự động như: dự đoán, cảnh báo đối tượng đột nhập; dự đoán, cảnh báo các hiện tượng trong tự nhiên; dự đoán, cảnh báo hành vi của con người, loài vật, vv… thông qua hệ thống camera giám sát. Đây chính là những lĩnh vực rất gần gũi và cấp thiết đối với nhu cầu trong cuộc sống của con người. Từ dữ liệu thu được qua camera quan sát dưới dạng video lưu trữ trên máy tính rồi tiến hành tìm hiểu, nghiên cứu các vấn đề liên quan đến nó để từ đó đưa ra các phương pháp, thuật toán và cài đặt phần mềm ứng dụng cho các vấn đề nghiên cứu này.
Với những tiến bộ trong lưu trữ dữ liệu video và thiết bị công nghệ máy tính, nhiều ứng dụng mới liên quan đến hệ thống thông tin video đang ngày càng nổi trội. Video là một phương tiện với độ phức tạp cao. Nó chính là dãy các frame ảnh, các frame ảnh này thay đổi qua thời gian và theo không gian.
Ngày nay với nền công nghiệp phát triển, đất nước khó tránh khỏi sự ô nhiễm môi trường nói chung và môi trường nước nói riêng. Ngành công nghiệp xử lý nước sạch đang được nhà nước và cộng đồng quan tâm sâu sắc. Để có được nguồn nước sạch, người ta cần cải tạo môi trường và hệ sinh thái bằng cách nuôi những con vi sinh trong những cái bể lớn nhằm cung cấp vi sinh cho những chỗ nước bị nhiễm bẩn, hệ sinh thái bị biến đổi. Trong quá trình nuôi vi sinh người ta cần phải sục khí liên tục vào bể để cung cấp đủ oxi để nuôi sống vi sinh, nếu không được sục khí thường xuyên thì những con vi sinh sẽ không thể sống được do thiếu oxi.
Quy mô ngành quản lý nước sạch ở đất nước ta hiện nay cũng rất lớn, số lượng bể nuôi vi sinh ngày cũng được nhân rộng. Điều này đặt ra các yêu cầu cần phải chặt chẽ hơn trong khâu giám sát. Mặt khác, để giảm bớt sự giám sát của con người thì việc vận dụng máy tính vào để quản lý, giám sát thay cho con người ngày càng cần thiết nhằm giúp giảm nhân lực và công sức, từ đó đạt lợi nhuận cao hơn.
Xuất phát từ thực tế này, chúng ta cần có những phần mềm để theo dõi và giám sát xem bể nuôi vi sinh có được sục khí liên tục hay không. Trong đó, vấn đề liên quan đến xử lý video, xử lý frame ảnh và nhận dạng frame ảnh trong video sẽ phục vụ cho nhu cầu phát hiện và cảnh báo vấn đế không có bọt khí (khi bể không được sục khí) thông qua việc giám sát tự động bởi các camera. Với nhu cầu trên, được sự hướng dẫn của Thầy TS. Hoàng Mạnh Hà, tôi tiến hành thực hiện đề tài “Áp dụng độ đo entropy cho bài toán tách đặc trưng của bọt khí trên video và đề xuất kết hợp SVM cho vấn đề tự động theo dõi sục khí tại trạm quan trắc môi trường”.
Trong khuôn khổ của luận văn này, mục tiêu của đề tài là tìm hiểu và nghiên cứu một số kỹ thuật xử lý phân tích, trích chọn đặc trưng ảnh để có thể lấy ra được những ảnh mẫu
tốt nhất phục vụ việc huấn luyện phân lớp mẫu và nhận dạng. Đồng thời khảo sát, nghiên cứu một số thuật toán học phục vụ việc huấn luyện mô hình phân lớp mẫu. Từ đó sử dụng so sánh với các frame ảnh trích xuất từ các camera giám sát bất kỳ nào có thể dự đoán, nhận dạng được frame ảnh đó có bọt khí hay không có bọt khí nhằm giải quyết bài toán nhận dạng ảnh để xác định bể nuôi vi sinh có được sục khí hay không được sục khí. Để đạt được mục tiêu này, các vấn đề cần giải quyết trong đề tài này bao gồm:
+ Nghiên cứu tổng quan về video, xử lý video, các đặc trưng cơ bản đối với frame ảnh, các phương pháp và kỹ thuật xử lý phân tích trích chọn đặc trưng ảnh như: các bộ lọc làm mịn ảnh, các kỹ thuật tìm biên ảnh, độ đo Entropy cho các điểm ảnh, Fuzzy Logic và phép biến đổi Wavelet Haar. Mục đích để có thể đưa ra các ảnh mẩu tốt nhất phục vụ cho việc huấn luyện mô hình phân lớp và nhận dạng sau này.
+ Nghiên cứu về học máy cùng một số thuật toán học máy giúp huấn luyện và phân lớp dữ liệu ảnh mẫu nhằm đưa ra được mô hình học phân lớp tốt nhất có thể, giúp phát hiện nhận dạng đúng hiện tượng ảnh có bọt khí (trường hợp bể nuôi có sục khí) hay không bọt khí (trường hợp bể nuôi không được sục khí) chính xác nhất có thể.
+ Cài đặt thực nghiệm cho một số video clip trích từ camera giám sát của các bể nuôi vi sinh được thu thập từ đơn vị quan trắc môi trường tại tỉnh Bình Dương.
Kết cấu của luận văn: gồm các chương sau:
Chương 1. Tổng quan về xử lý và nhận dạng ảnh: Chương này giới thiệu tổng quan các khái niệm cơ bản về ảnh, quá trình xử lý, phân tích, trích chọn đặc trưng, phân lớp và nhận dạng ảnh.
Chương 2. Nghiên cứu phương pháp giải quyết bài toán nhận dạng ảnh bọt khí: Chương này nghiên cứu và xây dựng bài toán nhận dạng ảnh bọt khí cần thực hiện, vấn đề trích chọn đặc trưng bọt khí, phương pháp phân lớp cho dữ liệu ảnh bọt khí và việc ứng dụng phương pháp SVM cho bài toán nhận dạng bọt khí.
Chương 3. Thực nghiệm và đề xuất ứng dụng phương pháp trích chọn đặc trưng ảnh cho bài toán nhận dạng ảnh bọt khí: Chương này cài đặt thực nghiệm và đề xuất 2 phương pháp trích chọn đặc trưng bọt khí trên ảnh là phương pháp sử dụng độ đo Entropy kết hợp Fuzzy Logic và phép biến đổi Wavelet Haar và phương pháp sử dụng bộ lọc Canny cho bài toán nhận ảnh bọt khí từ camera giám sát.
Chương 4. Thực nghiệm áp dụng phương pháp SVM vào bài toán theo dõi việc sục khí cho bể nuôi vi sinh: Chương này áp dụng phương pháp SVM cho việc phân lớp ảnh bọt khí dựa trên các ảnh đã được trích chọn đặc trưng với 2 phương pháp là phương pháp sử dụng độ đo Entropy kết hợp Fuzzy Logic và biến đổi Wavelet Haar và phương pháp sử dụng bộ lọc Canny ở chương 3. Đồng thời cài đặt thực nghiệm cho việc huấn luyện phân lớp ảnh và kiểm thử (test), phát hiện (nhận dạng) với dữ liệu đầu vào là một số video clip thực tế thu thập từ các camera giám sát các bể nuôi vi sinh của đơn vị quan trắc môi trường tỉnh Bình Dương.
Chương 1: TỔNG QUAN VỀ XỬ LÝ VÀ NHẬN DẠNG ẢNH
1.1. CÁC KHÁI NIỆM CƠ BẢN VỀ ẢNH
1.1.1. Khái niệm về ảnh (Image)
Ảnh trắng đen là một hàm hai chiều của cường độ sáng f(x,y), trong đó x và y là các toạ độ không gian và giá trị của hàm f tại một điểm (x,y) tỷ lệ với cường độ sáng của ảnh tại điểm đó. Ảnh màu thì f là một vector mà mỗi thành phần của vector đó chỉ ra cường độ sáng của ảnh tại điểm (x,y) đó tương ứng với dải màu. Ảnh số là một ảnh mà hàm f(x,y) của nó đã được rời rạc hoá theo cả toạ độ không gian và cường độ sáng của nó. Số điểm ảnh xác định độ phân giải của ảnh. Ảnh có độ phân giải càng cao thì càng thể hiện rõ nét các đặt điểm của tấm hình càng làm cho tấm ảnh trở nên thực và sắc nét hơn. Nếu là ảnh trắng đen thì nó được biểu diễn theo một mảng hai chiều, còn nếu là một ảnh màu thì nó được biểu diễn theo một chuỗi các mảng hai chiều mà mỗi mảng hai chiều đó tương ứng với một dải màu. Giá trị cường độ sáng đã được số hoá được gọi là giá trị mức xám.
1.1.2. Điểm ảnh (Picture element hay Pixel)
Ảnh trong thực tế là một ảnh liên tục về không gian và về giá trị độ sáng. Để có thể xử lý ảnh bằng máy tính cần thiết phải tiến hành số hóa ảnh. Theo tài liệu [4], số hoá ả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 (Picture element) hay gọi tắt là Pixel. Trong khuôn khổ ảnh hai chiều, mỗi điểm ảnh ứng với cặp tọa độ (x,y).
Cũng theo [4], có thể định nghĩa: Điểm ảnh là một phần tử của ảnh số tại toạ độ (x,y) với độ xám hoặc màu nhất định. Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp sao cho mắt người cảm nhận sự liên tục về không gian và mức xám (hoặc màu) của ảnh số gần như ảnh thật. Mỗi phần tử trong ma trận được gọi là một phần tử ảnh.
Ảnh được xem như là một tập hợp các điểm ảnh. Khi được số hóa, nó thường được biểu diễn bởi mảng 2 chiều.
Ví dụ: Giả sử ta có ảnh I(m*n): tức ảnh gồm m dòng và n cột và có m*n điểm ảnh.
Một điểm ảnh có thể được biểu diễn bằng 1, 4, 8, 24 bits.
Mỗi thành phần của mảng được gọi là một phần tử ảnh hay còn gọi là điểm ảnh và nó được biểu diễn như sau:
f(0,0) f(0,1) … f(0, n)
f(x, y) = ( f(1.0) f(1.1) … f(1, n) )
…
f(m, 0) f(m, 1) … f(m, n)
Với 0 ≤ f(x,y) ≤ G-1, trong đó thông thường N và G được biểu diễn dưới dạng số mũ của 2 (N=2n, G=2m).
1.1.3. Độ phân giải ảnh (Image resolution)
Độ phân giải của ảnh (Image resolution) là mật độ điểm ảnh được ấn định trên một ảnh số được hiển thị. Theo định nghĩa trong [4], khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người vẫn có thể thấy được sự liên tục của ảnh. Việc lựa chọn khoảng cách thích hợp tạo nên một mật độ phân bổ, đó chính là độ phân giải và được phân bố theo trục x và y trong không gian hai chiều.
Độ phân giải ảnh biểu diễn mức độ chi tiết của ảnh mà chúng ta có thể nhìn rõ đối tượng. Khi thay đổi các giá trị kích thước ảnh và mức xám thì sẽ có các hiện tượng thay đổi khác nhau. Xong thực tế cho thấy khi giữ nguyên kích thước ảnh và tăng số mức xám lên thì sẽ thể hiện rõ hơn mức độ chi tiết trong ảnh.
Ví dụ: Độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là một lưới điểm theo chiều ngang màn hình: 320 điểm chiều dọc * 200 điểm ảnh (320*200). Như vậy, với màn hình CGA 12” ta nhận thấy mịn hơn màn hình CGA 17” với cùng độ phân giải là 320*200, vì cùng một mật độ phân giải nhưng diện tích màn hình rộng hơn thì độ mịn (liên tục của các điểm) sẽ kém hơn.
1.1.4. Cường độ sáng của một ảnh tại một điểm ảnh (Brightness intensity)
Mỗi điểm ảnh của một ảnh tương ứng với một phần của một đối tượng vật lý tồn tại trong thế giới thực. Đối tượng vật lý này được chiếu sáng bởi một vài tia sáng mà tia sáng này bị phản xạ một phần hay hấp thụ một phần khi chiếu lên đối tượng vất lý đó. Phần ánh sáng phản xạ lại đi tới các bộ cảm biến được sử dụng để tạo ảnh cảm nhận và tạo ra các giá trị ghi nhận được đối tượng đối với từng điểm ảnh. Giá trị thu nhận được phụ thuộc vảo phổ ánh sáng phản xạ. Giá trị cường độ sáng của các điểm ảnh khác nhau chỉ có ý nghĩa tương đối mà không có ý nghĩa trong các toán hạng tuyệt đối.
Ví dụ: Giả sử ta có ảnh I với kích thước m*n và số nguyên c. Khi đó, kỹ thuật tăng/giảm độ sáng ảnh được thể hiện: I[m,n] = I[m,n] + c; với mọi (m,n). Nếu c>0 thì ảnh sáng lên và c<0 thì ảnh tối đi.
1.1.5. Mức xám của ảnh (Gray image)
Theo [4], một điểm ảnh có hai đặc trưng cơ bản là vị trí (x,y) của điểm ảnh và độ xám của nó. Mức xám của ảnh (Gray image) là kết quả của sự biến đổi tương ứng 1 giá trị độ sáng của 1 điểm ảnh với 1 giá trị nguyên dương. Thông thường nó xác định trong phạm vi là [0, 255] tuỳ thuộc vào giá trị mà mỗi điểm ảnh được biểu diễn. Các thang giá trị mức xám thông thường là: 16, 32, 64, 128, 256. Mức 256 là mức phổ dụng, vì từ kỹ thuật máy tính dùng 1 byte (8 bit) để biểu diễn mức xám nên mức xám dùng 1 byte biểu diễn: 28=256 mức, tức là từ 0 đến 255. Như vậy, ảnh xám là ảnh mà các điểm ảnh có mức xám nằm trong khoảng từ 0 đến 255.
Nếu ảnh được lưu trữ dưới dạng một mảng hai chiều với kích thước NxN và có 2m mức xám thì số bits cần thiết để lưu trữ ảnh là: b = N * N * 2m
Ví dụ: Một ảnh có kích thước 512 * 512 với 256 mức xám (tức m=8) thì cần số bits lưu trữ sẽ là: 512 * 512 * 256 = 2.097.152 bits.
1.1.6. Ảnh nhị phân (Binary image)
Ảnh nhị phân (Binary image) là ảnh chỉ có 2 mức đen trắng phân biệt, tức chỉ 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 với ảnh xám, giá trị xám nằm trong phạm vi từ 0 đến 255. Như vậy mỗi điểm ảnh trong ảnh nhị phân được biểu diễn bởi 1 byte.
1.1.7. Ảnh màu (Color image)
Ảnh màu (Color image) là ảnh tổ hợp từ ba màu cơ bản là đỏ (Red), xanh lơ (Blue) và xanh lục (Green) để tạo nên thế giới màu, người ta thường dùng 3 byte để mô tả mức màu, khi đó các giá trị màu: 28*3 = 224 ≈ 16,7 triệu màu.
Một số hệ màu như: hệ màu RGB, hệ màu CMY, hệ màu CMYK, vv...
1.1.8. Quan hệ giữa các điểm ảnh
Lân câṇ của điểm ảnh (Image neighbrs):
Giả sử có điểm ảnh p tại tọa độ (x,y), p có các lân câṇ gần nhất theo chiều ngang và dọc là: (x+1,y), (x-1,y), (x,y+1), (x,y-1). Theo [4], tập hợp các điểm ảnh này được gọi là lân cận 4 của p, ký hiệu là: N4(p). Mỗi điểm ảnh có khoảng cách đơn vị đến (x,y), và nếu (x,y) nằm trên biên của ảnh thì lân cận của nó có thể nằm ngoài ảnh.
Các lân cận chéo của p có tọa độ: (x+1,y+1), (x+1,y-1), (x-1,y+1), (x-1,y-1). Tập lân cận chéo được ký hiệu là NP(p). Tập lân cận chéo cùng với lân cận 4 tạo thành lân cận 8 của p, ký hiệu là: N8(p) như sau:
(x, y-1) | (x+1, y-1) | |
(x-1, y) | (x, y) | (x+1, y) |
Có thể bạn quan tâm!
- Áp dụng độ đo entropy cho bài toán tách đặc trưng của bọt khí trên video và đề xuất kết hợp SVM cho vấn đề tự động theo dõi sục khí tại trạm quan trắc môi trường - 1
- Minh Hoạ Các Bước Cơ Bản Trong Một Hệ Thống Xử Lý Và Nhận Dạng Ảnh.
- Ví Dụ Về Các Hàm Thuộc Khác Nhau Số Tập Mờ Số Gần 2
- Nhận Dạng Và Nội Suy Ảnh (Image Recognition And Interpretation)
Xem toàn bộ 69 trang tài liệu này.
Các mối liên kết điểm ảnh:
Theo [4], để xác điṇh tính liên thông của hai điểm ảnh, chúng cần thỏa mãn rằng: chúng phải là các lân cận và các cấp xám phải thỏa mãn tiêu chuẩn đề ra về tính tương tư.
Ví dụ: Trong ảnh nhi ̣phân với các giá tri ̣là 0 và 1, hai điểm ảnh có thể là 4 lân câṇ, nhưng chúng chỉ đươc ̣goị là liên thông nếu và chỉ nếu chúng có các giá trị bằng nhau. Các mối liên kết được sử dụng để xác định giới hạn của đối tượng vật thể hoặc xác định vùng trong một ảnh. Một liên kết được đặc trưng bởi tính liền kề giữa các điểm và mức xám của chúng.
Cho V là môṭ tâp ̣ các giá tri ̣cấp xám dùng để xác định tính liền kề trong ảnh, ta có ba loại liền kề sau:
+ Liên kết 4: hai điểm ảnh p và q với giá tri ̣từ V là liên kết 4 nếu q thuôc ̣tâp̣ N4(p)
+ Liên kết 8: hai điểm ảnh p và q với giá tri ̣từ V là liên kết 8 nếu q thuôc ̣tâp̣ N8(p)