ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
LỤC THỊ THANH HUỆ
KIỂM TRA ĐỘ KHÁC BIỆT CỦA LOGO
DÙNG KỸ THUẬT SO KHỚP ẢNH
Chuyên ngành: Khoa học máy tính.
Mã số chuyên ngành: 8 48 01 01.
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS. Phạm Đức Long
Thái Nguyên năm 2020
i
LỜI CAM ĐOAN
Tên tôi là: Lục Thị Thanh Huệ
Sinh ngày: 26/12/1984
Là em lớp cao học CHK17A - Trường Đại học Công nghệ Thông tin và Truyền
thông -
85 trang |
Chia sẻ: huong20 | Ngày: 13/01/2022 | Lượt xem: 280 | Lượt tải: 0
Tóm tắt tài liệu Luận văn Kiểm tra độ khác biệt của logo dùng kỹ thuật so khớp ảnh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Đại học Thái Nguyên.
Hiện đang công tác tại: Trường THPT Định Hóa - tỉnh Thái Nguyên.
Tôi xin cam đoan: Đề tài “Kiểm tra độ khác biệt của logo dùng kỹ thuật so khớp
ảnh” do TS. Phạm Đức Long hướng dẫn là công trình nghiên cứu của riêng
tôi. Tất cả tài liệu tham khảo đều có nguồn gốc, xuất xứ rõ ràng.
Tôi xin cam đoan tất cả những nội dung trong luận văn đúng như nội
dung trong đề cương và yêu cầu của thầy giáo hướng dẫn. Nếu sai tôi hoàn
toàn chịu trách nhiệm trước hội đồng khoa học và trước pháp luật.
Thái Nguyên, ngày 18 tháng 09 năm 2020
Tác giả luận văn
Lục Thị Thanh Huệ
ii
LỜI CẢM ƠN
Sau một thời gian nghiên cứu và làm việc nghiêm túc, được sự động viên,
giúp đỡ và hướng dẫn tận tình của Thầy giáo hướng dẫn TS. Phạm Đức Long
em đã hoàn thành luận văn với Đề tài “Kiểm tra độ khác biệt của logo dùng kỹ
thuật so khớp ảnh”.
Tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy giáo hướng dẫn TS. Phạm
Đức Long đã tận tình chỉ bảo, hướng dẫn, giúp đỡ tôi hoàn thành luận văn này.
Tôi xin cảm ơn các thầy cô giáo, Phòng đào tạo Sau đại học của Trường Đại
học Công nghệ Thông tin và Truyền thông Thái Nguyên đã giúp đỡ tôi trong
quá trình học tập cũng như thực hiện luận văn. Tôi xin chân thành cảm ơn
Trường THPT Định Hóa - tỉnh Thái Nguyên nơi tôi công tác đã tạo điều kiện
thuận lợi nhất cho tôi theo học khóa học này.
Tôi xin chân thành cảm ơn bạn bè, đồng nghiệp và gia đình đã động viên,
khích lệ, tạo điều kiện giúp đỡ tôi trong suốt quá trình học tập, thực hiện và
hoàn thành luận văn này.
Thái Nguyên, ngày 18 tháng 9 năm 2020
Tác giả luận văn
Lục Thị Thanh Huệ
iii
MỤC LỤC
Trang
Lời cam đoan ...................................................................................................... i
Lời cảm ơn ........................................................................................................ ii
Mục lục ............................................................................................................. iii
Danh mục các bảng .......................................................................................... iv
Danh mục các hình ............................................................................................ v
Danh mục các từ viết tắt ................................................................................... vi
MỞ ĐẦU .......................................................................................................... 1
1. Lý do chọn đề tài ........................................................................................... 1
2. Mục tiêu ......................................................................................................... 1
3. Đối tượng và phạm vi nghiên cứu ................................................................. 1
4. Ý nghĩa khoa học và thực tiễn của đề tài nghiên cứu .................................. 2
5. Phương pháp nghiên cứu ............................................................................... 2
CHƯƠNG 1. NHU CẦU SO KHỚP LOGO QUA ẢNH ............................. 3
1.1. Các nhu cầu trong thực tế .......................................................................... 3
1.1.1. Logo và tầm quan trọng của chúng ........................................................ 3
1.1.2. Bắt chước thiết kế ................................................................................... 6
1.1.3. Luật bảo hộ bản quyền ............................................................................ 7
1.2. So khớp qua ảnh ........................................................................................ 9
1.3. Các đặc điểm cơ bản khi phân biệt đối tượng .......................................... 10
KẾT LUẬN CHƯƠNG 1 ................................................................................ 11
CHƯƠNG 2. MỘT SỐ KỸ THUẬT SO KHỚP QUA ẢNH HIỆN NAY 12
2.1. So sánh sự tương xứng về hình dạng ....................................................... 12
2.1.1. Dùng khoảng cách Hausdorff .............................................................. 12
2.1.2. Dùng phương pháp Shape Context ....................................................... 14
2.1.3. Dùng phương pháp Inner Distance ....................................................... 26
iv
2.2. Sử dụng phương pháp phân cấp .............................................................. 31
2.3 Sử dụng học máy (Machine Learning) .................................................... 33
2.3.1 Những lĩnh vực nghiên cứu quan trọng trong Học máy ........................ 33
2.3.2 Liên quan học máy với khai thác dữ liệu và trí tuệ nhân tạo ................. 34
2.3.3 Phân loại các thuật toán học máy ........................................................... 35
2.3.4 So sánh ba thuật toán học máy quan trọng ............................................ 37
2.4 So sánh các phương pháp ......................................................................... 37
2.5 So sánh màu sắc ....................................................................................... 39
2.6. So sánh kết cấu bề mặt ............................................................................. 44
KẾT LUẬN CHƯƠNG 2 ................................................................................ 47
CHƯƠNG 3. ĐÁNH GIÁ THỰC NGHIỆM .............................................. 48
3.1 Thực nghiệm so khớp với một số ảnh cũ .................................................. 48
3.2 Thực nghiệm so sánh với ba thuộc tính .................................................... 50
3.3 Nhận xét và đánh giá ................................................................................. 53
KẾT LUẬN CHƯƠNG 3 ................................................................................ 53
KẾT LUẬN .................................................................................................... 54
HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI .......................................................... 54
TÀI LIỆU THAM KHẢO ............................................................................... 55
PHỤ LỤC
ivv
DANH SÁCH CÁC BẢNG
Trang
Bảng 1.1 Bốn dạng nhãn hiệu truyền thống được bảo hộ ở Việt
Nam
.............................................................................................................................
4 ...........................................................................................................................
Bảng 2.1 Dữ liệu
tuổi .......................................................................................................................
17
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Bảng 2.2 Thông tin của mẫu dữ
liệu .......................................................................................................................
18
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Bảng 2.3 So sánh Gaussian NB, SVM and Decision
Tree ......................................................................................................................
37
vi
.............................................................................................................................
.............................................................................................................................
Bảng 2.4 Đặc điểm các phương pháp so khớp đối tượng qua ảnh
.............................................................................................................................
37 .........................................................................................................................
Bảng 2.5 Tính tham số kết cấu của bốn
ảnh .......................................................................................................................
47
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Bảng 3.1 Kết quả thực nghiệm so sánh hình dáng và màu 6 cặp
ảnh .......................................................................................................................
51 .........................................................................................................................
Bảng 3.2 So sánh kết cấu bề
mặt .......................................................................................................................
52
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
viiv
DANH SÁCH CÁC HÌNH
Trang
Hình 1.1. Một số
logo
.............................................................................................................................
6
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.2. Làm nhái
logo
.............................................................................................................................
6
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.3. Logo của một số thương hiệu trong số 50 thương hiệu nổi tiếng Việt
Nam
2019.
viii
.............................................................................................................................
7
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.4. Ý tưởng bị làm “nhái”
.............................................................................................................................
8
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.5. Ví dụ tranh chấp bản
quyền:
.............................................................................................................................
8
.............................................................................................................................
.............................................................................................................................
ix
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.6. Nhái logo của
Toyota
.............................................................................................................................
8
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.7. Ví dụ tranh chấp
logo
.............................................................................................................................
8
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 1.8. Doanh nghiệp thành lập mới từ 2012 đến 2019
.............................................................................................................................
9
x
.............................................................................................................................
.............................................................................................................................
Hình 1.9. So sánh các hình với ba thuộc tính hình dáng, màu và kết cấu bề mặt .. 10
Hình 2.1. Khoảng cách Hausdorff giữa 2 tập hợp A và
B ..........................................................................................................................
12
.............................................................................................................................
.............................................................................................................................
Hình 2.2. Thực hiện truy vấn trên tập dữ liệu ETH-
80 .........................................................................................................................
14
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.3. Truy vấn trên tập dữ liệu
Kimia. ..................................................................................................................
15
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.4. So khớp mẫu cột trái và độ giống
nhau .....................................................................................................................
15
.............................................................................................................................
.............................................................................................................................
xi
.............................................................................................................................
.............................................................................................................................
Hình 2.5. Histogram của một ảnh
xám ......................................................................................................................
16
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.6. Một đồ thị dạng histogram độ tuổi và tần
suất.......................................................................................................................
16
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.7. Các bin của histogram quá nhỏ a) hoặc quá lớn
b) ..........................................................................................................................
18
.............................................................................................................................
.............................................................................................................................
Hình 2.8. Một ảnh a) và b) histogram của
nó .........................................................................................................................
19
.............................................................................................................................
.............................................................................................................................
xii
.............................................................................................................................
.............................................................................................................................
Hình 2.9. Biểu diễn Histogram trong tọa độ cực 12
bins ......................................................................................................................
20
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.10. Ví dụ shape
context .................................................................................................................
21
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.11.
Affine ..................................................................................................................
24
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
xiii
.............................................................................................................................
.............................................................................................................................
Hình 2.12. Ba đối tượng và inner
distance ................................................................................................................
28
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.13. Khoảng cách trắc địa trên các hình dạng
2D ........................................................................................................................
28
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.14. Định nghĩa khoảng cách bên
trong.....................................................................................................................
29
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Hình 2.15. Tính toán khoảng cách bên
trong.....................................................................................................................
30
.............................................................................................................................
.............................................................................................................................
xiv
.............................................................................................................................
.............................................................................................................................
Hình 2.16. Một cây hình
dạng .....................................................................................................................
32
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.......................................ến đổi cần thiết để đưa hai hình dạng thẳng hàng).
5 Để xác định hình dạng không xác định, sử dụng bộ phân loại láng giềng gần
nhất để so sánh khoảng cách hình dạng của nó với khoảng cách hình dạng của các đối
tượng đã biết.
Chi tiết thực hiện
Bước 1: Tìm danh sách các điểm trên biên của hình
Cách tiếp cận giả định rằng hình dạng của một đối tượng về cơ bản được nắm
bắt bởi một tập hợp con hữu hạn của các điểm trên các đường biên bên trong hoặc
bên ngoài trên đối tượng. Chúng có thể có được bằng cách sử dụng bộ tìm biên Canny
và chọn một tập hợp các điểm ngẫu nhiên từ các biên. Lưu ý rằng những điểm này
23
không cần và nói chung không cứ phải là các điểm có đặc điểm chính như điểm cực
đại của độ cong hoặc điểm uốn. Tốt nhất là lấy mẫu hình với khoảng cách gần như
đồng đều, mặc dù điều đó cũng không quan trọng.
Bước 2: Tính toán shape context
Bước này đã diễn tả trong phần “Shape context:”
Bước 3: Tính toán ma trận đánh giá
Xét hai điểm p và q có các histograms K-bin đã chuẩn hóa (nghĩa là các shape context)
g (k) và h (k). Vì các shape context là các bản phân phối được biểu thị dưới dạng
histograms, nên việc sử dụng kiểm tra thống kê χ2 (χ2 test statistic) là "đánh giá shape
context " của sự so khớp hai điểm là điều đương nhiên.
(2.9)
Phạm vi của các giá trị này là từ 0 đến 1. Ngoài đánh giá shape context, có thể thêm
một đánh giá dựa trên hình dáng (appearance). Ví dụ, đánh giá thêm có thể là thước
đo độ không tương đồng góc tiếp tuyến (đặc biệt hữu ích trong nhận dạng chữ số):
(2.10)
Đây là một nửa độ dài của dây cung trong vòng tròn đơn vị giữa các vectơ đơn vị với
các góc 1 và 2. Giá trị của nó cũng nằm trong khoảng từ 0 đến 1. Bây giờ, tổng đánh
giá so khớp hai điểm có thể là tổng của hai đánh giá:
(2.11)
Với mỗi điểm pi trên hình đầu tiên và một điểm qj trên hình thứ hai, hãy tính đánh giá
như mô tả và gọi nó là Ci, j. Đây là ma trận đánh giá.
Bước 4: Tìm kết quả so khớp để có tổng đánh giá cực tiểu
Bây giờ, một pi so khớp một - một khớp với từng điểm pi trên hình 1 và qj trên hình 2
giúp giảm thiểu tổng chi phí đánh giá so khớp,
(2.12)
24
là cần thiết. Điều này có thể được thực hiện trong thời gian O(N3) sử dụng phương
pháp Hungary, mặc dù có các thuật toán hiệu quả hơn. Để có khả năng xử lý mạnh
mẽ các ngoại lệ, người ta có thể thêm các nút "giả" có chi phí phù hợp nhưng không
đổi nhưng hợp lý với ma trận chi phí. Điều này sẽ khiến thuật toán so khớp với các
ngoại lệ thành "hình nộm" nếu không có kết quả khớp thực sự.
Bước 5: Chuyển đổi mô hình
Cho tập hợp các điểm tương ứng giữa một tập hợp các điểm hữu hạn trên hai
hình, một phép biến đổi có thể được ước tính để ánh xạ bất kỳ điểm
nào từ hình này sang hình khác. Có một số lựa chọn cho sự chuyển đổi này, được mô
tả dưới đây.
Affine (Liên kết)
Hình 2.11 Affine
Mô hình affine là một lựa chọn tiêu chuẩn: Lời giải bình
phương nhỏ nhất cho ma trận A và vectơ bù chuyển dịch o được lấy bằng:
(2.13)
Trong đó
(2.14)
với biểu thức tương tự cho Q, Q+ là ma trận giả nghich đảo (pseudoinverse) của Q.
Mô hình Thin plate spline-TPS
Mô hình spline tấm mỏng TPS là mô hình được sử dụng rộng rãi nhất cho các
phép biến đổi khi làm việc với shape contexts. Hiệu quả là giảm tác động của nhiễu
25
trong khi thực hiện. Một phép biến đổi 2D có thể được tách thành hai hàm TPS để
mô hình hóa một phép biến đổi tọa độ:
(2.15)
Trong đó mỗi hàm ƒx và ƒy có dạng:
(2.16)
và hàm U(r) được định nghĩa bởi . Các chi tiết chính xác về cách
giải các tham số có thể được tìm thấy ở một số tài liệu khác nhưng về cơ bản nó liên
quan đến việc giải một hệ phương trình tuyến tính. Năng lượng uốn (một thước đo về
mức độ biến đổi cần thiết để căn chỉnh các điểm) cũng sẽ dễ dàng thu được.
TPS hợp thức (Regularized TPS)
Công thức TPS ở trên có đòi hỏi so khớp chính xác cho các cặp điểm trên hai
hình. Đối với dữ liệu nhiễu, tốt nhất là nới lỏng yêu cầu chính xác này. Nếu chúng ta
lấy vi biểu thị các giá trị hàm mục tiêu tại các vị trí tương ứng pi = (xi, yi) (Lưu ý rằng
với fx, vi điều quyết định x' tọa độ x của điểm tương ứng với pi và với fy đó sẽ là tọa
độ y, y'), làm giảm số lượng yêu cầu để cực tiểu.
(2.17)
Trong đó, năng lượng uốn và được gọi là tham số chính quy. Điều này là
giảm cực tiểu H[ƒ] có thể được tìm thấy theo một cách khá đơn giản. [9] Nếu ta sử
dụng tọa độ chuẩn hóa cho (xi, yi (và (x'i, y'i), thì bất biến tỷ lệ sẽ được giữ. Tuy nhiên,
nếu ta sử dụng tọa độ không chuẩn hóa ban đầu, thì tham số chính quy cần phải được
chuẩn hóa.
Lưu ý rằng trong nhiều trường hợp, bất kể chuyển đổi được sử dụng, ước tính
ban đầu của các tương ứng có chứa một số lỗi có thể làm giảm chất lượng của chuyển
đổi. Nếu chúng ta lặp lại các bước tìm kiếm sự tương ứng và ước tính các phép biến
đổi (nghĩa là lặp lại các bước 2-5 với hình dạng mới được chuyển đổi), chúng ta có
thể khắc phục vấn đề này. Thông thường, ba lần lặp là đủ có được kết quả hợp lý.
Bước 6: Tính khoảng cách hình dạng
26
Bây giờ, khoảng cách hình dạng giữa hai hình dạng P và Q. Khoảng cách này
sẽ là tổng của ba số hạng có thể:
Shape context distance: đây là tổng đối xứng của chi phí so khớp shape context so
với các điểm phù hợp nhất:
(2.18)
Trong đó T (·) là ước tính biến đổi TPS ánh xạ các điểm trong Q tới các điểm trong
P.
Chi phí xuất hiện (appearance cost):
Sau khi thiết lập các ảnh tương ứng và làm cong vênh một hình ảnh phù hợp với
ảnh kia, người ta có thể định nghĩa chi phí xuất hiện là tổng của sự khác biệt độ sáng
bình phương trong các cửa sổ Gaussian xung quanh các điểm hình ảnh tương ứng:
(2.19)
Trong đó IP và IQ là hình ảnh mức xám IQ là hình ảnh sau khi cong vênh và G là
hàm cửa sổ Gaussian.
2.1.3 Dùng phương pháp Inner Distance [10]
Năm 2007 trong bài báo công bố trên IEEE các tác giả Haibin Ling David W.
Jacobs thuộc Đại học Maryland (University of Maryland), Hoa Kỳ đã đưa ra phương
pháp so khớp hình dạng Inner Distance.
Tóm tắt: thành phần cấu trúc và articulation có tầm quan trọng cơ bản trong
máy tính và thị giác của con người. Các tác giả [10] đã đề xuất sử dụng Inner-Distance
để xây dựng các mô tả hình dạng mạnh mẽ để articulation và nắm bắt cấu trúc bộ
phận. Khoảng cách bên trong được định nghĩa là chiều dài của con đường ngắn nhất
giữa các điểm mốc trong hình dạng hình, đó là articulation không nhạy cảm và hiệu
quả hơn trong việc nắm bắt các cấu trúc bộ phận hơn khoảng cách Euclide. Điều này
cho thấy rằng Inner-Distance có thể được sử dụng thay thế cho khoảng cách Euclide
để xây dựng các mô tả chính xác hơn cho các hình dạng phức tạp, đặc biệt đối với
những người có các bộ phận articulation. Ngoài ra, thông tin kết cấu dọc theo con
27
đường ngắn nhất có thể được sử dụng để cải thiện hơn nữa việc phân loại hình dạng.
Với ý tưởng này, các tác giả [10] đã đề xuất ba cách tiếp cận để sử dụng khoảng cách
bên trong. Phương pháp đầu tiên kết hợp tỷ lệ Inner-Distance và tỷ lệ đa chiều (MDS)
để xây dựng chữ ký bất biến articulation cho hình dạng articulation. Phương pháp thứ
hai sử dụng Inner-Distance để xây dựng một bộ mô tả hình dạng mới dựa trên shape
contexts. Cái thứ ba mở rộng cái thứ hai bằng cách xem xét thông tin kết cấu dọc theo
con đường ngắn nhất. Các phương pháp đề xuất đã được thử nghiệm trên nhiều cơ sở
dữ liệu hình dạng bao gồm bộ dữ liệu hình dạng articulation, MPEG7 CE-Shape-1,
bóng Kimia, bộ dữ liệu ETH-80, bộ dữ liệu hai lá và bộ dữ liệu hình bóng chuyển
động của con người. Trong tất cả các thí nghiệm, các phương pháp của các tác giả đã
cho hiệu suất hiệu quả hơn so với các thuật toán khác.
Định nghĩa khoảng cách bên trong: inner-distance được định nghĩa là chiều
dài của con đường ngắn nhất trong ranh giới hình dạng, để xây dựng mô tả hình dạng
- chúng không vượt qua ranh giới hình dạng. Như vậy dễ dàng nhận thấy rằng khoảng
cách bên trong là không nhạy cảm để định hình khớp nối. Ví dụ, trong Hình 1, mặc
dù các điểm trên hình (a) và (c) có các phân bố không gian tương tự nhau, chúng khá
khác nhau trong cấu trúc bộ phận của chúng. Trên mặt khác, hình dạng (b) và (c)
dường như đến từ cùng một loại với các khớp nối khác nhau. Khoảng cách bên trong
giữa hai điểm được đánh dấu là khá khác nhau ở (a) và (b), trong khi gần như giống
nhau trong (b) và (c). Theo trực giác, ví dụ này cho thấy khoảng cách bên trong không
nhạy cảm với khớp nối và nhạy cảm với các cấu trúc bộ phận, một đặc tính mong
muốn để so sánh hình dạng phức tạp.
Lưu ý rằng khoảng cách Euclide không có các tính chất này trong ví dụ này.
Đó là bởi vì, được định nghĩa là độ dài của đoạn đường giữa các điểm mốc, khoảng
cách Euclide không xem xét liệu đoạn đường có vượt qua ranh giới hình dạng hay
không. Trong ví dụ này, rõ ràng là khoảng cách bên trong phản ánh cấu trúc bộ phận
và khớp nối mà không phân tách hình dạng rõ ràng thành các bộ phận.
28
Hình 2.12 Ba đối tượng và inner distance. Các đường đứt nét biểu thị các đường dẫn
ngắn nhất trong ranh giới hình dạng kết nối các điểm mốc.
Việc sử dụng khoảng cách bên trong là thay thế cho các biện pháp khoảng cách khác
để xây dựng bộ mô tả hình dạng mới là bất biến/không nhạy cảm với khớp nối.
Không giống như khoảng cách đo đạc, khoảng cách bên trong đo chiều dài của
con đường ngắn nhất trong ranh giới hình dạng thay vì dọc theo đường viền hình dạng
(bề mặt). Các tác giả [10] chỉ ra rằng khoảng cách bên trong là rất nhiều thông tin và
không nhạy cảm với khớp nối.
Hình 2.13 Khoảng cách trắc địa trên các hình dạng 2D. Sử dụng khoảng cách trắc
địa dọc theo các đường viền, hai hình dạng không thể phân biệt được.
Tính toán inner-distance
Đầu tiên, chúng ta xác định hình dạng O là tập con đóng và kết nối của R2.
Cho hình O và hai các điểm x, y ∈ O, khoảng cách trong giữa x, y, ký hiệu là d (x, y;
O), được định nghĩa là độ dài của con đường ngắn nhất nối x và y trong O. Một ví dụ
được hiển thị trong Hình 2.14.
Lưu ý:
29
1) Có thể tồn tại nhiều đường dẫn ngắn nhất giữa các điểm đã cho. Tuy nhiên, đối với
hầu hết các trường hợp, đường dẫn là duy nhất. Trong những trường hợp hiếm hoi có
nhiều đường dẫn ngắn nhất, chúng ta tùy ý chọn một đường dẫn.
2) Chúng ta quan tâm đến các hình dạng được xác định bởi các ranh giới của chúng,
do đó chỉ các điểm biên được sử dụng làm điểm mốc. Ngoài ra, chúng ta sẽ ước tính
một hình dạng với một đa giác được hình thành bởi các điểm mốc của chúng.
Hình 2.14. Định nghĩa khoảng cách bên trong. Các đường nét đứt cho thấy đường đi
ngắn nhất giữa điểm x và y.
Một cách tự nhiên để tính khoảng cách bên trong là sử dụng thuật toán đường đi ngắn
nhất. Công việc này bao gồm hai bước:
1) Xây dựng một biểu đồ với các điểm mẫu. Đầu tiên, mỗi điểm mẫu được coi
là một nút trong đồ thị. Sau đó, đối với mỗi cặp điểm mẫu p1 và p2, nếu đoạn thẳng
nối p 1 và p 2 nằm hoàn toàn trong đối tượng, một cạnh (edge) giữa p 1 và p 2 được
thêm vào biểu đồ với trọng số của nó bằng khoảng cách Euclide || p1 − p2||. Một ví
dụ được hiển thị trong Hình 4. Lưu ý 1) Các điểm ranh giới lân cận luôn được kết
nối; 2) Khoảng cách bên trong phản ánh sự tồn tại của các lỗ mà không sử dụng các
điểm mẫu từ ranh giới lỗ, cho phép các thuật toán quy hoạch động được áp dụng cho
các hình có lỗ.
2) Áp dụng thuật toán đường dẫn ngắn nhất vào biểu đồ. Nhiều thuật toán tiêu
chuẩn [11] có thể được áp dụng ở đây, trong số đó thuật toán Johnson hoặc Floyd-
Warshall có độ phức tạp O (n 3) (n là số điểm mẫu).
Việc tính toán này đã được chỉ ra rằng có thể được tính toán với độ phức tạp
thời gian O(n 3) cho n điểm mẫu. Đầu tiên, phải mất thời gian O(n) để kiểm tra xem
một đoạn đường giữa hai điểm có nằm trong hình đã cho hay không (bằng cách kiểm
30
tra các giao điểm giữa đường p1 p2 và tất cả các đoạn đường biên khác, với một số
thử nghiệm bổ sung). Kết quả là, độ phức tạp của việc xây dựng đồ thị là của O(n3).
Sau khi biểu đồ đã sẵn sàng, thuật toán đường đi ngắn nhất của tất cả các cặp có độ
phức tạp là O (n3). Do đó, chi phí tính toán toàn bộ O(n3).
Hình 2.15. Tính toán khoảng cách bên trong. Còn lại, hình dạng với các điểm mốc
hình mẫu được lấy mẫu. Ở giữa, đồ thị được xây dựng bằng cách sử dụng các điểm
mốc. Phía phải, một chi tiết trên cùng bên phải của biểu đồ. Lưu ý cách khoảng cách
bên trong chụp các lỗ.
Lưu ý rằng khi O lồi, khoảng cách bên trong giảm xuống khoảng cách Euclide. Tuy
nhiên, điều này không phải lúc nào cũng đúng với các hình dạng không lồi (ví dụ:
Hình 1). Điều này cho thấy rằng khoảng cách bên trong bị ảnh hưởng bởi cấu trúc bộ
phận mà độ đồng nhất của các đường viền có liên quan chặt chẽ với nhau.
31
2.2 Sử dụng phương pháp phân cấp [11]
Cây hình dạng – công cụ so khớp
Chúng ta bắt đầu bằng cách mô tả đại diện phân cấp cho các đường cong mở.
Đặt A là một đường cong mở được chỉ định bởi một chuỗi các điểm mẫu
(a1, ..., an). Đặt ai là trung điểm trên A. Ví dụ: chúng ta thường lấy i = ⌊n / 2⌋. Một lựa
chọn khác là chọn điểm mẫu sao cho đường cong thô (a1, ai, an) gần đúng với A nhất
có thể. Gọi L(ai|a1,an) biểu thị vị trí của ai quan hệ với 1 và n. Vị trí của các điểm mẫu
đầu tiên và cuối cùng có thể được sử dụng để xác định khung tọa độ nơi chúng ta đo
vị trí của điểm giữa. Các điểm mẫu đầu tiên và cuối cùng xác định thang đo và hướng
chính tắc, do đó, vị trí tương đối L(ai|a1,an) là bất biến đối với các phép biến đổi tương
tự. (cây đường cong)
Lựa chọn trung điểm, ai, chia đường cong ban đầu thành hai nửa, A1 = (a1, ...,
ai) và A2 = (ai, ..., an). Mô tả phân cấp của A được định nghĩa đệ quy, chúng ta theo
dõi L(ai|, a1, an) và mô tả phân cấp của A1 và A2. Mô tả phân cấp này có thể được biểu
diễn bằng cây nhị phân, như được minh họa trong Hình 2.16. Biểu diễn này được gọi
là cây hình dạng của một đường cong (shape-tree of a curve). Mỗi nút trong cây hình
dạng lưu trữ vị trí tương đối của điểm giữa đối với điểm bắt đầu và điểm kết thúc của
một điểm con. Nút con trái của một nút mô tả đường cong phụ (subcurve) từ điểm
bắt đầu đến điểm giữa trong khi nút con bên phải mô tả subcurve từ điểm giữa đến
điểm cuối. Các lá của cây này đại diện cho các vị trí của các điểm mẫu, ai, so với các
điểm lân cận của chúng, ai − 1 và ai + 1. Lưu ý rằng một cây con bắt nguồn từ một nút
tương ứng với cây hình dạng của một subcurve.
Các nút ở dưới cùng của cây hình đại diện cho các vị trí tương đối của ba điểm
liên tiếp dọc theo đường cong. Các nút này nắm bắt các thuộc tính hình học cục bộ
như góc được hình thành tại một điểm (là thước đo độ cong) và khoảng cách tương
đối giữa các điểm mẫu liền kề. Mặt khác, các nút gần gốc cây thu được nhiều thông
tin toàn cầu được mã hóa bởi các vị trí tương đối của các điểm cách xa nhau. Đây là
một thuộc tính cục bộ của một phiên bản mẫu phụ của đường cong ban đầu. Cây hình
32
chỉ chứa các vị trí của các điểm so với hai điểm khác. Điều này làm cho biểu diễn bất
biến đối với các phép biến đổi tương tự.
Cho cây biểu diễn cho A, cùng với vị trí điểm bắt đầu và điểm cuối của nó là
1 và n, đường cong có thể được xây dựng lại theo cách đệ quy. Đầu tiên, điểm bắt
đầu và điểm kết thúc của đường cong được đặt. Bởi vì vị trí của điểm giữa của A so
với điểm bắt đầu và điểm kết thúc đã biết, nên nó có thể được đặt. Quá trình này tiếp
tục đi xuống cây hình cho đến khi chúng ta đặt mọi điểm mẫu của A. Bằng cách đặt
các điểm ban đầu là 1 và n tại các vị trí tùy ý, có thể thu được phiên bản A được dịch,
xoay và chia tỷ lệ.
Hình 2.16. Một cây hình dạng. Các vòng tròn được lấp đầy đại diện cho các điểm
cuối của các chuỗi con và các vòng tròn không được điền biểu thị các điểm giữa. Mỗi
nút lưu trữ vị trí của điểm giữa so với điểm cuối. Điểm giữa trở thành điểm cuối khi
một subcurve được chia.
Một đường cong kín có thể được biểu diễn theo cách tương tự. Đặt B là một
đường cong kín, được chỉ định bởi một chuỗi các điểm mẫu (b1, ..., bn), trong đó bn =
b1. Bây giờ hãy để bi là trung điểm trên B. Các đường cong mở B1 = (b1, ..., bi) và B2
= (bi, ..., bn) mỗi cái có thể được biểu diễn bằng một cây hình dạng. Với một đại diện
cây hình dạng của mỗi bên của một đường cong kín và một vị trí cho điểm bắt đầu /
33
kết thúc và điểm giữa đầu tiên, đường cong có thể được xây dựng lại ở bất kỳ vị trí,
hướng và kích thước nào.
Cũng cần lưu ý rằng đối với một đường cong liên tục, có thể định nghĩa một
cây hình dạng vô hạn. Cây vô hạn này cho một mẫu dày đặc các điểm trong đường
cong, hoàn toàn nắm bắt hình học của nó cho đến các phép biến đổi tương tự.
2.3 Sử dụng học máy (Machine Learning) [12], [13].
Học máy là một mô hình đề cập đến việc có thể học hỏi từ kinh nghiệm trong
quá khứ để cải thiện hiệu suất trong tương lai. Trọng tâm duy nhất của lĩnh vực này
là phương pháp học tự động. Việc học đề cập đến việc sửa đổi hoặc cải tiến thuật toán
dựa trên kinh nghiệm trước đây tự động mà không cần bất kỳ sự trợ giúp bên ngoài
nào từ con người. Thay cho thiết kế một thuật toán để giải quyết vấn đề trực tiếp,
bằng cách sử dụng Machine Learning, một nhà nghiên cứu khoa học máy tính sẽ tìm
kiếm một cách tiếp cận mà qua đó, thuật toán sẽ đưa ra giải pháp riêng dựa trên một
ví dụ hoặc tập dữ liệu huấn luyện được cung cấp cho nó ban đầu.
2.3.1 Những lĩnh vực nghiên cứu quan trọng trong Học máy:
Sự tương tác của Khoa học máy tính và Thống kê: Machine Learning (ML) là
sự xuất hiện có tính đột phá sau khi Khoa học máy tính và Thống kê Máy tính được
phối hợp với nhau. Khoa học máy tính tập trung vào việc xây dựng các chương trình
máy tính giải quyết các vấn đề cụ thể và cố gắng xác định xem các vấn đề có thể giải
quyết được không. Cách tiếp cận chính mà Thống kê sử dụng cơ bản là suy luận dữ
liệu, mô hình hóa các giả thuyết và đo lường độ tin cậy của các kết luận. Mặc dù ý
tưởng xây dựng của ML hơi khác một chút nhưng phụ thuộc một phần vào cả hai lĩnh
vực trên. Trong khi Khoa học máy tính tập trung vào các máy tính lập trình thủ công,
ML giải quyết vấn đề đưa máy tính đến tự lập trình lại bất cứ khi nào tiếp xúc với dữ
liệu mới dựa trên một số chiến lược học tập ban đầu được cung cấp. Mặt khác, Thống
kê tập trung vào suy luận và xác suất dữ liệu, ML bao gồm các mối quan tâm bổ sung
về tính khả thi và hiệu quả của kiến trúc và thuật toán để xử lý các dữ liệu đó, kết hợp
một số nhiệm vụ học tập thành một biện pháp nhỏ gọn và hiệu suất.
34
Một lĩnh vực nghiên cứu thứ ba liên quan chặt chẽ đến Machine Learning là
nghiên cứu về não người và động vật trong Khoa học thần kinh, Tâm lý học và các
lĩnh vực liên quan. Các nhà nghiên cứu đề xuất rằng làm thế nào một cỗ máy có thể
học hỏi từ kinh nghiệm có lẽ sẽ không khác biệt đáng kể so với cách một con vật hoặc
tâm trí con người học theo thời gian và kinh nghiệm. Tuy nhiên, nghiên cứu tập trung
vào giải quyết các vấn đề học máy bằng phương pháp học của bộ não con người cho
đến nay không mang lại nhiều kết quả hứa hẹn so với các nghiên cứu liên quan đến
phương pháp thống kê - tính toán. Điều này có thể là do thực tế là tâm lý con người
hoặc động vật vẫn chưa hoàn toàn dễ hiểu cho đến nay. Bất kể những khó khăn này,
sự hợp tác giữa học tập của con người và học máy đang gia tăng đối với học máy
đang được sử dụng để giải thích một số kỹ thuật học tập nhìn thấy ở người hoặc động
vật. Ví dụ, phương pháp học máy về sự khác biệt theo thời gian đã được đề xuất để
giải thích các tín hiệu thần kinh trong học tập động vật.
2.3.2 Liên quan học máy với khai thác dữ liệu và trí tuệ nhân tạo
Trong thực tế, ba môn học này có sự đan xen và chồng chéo nhau mạnh. Ba
lĩnh vực này có mối quan hệ cộng sinh và sự kết hợp của các phương pháp này có thể
được sử dụng như một chiến thuật để tạo ra các thông số hiệu quả và nhạy cảm hơn.
Khai thác dữ liệu về cơ bản là diễn giải bất kỳ loại dữ liệu nào, nhưng nó tạo
nền tảng cho cả trí tuệ nhân tạo và học máy. Trong thực tế, nó không chỉ lấy mẫu
thông tin từ nhiều nguồn khác nhau mà nó còn phân tích và nhận ra mô hình và mối
tương quan tồn tại trong những thông tin khó có thể diễn giải bằng tay. Do đó, khai
thác dữ liệu không phải là một phương pháp đơn thuần để chứng minh một giả thuyết
mà là phương pháp để đưa ra các giả thuyết có liên quan. Dữ liệu được khai thác và
các mẫu và giả thuyết tương ứng có thể được sử dụng làm cơ sở cho cả máy học và
trí tuệ nhân tạo.
Trí tuệ nhân tạo có thể được định nghĩa rộng rãi là những cỗ máy có khả năng
tự giải quyết một vấn đề nhất định mà không cần sự can thiệp của con người. Các giải
pháp không được lập trình trực tiếp vào hệ thống mà là dữ liệu cần thiết và AI diễn
giải rằng dữ liệu đó tự tạo ra một giải pháp.
35
Học máy sẽ thúc đẩy cách tiếp cận đến cấp độ nâng cao bằng cách cung cấp
dữ liệu cần thiết cho máy để đào tạo và sửa đổi phù hợp khi tiếp xúc với dữ liệu mới.
Điều này được biết đến như là “đào tạo”. Nó tập trung vào việc thu thập thông tin từ
các dữ liệu lớn đáng kể, sau đó phát hiện và xác định các mẫu cơ bản bằng các biện
pháp thống kê khác nhau để cải thiện khả năng diễn giải dữ liệu mới và tạo ra kết quả
hiệu quả hơn. Một số tham số nên được điều chỉnh bởi mức độ phù hợp thế nào để có
năng suất tốt hơn.
Học máy là chỗ đứng của trí tuệ nhân tạo. Không thể thiết kế bất kỳ máy nào
có khả năng liên quan đến trí thông minh, như ngôn ngữ hoặc quan sát (vision), để
đạt được điều đó ngay lập tức. Nhiệm vụ đó gần như không thể giải quyết. Hơn nữa,
một hệ thống không thể được coi là hoàn toàn thông minh nếu nó thiếu khả năng học
hỏi và cải thiện qua các lần tiếp xúc trước đó.
Các dữ liệu sử dụng trong học máy có thể là gán nhãn hoặc không. Các thuật
toán ML cũng có thể liên kết. Vấn đề bảo mật dữ liệu và bảo toàn tính riêng tư dữ
liệu cũng phải được quan tâm trong học máy.
2.3.3 Phân loại các thuật toán học máy
Phân loại theo kiểu học có các loại:
Học có giám sát (Supervised learning),
Học không giám sát (Unsupervised learning),
Học bán giám sát (Semi-supervised learning),
Học tăng cường (Reinforcement learning),
Học biến đổi (Transduction learning),
Học để học (Learning to learn).
Phân loại theo sự đồng dạng có các loại:
Thuật toán cây quyết định: Ví dụ: Classification and Regression Tree (CART),
Iterative Dichotomiser 3 (ID3), C4.5 and C5.0, Chi-squared Automatic Interaction
Detection (CHAID) , Decision Stump, M5, Conditional Decision Trees, v.v
36
Các thuật toán Bayes: Naive Bayes, Gaussian Naive Bayes, Multinomial
Naive Bayes, Ước tính trung bình một lần phụ thuộc (AODE), Mạng tin tưởng Bayes
(BBN), Mạng Bayes (BN), v.v
Máy Vector hỗ trợ (SVM):
Thuật toán dựa trên sơ đồ: Ví dụ: Láng giềng gần nhất (KNN), Định lượng
vectơ học tập (LVQ), Bản đồ tự tổ chức (SOM), Trọng số cục bộ Học tập (LWL),
v.v
Các thuật toán phân cụm: K-Means, K-Medians, Affinity Propagation,
Spectral Clustering, Ward hierarchical clustering, Agglomerative clustering.
DBSCAN, Gaussian Mixtures, Birch, Mean Shift, Expectation Maximisation (EM)
v.v
Thuật toán hồi quy: Ví dụ: Hồi quy tuyến tính, Hồi quy logistic, Hồi quy từng
bước, Hồi quy bình phương tối thiểu bình thường (OLSR), Spline hồi quy thích ứng
đa biến (MARS), Làm mịn ước lượng cục bộ (LOESS), v.v.
Các thuật toán chính quy hóa: Ví dụ: Hồi quy độ dốc, toán tử co rút tuyệt đối
và toán tử chọn lọc (LASSO), lưới đàn hồi, hồi quy góc nhỏ nhất (LARS), v.v.
Các thuật toán học theo luật kết hợp: Ví dụ: Thuật toán Apriori, thuật toán
Eclat, v.v
Các thuật toán mạng nơ ron nhân tạo (ANN): Ví dụ: Perceptron, Back-
Propagation, Hop-field Network, Radial Basis Function Network (RBFN), v.v
Các thuật toán học sâu (Deep Learning): Ví dụ: Deep Boltzmann Machine
(DBM), Deep Belief Networks (DBN), Mạng nơ ron chập cuộn (CNN), Stacked
Auto-Encoders, v.v
Các thuật toán giảm kích thước: Ví dụ: Principal Component Analysis (PCA),
Principal Component Regression (PCR), Partial Least Squares Regression (PLSR),
Sammon Mapping, Multidimensional Scaling (MDS), Projection Pursuit, Linear
Discriminant Analysis (LDA), Mixture Discriminant Analysis (MDA), Quadratic
Discriminant Analysis (QDA), Flexible Discriminant Analysis (FDA) v.v
37
Các thuật toán tập hợp: Ví dụ: Boosting, Bootstrapped Aggregation (Bagging),
AdaBoost, Stacked Generalisation (blending), Gradient Boosting Machines (GBM),
Gradient Boosted Regression Trees (GBRT), Random Forest, Extremely
Randomised Trees v.v
2.3.4 So sánh ba thuật toán học máy quan trọng
Theo các tác giả Kajaree Das, Rabi Narayan Behera trong [13]: Mặc dù các
nhà nghiên cứu khác nhau đã đóng góp cho ML nhiều thuật toán và kỹ thuật và đã
được giới thiệu như trong 2.3.3 nhưng nếu được nghiên cứu chặt chẽ thì hầu hết
phương pháp ML thực tế bao gồm ba thuật toán chính hoặc biến thể của chúng. Ba
loại này là Naive Bayes, Máy Vector hỗ trợ và Cây quyết định.
Kết quả so sánh ba thuật toán này được thể hiện qua bảng Tuy nhiên hiệu
quả của một thuật toán phần nào phụ thuộc vào tập dữ liệu và miền được áp dụng.
Trong một số điều kiện nhất định, một thuật toán ML có thể vượt trội hơn các thuật
toán khác.
Bảng 2.3 So sánh Gaussian NB, SVM and Decision Tree
2.4 So sánh các phương pháp [14]
Với một số phương pháp thông dụng đã được trình bày ở trên. Tác giả tóm tắt một số
ưu nhược điểm chính của mỗi phương pháp qua bảng 2.4
38
Bảng 2.4 Đặc điểm các phương pháp so khớp đối tượng qua ảnh
Tên phương
TT Ưu điểm Nhược điểm Nguồn
pháp sử dụng
Pattern
Khoảng cách Hausdorff sử Recognition and
Không nhạy cảm Image Analysis:
dụng thông tin không gian Third
tương đối với
của hình ảnh, nhưng thiếu International
Khoảng cách nhiễu loạn nhỏ của Conference on
1. biểu diễn cấu trúc cục bộ Advances in
Hausdorff hình ảnh Pattern
như định hướng khi so
đơn giản và tốc độ Recognition,
sánh các hình dạng của ICAPR 2005,
tính toán Bath, UK, August
đường cong 22-25, 2005, Part
II
Không bị ảnh hưởng
của thay đổi tỷ lệ,
2. Shape Context Tính toán chậm
quay. Độ chính xác
cao
+ Nhược điểm là có thể Trang 4 bài
Biểu diễn hình dạng mất khả năng thực hiện Shape
Classification
3. Inner Distance tốt do dùng khoảng phân tích một phần. Using the
cách trong + inner-distance rất nhạy Inner-Distance
cảm với cấu trúc liên kết 2007
Pedro F.
Felzenszwalb,
Joshua D.
Schwartz,
Hierarchical
Matching of
Có khả năng phân biệt Deformable
khác nhau chi tiết Shapes, 2007
Hierarchical IEEE
4. trong khi hai đối Tính toán phức tạp
Matching Conference on
tượng toàn cục có thể Computer
giống nhau Vision and
Pattern
Recognition,
DOI:
10.1109/CVP
R.2007.38301
8, 2007
Cần bộ dữ liệu học. Độ
Machine Dựa trên thống kê nên chính xác phụ thuộc
5.
Learning tính tổng quát cao phương pháp học.
Phức tạp
inner-distance rất nhạy cảm với cấu trúc liên kết đôi khi gây ra vấn đề. Ví dụ,
tắc có thể làm cho cấu trúc liên kết của hình dạng thay đổi. Ngoài ra, inner-distance
39
có thể không phù hợp với các hình dạng liên quan đến cấu trúc bộ phận nhỏ và biến
dạng lớn.
2.5 So sánh màu sắc [2]
Các không gian màu thường được sử dụng là RGB, XYZ, YIQ, L*a*b*, U*V*W*,
YUV và HSV. Trong đó không gian màu HSV cho histogram màu tốt nhất. Các
không gian màu thông dụng hay sử dụng là RGB và L*a*b* . Trong bài toán cụ thể
so sánh logo các ảnh hệ màu RGB được sử dụng. Để xem xét đặc điểm màu sắc có
thể sử dụng nhiều kỹ thuật khác nhau như:
Color moments
HSV histogram
Color Correlogram
Trong các kỹ thuật này Color Correlogram cho nhiều ưu điểm nhất. Tuy nhiên với
bài toán cụ thể so sánh logo thì kỹ thuât Color moments cũng đủ để đáp ứng và thực
hiện đơn giản nên tính toán nhanh.
Giới thiệu kỹ thuật color moments: Đây là một kỹ thuật đơn giản có độ phức tạp tính
toán thấp. Để thực hiện kỹ thuật này cần tính các moment như sau:
MOMENT 1 – Mean: moment này được tính theo công thức
(2.20)
i là kênh màu; pij là điểm ảnh thứ j của kênh màu i.
Mean được hiểu như trung bình giá trị màu trong ảnh
MOMENT 2 Độ lệch chuẩn (Standard Deviation):
(2.21)
The standard deviation is the square root of the variance of the distribution.
MOMENT 3 – Skewness :
(2.22)
40
Skewness có thể được hiểu là số đo mức độ không đối xứng của phân bố. Một hàm
đo sự tương tự giữa phân bố của hai ảnh được định nghĩa là tổng khác nhau về trọng
số giữa các mô men của 2 phân bố là:
(2.23)
Trong đó:
(H , I): phân bố của hai ảnh cần so sánh,
i: chỉ số kênh (ví dụ 1 = H, 2 = S, 3 = V)
r: số kênh (ví dụ = 3)
1 2
Ei , Ei : các moment thứ nhất (mean) của hai ảnh
1 2
i ,i : các moment thứ hai (std) của hai ảnh
1 2
si , si : các moment thứ ba (skewness) của hai ảnh
wi: trọng số của mỗi moment (xem ví dụ dưới)
Khi so sánh hai đối tượng nếu dmom nhỏ có nghĩa là giống nhau hơn so với giá trị dmom
lớn
Ví dụ:
Có các cặp ảnh
Hình 2.17 Các ảnh màu so sánh với ảnh sucsac
Hãy so sánh xem ảnh “guot5.png” giống ảnh nào hơn cả ?
Chúng ta sẽ dùng phương pháp tính và so sánh Color moments
Các bước:
Bước 1: Định cỡ lại ảnh (không nhất thiết yêu cầu)
41
Định cỡ lại các ảnh so sánh cho có cùng kích thước. Trong ví dụ này thống nhất các
ảnh có kích thước như nhau 320x240. Điều này có thể không cần thiết vì color
moments là trên cơ sở phân bố xác suất. Tuy nhiên với các ảnh có kích thước lớn hơn
sẽ cho kết quả chính xác hơn.
Bước 2 : Tính toán các moment
Dùng chương trình Matlab
clear all
I=imread('guot3.png');
I2 = im2double(I);
% Extract RGB Channel
R=I(:,:,1);
G=I(:,:,2);
B=I(:,:,3);
R2=I2(:,:,1);
G2=I2(:,:,2);
B2=I2(:,:,3);
% Extract Statistical features
% 1] MEAN
meanR=mean2(R); ...ng giống
nhau thì vẫn có thể kết luận là “Làm nhái”.
Chúng ta gọi các giá trị phân biệt hình dáng, màu sắc, kết cấu bề mặt của hai
hình lần lượt là S1, C1, T1 và S2, C2, T2. Các giá trị khác nhau về mỗi thuộc tính giữa
hai hình là DS, DC và DT . Mức độ đánh giá khác nhau được tính theo phần trăm.
Ngưỡng quyết định “giống nhau” hay “khác nhau” là S, C, T.
Nếu DS >= S thì kết luận “giống nhau về hình dạng”.
Nếu DC >= C thì kết luận “giống nhau về màu sắc”.
Nếu DT >= T thì kết luận “giống nhau về kết cấu bề mặt”.
Như đã nêu trong chương 1 Luật và nghị định về bảo hộ nhãn hiệu đã có nhưng
cụ thể chưa có bản tiêu chuẩn cụ thể chi tiết ví dụ: Khác nhau về hình dáng bao nhiêu,
khác nhau về màu sắc, về kết cấu bề mặt bao nhiêu ? thì kết luận là giống nhau. Trong
Luận văn này với tính chất học thuật, với tính chất kỹ thuật em đưa ra 1 số ngưỡng
giả định cho 3 thuộc tính này. Còn khi áp dụng vào thực tế có thể sẽ khác. Điều này
không ảnh hưởng gì với tính đúng đắn vì chúng ta có thể thay đổi ngưỡng để so với
thuộc tính thực tế tính toán ra. Các kết luận về sự khác nhau dùng chương trình máy
tính bổ sung thêm thông tin khách quan cho con người quyết định và chưa thể thay
thế hẳn. Tuy nhiên điều đó cũng góp phần cho các quyết định của con người có cơ sở
và nhanh chóng hơn.
51
Khi xem xét hai đối tượng bất kỳ khác nhau chúng ta cần ba thuộc tính; còn
khi với xem xét logo do tính chất quan trọng của hình dáng nên đó là tiêu chí đầu
tiên: Chỉ cần DS >= S thì kết luận “giống nhau về hình dạng”. Các thuộc tính thứ hai
(màu sắc) và thứ ba (kết cấu bề mặt) có tính chất củng cố thêm kết luận. Với ngưỡng
hình dáng là 40% và màu là 50% bảng 3.1 với một số logo như sau
Bảng 3.1 Kết quả thực nghiệm so sánh hình dáng và màu của 6 cặp hình.
D
TT Hình 1 Hình 2 S D Kết luận
% C
1. 66.23 22.91 Làm nhái
2. 49.93 66.58 Làm nhái
3. 80.84 56.54 Làm nhái
4. 40.25 81.28 Làm nhái
5. 44.43 14.55 Làm nhái
6. 80.14 43.12 Làm nhái
So sánh kết cấu bề mặt được áp dụng với phương pháp như trong mục 2.6
(trang 53, 54).
Chúng ta so sánh từng cặp ảnh: ảnh trên gọi là “ảnh 1” ảnh dưới là “ảnh 2”.
Khi kết cấu bề mặt càng giống nhau thì giá trị tuyệt đối của Rangefilt, stdfilt, entropyfilt
càng nhỏ. Giả sử ta la quy định ngưỡng của mỗi loại lần lượt là 15% chẳng hạn thì các giá
trị so sánh nhỏ hơn 15% có nghĩa là thuộc tính đó giống nhau.
52
Bảng 3.2 So sánh kết cấu bề mặt
Kết
Rangefilt stdfilt entropyfilt
luận
Sai lệch Sai lệch
1 Hình Sai lệch
Giá trị Giá trị so với ảnh Giá trị so với
so với ảnh 1
tuyệt đối tuyệt đối 1 tuyệt đối ảnh 1
(%)
(%) (%)
1. 73.1746 0
3.5425e+003
Giống
2. 3.4550e+003 2.46 80.7147 10.30 0 0
nhau
3. 2.7139e+003 80.3951 0
Khác
4. 4.9154e+003 81.11 76.4273 4.91 0.0560
nhau
5. 3.9005e+003 116.6137 0.7134
Giống
6. 4.7922e+003 22.87 97.6078 16.30 0.7871 10.33
nhau
7. 2.6498e+003 62.5348 0
Khác
8. 4.3235e+003 63.63 76.6894 22.6 0 0
nhau
9. 3.1715e+003 114.0877 0.1249
Khác
10. 3.7482e+003 18.19 114.9382 0.74 0.1276 2.16
nhau
11. 2.4809e+003 116.5018 0.5565
Giống
12. 2.5198e+003 1.57 111.7072 4.12 0.4854 12.77
nhau
53
3.3 Nhận xét và đánh giá
Chúng ta có thể tính toán định lượng các tham số hình dáng, màu sắc, kết cấu
bề mặt của các ảnh logo hoặc của bất cứ đối tượng nào. Các chỉ số khác nhau của các
tham số đó tham số đó có thể dùng làm căn cứ khi so sánh hai đối tượng qua ảnh của
chúng.
Khi so sánh logo tham số qua trọng nhất được xem xét là hình dáng. Các yếu
tố màu sắc, kết cấu bề mặt chủ yếu để tham khảo thêm. Chẳng hạn khi lấy ngưỡng
kết cấu bề mặt 15% thì trong bảng 3.2 các hình 3 được đánh giá khác 4 hình 9 được
đánh giá khác 10. Tuy nhiên theo bảng 3.1 ta vẫn kết luận là chúng giống nhau. Một
nhận xét nữa là các tham số kết cấu bề mặt của ảnh các logo qua tính toán thường
không khác nhau nhiều dù chúng là ảnh màu hoặc đen trắng. Điều này là hoàn toàn
phù hợp trong thực tế.
KẾT LUẬN CHƯƠNG 3
Trong quá trình kiểm tra so sánh các tính chất cơ bản giữa hai ảnh logo chúng
ta có thể so sánh ba thuộc tính hình dáng, màu sắc và kết cấu bề mặt. Trong đó sự
giống nhau giữa hai ảnh cần so sánh về thuộc tính hình dạng là quan trọng nhất.
Phương pháp shape context là một phương pháp hay được áp dụng để so sánh sự khác
nhau về hình dạng của hai đối tượng qua ảnh của chúng do độ chính xác của nó.
54
KẾT LUẬN
Trong thời đại mọi mặt hoạt động của cuộc sống đều phát triển như vũ bão con
người luôn luôn không ngừng nghỉ tạo ra các sản phẩm phục vụ cho con người trong
cuộc sống. Với mỗi một sản phẩm của mình nhà sản xuất luôn mong muốn có một
dấu ấn trong khách hàng, đối tác sử dụng. Những nhãn hiệu, những logo được thiết
kế nhằm mục đích đó. Trong thực tế do vô tình hoặc do cố tình nhiều nhà sản xuất đã
xây dựng các logo có nhiều nét tương đồng với các logo của các sản phẩm cùng chủng
loại (và cả với khác chủng loại); đây là điều vi phạm luật sở hữu trí tuệ, bảo hộ nhãn
hiệu, thương hiệu. Cho đến nay, trong quá trình đánh giá sự trùng khớp với hai logo
chủ yếu vẫn do cảm nhận trực tiếp của con người. Luận văn đã thực hiện nghiên cứu
một số phương pháp so sánh các đặc điểm cơ bản của hai ảnh logo để nhằm đưa ra
một sự định lượng trong đánh giá so sánh các thuộc tính đó. Cũng giống như các
chương trình tin học đang hỗ trợ trong các lĩnh vực y tế, tài chính, điều này tuy
chưa thể thay thế hoàn toàn con người; nhưng các số liệu tính toán đã giúp cho sự
quyết định của con người nhanh hơn và có độ tin cậy cao hơn.
HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI
Hoàn thiện chương trình và sưu tập dữ liệu về các logo của Việt Nam để làm
cơ sở khi so sánh với các logo khác trong nước và thế giới.
Tiếp tục nghiên cứu các đặc điểm cơ bản khi so sánh để tăng được tốc độ xử lý
vì khi dữ liệu lớn thì việc so sánh các đặc điểm của dữ liệu ảnh sẽ có tốc độ chậm.
Khi thực hiện luận văn này em đã phải cố gắng tiếp thu nhiều kiến thức mới
và ôn lại các kiến thức cũ. Tuy nhiên do kiến thức của em về xử lý ảnh và đặc biệt
trong nhận dạng so khớp các đối tượng còn chưa được rèn luyện nhiều nên luận văn
có thể còn có những khiếm khuyết. Em xin chân thành cảm ơn các nhận xét góp ý
của các thày, cô để luận văn của em được hoàn thiện thêm.
Thái Nguyên, Ngày 16 tháng 9 năm 2020
LỤC THỊ THANH HUỆ
55
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1]. Luật kinh doanh bảo hiểm, sở hữu trí tuệ Việt Nam, Thư viện pháp luật, 6-2019.
[2]. Phạm Đức Long, Ứng dụng xử lý ảnh trong công nghiệp, Khoa Công nghệ Tự
động hóa Trường Đại học CNTT&TT ĐH Thái Nguyên, 2019.
Tiếng Anh
[3]. ChiaNingLee, Logo History and Design, December, 2018.
[4]. Erica Cowin, The Evolution of U.S. Coporate Logos: A Semiotic Analysys,
Spring Term, 2011.
[5]. Nazanin Sadat Hashemi, Roya Babaei Aghdam, Atieh Sadat Bayat Ghiasi,
Parastoo Fatemi, Template Matching Advances and Applications in Image
Analysis, American Scientific Research Journal for Engineering, Technology,
and Sciences (ASRJETS), 2016 .
[6]. Daniel P. Huttenlocher, Gregory A. Klanderman, and William J. Rucklidge,
Comparing Images Using the Hausdorff Distance, IEEE Transactions on Patern
Analysis and Machine Intelligence, Vol. 15, No. 9, September 1993.
[7]. Belongie, Malik, Matching with shape contexts, IEEE, DOI:
10.1109/IVL.2000.853834, 2000.
[8]. Greg Mori, Serge Belongie, Jitendra Malik, Efficient Shape Matching Using
Shape Contexts, IEEE Transaction on Pattern Analysis and Machine
Intelligence, VOL. 27, NO. 11, pg. 1832-1837, 2005.
[9]. Hichem Sahbi, Lamberto Ballan, Giuseppe Serra, and Alberto Del Bimbo,
Context-Dependent Logo Matching and Recognition, IEEE Transactions on
Image Processing, 2013.
[10]. Haibin Ling, David W. Jacobs, Shape Classification Using the Inner-
Distance, Journals & Magazines, IEEE Transactions on Pattern Analysis and
Machine Intelligence, Volume 29, Issue 2, 2007.
56
[11]. Pedro F. Felzenszwalb, Joshua D.Schwartz, Hierarchical Matching of
Deformable Shapes, DOI: 10.1109/CVPR.2007.383018, ISSN: 1063-6919,
2007.
[12]. Andreas Opelt , Axel Pinz , and Andrew Zisserman, A Boundary-Fragment-
Model for Object Detection, European Conference on Computer Vision ECCV
2006, pp 575-588, Computer Vision – ECCV 2006.
[13]. Kajaree Das , Rabi Narayan Behera, A Survey on Machine Learning: Concept,
Algorithms and Applications, International Journal of Innovative Research in
Computer and Communication Engineering, Vol. 5, Issue 2, February 2017.
[14]. N. Jayanthi and S. Indum, Comparison of Image Matching Techniques,
International Journal of Latest Trends in Engineering and Technology
Vol.(7)Issue(3), pp. 396‐401, 2018.
[15]. Andrzej Materka and Michal Strzelecki, Texture Analysis Methods – A
Review, TechnicalUniversity of Lodz, Institute of Electronics, COST B11
report, Brussels 1998.
[16]. H. Tamura, S. Mori, T. Yamawaki, Textural Features Corresponding to
Visual Perception, IEEE Trans. on Systems, Man and Cyber., June 1978, vol. 8,
no. 6, p. 460–473.
[17]. Fogel, I.; Sagi, D., Gabor filters as texture discriminator. Biological
Cybernetics. 61 (2). CiteSeerX 10.1.1.367.2700. doi:10.1007/BF00204594.
ISSN 0340-1200. OCLC 895625214, June 1989.
PHỤ LỤC
Một số mã nguồn chương trình
Shape context
% Shape Context Demo #1
load save_fish_outlier_3_2.mat
X=x1;
Y=y2a;
display_flag=1;
mean_dist_global=[]; % use [] to estimate scale from the data
nbins_theta=12;
nbins_r=5;
nsamp1=size(X,1);
nsamp2=size(Y,1);
ndum1=0;
ndum2=0;
if nsamp2>nsamp1
% (as is the case in the outlier test)
ndum1=ndum1+(nsamp2-nsamp1);
end
eps_dum=0.15;
r_inner=1/8;
r_outer=2;
n_iter=5;
r=1; % annealing rate
beta_init=1; % initial regularization parameter (normalized)
if display_flag
[x,y]=meshgrid(linspace(0,1,18),linspace(0,1,36));
x=x(:);y=y(:);M=length(x);
end
if display_flag
figure(1)
plot(x1(:,1),x1(:,2),'b+',y2a(:,1),y2a(:,2),'ro')
title(['original pointsets (nsamp1=' int2str(nsamp1) ', nsamp2=' ...
int2str(nsamp2) ')'])
if 0
h1=text(x1(:,1),x1(:,2),int2str((1:nsamp1)'));
h2=text(y2a(:,1),y2a(:,2),int2str((1:nsamp2)'));
set(h2,'fontangle','italic');
end
drawnow
end
tps_iter_match_1
%file “sc_compute.m” Tính toán shape context
function
[BH,mean_dist]=sc_compute(Bsamp,Tsamp,mean_dist,nbins_theta,nbins_r,r_inn
er,r_outer,out_vec);
%
[BH,mean_dist]=sc_compute(Bsamp,Tsamp,mean_dist,nbins_theta,nbins_r,r_inn
er,r_outer,out_vec);
%
% compute (r,theta) histograms for points along boundary
%
% Bsamp is 2 x nsamp (x and y coords.)
% Tsamp is 1 x nsamp (tangent theta)
% out_vec is 1 x nsamp (0 for inlier, 1 for outlier)
%
% mean_dist is the mean distance, used for length normalization
% if it is not supplied, then it is computed from the data
%
% outliers are not counted in the histograms, but they do get
% assigned a histogram
%
nsamp=size(Bsamp,2);
in_vec=out_vec==0;
% compute r,theta arrays
r_array=real(sqrt(dist2(Bsamp',Bsamp'))); % real is needed to
% prevent bug in Unix version
theta_array_abs=atan2(Bsamp(2,:)'*ones(1,nsamp)-
ones(nsamp,1)*Bsamp(2,:),Bsamp(1,:)'*ones(1,nsamp)-
ones(nsamp,1)*Bsamp(1,:))';
theta_array=theta_array_abs-Tsamp'*ones(1,nsamp);
% create joint (r,theta) histogram by binning r_array and
% theta_array
% normalize distance by mean, ignoring outliers
if isempty(mean_dist)
tmp=r_array(in_vec,:);
tmp=tmp(:,in_vec);
mean_dist=mean(tmp(:));
end
r_array_n=r_array/mean_dist;
% use a log. scale for binning the distances
r_bin_edges=logspace(log10(r_inner),log10(r_outer),5);
r_array_q=zeros(nsamp,nsamp);
for m=1:nbins_r
r_array_q=r_array_q+(r_array_n<r_bin_edges(m));
end
fz=r_array_q>0; % flag all points inside outer boundary
% put all angles in [0,2pi) range
theta_array_2 = rem(rem(theta_array,2*pi)+2*pi,2*pi);
% quantize to a fixed set of angles (bin edges lie on 0,(2*pi)/k,...2*pi
theta_array_q = 1+floor(theta_array_2/(2*pi/nbins_theta));
nbins=nbins_theta*nbins_r;
BH=zeros(nsamp,nbins);
for n=1:nsamp
fzn=fz(n,:)&in_vec;
Sn=sparse(theta_array_q(n,fzn),r_array_q(n,fzn),1,nbins_theta,nbins_r);
BH(n,:)=Sn(:)';
end
%file “dist2.m” – Tính toán giữa 2 cặp điểm
function n2 = dist2(x, c)
%DIST2 Calculates squared distance between two sets of points.
%
% Description
% D = DIST2(X, C) takes two matrices of vectors and calculates the
% squared Euclidean distance between them. Both matrices must be of
% the same column dimension. If X has M rows and N columns, and C has
% L rows and N columns, then the result has M rows and L columns. The
% I, Jth entry is the squared distance from the Ith row of X to the
% Jth row of C.
[ndata, dimx] = size(x);
[ncentres, dimc] = size(c);
if dimx ~= dimc
error('Data dimension does not match dimension of centres')
end
n2 = (ones(ncentres, 1) * sum((x.^2)', 1))' + ...
ones(ndata, 1) * sum((c.^2)',1) - ...
2.*(x*(c'));
So khớp hình dạng
%coded by anishfrancis,ECE dept. AmalJyothi College of
%engineering(www.amaljyothi.com),INDIA
%the program is a test program for patternmatching studies,suidted for
%applications involving small image recongnition.mathchind done pixel
based
%on binary images.
function varargout = push(varargin)
% push M-source for push.fig
% push, by itself, creates a new push or raises the existing
% singleton*.
%
% H = push returns the handle to a new push or the handle to
% the existing singleton*.
%
% push('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in push.M with the given input arguments.
%
% push('Property','Value',...) creates a new push or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before push_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to push_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Copyright 2002-2003 The MathWorks, Inc.
% Edit the above text to modify the response to help push
% Last Modified by GUIDE v2.5 21-Nov-2008 11:43:53
% Begin initialization code - DO NOT TARGET
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @push_OpeningFcn, ...
'gui_OutputFcn', @push_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT TARGET
% --- Executes just before push is made visible.
function push_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to push (see VARARGIN)
% Choose default command line output for push
handles.pic='test1.jpg';
%handles.pic='test1.bmp';
handles.output = hObject;
handles.pic='test1.jpg';
%handles.pic='test1.bmp';
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes push wait for user response (see UIRESUME)
% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = push_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata,handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%set(handles.text1, 'String', 'push button pushed')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%
% Function Developed by Fahd A. Abbasi.
% Department of Electrical and Electronics Engineering, University of
% Engineering and Technology, Taxila, PAKISTAN.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%
%
% The function takes two images as argument and using edge detection
% checks whether they are the same or not...a cool and simple code which
% can be used in security systems.
% The level at which the two pictures should be matched can be controlled
% by changing the code at line 100.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%
%
% USAGE (SAMPLE CODE)
%
%
% pic1 = imread('cameraman.tif');
% pic2 = imread('cameraman.tif');
% ait_picmatch(pic1,pic2);
%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%
%function pattmatch(k,p)
%
%display('anish'); % BO DI KHONG SAO !!!!!!!!!
% cac dong sau nay bo di khong tinh duoc phan tram matching
k=handles.XX;
p=handles.YY;
[x,y,z] = size(k);
if(z==1)
;
else
k = rgb2gray(k);
end
[x,y,z] = size(p);
if(z==1)
;
else
p = rgb2gray(p);
end
%/////////////////////////////////////////
%applying edge detection on first picture
%so that we obtain white and black points and edges of the objects present
%in the picture.
edge_det_k = edge(k,'prewitt');
%%applying edge detection on second picture
%so that we obtain white and black points and edges of the objects present
%in the picture.
edge_det_p = edge(p,'prewitt');
%definition of different variables to be used in the code below
%output variable if pictures have been matched.
OUTPUT_MESSAGE = ' almost same x-ray images ';
%output variable if objects in the whole picture have not been matched.
OUTPUT_MESSAGE2 = ' x-ray images not matching ';
%initialization of different variables used
matched_data = 0;
white_points = 0;
black_points = 0;
x=0;
y=0;
l=0;
m=0;
%for loop used for detecting black and white points in the picture.
for a = 1:1:300
for b = 1:1:300
if(edge_det_k(a,b)==1)
white_points = white_points+1;
else
black_points = black_points+1;
end
end
end
display('testing');
%for loop comparing the white (edge points) in the two pictures
for i = 1:1:300
for j = 1:1:300
if(edge_det_k(i,j)==1)&(edge_det_p(i,j)==1)
matched_data = matched_data+1;
else
;
end
end
end
%calculating percentage matching.
total_data = white_points;
total_matched_percentage = (matched_data/total_data)*100;
%handles.pp=total_matched_percentage;
%guidata(hObject,handles);
set(handles.result,'String',total_matched_percentage);
%outputting the result of the system.
if(total_matched_percentage >= 85) %can add flexability at this point by
reducing the amount of matching.
total_matched_percentage
OUTPUT_MESSAGE
display(OUTPUT_MESSAGE);
set(handles.result1,'String',OUTPUT_MESSAGE);
else
total_matched_percentage
OUTPUT_MESSAGE2
display(OUTPUT_MESSAGE2);
set(handles.result1,'String',OUTPUT_MESSAGE2);
end
% --- Executes during object creation, after setting all properties.
function text1_CreateFcn(hObject, eventdata, handles)
% hObject handle to text1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% --------------------------------------------------------------------
function source_Callback(hObject, eventdata, handles)
% hObject handle to source (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
file = uigetfile('*.jpg');
%file = uigetfile('*.bmp');
if ~isequal(file, 0)
k=imread(file);
handles.YY = k;
z=k;
guidata(hObject,handles);
%guidata(hObject,handles);
subplot(2,2,1),imshow(k);title('source');
end
% --------------------------------------------------------------------
function new_Callback(hObject, eventdata, handles)
% hObject handle to new (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% --------------------------------------------------------------------
function target_Callback(hObject, eventdata, handles)
% hObject handle to target (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
file = uigetfile('*.jpg');
%file = uigetfile('*.bmp');
if ~isequal(file, 0)
p=imread(file);
subplot(2,2,2),imshow(p);title('target');
handles.XX = p;
guidata(hObject,handles);
end
% --------------------------------------------------------------------
function Untitled_2_Callback(hObject, eventdata, handles)
% hObject handle to Untitled_2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% --------------------------------------------------------------------
function Untitled_1_Callback(hObject, eventdata, handles)
% hObject handle to Untitled_1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% --------------------------------------------------------------------
function about_Callback(hObject, eventdata, handles)
% hObject handle to about (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
msgbox('coded by ANISHFRANCIS,lecturer,ECE DEPT');
% --------------------------------------------------------------------
function Untitled_5_Callback(hObject, eventdata, handles)
% hObject handle to Untitled_5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% --------------------------------------------------------------------
function Untitled_6_Callback(hObject, eventdata, handles)
% hObject handle to Untitled_6 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% --------------------------------------------------------------------
function howto_Callback(hObject, eventdata, handles)
% hObject handle to howto (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
msgbox('use medium sized images');
% --- Executes during object creation, after setting all properties.
function figure1_CreateFcn(hObject, eventdata, handles)
% hObject handle to figure1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% --------------------------------------------------------------------
function open_Callback(hObject, eventdata, handles)
% hObject handle to open (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
file = uigetfile('*.jpg');
%file = uigetfile('*.bmp');
if ~isequal(file, 0)
imshow(file);
%open(source);
end
function result_Callback(hObject, eventdata, handles)
% hObject handle to result (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of result as text
% str2double(get(hObject,'String')) returns contents of result as a double
% --- Executes during object creation, after setting all properties.
function result_CreateFcn(hObject, eventdata, handles)
% hObject handle to result (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
/////////////////
% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
function result1_Callback(hObject, eventdata, handles)
% hObject handle to result1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of result1 as text
% str2double(get(hObject,'String')) returns contents of result1 as a
double
///////////////////////
% --- Executes during object creation, after setting all properties.
function result1_CreateFcn(hObject, eventdata, handles)
% hObject handle to result1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --------------------------------------------------------------------
function help_Callback(hObject, eventdata, handles)
% hObject handle to help (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
Tính moment colors để so sánh màu:
clear all
I=imread('Old_Nike_logo2.jpg');
%I=imread('acerlogo2.jpg');
%I=imread('pic2.jpg');
%I=imread('a2.jpg');
%I=imread('logo1.jpg');
I2 = im2double(I);
% im2double(I)converts the intensity image I to double precision,
rescaling the data if necessary. I can be a grayscale intensity image,
a truecolor image, or a binary image.
% If the input image is of class double, then the output image is
identical.
% Extract RGB Channel
R=I(:,:,1);
G=I(:,:,2);
B=I(:,:,3);
R2=I2(:,:,1);
G2=I2(:,:,2);
B2=I2(:,:,3);
% Extract Statistical features
% 1] MEAN
meanR=mean2(R);
meanG=mean2(G);
meanB=mean2(B);
% 2] Standard Deviation
stdR=std2(R);
stdG=std2(G);
stdB=std2(B);
A=[meanR meanG meanB stdR stdG stdB]
%////////////////////////////////////
% Get entropy
redEntropy = entropy(R);
greenEntropy = entropy(G);
blueEntropy = entropy(B);
B=[redEntropy greenEntropy blueEntropy]
%///////// Calculate skewns /////////
%skewnsR = @(R) (sum((R-mean2(R)).^3)./length(R)) ./ (var(R,1).^1.5)
% Get skewns of Image
skewns = skewness(I2(:))
% Get skewns of 3 chanel by coloumn
skewnsR = skewness(R2(:));
skewnsG = skewness(G2(:));
skewnsB = skewness(B2(:));
%kurtosis(I)
ColorMoments=[meanR meanG meanB stdR stdG stdB skewnsR skewnsG skewnsB]
So sánh kết cấu bề mặt
Tính các thông số vùng Rangefilt, stdfilt, entropyfilt
image = imread('guot4.png');
gray = rgb2gray(pout);
gray =double(gray);
% Muc xam trung binh
meanIntensityValue = mean2(gray)
% range parametr
rang=mean(sum(rangefilt(gray)))
% standart distorian parametr
I=mean(std(gray(:)))
% entropy parametr
gtentr = entropy(gray)
Thỏa ước La-hay
Những nước có thể tham gia Thỏa ước La-hay phải là Thành viên của Công ước Paris
về bảo hộ Sở hữu trí tuệ - SHCN hoặc Công ước thành lập Tổ chức SHTT thế giới
(WIPO); hoặc các tổ chức liên chính phủ mà ít nhất có một quốc gia thành viên của
tổ chức liên chính phủ đó là Thành viên của Công ước thành lập WIPO. Các nước
tham gia Văn kiện 1999 và các Văn kiện khác của Thỏa ước La-hay thành lập một
liên minh chung gọi là Liên minh La-hay. Tính đến nay, Liên minh La-hay có 66
nước thành viên. So với các Văn kiện trước đó, Văn kiện năm 1999 nới rộng các quy
định của Thỏa ước bằng việc cho phép các nước thành viên đưa ra các tuyên bố để
lựa chọn cơ chế phù hợp với quy định của luật pháp trong nước nhằm thu hút các
quốc gia có thủ tục thẩm định nội dung, đặc biệt là sự tham gia của các Cơ quan
SHTT lớn trên thế giới như USPTO (Hoa Kỳ), JPO (Nhật Bản), KIPO (Hàn Quốc),...
Hiện tại, cả JPO, KIPO và USPTO đều đã tham gia Thỏa ước theo Văn kiện 1999.
Cơ quan SHTT của Liên minh châu Âu (EUIPO) cũng đã phê chuẩn Văn kiện 1999
vào ngày 01/01/2008. Trên cơ sở đánh giá sự tiến bộ và hoàn thiện hơn của Văn kiện
1999 so với các Văn kiện khác, Việt Nam đã quyết định phê chuẩn Thỏa ước La-hay
theo Văn kiện 1999.
Nguồn: Trung tâm Nghiên cứu và Phát triển truyền thông KH&CN
Các file đính kèm theo tài liệu này:
- luan_van_kiem_tra_do_khac_biet_cua_logo_dung_ky_thuat_so_kho.pdf