1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nhận dạng phiếu kiểm kê sản phẩm

41 18 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 41
Dung lượng 1,26 MB

Nội dung

Nhận dạng phiếu kiểm kê sản phẩm MỤC LỤC DANH SÁCH CÁC HÌNH LỜI CẢM ƠN CHƯƠNG 1: GIỚI THIỆU 1.1 Phát biểu toán 1.2 Hướng giải 1.3 Cấu trúc báo cáo CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Một số kĩ thuật xử lý ảnh liên quan 2.1.1 Lọc nhiễu 2.1.2 Phân ngưỡng 2.1.3 Dò chỉnh nghiêng 2.2 Tổng quan mạng neuron 11 2.2.1 Neuron sinh học 11 2.2.2 Mạng neuron nhân tạo 12 2.2.3 Xây dựng mạng 15 2.2.4 Huấn luyện mạng 18 2.3 Nhận dạng kí tự dùng mạng neuron 20 2.3.1 Trích chọn đặc trưng 20 2.3.2 Xây dựng mạng 22 2.3.3 Huấn luyện mạng 22 CHƯƠNG 3: NHẬN DẠNG PHIẾU KIỂM KÊ SẢN PHẨM 25 3.1 Tiền xử lý 25 3.2 Phân đoạn 25 3.2.1 Tìm hàng 26 3.2.2 Tìm cột 27 3.2.3 Loại bỏ hàng, cột thừa 28 3.3 Trích chọn đặc trưng 28 3.4 Nhận dạng 30 CHƯƠNG 4: THỰC NGHIỆM 31 4.1 Thiết kế cài đặt hệ thống 31 4.2 Xây dựng tập mẫu huấn luyện 31 Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm 4.3 Huấn luyện mạng 34 4.4 Nhận dạng kiểm thử 36 4.5 Cập nhật phiếu kiểm kê sản phẩm tự động 38 CHƯƠNG 5: KẾT LUẬN 40 5.1 Kết nghiên cứu 40 5.2 Hướng nghiên cứu 40 TÀI LIỆU THAM KHẢO 41 Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm DANH SÁCH CÁC HÌNH Hình 1.1: Sơ đồ hệ thống cập nhật phiếu .6 Hình 2.1: Các mặt nạ nhân chập lọc low-pass Hình 2.2: Các mặt nạ nhân chập lọc high-pass Hình 2.3: Các dòng bottom dòng tham chiếu cần tìm .11 Hình 2.4: Mơ hình neuron sinh học .11 Hình 2.5: Cấu trúc neuron .13 Hình 2.6: Cấu trúc chung mạng neuron 14 Hình 2.7: Một đồ thị có hướng đơn giản 15 Hình 2.8: Đồ thị hàm 16 Hình 2.9: Ảnh kí tự đầu vào có kích thước 59 x 104 21 Hình 2.10: Ảnh co giãn có kích thước 32 x 32 21 Hình 2.11: Ảnh mã hố .21 Hình 2.12: Mơ hình mạng neuron xây dựng .22 Hình 2.13: Mơ hình khái niệm kĩ thuật huấn luyện multscale .23 Hình 2.14: Mạng neuron ban đầu (trên) mạng neuron nâng cấp (dưới) 24 Hình 3.1: Phiếu kiểm kê sản phẩm 26 Hình 3.2: Histogram chiếu theo chiều ngang hình 3.1 27 Hình 3.3: Một hàng QTY (trên) histogram chiếu theo chiều dọc hàng (dưới) 28 Hình 3.4: Xác định kí tự trường hợp chứa kí tự 29 Hình 3.5: Xác định kí tự trường hợp chứa nhiều kí tự 30 Hình 4.1: Ảnh chứa mẫu kí tự số 32 Hình 4.2: Ảnh chứa mẫu kí tự chữ 33 Hình 4.3: Giao diện cập nhật mẫu kí tự .34 Hình 4.4: Giao diện huấn luyện mạng 35 Hình 4.5: Giao diện cho nhận dạng kiểm thử 36 Hình 4.6: Các kí tự bị nhận dạng nhầm .38 Hình 4.7: Giao diện cập nhật phiếu kiểm kê sản phẩm .38 Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm LỜI CẢM ƠN Sẽ khơng có khả cho em để hoàn thành đồ án đợt khơng có giúp đỡ, ủng hộ thầy cô giáo, bạn bè người thân Em muốn dành lời cảm ơn chân thành tới tất đặc biệt có bốn lời cảm ơn sau: Đầu tiên, em xin gửi lời cảm ơn tới Thạc sĩ Ngô Trường Giang, người thầy hướng dẫn em đợt làm đồ án Sự đóng góp tài liệu đặc biệt ân cần giúp đỡ, bảo thầy chúng em nhân tố định đơi với hồn thành đồ án kịp thời em Thứ hai, em xin gửi lời cảm ơn tới thầy cô giáo môn công nghệ thông tin Sự dạy dỗ dìu dắt tận tình thầy, suốt bốn năm học giúp em tiếp thu kiến thức để thực đồ án Thứ ba, em xin gửi lời cảm ơn tới giáo sư Trần Hữu Nghị - hiệu trưởng trường đại học Dân Lập Hải Phịng Nếu khơng có thầy khơng có chúng em sinh viên tốt nghiệp trường đại học Dân Lập Hải Phịng Thầy đem lại cho chúng em mơi trường rèn luyện hiệu không kiến thức mà người Em tự hào phần tử mơi trường Cuối cùng, em muốn nói lời cảm ơn tới bố mẹ em Tuy lần nói ra, ln lịng em từ lâu Chính chăm sóc, ủng hộ vơ điều kiện bố mẹ em động lực to lớn giúp em vượt qua khó khăn để ln tâm thực tốt cơng việc Hải Phịng, ngày tháng năm 2010 Sinh viên Nguyễn Thành Công Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm CHƯƠNG 1: GIỚI THIỆU 1.1 Phát biểu tốn Cơng ty TNHH UNIDEN thuộc khu cơng nghiệp Thiên Trường, thành phố Hải Dương chuyên sản xuất linh kiện điện tử cho máy điện thoại Hàng quý, nhân viên kho phải kiểm kê sản phẩm sau tổng hợp để báo cáo cho cơng ty điều hành sản xuất Mỗi quý nhân viên quản lý phải xử lý hàng ngàn phiếu bao gồm nhập liệu, tổng hợp tính tốn cơng việc thực thủ công nên nhiều thời gian Đề tài tập trung giải khâu hỗ trợ nhập liệu tự động cho công việc công ty 1.2 Hướng giải Từ phát biểu tốn trên, tóm tắt cơng việc cần làm là: xây dựng chương trình nhận đầu vào ảnh phiếu kiểm kê sản phẩm, xác định vùng chứa liệu, nhận dạng liệu cập nhật vào sở liệu Dữ liệu cần nhận dạng bao gồm 10 chữ số in viết tay 25 chữ in hoa (loại trừ O) viết tay Để nhận dạng kí tự viết tay trước tiên ảnh đầu vào phải qua giai đoạn tiền xử lý phân ngưỡng, kết hợp với lọc nhiễu, chuẩn hóa kích cỡ Tiếp theo cần thực bước phân đoạn để tìm đối tượng ảnh, cụ thể kí tự Vì ảnh phiếu phân vùng liệu vào hàng cột nên phân đoạn việc tách ảnh phiếu vào hàng, từ hàng ta tách cột, từ cột tách vùng ảnh chứa kí tự cần nhận dạng Từ trích vùng ảnh chứa kí tự cần nhận dạng, trích chọn đặc trưng nó, đưa vector đặc trưng vào mạng neuron qua huấn luyện cho nhận dạng Gai đoạn cuối tổng hợp kí tự nhận dạng riêng lẻ thành liệu để cập nhật vào sở liệu Các bước cụ thể thể qua sơ đồ sau: Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm Hình 1.1: Sơ đồ hệ thống cập nhật phiếu Đầu vào hệ thống ảnh quét phiếu kiểm kê sản phẩm Trước tiên, vài điều kiện cần phải áp đặt lên việc ghi phiếu để trình phân đoạn nhận dạng diễn thuận lợi là: Viết chữ rõ ràng, khơng đứt đoạn, khơng chồng chéo Chữ viết vị trí, ô, không đè lên đường bao quanh ô Khơng dập xóa lên phiếu Sau có ảnh quét cách, hệ thống thực bước sau: Tiền xử lý: Ảnh sau quét thường có nhiễu, phần nhiệm vụ bước lọc nhiễu Sau ảnh phải biến đổi ảnh nhị phân để tạo điều kiện cho phân đoạn bước Phân đoạn trích chọn đặc trưng: Tách ảnh qua tiền xử lý thành hàng, hàng bao gồm cột Sau từ cột tách kí tự cần nhận dạng, trích chọn đặc trưng Huấn luyện nhận dạng: Tiếp nhận vector đặc trưng kí tự từ bước trước để đưa vào mạng neuron cho nhận dạng Trước nhận dạng, trình huấn luyện thực trước dựa tập mẫu có sẵn Hậu xử lý: Tổng hợp kí tự nhận dạng riêng lẻ thành liệu để cập nhật vào sở liệu Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm 1.3 Cấu trúc báo cáo Báo cáo tổ chức theo hướng từ lý thuyết đến thực tế, tức nêu lý thuyết trước, áp dụng lý thuyết để giải toán sau Báo cáo bao gồm Chương, cụ thể là: Chương 1: Mơ tả tốn đặt phương hướng giải Đưa sơ đồ thực bước trình bày tóm tắt cơng việc cần làm bước Chương 2: Nêu sở lý thuyết áp dụng để giải toán Lý thuyết gồm phần: tiền xử lý mạng neuron nhân tạo Tiền xử lý nêu số kĩ thuật xử lý ảnh liên quan để giải khâu phân tích ảnh Để nhận dạng kí tự, cần phân lớp mạng neuron nhân tạo chọn Chương giới thiệu tổng quan mạng neuron mơ hình mạng áp dụng nhận dạng kí tự Chương 3: Trình bày việc áp dụng sở lý thuyết giới thiệu Chương để giải toán đặt Việc phân đoạn bao gồm tìm hàng, tìm cột để xác định kí tự ảnh nêu chi tiết Các bước thực để giải tốn trình bày sau: tiền xử lý ảnh đầu vào, xác định kí tự cần nhận dạng ảnh, trích chọn đặc trưng kí tự, tiến hành nhận dạng Chương 4: Mô tả chương trình xây dựng trình thực nghiệm Chương 5: Đánh giá đạt nêu lên hướng nghiên cứu Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Một số kĩ thuật xử lý ảnh liên quan 2.1.1 Lọc nhiễu Ảnh thu nhận qua máy quét thường có nhiễu Đó chấm đen thường xuất ảnh, gây khó khăn cho mục đích sử dụng ảnh Có nhiều lọc sử dụng tốn tử không gian thực loại bỏ nhiễu lọc trung bình, trung vị, low-pass Trong đó, lọc low-pass tỏ hiệu Lọc low-pass làm mượt chuyển tiếp sắc mức xám loại bỏ nhiễu Các lọc low-pass bỏ qua tần số thấp dừng tần số cao Trong lọc high-pass bỏ qua tần số cao dừng tần số thấp Hay nói cách khác, lọc low-pass làm giảm thay đổi mức xám thường xuyên, cịn lọc high-pass phóng đại thay đổi mức xám thường xuyên Vì kết hợp lọc high-pass sau lọc low-pass khiến ảnh vừa khơng cịn nhiễu, vừa sắc cạnh, cải thiện chất lượng ảnh Thực thi lọc low-pass high-pass tương tự nhau, dùng mặt nạ x nhân chập với vùng x ảnh, ngoại trừ điểm khác lọc low-pass chia cho số nguyên tổng phần tử mặt nạ sau nhân chập Hình 2.1: Các mặt nạ nhân chập lọc low-pass Nguyễn Thành Công – CT1002 Nhận dạng phiếu kiểm kê sản phẩm Hình 2.2: Các mặt nạ nhân chập lọc high-pass 2.1.2 Phân ngưỡng Phân ngưỡng kĩ thuật dùng để biến đổi ảnh ảnh nhị phân bao gồm hai giá trị Để thực phân ngưỡng có phương pháp: thủ công tự động Với phương pháp thủ cơng, ngưỡng cố định chọn trước cịn phương pháp tự động ngưỡng chọn tự động Trước phân ngưỡng ảnh phải biến đổi ảnh xám Nếu coi ảnh ma trận chiều, thì: g ( x, y) if g ( x, y) else Trong đó, g(x, y) giá trị mức xám tọa độ (x, y), ngưỡng 2.1.3 Dò chỉnh nghiêng Do nhiều yếu tố khác mà ảnh không tránh khỏi bị nghiêng suốt q trình qt ảnh Tùy theo mức độ mà góc nghiêng cao mà khơng thể áp dụng thuật tốn phân tích ảnh Do cần phải phát chỉnh nghiêng cho ảnh trước tiến hành xử lý bước sau Tư tưởng để loại bỏ nghiêng sau: Tìm dịng tham chiếu ảnh Tính góc dịng Nguyễn Thành Cơng – CT1002 Nhận dạng phiếu kiểm kê sản phẩm Tính góc nghiêng skew trung bình góc Xoay ảnh góc -skew Các dịng dị tìm với thuật tốn Hough Mỗi điểm ảnh nằm vơ số dịng Để tìm dịng tham chiếu, thực thủ tục bỏ phiếu, tức dòng mà qua điểm bỏ phiếu điểm cho dịng Các dòng với số điểm cao dòng tham chiếu Trước tiên cần tham số hóa dịng Một dịng tham số hóa sau: y m * x d (1) Với m độ dốc d độ lệch Chúng ta không quan tâm đến độ dốc mà quan tâm đến góc Góc m tan( ) dịng phải thỏa mãn: sin( ) cos( ) (2) Từ (1) (2) ta được: y sin( ) *x d cos( ) y * cos( ) x * sin( ) d Vì khơng thể tìm kiếm khơng gian tham số vô hạn nên phải định nghĩa không gian rời rạc với lấy khoảng [-20, 20] với bước nhảy 0.2 Thủ tục bỏ phiếu diễn sau: Duyệt từ vị trí y = vị trí height – Ứng với vị trí y, duyệt từ vị trí x = vị trí width – Nếu điểm (x, y) đen, với khoảng [-20, 20], với bước nhảy, tính: d = Round(y*cos( ) – x*sin( )) Hough(Round( *5), d) += Để tiết kiệm thời gian tính tốn, số điểm bỏ phiếu giảm Để loại bỏ nghiêng, dịng bottom quan trọng hình sau: Nguyễn Thành Công – CT1002 10 Nhận dạng phiếu kiểm kê sản phẩm > i vị trí điểm đầu hàng Duyệt tiếp vị trí j mà HisValue[j] = j – vị trí điểm cuối hàng Hình 3.2: Histogram chiếu theo chiều ngang hình 3.1 3.2.2 Tìm cột Sau tìm thấy hàng cơng việc tìm vị trí cột Lại lần có hai trường hợp xảy ra, cho hàng cho hàng lại Đối với hàng 1, xác định vị trí cột tìm xác left right kí tự cần nhận dạng Dựa vào histogram dọc chiếu từ vị trí điểm đầu hàng đến vị trí điểm cuối hàng 1, bắt đầu duyệt từ vị trí width – width / 2: Nếu HisValue[i] > i vị trí điểm cuối cột (right) Nếu HisValue[j] = j – vị trí điểm đầu cột (left) Đối với hàng lại, ta chiếu histogram theo chiều dọc từ vị trí điểm đầu hàng đến vị trí điểm cuối hàng, bắt đầu duyệt từ vị trí width – 1: Nguyễn Thành Công – CT1002 27 Nhận dạng phiếu kiểm kê sản phẩm Tìm giá trị max histogram dọc Tính ngưỡng µ = max – Vị trí cột vị trí i thỏa mãn điều kiện HisValue[i] > µ Hình 3.3: Một hàng QTY (trên) histogram chiếu theo chiều dọc hàng (dưới) 3.2.3 Loại bỏ hàng, cột thừa Sau tìm hàng cần loại bỏ hàng không cần thiết Chúng ta cần loại bỏ hàng đơi số hàng tìm thấy lớn Điều đươc thấy rõ qua lược đồ histogram hình 3.2, thấy đường kẻ cuối tương ứng với hàng tìm thấy dùng thuật tốn tìm hàng Vì sau tìm hàng cần so sánh số hàng tìm với 8, lớn loại bỏ Cơng việc iếp theo loại bỏ cột thừa Từ hình 3.1 thấy công việc cần áp dụng vùng QTY Đối với hàng thuộc QTY ta tìm xác 10 cột, cột thứ 10, cột cần loại bỏ Tiếp theo loại bỏ cột trống Công việc thực đơn giản dựa vào histogram chiếu theo chiều dọc hàng, duyệt từ điểm đầu cột điểm cuối cột, vị trí i: Nếu HisValue[i] = xét tiếp vị trí i + Nếu HisValue[i] > thơi khơng xét tiếp Nếu xét đến vị trí điểm cuối cột kết luận cột cần loại bỏ Sau loại bỏ cột không cần thiết cột trống xét xem hàng cịn cột Nếu hàng khơng cịn cột loại bỏ hàng 3.3 Trích chọn đặc trưng Sau có hàng cột cần thiết, chưa thể trích chọn đặc trưng kí tự ngay, vùng ảnh cột chưa hồn tồn chứa kí tự Vì cơng việc tìm xác top, bottom, left, right kí tự để cắt vùng ảnh hình chữ nhật chứa hồn tồn kí tự Nguyễn Thành Cơng – CT1002 28 Nhận dạng phiếu kiểm kê sản phẩm Có hai trường hợp xảy xác định kí tự: trường hợp chứa kí tự trường hợp chứa nhiều kí tự (hàng LOCATION) Với trường hợp thứ nhất, tư tưởng dùng khung di động có kích cỡ nhỏ ơ, với trung tâm đặt vào trung tâm ô Việc xác định top, bottom, left, right khung ước lượng cho loại bỏ điểm đen cạnh Khi xác định vị trí khung, xác định left kí tự, vị trí i left khung sau: Duyệt theo chiều dọc từ top khung đến bottom khung Nếu thấy xuất điểm đen, giảm i quay lại bước duyệt tiếp gặp điểm trắng dừng lại, left kí tự vị trí i – Nếu thấy không xuất điểm đen, tăng i quay lại bước duyệt tiếp gặp điểm đen dừng lại, left kí tự vị trí i Tương tự áp dụng thuật tốn để tìm right, top, bottom kí tự Chỉ ý áp dụng cho top bottom duyệt theo chiều ngang từ vị trí left tới vị trí right kí tự khung Với trường hợp thứ hai, thủ tục có khác chút thuật tốn thuật tốn Đầu tiên phải tách vùng chứa kí tự từ ô Điều đạt cách dựa vào histogram chiếu theo chiều dọc hàng dược đề cập phần tìm cột Sau áp dụng thuật tốn cho vùng chứa kí tự tách Hình 3.4: Xác định kí tự trường hợp ô chứa kí tự Nguyễn Thành Công – CT1002 29 Nhận dạng phiếu kiểm kê sản phẩm Hình 3.5: Xác định kí tự trường hợp chứa nhiều kí tự Khi có ảnh chứa hồn tồn kí tự, bắt đầu trích chọn đặc trưng giải thích Chương 3.4 Nhận dạng Trái ngược với trình huấn luyện, trình nhận dạng diễn đơn giản Ảnh kí tự sau trích chọn đặc trưng vector đưa trực tiếp vào mạng qua huấn luyện Ở đây, vector lan truyền xuôi dùng phần tử trọng số qua huấn luyện để đưa 35 giá trị phần tử lớp Giá trị đầu lớn kết luận kí tự thuộc phân lớp Đối với nhận dạng phiếu kiểm kê sản phẩm, tiến hành nhận dạng kí tự chữ số kí tự chữ riêng để đạt kết xác Ví dụ hàng phiếu chứa kí tự chữ viết tay xét đến 25 phần tử cuối lớp Tương tự vùng QTY phiếu chứa kí tự chữ số viết tay nên cần xét 10 phần tử lớp Ngoài ra, thấy vùng NO phiếu bao gồm kí tự chữ số in nên tiến hành nhận dạng dựa trọng số huấn luyện với 10 kí tự chữ số in Nguyễn Thành Cơng – CT1002 30 Nhận dạng phiếu kiểm kê sản phẩm CHƯƠNG 4: THỰC NGHIỆM 4.1 Thiết kế cài đặt hệ thống Hệ thống gồm có phần, phần project thực thi ngôn ngữ C#, Framework NET 3.5 Project AutoAuditInvoiceUpdate thực công việc nhận dạng vùng chứa liệu phiếu kiểm kê sản phẩm cập nhật vào sở liệu Đầu vào tập ảnh phiếu quét chứa thư mục file text lưu trọng số mạng qua huấn luyện Project HandwrittenCharacterRecognition xây dựng giao diện có chức huấn luyện tập mẫu, cập nhật tập mẫu huấn luyện, tập mẫu kiểm thử nhận dạng kiểm thử Project NeuronLib thư viện bao gồm lớp mô mạng neuron nhân tạo đặc trưng khác Ngoài thư viện cịn có chức tiền xử lý ảnh 4.2 Xây dựng tập mẫu huấn luyện Như nói từ trước, cần phải có tập mẫu bao gồm ảnh biến thể 35 kí tự cần nhận dạng để huấn luyện mạng Những ảnh bao gồm hai mức xám đen (foreground) trắng (background), chuẩn hóa kích cỡ cố định 32 x 32 Chất lượng số lượng tập mẫu ảnh hưởng định tới khả nhận dạng mạng sau học Để thu thập tập mẫu đủ chất lượng đa dạng cơng việc địi hỏi nhiều nỗ lực Vì thời gian khả có hạn nên em kịp thu thập 2690 kí tự Trong 10 kí tự chữ số in, 790 kí tự chữ số viết tay, 1900 kí tự cuối chữ viết tay Để tiện cho việc thu thập mẫu cần xây dựng chương trình thực việc cập nhật tập mẫu huấn luyện tập mẫu kiểm thử Đầu vào chương trình ảnh chứa bảng hàng cột Ứng với hàng cột chứa kí tự mẫu Một bảng bao gồm kí tự số kí tự chữ Các kí tự xếp theo chiều dọc hay theo chiều ngang 0, 1, …, 8, hay A, B, …, Y, Z để thuận lợi cho việc lấy nhãn kí tự cắt ảnh Nguyễn Thành Công – CT1002 31 Nhận dạng phiếu kiểm kê sản phẩm Hình 4.1: Ảnh chứa mẫu kí tự số Nguyễn Thành Công – CT1002 32 Nhận dạng phiếu kiểm kê sản phẩm Hình 4.2: Ảnh chứa mẫu kí tự chữ Khi đầu vào chuẩn hóa, cơng việc cịn lại dành cho chương trình việc tách hàng, tách cột, tìm dựa histogram tương tự phần trước trình bày Cuối cùng, ghi file ảnh kí tự lên đĩa, gắn nhãn kí tự vào cuối tên file để thuận lợi cho hình thành tập đích sau Nguyễn Thành Công – CT1002 33 Nhận dạng phiếu kiểm kê sản phẩm Hình 4.3: Giao diện cập nhật mẫu kí tự 4.3 Huấn luyện mạng Huấn luyện mạng trình yêu cầu thử nghiệm nhiều lần Mỗi lần thử thay đổi tham số cần thiết mạng đạt tới khả nhận dạng cao Bởi vậy, xây dựng chương trình cho phép sửa đổi tham số epoch (số lần huấn luyện), hệ số học, số neuron lớp ẩn yêu cầu cần thiết Ngồi ra, cần có chức ghi nạp liệu mạng cho sử dụng lần sau Nguyễn Thành Công – CT1002 34 Nhận dạng phiếu kiểm kê sản phẩm Hình 4.4: Giao diện huấn luyện mạng Trước huấn luyện mạng phải có thành phần: danh sách vector đầu vào danh sách vector đầu mong muốn kí tự Các vector đầu vào có giá trị: -1 cho màu (trắng), cho màu kí tự (đen) Các vector đầu có giá trị -1 1: giá trị ứng với vị trí kí tự, giá trị -1 ứng với tất vị trí cịn lại Có tất 35 vị trí, xếp là: 0, 1, …, 8, 9, A, B, …, X, Y, Z Mạng huấn luyện theo kĩ thuật multiscale với hàm kích hoạt trọng số khởi tạo chọn giải thích Chương Về lý thuyết mạng có số lớp ẩn tùy ý lớp ẩn thường đủ hiệu Số neuron lớp ẩn chọn cho phù hợp với kích cỡ tập huấn luyện Đối với tập huấn luyện 2690 mẫu 100 neuron có lẽ phù hợp Cuối cùng, hệ số học phải chọn cho đủ nhỏ, khoảng [0.0001, 0.01] Nguyễn Thành Công – CT1002 35 Nhận dạng phiếu kiểm kê sản phẩm 4.4 Nhận dạng kiểm thử Hình 4.5: Giao diện cho nhận dạng kiểm thử Tập mẫu kiểm thử bao gồm kí tự cắt trực tiếp từ phiếu kiểm kê sản phẩm Sau thu thập loại bỏ phiếu khơng đạt tiêu chuẩn (kí tự bị viết chồng lên nhau, tẩy xóa…) cịn lại 20 phiếu với 470 kí tự viết tay cắt Bằng phương pháp huấn luyện multiscale mạng lớp với 100 neuron lớp ẩn, số kết rút qua bảng sau: Nguyễn Thành Công – CT1002 36 Nhận dạng phiếu kiểm kê sản phẩm Bảng 4.1: Kết kiểm thử với thông số khác Giai đoạn Epoch Giai đoạn Epoch Giai đoạn Epoch Hệ số học Tỉ lệ lỗi 25 25 25 0.0001 41.7% 25 25 25 0.0005 43.4% 25 25 25 0.001 41.06% 25 25 25 0.005 34.26% 25 25 25 0.01 50.58% 25 25 50 0.0001 36.17% 25 25 50 0.0005 37.45% 25 25 50 0.001 36.17% 25 25 50 0.005 28.51% 25 25 50 0.01 34.47% 50 50 25 0.0001 40.64% 50 50 25 0.0005 34.68% 50 50 25 0.001 33.4% 50 50 25 0.005 37.23% 50 50 25 0.01 55.11% 50 50 50 0.0001 35.96% 50 50 50 0.0005 30.64% 50 50 50 0.001 30% 50 50 50 0.005 29.15% 50 50 50 0.01 32.34% Từ bảng kết thấy mạng đạt tỉ lệ lỗi thấp hệ số học 0.005 với 25-25-50 epoch Mặc dù chưa tỉ lệ lỗi thấp lấy làm thông số cho lần thử sau với kiến trúc mạng khác Kết quả, tăng số neuron lên thành 200 tỉ lệ lỗi giảm cịn 26.81% Tăng số lớp ẩn thành giảm tỉ lệ lỗi xuống 25.96% 23.62%, với 100 Nguyễn Thành Công – CT1002 37 Nhận dạng phiếu kiểm kê sản phẩm 200 neuron lớp ẩn Tất kết cho thấy khả nhận dạng chưa cao mạng Lý số lượng tập mẫu cho huấn luyện cịn ít, chưa đủ tính đa dạng, có nhiều kí tự kiểm thử viết theo dạng chưa huấn luyện Để làm phép so sánh, mạng tiếp tục huấn luyện với 2690 mẫu từ trước cộng với 470 mẫu kiểm thử tỉ lệ lỗi cịn 1.06% - tỉ lệ chấp nhận Điều chứng tỏ khả học mạng multiscale tôt Chúng ta cải thiện khả nhận dạng mạng cách tăng số mẫu huấn luyện, đặc biệt số mẫu lấy từ người viết phiếu Hình 4.6: Các kí tự bị nhận dạng nhầm 4.5 Cập nhật phiếu kiểm kê sản phẩm tự động Hình 4.7: Giao diện cập nhật phiếu kiểm kê sản phẩm Nguyễn Thành Công – CT1002 38 Nhận dạng phiếu kiểm kê sản phẩm Khi mạng qua huấn luyện cơng việc xây dựng chương trình cập nhật phiếu tự động diễn đơn giản Đầu vào chương trình thư mục chứa phiếu cần cập nhật file text chứa trọng số qua huấn luyện Khi đầu vào hợp lệ trình xử lý diễn Vì q trình nhận dạng có lỗi, nên xử lý phiếu một, kiểm tra chỉnh sửa kết quả, trước xử lý phiếu Sau xử lý toàn phiếu xác minh kết xác tiến hành cập nhật vào sở liệu Chương trình kết nối với SQL Server máy công nghệ ADO.NET, sử dụng câu lệnh truy vấn INSERT để cập nhật liệu vào sở liệu Nguyễn Thành Công – CT1002 39 Nhận dạng phiếu kiểm kê sản phẩm CHƯƠNG 5: KẾT LUẬN 5.1 Kết nghiên cứu Như trình bày Chương vừa qua, đề tài tập trung nghiên cứu vấn đề sau: Mơ hình mạng neuron nhân tạo Ứng dụng mạng vào toán nhận dạng kí tự viết tay Phương pháp phân đoạn dựa histogram để tìm kí tự ảnh Ngồi ra, đề tài nêu lên số kĩ thuật xử lý ảnh cho việc tiền xử lý số kĩ thuật cải thiện trình huấn luyện nhận dạng mạng neuron nhân tạo 5.2 Hướng nghiên cứu Mặc dù xây dựng hệ thống có khả cập nhật phiếu kiểm kê sản phẩm tự động tồn hạn chế, phần thời gian nghiên cứu cịn ngắn Những hạn chế nằm giai đoạn tiền xử lý, phân đoạn sơ sài, khả nhận dạng cịn Vì thời gian tới, ưu tiên nghiên cứu em là: Tìm hiểu thêm số kĩ thuật xử lý ảnh Tìm hiểu số mơ hình mạng neuron số phương pháp trích chọn đặc trưng hiệu kết nhận dạng cao Tìm hiểu số phương pháp biến đổi ảnh để mở rộng tập mẫu, đồng thởi tiến hành thu thập thêm tập mẫu chất lượng Nguyễn Thành Công – CT1002 40 Nhận dạng phiếu kiểm kê sản phẩm TÀI LIỆU THAM KHẢO [1.] Phùng Công Định, Ứng dụng mạng Neuron nhận dạng kí tự viết tay, Đồ án tốt nghiệp đại học, trường đại học Dân Lập Hải Phòng, tr 30-34, 2008 [2.] Y LeCun, L Bottou, G Orr, and K Muller, “Efficient BackProp” in Neuron Networks: Tricks of the trade, (G Orr and Muller K., eds.), pages 5-13, 1998 [3.] Velappa Ganapathy and Kok Leong Liew, “Handwritten Character Recognition Using Multiscale Neuron Network Training Technique” in World Academy of Science, Engineering and Technology 39, pages 32-36, 2008 [4.] Dwayne Phillips, Image Procesing in C Second Edition, Electronic Edition 1.0, 26 April 2000 [5.] Mike O’Neill, Neuron Network for Recognition of Handwritten Digits, www.codeproject.com, 26 November 2006 [6.] Mackenb, How to deskew an image, www.codeproject.com, 25 April 2006 Nguyễn Thành Công – CT1002 41 ... Thành Công – CT1002 24 Nhận dạng phiếu kiểm kê sản phẩm CHƯƠNG 3: NHẬN DẠNG PHIẾU KIỂM KÊ SẢN PHẨM 3.1 Tiền xử lý Khi có ảnh quét phiếu kiểm kê sản phẩm, chưa thể tiến hành nhận dạng mà phải qua bước... Công – CT1002 35 Nhận dạng phiếu kiểm kê sản phẩm 4.4 Nhận dạng kiểm thử Hình 4.5: Giao diện cho nhận dạng kiểm thử Tập mẫu kiểm thử bao gồm kí tự cắt trực tiếp từ phiếu kiểm kê sản phẩm Sau thu.. .Nhận dạng phiếu kiểm kê sản phẩm 4.3 Huấn luyện mạng 34 4.4 Nhận dạng kiểm thử 36 4.5 Cập nhật phiếu kiểm kê sản phẩm tự động 38 CHƯƠNG

