ỨNG DỤNG KỸ THUẬT XỬ LÝ ẢNH
TRONG NHẬN DIỆN BARCODE
MỤC LỤ
DANH MỤC CÁC HÌNH VẼ..............................................................................................V
DANH MỤC CÁC BẢNG BIỂU.......................................................................................VI
DANH MỤC CÁC TỪ VIẾT TẮT..................................................................................VII
CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI...................................................................................1
1.1
YÊU CẦU ĐỀ TÀI.........................................................................................................1
1.2
PHẠM VI ĐỀ TÀI..........................................................................................................1
1.3
ỨNG DỤNG..................................................................................................................1
CHƯƠNG 2. LÝ THUYẾT VỀ BARCODE.....................................................................2
2.1
KHÁI NIỆM VỀ BARCODE (MÃ VẠCH).........................................................................2
2.2
Ý NGHĨA CỦA BARCODE (MÃ VẠCH)..........................................................................2
4.1
YÊU CẦU MÔ PHỎNG................................................................................................13
4.2
LƯU ĐỒ GIẢI THUẬT.................................................................................................13
4.3
KẾT QUẢ MÔ PHỎNG.................................................................................................14
CHƯƠNG 5. KẾT LUẬN..................................................................................................15
5.1
ĐÃ THỰC HIỆN..........................................................................................................15
5.2
HƯỚNG PHÁT TRIỂN.................................................................................................15
2
5.3
HẠN CHẾ...................................................................................................................15
TÀI LIỆU THAM KHẢO..................................................................................................16
PHỤ LỤC…..........................................................................................................................17
EAN The European Article Numbering system
QR Quick Response
6
Trang 1/16
CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI
Xử lý ảnh là một kỹ thuật được ứng dụng rộng rãi trong việc phân tích, nhận diện
các loại hình ảnh khác nhau, nhận diện barcode (mã vạch) là một trong những ứng
dụng của kỹ thuật này. Đề tài cung cấp những kiến thức tổng quan về barcode (mã
vạch), cũng như hiểu được phương pháp xử lý những ảnh barcode trên các sản
phẩm.
1.1 Yêu cầu đề tài
Tìm hiểu các kỹ thuật xử lý ảnh trong nhận diện barcode.
Xây dựng hệ thống nhận diện trên MATLAB.
Phải nhận diện được các barcode dùng trong ứng dụng tính tiền siêu thị.
1.2 Phạm vi đề tài
Do barcode có nhiều loại, mỗi một loại lại có nhiều tiêu chuẩn khác nhau nên đề tài
này không thể nhận diện được hết các loại mã vạch.
Phạm vi đề tài chỉ giới hạn cho việc nhận diện barcode EAN-13 là loại barcode phổ
biến nhất cũng như theo yêu cầu đề tài là barcode dùng trong ứng dụng tính tiền
siêu thị.
1.3 Ứng dụng
Đề tài có tính thực tế cao, được ứng dụng rộng rãi trong đời sống, một số ứng dụng
có thể kể đến như:
Tính tiền trong cửa hàng, siêu thị.
Ứng dụng trong việc quản lý các đồ dùng, thiết bị trong công ty, văn phòng,
trường học,…
1.1.1 Mã vạch 1D
Là loại mã vạch chứa những vạch song song với độ dày khác nhau xen kẽ với
những khoảng trống được sắp xếp với nguyên tắc mã hóa nhất định, thường thấy
trên các bao bì, vỏ hộp sản phẩm.
Mã vạch 1D có nhiều tiêu chuẩn khác nhau, thông dụng trên thị trường ta thường
thấy các dạng như: UPC, EAN, Code 39, Interleaved 2of 5, Codabar, Code 128.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Trang 3/16
Ngoài ra trong các chuẩn mã người ta còn có các phiên bản khác nhau để phục vụ
cho mục đích sử dụng khác nhau. Ví dụ chuẩn UPC còn có các phiên bản khác là
UPC-A, UPC-E, chuẩn EAN có các phiên bản EAN-8, EAN-13, Code 128 gồm
Code 128 Auto, Code 128-A, Code 128-B, Code 128-C. Các loại mã tốt nhất được
công nhận như UPC và EAN.
Hình 2-1: Mã vạch 1D trên các bao bì sản phẩm [1]
-
Một số loại mã 1D thông dụng
Mã UPC
Được ngành công nghiệp thực phẩm ứng dụng vào năm 1973, được sử dụng phổ
biến ở Bắc Mỹ (Hoa Kỳ và Canada). Mã UPC bao gồm 12 chữ số, mã UPC-E là
một biến thể nhỏ hơn mã hóa 6 chữ số.
Một mã vạch UPC bao gồm các phần:
-
Cấu trúc của mã EAN-13 bao gồm:
-
Các vạch bảo vệ trái có giá trị 010.
-
6 số kể từ số thứ 2 đến số thứ 7.
-
Các vạch bảo vệ trung tâm giá trị 01010.
-
5 số kể từ số thứ 8 đến số thứ 12.
-
Số kiểm tra (số thứ 13)
-
Vạch bảo vệ phải có giá trị 010.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
3
Lẻ
Lẻ
Lẻ
Lẻ
Chẵn
Chẵn
Chẵn
Chẵn
Chẵn
Chẵn
4
Lẻ
Chẵn
Chẵn
Chẵn
Lẻ
Chẵn
Chẵn
Lẻ
Lẻ
Chẵn
5
Lẻ
Lẻ
Chẵn
Chẵn
Lẻ
9
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Lẻ
0001101
0011001
0010011
0111101
0100011
0110001
0101111
0111011
0110111
0001011
Chẵn
0100111
0110011
0011011
0100001
0011101
0111001
0000101
0010001
0001001
0010111
7
-
Số cuối cùng là số kiểm tra.
Hình 2-3: Mã EAN-13 [3]
Theo như hình 2-3, thì dãy số có thể chia như sau:
-
893: mã quốc gia là Việt Nam.
-
460200107: 9 số này có thể được chia làm hai phần:
o Mã nhà sản xuất có thể có 4, 5 hoặc 6 số tùy theo được cấp.
o Phần còn lại là mã sản phẩm.
-
8: số kiểm tra tính chính xác của mã.
Cách kiểm tra tính hợp lệ của mã EAN-13 dựa vào dãy số được in trên mã:
-
Lấy tổng các chữ số hàng chẵn nhân 3 cộng với tổng các chữ số hàng lẻ, trừ
số cuối cùng.
-
Sau đó lấy kết quả trên cộng với số cưới cùng (số thứ 13).
Số 90 có đuôi là số 0 nên đây là mã hợp lệ.
1.1.2 Mã vạch 2D
Là loại mã vạch hai chiều, trong khi mã 1D chỉ mã hóa được rất ít thông tin thì mã
vạch 2D có thể mã hóa được lượng thông tin lớn hơn so với mã 1D từ ký tự đặc
biệt, liên kết đến website nào đó thông qua các thiết bị như điện thoại di động.
The Quick Response (QR Code) là mã vạch 2D đầu tiên và cũng là loại mã điển
hình nhất của mã vạch 2D, được Nhật Bản sáng chế vào năm 1994.
Ngoài việc mã hóa được một lượng thông tin lơn thì các loại mã vạch 2D còn có
thể được in với kích thước nhỏ, trong khi mã vạch 1D bị giới hạn kích thước và dữ
liệu được mã hóa theo chiều ngang, mã vạch 1D cũng có thể gây khó khăn cho máy
quét nếu được in trên các sản phẩm có dạng cong.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Trang 8/16
Hình 2-4: Hình dạng của một mã QR [4]
CHƯƠNG 3.
LÝ THUYẾT VỀ XỬ LÝ ẢNH TRONG
NHẬN DIỆN BARCODE
Trong thực tế, để đọc được thông tin mã hóa trên một mã vạch thì cần có các loại
máy quét mã vạch chuyên dụng, nhưng trong kỹ thuật xử lý ảnh thì cần trải qua quá
trình xử lý và mã hóa theo các quy tắc của mã vạch. Quá trình xử lý ảnh theo sow
Trên hình 3-1, thì ảnh cần xử lý có tên file là 4.png
1.8 Chuyển sang ảnh nhị phân
Do ảnh đầu vào thực chất là một ảnh trắng đen có giá trị của điểm ảnh là 0 và 255.
Nhưng để mã hóa thành dãy số trên barcode thì cần chuyển sang ảnh nhị phân có
giá trị điểm ảnh là 0 và 1 để phù hợp với quy tắc mã hóa chữ số của barcode, trong
đó giá trị 0 tương ứng với vùng ảnh màu trắng và giá trị 1 tương ứng với vùng ảnh
màu đen.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Trang 10/16
Hình 3-2: Giá trị các điểm ảnh khi chưa chuyển sang ảnh nhị phân
Theo hình 3-2, các điểm ảnh đọc được có giá trị là 255 và 0 khi ảnh đầu vào chưa
được biến đổi sang ảnh nhị phân, trong đó các giá trị 255 tương ứng với vùng ảnh
màu trắng và các giá trị 0 tương ứng với vùng ảnh màu đen.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Trang 11/16
Hình 3-3: Giá trị các điểm ảnh khi chuyển sang ảnh nhị phân
Trang 12/16
1.10 Xuất thông tin barcode
Sau khi đã mã hóa và thu được một dãy có 13 số, thì ta sẽ tạo thông tin cho barcode
như: xuất xứ, tên của doanh nghiệp, tên sản phẩm, giá bán của sản phẩm đó.
Ví dụ:
Dãy số 8 9 0 2 0 8 0 0 1 1 4 4 5
Tên sản phẩm là bánh quy
Giá bán 20000 VNĐ
Sau khi thực hiện các quá trình trên và xuất ra được thông tin của barcode thì coi
như quá trình xử lý ảnh để nhận diện barcode là hoàn tất.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Trang 13/16
CHƯƠNG 4.
MÔ PHỎNG
1.11 Yêu cầu mô phỏng
Nhận diện và xử lý các barcode (mã vạch) dùng trong ứng dụng tính tiền trong siêu
thị.
Hiển thị được thông tin của bar code (mã vạch) được xử lý như: tên hàng hóa của
sản phẩm, giá bán.
1.12
như dãy số thu được trùng với một trong những dãy trong thư viện thì sẽ hiển thị
thông tin của barcode. Ngược lại, nếu như dãy số thu được không trùng với các dãy
có trong thư viện thì có nghĩa mã đó chưa được tạo thông tin và ta sẽ chọn một mã
khác.
1.13
Kết quả mô phỏng
Hình 4-1: Kết quả mô phỏng
Sau khi chạy chương trình ta thu được kết quả như hình 4-1:
Barcode có dãy số 8 9 0 2 0 8 0 0 1 1 4 4 5
Tên sản phẩm: nước suối
Giá bán: 3400
CHƯƠNG 5.
KẾT LUẬN
1.14 Đã thực hiện
Đề tài đã cung cấp được những kiến thức cơ bản về barcode (mã vạch) như: cấu
trúc mã vạch, nguyên tắc để tạo nên mã vạch cũng như là ý nghĩa của mã vạch.
Ứng dụng kỹ thuật xử lý ảnh
trong nhận diện barcode
Trang 15/16
Ứng dụng được những kỹ thuật xử lý ảnh cơ bản trong việc nhận diện mã vạch như: