Mục tiêu và nhiệm vụ nghiên cứu 2.1 Mục tiêu nghiên cứu - Dùng thuật toán KNN để giải quyết việc chẩn đoán các loại bệnh trên cây Bưởi thông qua các đặc trưng để nhận dạng: màu sắc, kế
Trang 2Công trình được hoàn thành tại TRƯỜNG ĐẠI HỌC BÁCH KHOA
Người hướng dẫn khoa học: TS HUỲNH HỮU HƯNG
Phản biện 1: PGS.TS PHAN HUY KHÁNH
Phản biện 2: TS NGUYỄN THIỆN NGHĨA
Luận văn sẽ được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp
thạc sĩ Kỹ thuật tại Trường Đại học Bách khoa vào ngày 03 tháng 02
năm 2018
Có thể tìm hiểu luận văn tại:
Trung tâm Học liệu, Đại học Đà Nẵng tại Trường Đại học Bách
khoa
Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa – ĐHĐN
Trang 3MỞ ĐẦU
1 Lý do chọn đề tài
Ngày nay nông dân tại các tỉnh đồng bằng sông Cửu Long nói chung và tỉnh Trà Vinh nói riêng chỉ canh tác và trồng trọt chủ yếu chỉ dựa vào kinh nghiệm mà chưa biết ứng dụng khoa học và công nghệ vào trong sản xuất để nâng cao chất lượng sản phẩm, hiệu quả kinh tế nhằm giảm chi phí sản xuất
Ở Việt Nam, các ứng dụng về xử lý ảnh đã bước đầu được triển khai trên một số lĩnh vực như hệ thống nhận dạng biển số xe ở các bãi đỗ xe, hệ thống nhận dạng vân tay chấm công ở các công sở, nhận dạng và đánh giá chất lượng trái cây,v.v… Tuy nhiên số lượng các ứng dụng được triển khai trên thực tế còn ít
Từ hiện trạng trên, để giúp nông dân khu vực Đồng bằng sông Cửu Long tiết kiệm chi phí sản xuất, nâng cao năng suất và chất lượng cây trồng mà cụ thể là trên cây Bưởi -một loại cây cho hiệu
quả kinh tế cao, nên tôi chọn đề tài: “Nghiên cứu các đặc trưng và nhận dạng mẫu trong chẩn đoán bệnh trên cây Bưởi”
2 Mục tiêu và nhiệm vụ nghiên cứu
2.1 Mục tiêu nghiên cứu
- Dùng thuật toán KNN để giải quyết việc chẩn đoán các loại bệnh trên cây Bưởi thông qua các đặc trưng để nhận dạng: màu sắc, kết cấu bề mặt, hình dáng,…
2.2 Nhiệm vụ nghiên cứu
- Xử lý ảnh số và các bước trong xử lý ảnh
- Kỹ thuật nhận dạng: SVM, Mạng Nơron, KNN Qua đó đánh giá ưu điểm của phương pháp KNN
Trang 4- Sử dụng các đặc trưng màu sắc, kết cấu, hình dạng trong đánh giá chất lượng
3 Đối tượng và phạm vi nghiên cứu
3.1 Đối tượng nghiên cứu
- Các phương pháp nhận dạng như: Mạng Nơron, Thuật toán láng giềng gần nhất, thuật toán SVM
K Các loại bệnh trên cây Bưởi khi sử dụng thuật toán KNN để nhận dạng
4 Phương pháp nghiên cứu
4.1 Phương pháp nghiên cứu lý thuyết
- Đọc và tham khảo các đề tài, bài báo liên quan đến lĩnh vực nhận dạng mẫu
- Các phương pháp huấn luyện mạng, nghiên cứu các kỹ thuật nhận dạng mẫu
- Lựa chọn công cụ hỗ trợ
- Thu thập kho dữ liệu ảnh huấn luyện
- Thu thập kho dữ liệu các loại bệnh trên cây Bưởi
4.2 Phương pháp nghiên cứu thực nghiệm
- Thu nhận ảnh về các loại bệnh trên cây Bưởi ngoài thực tế
- Thực hiện các bước xử lý
- Xây dựng kho dữ liệu huấn luyện
Trang 5- So khớp các đặc trưng của ảnh cần kiểm tra với kho dữ liệu đặc trưng của ảnh đã được huấn luyện
- Cài đặt chương trình, thực hiện chương trình với một số mẫu dữ liệu và đánh giá kết quả
5 Ý nghĩa khoa học và thực tiễn của luận văn
6 Bố cục luận văn:
Bố cục đề tài tổ chức thành 3 chương chính:
Chương 1 Tổng quan về xử lý ảnh và các kỹ thuật nhận dạng:
Chương này trình bày tổng quan lý thuyết về xử lý ảnh số, các bước trong xử lý ảnh, các trích chọn đặc trưng ảnh, một số phương pháp nhận dạng và ưu điểm về phương pháp mà đề tài đã chọn
Chương 2 Nhận dạng và đánh giá chất lượng: Chương này trình
bày các công trình nghiên cứu của các tác giả khác trong nhận dạng trái cây như sử dụng các đặc trưng trong đánh giá chất lượng: hình dạng, màu sắc, kết cấu Các phương pháp phân loại và đánh giá chất lượng trên táo, xoài,
Chương 3 Nhận dạng và chẩn đoán bệnh trên Bưởi với thuật toán
KNN: Chương này trình bày các bước thực hiện theo phương pháp nhận dạng KNN, các bước xử lý, trình bày kết quả đạt được, đánh giá kết quả, rút ra kết luận và hướng phát triển
Trang 6CHƯƠNG 1 - TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ
CÁC KỸ THUẬT NHẬN DẠNG 1.1 Tổng quan về xử lý ảnh
1.1.1 Giới thiệu
Xử lý ảnh là lĩnh vực có liên quan đến một số lĩnh vực khác như phân tích ảnh hay thị giác máy tính Các bước xử lý ảnh của ứng dụng thực tế thường thực hiện theo thứ tự: xử lý ảnh, phân tích ảnh
và thị giác máy tính Người ta thường định ra ranh giới của từng giai đoạn dựa vào đầu vào (input) và đầu ra (output) của quá trình xử lý
1.1.2 Các bước trong xử lý ảnh
Thu nhận ảnh, tiền xử lý ảnh, phân đoạn ảnh, biểu diễn ảnh, nhận dạng và nội suy ảnh
1.1.3 Một số khái niệm trong xử lý ảnh
1.1.3.1 Mức xám của một điểm ảnh: là cường độ sáng của
nó, được gán bằng giá trị số tại điểm đó Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (mức 256 là phổ biến nhất)
1.1.3.2 Ảnh trắng đen: là ảnh chỉ có 2 màu trắng và đen
(không chứa màu khác) với mức xám ở các điểm ảnh có thể khác nhau
1.1.3.3 Ảnh nhị phân: là ảnh có 2 mức trắng đen phân
biệt, tức là dùng 1 bit mô tả 21 mức khác nhau
1.1.3.4 Ảnh màu: trong lý thuyết 3 màu (Red, Green,
Blue) để 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
= 22416,7 triệu màu
1.1.3.5 Ảnh xám: là trường hợp đặc biệt của ảnh màu khi
giá trị màu Red, Green, Blue bằng nhau
Trang 71.2 Phương pháp cải thiện chất lượng ảnh
1.2.1 Tăng giảm độ sáng
1.2.2 Cắt lớp cường độ sáng
1.2.3 Xử lý độ tương phản – giãn độ tương phản
1.2.4 Lược đồ xám (Histogram)
1.2.5 Biến đổi âm bản
1.2.6 Biến đổi ảnh đen trắng
1.4.3 K – láng giềng gần nhất (KNN – K nearest neighbors)
KNN được sử dụng rất phổ biến trong lĩnh vực khai phá dữ liệu KNN là phương pháp để phân lớp các đối tượng dựa vào khoảng cách gần nhất giữa đối tượng cần xếp lớp với tất cả các đối tượng trong dữ liệu huấn luyện (training data)
Thuật toán K-NN được mô tả như sau:
1 Xác định giá trị tham số K (số láng giềng gần nhất)
Trang 82 Tính khoảng cách giữa đối tượng cần phân lớp (Query Point) với tất cả các đối tượng trong training data (thường sử dụng khoảng các Euclidean)
3 Sắp xếp khoảng cách theo thứ tự tăng dần và xác định K láng giềng gần nhất với Query Point
4 Lấy tất cả các lớp của K láng giềng gần nhất đã xác định
5 Dựa vào phần lớn lớp của láng giềng gần nhất để xác định lớp cho Query Point
1.5 Đánh giá ưu điểm của phương pháp KNN
Dễ sử dụng và cài đặt, xử lý tốt với dữ liệu nhiễu do dựa trên khoảng cách để quyết định phân lớp
Độ phức tạp tính toán của quá trình training là bằng 0 Việc dự đoán kết quả của dữ liệu mới rất đơn giản không cần giả sử gì về phân phối của các lớp
Có độ phức tạp: O(K,N,1) với 1 là số lần lập, có khả năng
mở rộng, dễ dàng sửa đổi với những dữ liệu mới
Bảo đảm hội tụ sau một số lần lập hữu hạn, luôn có K cụm
dữ liệu và luôn có ít nhất một điểm dữ liệu trong một cụm dữ liệu
Các cụm không phân cấp, không chồng chéo dữ liệu lên nhau, mọi thành viên của một cụm là gần với chính cụm đó hơn bất
cứ một cụm nào khác
Trang 9CHƯƠNG 2 – NHẬN DẠNG VÀ ĐÁNH GIÁ CHẤT LƯỢNG 2.1 Các công tr nh nghiên cứu
2.1.1 Nhận dạng trái cây
Angel Dacal-Nieto và các cộng sự đã tiến hành đánh giá chất lượng củ khoai tây dựa trên công nghệ thị giác Máy tính Nó được phân đoạn bằng cách chuyển ảnh màu RGB sang ảnh màu HSV, sử dụng lược đồ mức độ xám, ma trận GLCM để trích lọc đặc trưng để đưa vào tập huấn luyện
2.1.2 Phát hiện khuyết điểm trên bề mặt trái cây
Tác giả Panli HE đã đề xuất mô hình phát hiện khuyết điểm trên bề mặt trái cây dựa trên biến đổi Fourier và phân lớp khuyết điểm bằng phương pháp SVM Trái cây được phân đoạn bằng các phép toán hình thái học, sau đó sử dụng biến đổi Fourier cho ảnh, các đặc trưng kết cấu và mức xám được tính toán bằng ma trận GLCM
2.2 Các đặc trưng sử dụng trong đánh giá chất lượng
2.2.1 Trích chọn đặc trưng hình dạng để phân biệt phần cuống
và khiếm khuyết thực trên trái cây
Hình dạng phần cuống gần giống như hình dạng vòng tròn Dựa vào đặc tính này ta phát hiện và phân biệt phần cuống với các khiếm khuyết thực bằng cách áp vòng tròn trên mỗi đối tượng được trích xuất
2.2.2 Trích chọn đặc trưng màu sắc
2.2.2.1 Biểu đồ màu toàn cục (GCH)
2.2.2.2 Vector liên kết màu sắc (CCV)
2.2.2.3 Biểu đồ sai l ch màu sắc (CDH)
2.2.3 Trích chọn đặc trưng kết cấu
2.2.3.1 Mẫu tam phân cục bộ (LTP)
Trang 102.2.3.2 Biểu đồ phần tử cấu trúc (SEH)
2.2.3.3 Mẫu nhị phân cục bộ (LBP)
2.2.3.4 Mẫu nhị phân cục bộ hoàn chỉnh (CLBP)
2.3 Phương pháp phân loại và đánh giá chất lượng
2.3.1 Phương pháp phân lớp ảnh chụp lá cây ứng dụng máy ector h trợ
2.3.1.1 Mô h nh phân l p ảnh chụp lá câ
2.3.1.2 Giai đoạn tiền xử lý
2.3.1.3 Chọn thuật toán huấn lu n và phân l p dữ li u 2.3.1.4 ết quả th c nghi m
Giao diện của ứng dụng được thiết kế trên GUI của matlab
Độ chính xác tính được trong trường hợp này là 98,67% (C=2
và Gamma=8) Với hàm nhân tuyến tính (C=2) cho kết quả là 90%
2.3.1.5 ết luận
Nghiên cứu này trình bày phương pháp phân lớp dữ liệu SVM Ứng dụng đã phân biệt được một ảnh có chứa lá hay không, xác định được cả những ảnh chứa nhiễu không thích hợp cho các bước trong quá trình nhận dạng tiếp theo với độ chính xác tương đối cao
Hình 2 1 (a) Tách lá ra khỏi nền; (b) Giao diện chương trình
Trang 112.3.2 Thuật toán Watershed và đối sánh mẫu để phát hiện bệnh thối trên xoài
2.3.2.1 Phương pháp: Các bư c th c hi n
1) Nhập ảnh của xoài
2) Tiến hành tiền xử lý
3) Phân vùng hình ảnh sử dụng thuật toán Watershed
4) Trích xuất đặc trưng sử dụng thuật toán đối sánh mẫu
2.3.2.2 Mục tiêu của nghiên cứu
Nghiên cứu được đề xuất bao gồm khái niệm xử lý ảnh thông thường, tiền xử lý ảnh, phân vùng, trích xuất và phân loại đặc trưng
Trang 122.3.3.3 Huấn lu n và phân loại sử dụng má vector hỗ trợ
đa l p
2.3.3.4 ết quả
Chúng ta xem xét hai không gian màu RGB và HSV và so sánh
Bảng 2 1 Tính chính xác phân loại bệnh trái cây khi MSVM được huấn
luyện với 70 hình ảnh mỗi loại
Tính năng /
Bình thường
Trung bình
Trang 13CHƯƠNG 3– NHẬN DẠNG VÀ CHẨN ĐOÁN BỆNH TRÊN BƯỞI VỚI THUẬT TOÁN K-NEAREST NEIGHBORS 3.1 Thuật toán K – Láng giềng gần nhất (K-Nearest Neighbors)
3.1.1 Thuật toán
K-Nearest Neighbors algorithm (K-NN) được sử dụng rất phổ biến trong lĩnh vực Data Mining K-NN là phương pháp để phân lớp các đối tượng dựa vào khoảng cách gần nhất giữa đối tượng cần xếp lớp (Query point) và tất cả các đối tượng trong Training Data
Một đối tượng được phân lớp dựa vào K láng giềng của nó K
là số nguyên dương được xác định trước khi thực hiện thuật toán Người ta thường dùng khoảng cách Euclidean để tính khoảng cách giữa các đối tượng
3.1.2 Mô tả thuật toán
1 Xác định giá trị tham số K (số láng giềng gần nhất)
2 Tính khoảng cách giữa đối tượng cần phân lớp (Query Point) với tất cả các đối tượng trong training data (thường sử dụng khoảng các Euclidean)
3 Sắp xếp khoảng cách theo thứ tự tăng dần và xác định K láng giềng gần nhất với Query Point
4 Lấy tất cả các lớp của K láng giềng gần nhất đã xác định
5 Dựa vào phần lớn lớp của láng giềng gần nhất để xác định lớp cho Query Point
Khoảng cách giữa 2 điểm là chiều dài của đường thẳng nối chúng Trong mặt phẳng, khoảng cách giữa 2 điểm (x1, y1) và (x2, y2) được cho bởi định lý Pythagorean như sau:
Trang 143.2 Chẩn đoán bệnh trên Bưởi sử dụng thuật toán K-NN
3.2.1 Mô tả bài toán
Trong trường hợp cần chẩn đoán bệnh thì chúng ta cũng thực hiện công việc trích lọc đặc trưng, dữ liệu đặc trưng lúc này được lưu vào một vector riêng để thuật toán k-NN tiến hành tính toán khoảng cách Euclidean giữa mẫu kiểm tra với lần lượt các vector trong CSDL
Thuật toán k-NN chọn hệ số k – số láng giềng gần nhất cần lấy Đối với bài toán này, tác giả sẽ chọn k = 1 tức là chỉ chọn ra một láng giềng gần nhất trong tất cả mẫu dữ liệu
3.2.2 Mô hình hệ thống
Hình 3 1 Mô hình nhận dạng quả Bưởi sử dụng thuật toán k-NN
Trang 15Bư c thứ hai: thực hiện các bước nâng cao chất lượng ảnh như
khử nhiễu, tăng/giảm độ sáng, độ tương phản,…
Bư c thứ ba: chuyển ảnh màu RGB sang ảnh màu HSV, thực
hiện các phép biến đổi và phân vùng ảnh
Bư c thứ tư: ảnh màu RGB được chuyển sang không gian
màu HSV, sử dụng lược đồ mức độ xám, ma trận GLCM để trích lọc đặc trưng đưa vào tập huấn luyện
Bư c thứ năm: thuật toán k-NN được dùng để phân lớp và tính
toán khoảng cách giữa vector đặc trưng của ảnh đưa vào kiểm tra với các vector đặc trưng trong tập CSDL đã được huấn luyện và phân lớp
để tìm ra láng giềng gần nhất với nó trả về kết quả là loại bệnh/không bệnh với sự tương đồng gần nhất
3.3 Trích xuất đặc trƣng
Ảnh màu đầu vào RGB sẽ được chuyển đổi sang không gian màu HSV và được tách ra từng kênh màu H, S, V riêng biệt
Chuyển đổi và tách các kênh màu H-S-V
Để chuyển từ không gian màu RGB sang HSV thì giá trị của S
và V nằm trong khoảng 0 (màu đen) và 1 (màu trắng), giá trị của H nằm trong khoảng 0 đến 360o
Trang 16
3.3.2 Đặc trưng kết cấu
Trong xử lý ảnh, bộ lọc Gabor là một bộ lọc tuyến tính thường được sử dụng để phát hiện biên, phần vùng ảnh, phân tích đặc trưng ảnh, phân lớp ảnh Tần số và hướng được thể hiện trong các bộ lọc Gabor tương tự như hệ thống thị giác của con người Tập hợp các bộ lọc Gabor với tần số và hướng khác nhau có thể trợ giúp cho việc trích lọc đầy đủ các đặc trưng trong ảnh Bộ lọc Gabor hai chiều (2D Gabor) được áp dụng trong ảnh với tỉ lệ và tần số khác nhau Hàm Gabor 2D được biến đổi từ đường hình sin phức tạp của hàm Gaussian 2D
Hình 3 3 Các tham số của hàm Gabor Wavelet và đặc trưng kết cấu Hình 3 2 Ảnh màu RGB chuyển sang HSV và các kênh màu H-S-V
Trang 173.3.1 Ma trận đồng hiện mức xám Co-occurrence
GLCM của ảnh f(x,y) có kích thước MxM và có G mức độ
xám là một ma trận hai chiều C(i, j) Mỗi phần tử của ma trận thể
hiện xác suất xảy ra cùng giá trị cường độ sáng i và j tại một khoảng cách d và một góc xác định Do đó, có thể có nhiều ma trận GLCM khác nhau phụ thuộc vào cặp giá trị d và Một số đặc trưng quan
trọng khi phân tích kết cấu ảnh gồm:
Đặc trưng năng lượng (energy): đo lường tính đồng nhất cục
bộ trong ảnh, có giá trị nằm trong khoảng từ 0 đến 1 Giá trị cao khi ảnh có tính đồng đều về giá trị mức độ xám và nó sẽ có giá trị thấp nếu ảnh không đồng đều về mức độ xám
Độ tương phản (contrast): cho ta biết được số lượng điểm ảnh
có mức độ xám biến đổi cục bộ trong ảnh Đối với ảnh có giá trị mức xám đều thì giá trị độ tương phản là bằng 0, đây là giá trị tối thiểu của độ tương phản Nếu ảnh không có sự đồng đều về giá trị mức xám càng nhiều thì giá trị độ tương phản càng tăng
Độ tương đồng (correlation): Tham số này phân tích sự phụ
thuộc tuyến tính mức độ xám của các điểm ảnh lân cận nhau, có giá trị nằm trong khoảng từ -1 đến 1
Tính ngẫu nhiên (Entropy): Entropy đo lường tính ngẫu
nhiên của các phần tử của ma trận GLCM Giá trị của entropy là tối
đa bằng 1 khi các phần tử trong ma trận bằng nhau, entropy bằng 0 nếu tất cả các giá trị trong ma trận là khác nhau
Tính đồng nhất (homogeneity): Đặc trưng tính đồng nhất đo
lường tính khít hoặc tính dày đặc được phân bố trong không gian của
ma trận GLCM Đặc trưng về tính đồng nhất bằng 0 khi sự phân bố