Ngày đăng: 06/04/2021, 18:27

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1.] Phùng Công Định, Ứng dụng mạng Neuron trong nhận dạng kí tự viết tay, Đồ án tốt nghiệp đại học, trường đại học Dân Lập Hải Phòng, tr 30-34, 2008 Sách, tạp chí
Tiêu đề: Ứng dụng mạng Neuron trong nhận dạng kí tự viết tay
[2.] Y. LeCun, L. Bottou, G. Orr, and K. Muller, “Efficient BackProp” in Neuron Networks: Tricks of the trade, (G. Orr and Muller K., eds.), pages 5-13, 1998 Sách, tạp chí
Tiêu đề: “Efficient BackProp” "in" Neuron Networks: Tricks of the trade
[3.] Velappa Ganapathy and Kok Leong Liew, “Handwritten Character Recognition Using Multiscale Neuron Network Training Technique” in World Academy of Science, Engineering and Technology 39, pages 32-36, 2008 Sách, tạp chí
Tiêu đề: “Handwritten Character Recognition Using Multiscale Neuron Network Training Technique” "in" World Academy of Science, Engineering and Technology 39
[4.] Dwayne Phillips, Image Procesing in C Second Edition, Electronic Edition 1.0, 26 April 2000 Sách, tạp chí
Tiêu đề: Image Procesing in C Second Edition
[5.] Mike O’Neill, Neuron Network for Recognition of Handwritten Digits, www.codeproject.com, 26 November 2006 Sách, tạp chí
Tiêu đề: Neuron Network for Recognition of Handwritten Digits
[6.] Mackenb, How to deskew an image, www.codeproject.com, 25 April 2006 Sách, tạp chí
Tiêu đề: How to deskew an image

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w