ĐẠI HỌC THÁI NGUYÊN

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

VŨ THANH BÌNH

NGHIÊN CỨU PHÁT TRIỂN HỆ THỐNG TRA CỨU

CÁC LOÀI THỰC VẬT QUÝ HIẾM TẠI KHU BẢO TỒN

THIÊN NHIÊN NA HANG TỈNH TUYÊN QUANG

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2019

ĐẠI HỌC THÁI NGUYÊN

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

VŨ THANH BÌNH

NGHIÊN CỨU PHÁT TRIỂN HỆ THỐNG TRA CỨU

CÁC LOÀI THỰC VẬT QUÝ HIẾM TẠI KHU BẢO TỒN

THIÊN NHIÊN NA HANG TỈNH TUYÊN QUANG

Chuyên ngành: Khoa học máy tính

Mã số: 8.48.0101

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Ngƣời hƣớng dẫn khoa học: TS. Nguyễn Văn Tảo

THÁI NGUYÊN - 2019

i

LỜI CAM ĐOAN

Sau quá trình học tập tại Trƣờng Đại học Công nghệ thông tin &

Truyền thông, với những kiến thức lý thuyết và thực hành đã tích lũy đƣợc,

với việc vận dụng các kiến thức vào thực tế, em đã tự nghiên cứu các tài

liệu, các công trình nghiên cứu, tự tìm kiếm dữ liệu hình ảnh trên thực tế,

đồng thời phân tích, tổng hợp, đúc kết và phát triển để hoàn thành luận văn

thạc sĩ của mình. Em xin cam đoan luận văn này là công trình do bản thân

em tự tìm hiểu, nghiên cứu và hoàn thành dƣới sự hƣớng dẫn của thầy giáo,

TS. Nguyễn Văn Tảo.

Thái Nguyên, tháng năm 2019

Học viên

Vũ Thanh Bình

ii

LỜI CẢM ƠN

Trong thời gian 2 năm của chƣơng trình đào tạo thạc sĩ, trong đó gần

một nửa thời gian dành cho các môn học, thời gian còn lại dành cho việc lựa

chọn luận văn, giáo viên hƣớng dẫn, tập trung vào nghiên cứu, viết, chỉnh sửa

và hoàn thiện luận văn. Với quỹ thời gian nhƣ vậy và với vị trí công việc đang

phải đảm nhận, không riêng bản thân em mà hầu hết các sinh viên cao học

muốn hoàn thành tốt luận văn của mình mình trƣớc hết đều phải có sự sắp xếp

thời gian hợp lý, có sự tập trung học tập và nghiên cứu với tinh thần nghiêm

túc nỗ lực hết mình; tiếp đến là có sự ủng hộ về tinh thần, sự giúp đỡ về

chuyên môn - một trong những điều kiện không thể thiếu quyết định đến việc

thành công của luận văn.

Để hoàn thành đƣợc luận văn này trƣớc tiên em xin gửi lời cảm ơn sâu

sắc đến thầy giáo hƣớng dẫn TS. Nguyễn Văn Tảo, là ngƣời đã định hƣớng

nội dung, hƣớng phát triển của luận văn và có nhiều ý kiến đóng góp quan

trọng ảnh về những vấn đề chuyên môn của luận văn, giúp em tháo gỡ kịp

thời những vƣớng mắc trong quá trình làm luận văn.

Em cũng xin chân thành cảm ơn các thầy cô giáo Trƣờng Đại học

Công nghệ thông tin và Truyền thông và bạn bè cùng lớp đã có những ý kiến

bổ ích để luận văn đƣợc hoàn thiện hơn. Xin cảm ơn gia đình, ngƣời thân,

đồng nghiệp luôn quan tâm ủng hộ về tinh thần trong suốt thời gian học tập và

hoàn thành luận văn.

Em xin hứa sẽ cố gắng tự nghiên cứu, nâng cao năng lực chuyên môn

của mình để sau khi hoàn thành luận văn này sẽ có hƣớng tập trung nghiên

iii

cứu sâu hơn, tiếp tục hoàn thiện luận văn này để có những ứng dụng thiết thực

trong thực tế.

Thái Nguyên, tháng năm 2019

Học viên

Vũ Thanh Bình

iv

MỤC LỤC LỜI CAM ĐOAN .............................................................................................. i

LỜI CẢM ƠN ................................................................................................... ii

MỤC LỤC ........................................................................................................ iv

DANH SÁCH HÌNH VẼ ................................................................................. vi

DANH MỤC CÁC BẢNG............................................................................. viii

MỞ ĐẦU ........................................................................................................... 1

1. Đặt vấn đề ...................................................................................................... 1

2. Bài toán tra cứu/ nhận dạng thực vật ............................................................ 3

3. Cấu trúc luận văn .......................................................................................... 4

CHƢƠNG 1: MỘT SỐ NGHIÊN CỨU LIÊN QUAN .................................... 6

1.1 Tổng quan về tra cứu ảnh ............................................................................ 6

1.2 Tổng quan về nhận dạng, tra cứu thực vật ................................................ 10

1.3 Một số nghiên cứu liên quan ..................................................................... 11

CHƢƠNG 2: PHƢƠNG PHÁP TRA CỨU LÁ CÂY SỬ DỤNG KDES ..... 13

2.1 Giới thiệu ................................................................................................... 13

2.2 Phƣơng pháp KDES .................................................................................. 13

2.2.1 Gradient, màu sắc, và hình dạng kernels tƣơng ứng........................... 13

2.2.2 Học tính năng nhỏ gọn ........................................................................ 17

2.3 Phƣơng pháp tra cứu lá cây sử dụng KDES cải tiến ................................. 21

2.4 Biểu diễn ảnh lá cây .................................................................................. 23

2.4.1 Tính toán đặc trƣng mức Pixel ............................................................ 23

2.4.2 Tính toán đặc trƣng mức patch ........................................................... 23

2.4.2.1 Sinh tập patch với kích thƣớc patch thích nghi ............................ 23

2.4.2.2 Tính toán véctơ đặc trƣng mức patch ........................................... 26

2.4.3 Tính toán đặc trƣng mức ảnh .............................................................. 31

2.5 Phân lớp ảnh lá cây ................................................................................... 37

2.5.1 Máy véctơ hỗ trợ - SVM ..................................................................... 37

v

2.5.2 Máy véctơ hỗ trợ nhiều lớp – MSVM ................................................ 41

2.5.2.1 Từ Binary classification tới multi-class classification .................. 41

2.5.2.2 Xử lý dữ liệu ảnh ......................................................................... 41

2.5.2.3 Softmax Regression. ..................................................................... 42

CHƢƠNG 3: THỰC NGHIỆM ...................................................................... 44

3.1 Thu thập dữ liệu ........................................................................................ 44

3.1.1 Cơ sở dữ liệu hình ảnh ........................................................................ 44

3.1.2 Phƣơng pháp lấy mẫu hình ảnh lá cây: ............................................... 45

3.2 Tiền xử lý ảnh trong bộ cơ sở dữ liệu ....................................................... 48

3.3 Phƣơng pháp đánh giá ............................................................................... 53

3.4 Thử nghiệm và kết quả. ............................................................................. 54

KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN. ..................................................... 60

TÀI LIỆU THAM KHẢO ............................................................................... 60

vi

DANH SÁCH HÌNH VẼ

Hình 2.1 : Xấp xỉ hữu hạn chiều ................................................................... 19

Hình 2.2: Sơ đồ hệ thống nhận dạng cây thuốc sử dụng KDES ................... 22

Hình 2.3: Patch thích nghi với = = 8, do đó = = 9

....................................................................................................................... 24

Hình 2.4: Một số ví dụ minh họa patch cố định và patch thích nghi ............ 25

Hình 2.5: Ý tưởng cơ bản của việc biểu diễn dựa trên kernel method ......... 29

Hình 2.6: Cấu trúc pyramid .......................................................................... 32

Hình 2.7: Nhược điểm của cách gán cứng .................................................. 34

Hình 2.8: Mô hình Softmax Regression dưới dạng Neural network ............. 42

Hình 3.1: Hình ảnh 38 mẫu lá cây đã thu thập được trong đề tài. ............... 46

Hình 3.2. Phân đoạn ảnh tự động ................................................................. 48

Hình 3.3. giải thuật sử dụng Salient region segmentation ........................... 49

Hình 3.4. Sự chuyển đổi hai không gian màu RGB và Lab .......................... 50

Hình 3.5. Co ảnh nhị phân ............................................................................ 50

Hình 3.6. Giãn ảnh nhị phân ......................................................................... 51

Hình 3.7. Chuẩn hóa hướng của lá cây ........................................................ 53

Hình 3.8. Sơ đồ các khối chức năng của giai đoạn huấn luyện ................... 55

Hình 3.9. Sơ đồ các khối chức năng của giai đoạn kiểm thử ....................... 55

Hình 3.10: Một phần mã code chương trình................................................. 56

Hình 3.11: quá trình Huấn luyện của chương trình ..................................... 57

Hình 3.12: Kết thúc quá trình huấn luyện .................................................... 57

Hình 3.13: Tính toán số vòng lặp so sánh .................................................... 58

vii

Hình 3.14: Hình ảnh ma trận nhầm lẫn của phương pháp KDES cải tiến .. 58

Hình 3.7: Hình ảnh nhầm lân ma trận của phương pháp KDES gốc ........... 59

Hình 3.8: Hình ảnh nhầm lẫn ma trân của phương pháp KDES cải tiến .... 60

viii

DANH MỤC CÁC BẢNG

Bảng 3.1: Danh sách mẫu thực vật trong cơ sở dữ liệu ............................. 47

Bảng 3.2: So sánh kết quả giữa KDES gốc và phương pháp lựa chọn (KDES

cải tiến). ....................................................................................................... 59

1

MỞ ĐẦU

1. Đặt vấn đề

Khu Bảo tồn thiên nhiên Na Hang là một trong những nơi có nguồn tài

nguyên cây thuốc đa dạng và phong phú [1]. Hiện biết có 275 loài cây thuốc,

thuộc 4 ngành, 96 họ, 204 chi của thực vật có mạch, đã đƣợc ghi lại trong các

cuộc điều tra thực địa. Trong số đó, có 204 loài, thuộc 3 ngành, 85 họ, 168 chi

của thực vật có mạch đƣợc sử dụng bởi Cao Lan dân tộc; đã 05 loài đƣợc liệt

kê trong Sách Đỏ Việt Nam và Danh lục Đỏ cây thuốc Việt Nam.

Trong số 85 họ, có 11 họ có số loài nhiều nhất là họ Rubiaceae,

Euphorbiaceae, Zingberaceae, Araceae, Vitaceae, Acanthaceae, Verbenaceae,

Myrsinaceae, Moraceae, Menispermaceae và Convallariaceae.

Bốn loại phổ biến của cây thuốc là cây thân thảo (41,63%), cây bụi

(22.01%), cây thân gỗ (16,75%) và leo núi (17.70%). Các bộ phận đƣợc sử

dụng nhiều nhất thân, lá, rễ và toàn cây. Các nguồn tài nguyên cây thuốc ở

khu bảo tồn thiên nhiên Na Hang có giá trị kinh tế quan trọng và một tiềm

năng để phát triển dƣợc phẩm mới và các sản phẩm tự nhiên khác.

Rừng đặc dụng Na Hang (trƣớc đây là Khu bảo tồn thiên nhiên Tát kẻ -

Bản Bung huyện Na Hang) đƣợc thành lập theo Quyết định 274/UB-QĐ ngày

9 tháng 5 năm 1994 của Uỷ ban nhân dân tỉnh Tuyên Quang. Nằm trên địa

bàn các xã Khâu Tinh, Côn Lôn, Sơn Phú, Thanh Tƣơng của huyện Na

Hang, tỉnh Tuyên Quang. Rừng đặc dụng Na Hang có diện tích tự nhiên

khoảng 22.401,5 ha, trong đó diện tích khu vực có địa hình dƣới 300 m chiếm

khoảng 30%, 300-800 m chiếm 60%, trên 900m chiếm 10%. Mùa đông nhiệt độ trung bình 15 - 20oC, mùa hè nhiệt độ lên đến 30oC hoặc có thể hơn. Hệ

2

thống sông ngòi chỉ ở mức trung bình, có hai con sông lớn chảy qua là sông

Gâm (phía Tây Tát Kẻ) và sông Năng (phía đông Na Hang). Hiện nay, nguồn

nƣớc từ rừng đặc dụng Na Hang đƣợc phân phối, điều hòa bởi hệ thống lòng

hồ và đập thủy điện Na Hang.

Hệ thực vật tại Khu bảo tồn thiên nhiên (BTTN) Na Hang có 1.162 loài

thực vật, thuộc 604 chi, 159 họ của 4 ngành thực vật bậc cao có mạch. Trong

đó ngành Hạt kín (Angiospermae) có 1.083 loài, 570 chi, 135 họ; ngành Hạt

trần (Gymnospermae) có 11 loài, 8 chi, 5 họ; ngành Dƣơng xỉ

(Polypodiophyta) có 63 loài, 34 chi, 17 họ; nhành Thông đất

(Lycopodiophyta) có 5 loài, 2 chi, 2 họ. Trong số 1162 loài thực vật đƣợc ghi

nhận tại Khu BTTN Na Hang, có 558 loài thực vật đƣợc ghi nhận có giá trị

làm thuốc.

Việc nghiên cứu hiện trạng và bảo tồn nguồn tài nguyên cây cối có vị trí

rất quan trọng trong việc phát triển nguồn tài nguyên sinh vật ở rừng đặc dụng

Na Hang. Để hỗ trợ cho công tác này, việc phát triển các công cụ, dịch vụ

công nghệ thông tin hỗ trợ là cần thiết nhằm giúp cho việc xây dựng chiến

lƣợc quản lý, bảo tồn và phát triển bền vững tính đa dạng sinh học của Na

Hang, tỉnh Tuyên Quang trong tƣơng lai đƣợc thuận lợi hơn.

Bƣớc đầu tiên của việc bảo vệ thực vật là tự động nhận ra hoặc phân loại

chúng. Có nghĩa là hiểu chúng là gì và chúng đến từ đâu. Nhƣng rất khó để

ngƣời ta nhận ra một loại cây một cách chính xác và ngay lập tức bởi vì số

lƣợng loài rất lớn. Một hệ thống tự động nhận dạng, tra cứu sẽ rất hữu ích

trong quản lý, bảo tồn hệ thống các loài cây quý hiếm, nhận dạng ra các loại

cây với thông tin của nó v.v.

Tuy nhiên, hiện nay chƣa có một cơ sở dữ liệu với đầy đủ thông tin

cần thiết về các loài thực vật quý hiếm tại Khu bảo tồn Thiên nhiên Na Hang

3

cùng với công cụ tra cứu, tiếp cận thông tin một cách thuận tiện. Do đó, đề

tài luận văn thạc sỹ này tập trung vào việc xây dựng cơ sở dữ liệu các loài

thực vật quý hiếm tại Khu bảo tồn thiên nhiên Na Hang, tỉnh Tuyên Quang

và nghiên cứu, áp dụng một phƣơng pháp tra cứu tự động dựa trên thông tin

hình ảnh, với đề tài: “Nghiên cứu phát triển hệ thống tra cứu các loài thực

vật quý hiếm tại Khu bảo tồn thiên nhiên Na Hang, tỉnh Tuyên Quang”.

Hiện nay, nhiều nhà khoa học đã và đang nghiên cứu, đề xuất nhiều

phƣơng pháp giải quyết bài toán nhận dạng lá cây thông qua thông tin hình

ảnh, [15] [17] [18]. Trong đó, nhiều phƣơng pháp khai thác thông tin hình

ảnh lá cây [2]. Lá cây đƣợc sử dụng nhiều bởi vì đây là bộ phận dễ thu nhận,

hiện diện ở hầu hết các mùa. Trên cơ sở đó, đề tài luận văn thạc sỹ này, em

sẽ kế thừa một số kết quả nghiên cứu về nhận dạng ảnh lá cây để áp dụng

vào bài toán tra cứu các loài thực vật quý hiếm tại Khu bảo tồn thiên nhiên

Na Hang.

2. Bài toán tra cứu/ nhận dạng thực vật

Tra cứu hoặc nhận dạng thực vật là một quá trình nhằm xác định xem

một mẫu thực vật nào đó giống nhất hoặc thuộc loài nào trong danh mục các

loài cây đã biết. Đây là một nhiệm vụ khó khăn và tốn thời gian ngay cả đối

với các chuyên gia thực vật học. Tra cứu thực vật là đƣa ra một danh sách các

loài thực vật theo mức độ phù hợp với câu truy vấn. Trong bài toán tra cứu

thông tin/ hình ảnh tổng quát thì câu truy vấn có thể là văn bản, hình ảnh, ... Ở

đây, em đề cập đến câu truy vấn là ảnh cây hoặc một vài bộ phận của cây.

Gần đây với nghiên cứu tiên tiến trong cộng đồng thị giác máy tính, một số

công trình đã tập trung nghiên cứu bài toán nhận dạng thực vật dựa trên hình

ảnh [3]. Mục đích chính của các công trình này là nghiên cứu phát triển

phƣơng pháp để xây dựng hệ thống chƣơng trình máy tính hỗ trợ việc nhận

4

dạng thực vật bằng các kỹ thuật nhận dạng và xử lý ảnh.. Trong các bộ phận

của cây thì lá cây đƣợc sử dụng rộng rãi nhất. Gần đây một số tác giả đã cố

gắng kết hợp các hình ảnh bộ phận khác của cây.

Một hệ thống tự động nhận dạng phân loại hoặc tra cứu thực vật nói

chung và cây thuốc nói riêng có thể sử dụng các đặc trƣng khác nhau của hệ

thực vật, bắt đầu từ mức độ rất đơn giản nhƣ: Hình dạng và màu sắc của lá,

loại hoa và quả, kiểu phân nhánh, loại rễ, lễ thời vụ, vụ triển vọng, ảnh cho

đến đặc trƣng rất phức tạp nhƣ cấu trúc tế bào và mô, cấu trúc di truyền. Hiện

tại, điện thoại di động có khả năng thu đƣợc hình ảnh chất lƣợng cao với

camera của chúng, điều này làm cho khả năng ứng dụng của một hệ thống

nhƣ vậy trở nên rộng lớn. Lá cây có những đặc trƣng quan trọng, ảnh hữu

ích để phân loại các loại thực vật khác nhau.

Trong thị giác máy tính, đã có nhiều loại đặc trƣng đƣợc đề xuất để

phân loại đối tƣợng. Năm 2010, Liefeng Bo [5] đề xuất một bộ mô tả hiệu quả

cho bài toán nhận dạng đối tƣợng có tên là KDES (Kernel descriptor). Trong

khuôn khổ đề tài luận văn này, này em tìm hiểu và áp dụng KDES cho bài

toán tra cứu ảnh lá cây quý hiếm tại Khu bảo tồn thiên nhiên Na Hang, tỉnh

Tuyên Quang.

3. Cấu trúc luận văn

Ngoài phần mở đầu, kết luận, mục lục, danh mục tài liệu, tài liệu tham

khảo, luận văn đƣợc chia thành 3 chƣơng nhƣ sau:

- CHƢƠNG 1: MỘT SỐ NGHIÊN CỨU LIÊN QUAN

Chƣơng này giới thiệu bài toán và thông tin tổng quan về tra cứu/ nhận

dạng thực vật. Trong chƣơng này cũng trình bày sơ lƣợc một số nghiên cứu

liên quan đến bài toán nhận dạng, tra cứu ảnh lá cây; giới thiệu sử dụng

5

phƣơng pháp KDES (kernel descriptor) cho bài toán tra cứu thông tin về cây

thông qua hình ảnh lá cây.

- CHƢƠNG 2: PHƢƠNG PHÁP TRA CỨU LÁ CÂY SỬ DỤNG

KDES

Trong chƣơng này trình bày phƣơng pháp tra cứu thông tin cây thông

qua hình ảnh lá cây sử dụng phƣơng pháp KDES.

CHƢƠNG 3: THỰC NGHIỆM

Nội dung chƣơng này bao gồm phƣơng pháp thu thập dữ liệu, phƣơng

pháp đánh giá, việc thử nghiệm và kết quả của thử nghiệm trên cơ sở dữ liệu

đã thu thập.

6

CHƢƠNG 1

MỘT SỐ NGHIÊN CỨU LIÊN QUAN

1.1 Tổng quan về tra cứu ảnh

Những năm gần đây ảnh số ngày càng thu hút đƣợc sự quan tâm của

nhiều ngƣời, một phần là do các thiết bị thu nhận ảnh số ngày càng phổ biến

và có giá cả phù hợp, cho phép nhiều ngƣời có thể sở hữu và sử dụng. Mặt

khác các công nghệ chế tạo thiết bị lƣu trữ luôn đƣợc cải tiến để cho ra đời

các thiết bị lƣu trữ có dung lƣợng lớn và giá thành hạ làm cho việc lƣu trữ ảnh

dƣới dạng các file trở nên phổ biến. Thêm nữa là sự phát triển của mạng

internet làm cho số lƣợng ảnh số đƣợc đƣa lên lƣu trữ và trao đổi qua internet

là rất lớn. Năm 2006, trên 300 triệu hình ảnh đã đƣợc tải lên Flickr, một trong

những cộng đồng chia sẻ hình ảnh lớn nhất trên internet. Con số này cho thấy

thực tế là số lƣợng ảnh số đƣợc lƣu trữ trong các cơ sở dữ liệu đang gia tăng

nhanh chóng. Tuy nhiên khi số lƣợng ảnh đƣợc lƣu trữ trở lên rất lớn thì vấn

đề là phải có những phƣơng pháp tổ chức cơ sở dữ liệu ảnh tốt cùng với

những kỹ thuật tìm kiếm tra cứu ảnh có hiệu quả có độ chính xác cao và có

hiệu năng tốt. Việc tìm kiếm đƣợc một bức ảnh mong muốn trong hàng triệu

bức ảnh thuộc đủ loại chủ đề khác nhau là rất khó. Khi số lƣợng ảnh trong

một bộ sƣu tập còn ít, việc nhận diện bức ảnh hay việc so sánh sự giống và

khác nhau giữa nhiều bức ảnh có thể đƣợc thực hiện bằng mắt thƣờng, tuy

nhiên khi số lƣợng ảnh rất lớn thì việc so sánh bằng mắt thƣờng là rất khó

khăn, đòi hỏi phải có những phƣơng pháp hiệu quả và chính xác hơn.

Trong thực tế, bài toán tra cứu ảnh số có rất nhiều ứng dụng quan trọng.

Ví dụ nhƣ trong lĩnh vực ngân hàng, việc so sánh chữ ký của khách hàng với

mẫu chữ ký đã đƣợc lƣu trữ sẵn có thể thực hiện rất nhanh và chính xác nếu

có đƣợc một phần mềm so sánh mẫu chữ ký tốt. Thực tế hiện nay tại các ngân

7

hàng ở Việt Nam, ngƣời ta vẫn phải sử dụng phƣơng pháp so sánh bằng mắt

thƣờng và việc so sánh chữ ký bằng phần mềm vẫn chƣa thực hiện đƣợc. Một

ví dụ khác là bài toán quản lý biểu trƣng (logo) trong lĩnh vực sở hữu trí tuệ.

Khi một đơn vị muốn đăng ký logo riêng cho đơn vị của mình thì cơ quan

quản lý phải tiến hành đánh giá xem mẫu logo đó đã đƣợc sử dụng hay chƣa

hoặc có tƣơng tự với mẫu logo nào đó đang đƣợc sử dụng hay không. Trong

trƣờng hợp này, nếu sử dụng mắt thƣờng để duyệt thì sẽ tốn rất nhiều thời

gian, nếu có các phần mềm cho phép tìm kiếm trong cơ sở dữ liệu ảnh có sẵn

những biểu trƣng tƣơng tự với biểu trƣng mẫu thì việc đánh giá sự tƣơng tự sẽ

dễ dàng hơn nhiều. Trong lĩnh vực khoa học hình sự, nhu cầu so sánh mẫu

vân tay, hay tìm kiếm hình ảnh tội phạm đặt ra những bài toán tra cứu ảnh.

Giả sử chúng ta tổ chức quản lý nhân khẩu với thông tin ảnh vân tay của từng

ngƣời. Trong một vụ án, nhân viên điều tra thu thập đƣợc mẫu vân tay trên

hiện trƣờng, khi đó ngƣời ta cần xem mẫu vân tay đó khớp với vân tay của ai

trong hàng chục triệu hình ảnh vân tay trong cơ sở dữ liệu. Nếu có phần mềm

thực hiện chính xác, nhanh chóng sẽ giúp ích rất nhiều cho công tác điều tra.

Một ví dụ nữa là trong lĩnh vực bảo tồn, bảo tàng. Vấn đề lƣu trữ và tra

cứu ảnh số có vai trò càng ngày càng quan trọng. Ảnh của các tác phẩm hội

họa, điêu khắc hoặc các cổ vật đƣợc lƣu trữ dƣới dạng các file ảnh sẽ đảm bảo

đƣợc chất lƣợng tốt hơn, thời gian lƣu trữ lâu dài hơn và việc trao đổi hay giới

thiệu với công chúng cũng dễ dàng hơn. Bài toán tra cứu của vật xuất phát từ

một thực tế của ngành bảo tồn, bảo tàng là khi sƣu tầm đƣợc một cổ vật mới,

ngƣời ta cần xác định hàng loạt các thuộc tính nhƣ niên đại, nguồn gốc và có

thể là chủ sở hữu của vật đó. Nếu có đƣợc sự trợ giúp của phần mềm tra cứu

ảnh phù hợp thì ngƣời ta ta có thể dễ dàng xác định xem mẫu cổ vật đó đã

đƣợc lƣu trữ trong cơ sở dữ liệu nào hay chƣa, có những loại cổ vật nào tƣơng

tự với nó trong kho tàng cổ vật của thế giới, và phần mềm có thể đƣa ra ảnh

8

của các loại cổ vật có màu sắc, hình dáng, hoa văn tƣơng tự với cổ vật vừa

tìm thấy. Những thông tin này sẽ giúp ích rất nhiều cho các chuyên gia trong

quá trình phân loại, kiểm chứng một cổ vật.

Một số hệ thống tra cứu ảnh nổi tiếng nhƣ QBIC (IBM),

Virage (Virage Inc.), Photobook (MIT), VisualSEEK (Columbia

University)...

Trƣớc năm 1990, ngƣời ta thƣờng sử dụng phƣơng pháp tra cứu ảnh

theo văn bản (Text Based Image Retrieval). Theo cách này ngƣời ta sẽ gán

cho mỗi bức ảnh một lời chú thích phù hợp với nội dung hoặc một đặc điểm

nào đó của ảnh, sau đó việc tra cứu ảnh đƣợc thực hiện dựa trên những lời

chú thích này. Phƣơng pháp này khá đơn giản, tuy nhiên lại không thể áp

dụng để tra cứu các cơ sở dữ liệu có số lƣợng ảnh lớn và kết quả tra cứu thì

mang tính chủ quan và cảm ngữ cảnh. Bởi về các kỹ thuật tra cứu dựa trên

văn bản chỉ có thể đƣợc áp dụng khi hình ảnh đã đƣợc mô tả. Việc tự động

hiểu nội dung một bức tranh theo cách của con ngƣời là một công việc rất

khó. Vấn đề này đƣợc gọi là lỗ hổng ngữ nghĩa (semantic gap).

Một trong những phƣơng pháp đƣợc nhiều ngƣời quan tâm nghiên cứu

hiện nay là phƣơng pháp ”Tra cứu ảnh dựa theo nội dung” (Content Base

Image Retrieval). Ý tƣởng phƣơng pháp này là chích chọn các đặc điểm dựa

vào nội dung trực quan của ảnh nhƣ màu sắc, kết cấu, hình dạng và bố cục

không gian của ảnh để làm cơ sở dữ liệu cho việc tra cứu, sắp xếp, tổ chức cơ

sở dữ liệu ảnh.

Kỹ thuật tra cứu ảnh trên cơ sở màu cơ bản có nhiều hạn chế:

- Hạn chế thứ nhất của ảnh kỹ thuật cơ sở là không sử dụng tính tƣơng

đồng giữa các màu. Khi đó, hai ảnh với màu cảm nhận tƣơng đồng nhƣng

không có màu chung thì khoảng cách giữa chúng sẽ rất lớn, có thể là cực đại.

9

Với hạn chế thứ nhất này, ngƣời ta đã đƣa ra những cách khắc phục bằng

cách: đƣa ra thƣớc đo mức độ giống nhau trong đó quan tâm đến đóng góp

các màu cảm nhận tƣơng tự; tính toán khoảng cách màu trong đó các giá trị

biểu đồ màu đƣợc điều chỉnh trên cơ sở mức độ tƣơng tự màu; sử dụng biểu

đồ trọng số cảm nhận (PWH -perceptually weighted histogram).

- Hạn chế thứ hai là không sử dụng quan hệ không gian giữa các pixel.

Để giải quyết vấn đề này, ngƣời ta có thể tách màu nền khỏi màu cận cảnh

(phân đoạn ảnh) sau đó biểu đồ màu nền và biểu đồ màu cận cảnh đƣợc tính

toán và sử dụng.

- Hạn chế thứ ba là không gian màu lựa chọn đƣợc lƣợng tử hóa đồng

nhất mặc dù các màu điểm ảnh không phân bổ đồng nhất trong không gian

màu. Một số giải pháp: lƣợng tử hóa màu không đồng nhất; lựa chọn không

gian màu thích hợp cũng đã đƣợc đề cập; cải tiến việc tính toán các bins màu

cách sử dụng kỹ thuật phân lớp dữ liệu.

Kỹ thuật tra cứu cơ sở dựa trên lƣợc đồ màu chƣa tận dụng đƣợc các

đặc tính cục bộ của vùng của ảnh nhƣ màu và không gian. Ngƣời ta đã đề cập

đến kỹ thuật tra cứu ảnh dựa vào các đặc tính cục bộ của vùng áp dụng trong

tra cứu các ảnh phong cảnh: kỹ thuật đối sánh cặp màu để mô hình các đƣờng

bao đối tƣợng phân biệt; mở rộng kỹ thuật cặp màu để thực hiện tra cứu các

ảnh đã đƣợc phân đoạn. Các hạn chế trong kỹ thuật tra cứu dựa vào màu bao

gồm: thiếu khả năng nhận dạng các đối tƣợng tƣơng tự có các màu khác nhau,

nhạy cảm với tỷ lệ của đối tƣợng. Ảnh ngƣời ta đƣa ra kỹ thuật tra cứu ảnh

dựa vào các đặc tính cục bộ của vùng bao gồm màu và không gian áp dụng

trong tra cứu các ảnh phong cảnh. Kỹ thuật này nhằm khắc phục các hạn chế

đã đƣợc đề cập ở trên thông qua một quá trình ba bƣớc: phân đoạn ảnh thành

các cụm dựa vào màu (sử dụng thuật toán phân lớp dữ liệu K-Means); chia

10

các ảnh thành dãy các hình chữ nhật bằng phƣơng pháp phủ hình chữ nhật tối

thiểu có độ thuần nhất; Cuối cùng, thông tin của vùng đƣợc trích rút trong

bƣớc thứ hai đƣợc sử dụng để tra cứu các ảnh liên quan từ một cơ sở dữ liệu

ảnh phong cảnh.

Với phƣơng pháp tra cứu ảnh dựa trên hình dạng, có nhiều phƣơng

pháp biểu diễn đặc trƣng hình dạng và thƣớc đo độ tƣơng tự khác

nhau: phƣơng pháp tiếp cận dựa trên hình dạng sử dụng logic mờ. Đầu tiên,

ảnh đƣợc phân đoạn thành một tập các vùng. Mỗi vùng đƣợc biểu diễn bởi

một tập mờ. Khoảng cách giữa hai ảnh đƣợc tính toán dựa trên việc so sánh

khoảng cách giữa tất cả các cặp vùng của hai ảnh kết hợp với gán trọng số

cho mỗi vùng; phƣơng pháp biểu diễn đặc trƣng của vùng bởi một vectơ 15

chiều bao gồm các thành phần màu đặc trƣng của vùng và các đặc trƣng hình

dạng; Kết hợp hai phƣơng pháp trên đồng thời đƣa ra cải tiến cách biểu diễn

vectơ đặc trƣng của một vùng sử dụng 6 thành phần (3 thành phần đặc trƣng

màu sắc và 3 thành phần đặc trƣng hình dạng); hình dạng các vùng đƣợc xấp

xỉ bởi đa giác. Đa giác biểu diễn hình dạng các vùng đƣợc xác định theo cách

hoạt động của radar.

1.2 Tổng quan về nhận dạng, tra cứu thực vật

Tự động phân loại và tra cứu thực vật có thể đƣợc thực hiện bằng cách

trích xuất các đặc trƣng từ lá của nó. Có nhiều cách tiếp cận khác nhau đã

đƣợc đề xuất. Đầu tiên, ảnh lá đƣợc thu nhận bằng camera hoặc máy quét.

Sau đó, đó ngƣời dùng có thể chọn điểm gốc của lá và một vài điểm tham

chiếu trên phiến lá hoặc tự động thực hiện việc này. Tiếp theo, một số đặc

trƣng hình thái học đƣợc trích xuất. Các đặc trƣng này đƣợc sử dụng làm đầu

vào cho hệ thống phân loại, ví dụ nhƣ mạng nơron nhân tạo. Mạng nơron

đƣợc huấn luyện với lá từ các loài thực vật khác nhau. Sau đó, độ chính xác

11

của hệ thống nhận dạng đƣợc đánh giá thông qua thử nghiệm. Phƣơng pháp

này chỉ hoạt động đối với những cây có lá phẳng, rộng.

Một số lƣợng đáng kể các công trình đã đƣợc thực hiện nhằm giải

quyết bài toán tra cứu và nhận dạng thực vật dựa trên ảnh lá. Một phƣơng

pháp nào đó có thể đạt đƣợc hiệu năng tốt đối với một số mẫu giá cụ thể,

nhƣng không đảm bảo cho kết quả tốt đối với các mẫu lá khác. Đôi khi ngƣời

ta thấy rằng hai hoặc nhiều cây có lá có hình dạng tƣơng tự hoặc giống nhau,

nhƣng màu sắc khác nhau. Trong trƣờng hợp đó các đặc trƣng màu sắc cần

đƣợc lƣu tâm.

Chƣơng này trình bày sơ lƣợc các thuật toán khác nhau đã đƣợc sử

dụng để tra cứu phân loại thực vật thông qua ảnh lá.

1.3 Một số nghiên cứu liên quan

Để nhận dạng cây có nhiều cách, có thể nhận dạng cây qua các bộ phận

của cây nhƣ cành, lá, chồi, thân, hoa, quả, rễ cây… Tuy nhiên đặc trƣng dễ

nhận ra nhất của mỗi cây là hình ảnh lá cây. Nên trong luận văn này em sử

dụng hình ảnh lá cây với nền đơn giản.

Có hai loại lá: Lá kép (bao gồm một số lá nhỏ) và lá đơn. Trong khi hầu

hết các nghiên cứu trên lá đơn tập trung vào việc trích xuất đặc trƣng hình

dạng và vị trí của lá [9], thì các nghiên cứu trên lá kép cố gắng khai thác cấu

trúc của chúng [7].

Hình ảnh lá có thể đƣợc chụp với nền phức tạp, bƣớc đầu tiên của hệ

thống nhận dạng thực vật dựa trên ảnh lá là phân đoạn ảnh lá. Tuy nhiên,

phân đoạn ảnh là bài toán khó với nhiều thách thức trong thị giác máy tính.

Do đó, các công trình hiện tại thƣờng dựa trên giả định rằng ảnh lá đƣợc chụp

trong một nền tƣơng đối đơn giản. Có rất ít công trình đề cập đến việc phân

đoạn ảnh lá trên nền phức tạp [8] [18]. Trong [18] Tác giả đã đề xuất một

12

phƣơng pháp có tên là Marker-Controller Watersheds. Tuy nhiên, phƣơng

pháp này dựa trên giả định rằng ảnh là bimodal.

Trong [8], các tác giả đã đề xuất một phƣơng pháp phân đoạn ảnh

lá. Trong nghiên cứu này, trƣớc tiên phân đoạn dựa trên mô hình lá đa giác

sau đó phát triển một active contour. Tuy nhiên, công trình này chỉ giới hạn

làm việc với lá cây với nền đơn giản.

Khi làm việc với bài toán nhận dạng thực vật dựa trên ảnh lá, nhiệm vụ

quan trọng nhất là biểu diễn lá. Trong đó, chúng ta cần xác định các đặc trƣng

thích hợp để biểu diễn lá tốt nhất. Một một số đặc trƣng đã đƣợc đề xuất cho

việc biểu diễn lá trình bày trong ImageClef2013. Các phƣơng pháp này chủ

yếu làm việc với giả thiết là nền đơn giản.

Gần đây [9] đã đề xuất sử dụng KDES (kernel descriptor) đƣợc sử

dụng trong [5] để nhận dạng lá. Bộ mô tả này vƣợt trội hơn các bộ mô tả tốt

nhất nhƣ SURF. Công trình này làm việc với nền đơn giản. KDES cải tiến

không bất biến đối với scale (kích thƣớc ảnh) và phép xoay.

13

CHƢƠNG 2

PHƢƠNG PHÁP TRA CỨU LÁ CÂY SỬ DỤNG KDES

2.1 Giới thiệu

Năm 2010, Liffeng Bo và cộng sự [5] đề xuất một bộ mô tả đối tƣợng

nói chung có tên là KDES (kernel descriptor). Với đặc trƣng KDES, việc trích

chọn đặc trƣng hình ảnh của mỗi bộ phận của cây đều đƣợc xây dựng theo

hƣớng: từ đặc trƣng mức pixel, đến đặc trƣng mức patch, rồi đặc trƣng mức

ảnh.Bằng thực nghiệm, các tác giả đã chỉ ra rằng KDES tốt hơn những

phƣơng pháp đã có trên cơ sở dữ liệu Cifa-10, Caltech-101, ImageNet. Năm

2015 với những kết quả đã đƣợc chỉ ra của KDES [15], luận văn này áp dụng

KDES cho bài toán tra cứu tra cứu các loài thực vật quý hiếm tại khu bảo tồn

thiên nhiên Na Hang tỉnh Tuyên Quang dựa vào hình ảnh lá cây.

2.2 Phƣơng pháp KDES

2.2.1 Gradient, màu sắc, và hình dạng kernels tƣơng ứng

Với đặc trƣng KDES, việc trích chọn đặc trƣng hình ảnh của mỗi bộ

phận của cây đều đƣợc xây dựng theo hƣớng: từ đặc trƣng mức pixel, đến đặc

trƣng mức patch, rồi đặc trƣng mức ảnh.

- Đặc trưng mức pixel

Theo [5], một số đặc trƣng có thể đƣợc tính toán ở mức pixel nhƣ: giá

trị pixel (rgb color), kết cấu (local binary patterns – lbp), gradient. Trong đề

tài này, em sử dụng đặc trƣng gradient đối với ảnh lá cây.

+Đặc trƣng gradient

14

Vector gradient tại một pixel z đƣợc xác định bởi biên độ và hƣớng

. Trong [2], sau khi đã đƣợc chuẩn hóa (chia cho biên độ vector tại mỗi

điểm), một vector 2 chiều đặc trƣng cho mỗi điểm ảnh đƣợc biểu diễn dƣới

dạng:

+ Đặc trưng mức patch

Đặc trƣng mức patch đƣợc tính toán dựa trên ý tƣởng của phƣơng pháp

Kernel Descriptor (KDES). Đó là xây dựng một độ đo để đánh giá tƣơng quan

giữa các patch ảnh. Rồi từ đó sử dụng phƣơng pháp xấp xỉ để có thể trích ra

đặc trƣng mức patch.

Qua khảo sát hàm mũ cơ số e của đối số khoảng cách Euclide là một

thƣớc đo tƣợng tự tốt để đánh giá sự tƣơng đồng giữa hai vector đặc trƣng.

Việc sử dụng hàm mũ cơ số e với số mũ âm là một điểm rất mạnh của việc

matching đối với KDES. Vì nếu 2 patch có sự tƣơng đồng lớn thì chuẩn 2 của

hiệu sẽ nhỏ và độ đo đánh giá lớn. Ngƣợc lại, sự tƣơng đồng càng giảm thì

giá trị của match kernel cũng sẽ giảm và giảm rất nhanh. Điều này cho phép

ta lấy đƣợc những patch có sự tƣơng đồng rất cao với patch cần đối sánh.

Xét 2 patch ảnh P và Q, hàm đối sánh giữa các đặc trƣng gradient và

LBP của chúng đƣợc định nghĩa nhƣ sau:

- Gradient Match Kernel

Gradient Match Kernel của 2 patch ảnh đƣợc xây dựng từ 3 Kernel, đó

là gradient magnitude kernel ̅ (theo biên độ), orientation kernel (theo

hƣớng), position kernel (theo vị trí). Trong [2] Gradient Match Kernel

đƣợc định nghĩa nhƣ sau:

15

( ) ∑ ∑ ̅ ( ) . ̃( ) ̃( )/ ( )

Trong đó:

 z, : các điểm ảnh trên các patch P, Q. ̅ ( ) ( ) ( ): hàm đối sánh giữa 2 biên độ của 2

vector gradient. Với m(z) và ( ) là biên độ của vector gradient tại z và

 ) : hàm đối sánh . ̃( ) ̃( )/ ( ‖ ̃( ) ̃( )‖

theo hƣớng của 2 vector gradient tại z và

 ( ) ( ‖ ‖ ) : hàm đối theo vị trí của e pixel

z và

Với là vị trí Gaussian kernel với biểu

thị vị trí 2D của một pixel trong một bản vá hình ảnh (đƣợc chuẩn hóa thành

[0; 1]). Và là kernel hƣớng. Để

ƣớc tính sự khác biệt giữa các hƣớng ở pixel và , chúng tôi sử dụng các

vectơ gradient chuẩn hóa sau trong hàm kernel :

(2.2)

Khoảng cách giữa các vectơ nhƣ vậy cho thấy rất rõ sự khác biệt của

gradient định hƣớng. Lƣu ý rằng tính toán khoảng cách theo chuẩn L2 trên

các giá trị góc thay vì chuẩn hóa vectơ gradient sẽ gây ra sự sai số trong

một số trƣờng hợp. Ví dụ, hãy xem xét hai góc độ 2 – 0.01 và 0.01, có

hƣớng rất giống nhau nhƣng khoảng cách L2 rất lớn.

Tóm lại, kernel phù hợp với độ dốc Kgrad của chúng tôi bao gồm ba

kernel: kernel tuyến tính chuẩn hóa giống nhƣ trong biểu đồ định hƣớng, đánh

giá sự đóng góp của từng pixel sử dụng cƣờng độ gradient; kernel định hƣớng

16

tính toán độ tƣơng tự của gradient định hƣớng; và vị trí kernel Gaussian

đo khoảng cách hai pixel là không gian.

Có thể thấy kernel của biểu đồ định hƣớng cung cấp một cách đơn giản,

thống nhất để biến các thuộc tính pixel thành đặc trƣng patch-level. Một phần

mở rộng ngay lập tức là xây dựng các kernel khớp màu trên các giá trị pixel:

(2.3)

Với là màu pixel ở vị trí cƣờng độ cho ảnh màu xám và giá trị

RGB cho ảnh màu). đo mức độ

tƣơng tự của hai giá trị pixel.

Mặc dù gradient kernel tƣơng ứng có thể chụp các biến thể hình ảnh và

kernel khớp màu có thể mô tả sự xuất hiện của hình ảnh, chúng tôi thấy rằng

một kernel phù hợp trên các mẫu nhị phân cục bộ có thể chụp hình dạng gốc

hiệu quả hơn:

(2.4)

Với là độ lệch chuẩn của các

giá trị pixel trong 3 x 3 khu vực lân cận , là một hằng số nhỏ, là

vector nhị phân biểu diễn dƣới dạng cột nhị phân thể hiện sự khác biệt giá trị

pixel trong một cửa sổ gốc quanh . Kernel tuyến tính chuẩn hóa

cân nhắc sự đóng góp của từng mẫu nhị phân cục bộ, và Gaussian kernel

đo lƣờng sự tƣơng đồng hình dạng

thông qua các mẫu nhị phân địa phƣơng.

Các Kernel tƣơng ứng đƣợc xác định trên các thuộc tính pixel khác

nhau cung cấp một cách thống nhất để tạo ra sự đa dạng, phong phú cho bộ

17

tính năng hình ảnh, đã đƣợc chứng minh là rất thành công để tăng độ chính

xác nhận dạng.Tham chiếu Kernel phù hợp với gradient, màu sắc và hình

dạng phù hợp với kernel là của riêng mình và bổ sung cho. Sự kết hợp của

chúng hóa ra luôn luôn (nhiều) tốt hơn tính năng cá nhân tốt nhất.

2.2.2 Học tính năng nhỏ gọn

Kernel tƣơng ứng cung cấp một cách nguyên tắc để đo lƣờng sự giống

nhau của các bản vá hình ảnh, nhƣng việc đánh giá các Kernel có thể tốn kém

về mặt tính toán khi số lƣợng hình ảnh lớn. Vì hiệu quả tính toán và để thuận

tiện cho việc biểu diễn, em trình bày một cách tiếp cận để trích xuất các tính

năng kích thƣớc thấp nhỏ gọn từ các kernel tƣơng ứng: (1) lấy mẫu các vectơ

cơ sở với độ dài và cƣờng độ tƣơng đƣơng nhau từ vùng hỗ trợ để đảm bảo

xấp xỉ chính xác tƣơng ứng với các kernel; (2) tìm hiểu các vectơ cơ sở bằng

cách sử dụng phân tích thành phần chính của kernel; Một lợi thế quan trọng

của phƣơng pháp này là không có cực tiểu cục bộ nào đƣợc tham gia, không

giống nhƣ phân rã giá trị số ít kernel ràng buộc.

Dƣới đây là mô tả cách các tính năng không gian thu nhỏ đƣợc trích

xuất từ kernel gradient Kgrad. Các tính năng cho các kernel khác có thể đƣợc

tạo ra theo cùng một cách. Các kernel trong phƣơng trình

(2.5)

là sản phẩm bên trong

(2.6)

Qua đó, chúng ta có thể rút ra tính năng sau trên các bản vá hình ảnh:

(2.7)

18

Với là kết quả của Kronecker. Từ đó, có thể chỉ ra rằng

. Bởi vì chúng tôi sử dụng Gaussian kernel,

là một vectơ vô hạn.

Một cách đơn giản để giảm kích thƣớc là lấy mẫu các bản vá hình ảnh

đủ từ hình ảnh đào tạo và thực hiện KPCA cho các kernel phù hợp. Tuy

nhiên, cách tiếp cận nhƣ vậy làm cho các tính năng đã học phụ thuộc vào

nhiệm vụ trong tay. Hơn nữa, KPCA có thể trở nên không thể tính toán đƣợc

khi số lƣợng bản vá rất lớn.

Ở đây trình bày một cách tiếp cận để kết hợp gần đúng kernels trực

tiếp mà không yêu cầu bất kỳ hình ảnh. Theo phƣơng pháp cổ điển, máy học

chiều hữu hạn các tính năng bằng cách chiếu F grad ( P ) vào một tập các

vectơ cơ sở. Một vấn đề quan trọng trong quá trình chiếu này là cách chọn

một tập các vectơ cơ sở làm cho kernel có chiều hữu hạn gần đúng kernel ban

đầu. Vì các thuộc tính pixel là các vectơ có chiều thấp, chúng ta có thể đạt

đƣợc rất tốt xấp xỉ bằng cách lấy mẫu các vectơ cơ sở đủ bằng cách sử dụng

lƣới mịn trên vùng hỗ trợ. Ví dụ, hãy xem xét Gaussian kernel

định hƣớng trên gradient. Cho một tập các vectơ cơ sở

với là mẫu vectơ gradient chuẩn hóa, ta có thể tính gần

đúng một vectơ vô hạn bằng cách chiếu vào không gian đƣợc kéo dài

bởi tập hợp các vectơ cơ sở này. Một quy trình nhƣ vậy tƣơng đƣơng với

việc sử dụng hạt nhân có giới hạn:

(2.8)

19

Với là một vectơ ,

, và . Biểu đồ là một ma trận với

tính năng kết quả bây giờ chỉ có 1 chiều. Theo cách

tƣơng tự, chúng ta cũng có thể tính gần đúng các hạt nhân và .

Hình 2.1 : Xấp xỉ hữu hạn chiều.

Bên trái: kernel định hướng và xấp xỉ chiều hữu hạn của

nó. γo được đặt thành 5 (như được sử dụng trong các thí nghiệm) và

được cố định thành [1 0]. Tất cả các đường cong hiển thị giá trị kernel là các

hàm của . Đường màu đỏ là hàm ground truth kernel ko, và các đường

màu đen, xanh lá cây và xanh dương là các kernel xấp xỉ hữu hạn với các

kích thước lưới khác nhau.

Phải: lỗi bình phương trung bình gốc (RMSE) giữa xấp xỉ KPCA và

kernel tương ứng như là một hàm của thứ nguyên. Tính toán RMSE trên

10000 điểm dữ liệu được lấy mẫu ngẫu nhiên. Ba dòng hiển thị RMSE giữa

các hạt nhân Kgrad (màu đỏ) và Kcol (màu xanh) và Kshape (màu xanh lá cây) và

kernel gần đúng tương ứng của chúng.

Tính năng chiều hữu hạn cho gradient kernel là

, và có thể đƣợc sử dụng một cách hiệu

20

quả nhƣ các tính năng trên các bản vá hình ảnh. Kết quả đƣợc xác nhận nhƣ

trong hình 2.1. Kết quả nhƣ mong đợi, lỗi xấp xỉ giảm nhanh chóng khi tăng

kích thƣớc lƣới. Khi kích thƣớc lƣới lớn hơn 16, kernel hữu hạn và kernel ban

đầu hầu nhƣ không thể phân biệt đƣợc. Đối với hình dạng kernel trên các mẫu

nhị phân cục bộ, vì các biến là nhị phân, chúng ta chỉ cần chọn tập hợp tất cả các vectơ cơ sở 28 = 256 và do đó không có lỗi xấp xỉ nào đƣợc đƣa ra.

Tính năng nhỏ gọn. Mặc dù là chiều hữu hạn, nhƣng chiều có

thể tăng do sản phẩm Kronecker. Ví dụ, hãy xem xét bộ mô tả kernel hình

dạng: kích thƣớc của vectơ cơ sở trên kernel là 256; Nếu chúng ta chọn các

vectơ cơ sở của hạt nhân vị trí trên lƣới thông thƣờng 5 x 5, thì chiều của

mô tả nhân hình dạng kết quả Fshape sẽ là 256 x 25 = 6400, quá cao cho các

mục đích thực tế. Lấy mẫu thống nhất dày đặc dẫn đến xấp xỉ chính xác

nhƣng không đảm bảo tính trực giao của các vectơ cơ sở, do đó đƣa ra sự dƣ

thừa. Kích thƣớc của vectơ cơ sở có thể đƣợc giảm thêm bằng cách thực hiện

phân tích thành phần chính của kernel trên các vectơ cơ sở chung:

với là các vectơ cơ sở cho vị trí

kernel và là số lƣợng vectơ cơ sở. Thành phần chính của kernel -th có thể

đƣợc viết là:

(2.9)

trong đó và là kích thƣớc của vectơ cơ sở cho hạt nhân định

hƣớng và vị trí, và đƣợc học thông qua phân tích thành phần chính của hạt

nhân: với là một ma trận hạt nhân trung tâm với :

21

(2.10)

Nhƣ thể hiện trong hình 2.1, các kernel tƣơng ứng có thể đƣợc xấp xỉ

khá chính xác bằng cách sử dụng các vectơ cơ sở rút gọn của KPCA. Trong

khuôn khổ phân tích thành phần chính của kểnl, bộ mô tả kernel gradient có

dạng:

(2.11)

Tóm lại, việc trích xuất các bộ mô tả kernel là để đánh giá hàm kernel

giữa các pixel. May mắn thay, chúng ta có thể tính riêng hai giá trị hạt

nhân với chi phí + , thay vì . Bộ mô tả hạt nhân đắt nhất của chúng

ta, hạt nhân hình dạng, mất khoảng 4 giây trong MATLAB để tính toán trên

một hình ảnh điển hình (độ phân giải 300 x 300 và 16 x 16 bản vá hình ảnh

trên lƣới 8x8).

Đó là khoảng 1,5 giây cho bộ mô tả kernel gradient, so với khoảng 0,4

giây cho SIFT trong cùng một cài đặt. Việc triển khai dựa trên GPU hiệu quả

hơn chắc chắn sẽ giảm thời gian tính toán cho các bộ mô tả kernel sao cho các

ứng dụng thời gian thực trở nên khả thi.

2.3 Phƣơng pháp tra cứu lá cây sử dụng KDES cải tiến

Sơ đồ hệ thống tra cứu lá cây sử dụng KDES đƣợc trình bày trong hình

2.2. Hệ thống tra cứu lá cây đƣợc chia thành hai bƣớc lớn: Bƣớc 1 là biểu

diễn lá cây; bƣớc 2 là nhận dạng lá cây.

- Bước 1. Biểu diễn lá cây: Đầu vào là ảnh lá cây đã đƣợc tách khỏi

nền phức tạp sao cho ảnh chƣa toàn bộ lá cây, đồi thời chứa it nền nhất ( từ

22

nay gọi tắt là ảnh). Đầu ra là bộ mô tả ảnh lá cây (Vectơ đặc trƣng biểu diễn

ảnh lá cây). Bƣớc này đƣợc chia thành các bƣớc con sau đây:

Hình 2.2: Sơ đồ hệ thống nhận dạng lá cây sử dụng KDES

+ Trích chọn đặc trƣng mức điểm ảnh: ở mức này, một vectơ gradient

đƣợc tính cho mỗi điểm ảnh.

+ Trích chọn đặc trƣng mức patch: Ở mức này, đầu tiên chúng ta sinh

ra các tập patch, sau đó tính toán đặc trƣng mức patch. Chúng ta sử dụng các

patch với kích thƣớc thích nghi. Với cách sinh tập pacth với kích thƣớc thích

nghi, số lƣợng patch đƣợc sinh ra là nhƣ nhau với các ảnh có kích thƣớc

khác nhau. Phƣơng pháp này cũng giúp đặc trƣng mức patch it nhạy cảm

hơn đối với sự thay đổi của kích thƣớc ảnh. Với mỗi patch chúng ta tính toán

vectơ đặc trƣng nhƣ sau: với một patch, chúng ta tính một vectơ đặc trƣng

dựa trên phƣơng pháp đã nêu trong [5]. Cụ thể, trƣớc tiên chúng ta tính

hƣớng chính của patch, sau đó chuẩn hóa tất cả các vectơ gradient theo

hƣớng chính này. Việc chuẩn hóa này giúp véctơ đặc trƣng mức patch bất

biến với phép xoay.

23

+ Trích chọn đặc trƣng mức ảnh: Ở bƣớc này, các đặc trƣng mức

patch đƣợc kết hợp để tạo ra đặc trƣng mức ảnh bằng cách sử dụng một cấu

trúc Pyramid (Kim tự tháp). Với mỗi ảnh, véctơ đặc trƣng cuối cùng đƣợc

tính toán dựa trên các véctơ đặc trƣng ở mức thấp hơn sử dụng EMK

(Eficient Match Kernel [5]. Đầu tiên, chúng ta tính toán véctơ đặc trƣng cho

mỗi ô (cell) của cấu trúc Pyramid, sau đó nối các véctơ đặc trƣng của các ô

này lại với nhau để thu đƣợc véctơ đặc trƣng cuối cùng

- Bước 2: Nhận dạng lá cây: Ta đi tính khoảng cách từ ảnh truy vấn

đến các lớp. Sau khi lá cây đƣợc biểu diễn bởi một véctơ đặc trƣng, ta có thể

sử dụng một phƣơng pháp nào đó để tính toán khoảng cách từ ảnh truy vấn

đến các lớp. Ở đây chúng ta sử dụng máy véctơ hõ trợ nhiều lớp (Multi-class

support vector machine – MSVM)

Phần tiếp theo trình bày chi tiết các bƣớc tính toán véctơ đặc trƣng.

2.4 Biểu diễn ảnh lá cây

2.4.1 Tính toán đặc trƣng mức Pixel

Theo [5], một số đặc trƣng có thể đƣợc tính toán ở mức pixel, ví dụ nhƣ

giá trị pixel , kết cấu và gradient.

Với một ảnh đầu vào, đầu tiên, chúng ta đi tính toán véctơ gradient tại

mỗi điểm ảnh. Việc tính toán véctơ gradient đƣợc thực hiện theo cách tính

trong quá trình tính toán đặ trƣng SIFT Lowe (1999) [10]. Véctơ đặc trƣng tại

mỗi điểm ảnh z đƣợc xác định bởi hai thành phần: đó là độ lớn m(z) và hƣớng

θ(z). Trong [5], hƣớng đƣợc định nghĩa nhƣ công thức (2.2) sau:

2.4.2 Tính toán đặc trƣng mức patch

2.4.2.1 Sinh tập patch với kích thƣớc patch thích nghi

24

Trong [5], các patch có kích thƣớc cố định đối với tất cả các ảnh trong

cơ sở dữ liệu. Tuy nhiên trong thực tế, các ảnh đầu vào thƣờng có kích thƣớc

khác nhau. Với các file hình ảnh có kích thƣớc nhỏ thì số lƣợng các patch

đƣợc sinh ra cũng nhỏ, dẫn đến véctơ đặc trƣng thu đƣợc mang lại ít thông

tin. Hơn nữa, hai véctơ đặc trƣng của hai ảnh của cùng một lá cây ở hai kích

Hình 2.3: patch thích nghi với = = 8, do đó = = 9

thƣớc khác nhau có thể sẽ rất khác nhau. Vì vậy ta có thể thấy rằng véctơ đặc

trƣng tính toán bằng cách đƣợc trình bày trong [5] nhạy cảm với sự thay đổi

của kích thƣớc ảnh.

Hình 2.4 (a,b) minh họa vấn đề này. Hình 2.4(a) và hình 2.4 (b) là hai

ảnh của cùng một lá cây với hai kích thƣớc khác nhau. Ảnh trong hình 2.4(a)

nhỏ hơn ảnh trong hình 2.4 (b). Khi chúng ta sử dụng kích thƣớc patch cố

định bằng nhau là 16x16 và kích thƣớc ô lƣới cố định là 8x8, ảnh trong hình

2.4(b) thu đƣợc 77 patch trong khi đó ảnh trong hình 2.4(a) chỉ thu đƣợc 24

patch. Một patch trong hình 2.4(a) chứa nhiều thông tin thực tế hơn là một

patch trong hình 2.4(b). ta thấy rõ ràng rằng tập véctơ đặc trƣng mức patch

thu đƣợc từ hai ảnh ở hai hình 2.4 (a) và và 2.4(b) là rất khác nhau mặc dù đó

là ảnh của cùng một chiếc lá cây, thậm chí là cùng một ảnh khố, chỉ là kích

thƣớc hai ảnh khác nhau.

25

Hình 2.3 minh họa kỹ thuật sinh patch với kích thƣớc thích nghi. Giả sử

số lƣợng patch là x ( patch theo chiều ngang và patch

theo chiều dọc) Số ô lƣới x đƣợc xác định là

, . Với mỗi ảnh có kích thƣớc w × h thì chiều

và chiều dọc là ngang của ô lƣới thích nghi là

. Một patch thích nghi sẽ có kích thƣớc là

trong đó và

. Một patch đƣợc hình thành từ 4 ô lƣới. vùng

chồng lấn giữa 2 patch kế tiếp theo chiều dọc hoặc chiều ngang là một vùng

rộng 2 ô lƣới. Với cách sinh tập patch thích nghi này, kích thƣớc các patch tỷ

lệ thuận với kích thƣớc ảnh.

Hình 2.4(b) và 2.4(c) cho thấy ƣu điểm của kỹ thuật sinh patch thích

nghi. Khác với hình 2.4 (a,b), kỹ thuật sinh patch thích nghi khi áp dụng cho

Hình 2.4: Một số ví dụ minh họa patch cố định và patch thích nghi: (a,b)

hai ảnh của cùng một lá với kích thước khác nhau sinh ra hai tập patch với

26

kích thước patch cố định bằng nhau; (b,c): hai ảnh của cùng một lá với kích

thước ảnh khác nhau sinh ra hai tập patch với kỹ thuật sinh patch thích nghi.

hai ảnh ở hình 2.4(b,c), chúng ta thu đƣợc hai tập patch với số lƣợng bằng

nhau theo cả chiều ngang và chiều dọc. Hai ảnh trong hình 2.4(b,c) cũng là

hai ảnh của cùng một lá cây với kích thƣớc khác nhau. Ta có thể thấy nội

dung phần ảnh trong 1 patch của hình 2.4(b) tƣơng tự với nội dung trong một

patch của hình 2.4(c). Do đó tập véctơ đặc trƣng mức patch thu đƣợc từ ảnh

trong hình 2.4(b) và 2.4(c) tƣơng tự nhau. Điều đó khiến véctơ đặc trƣng mức

ảnh sẽ tƣơng tự nhau, tức là véctơ đặc trƣng thu đƣợc bất biến với sự thay đổi

kích thƣớc ảnh.

2.4.2.2 Tính toán véctơ đặc trƣng mức patch

Véctơ đặc trƣng mức patch đƣợc tính toán dựa trên ý tƣởng của các

phƣơng pháp kernel (kernel method). Từ một match kernel giữa hai patch,

chúng ta có thể trích rút véctơ đặc trƣng của patch sử dụng một ánh xạ xấp

xỉ đặc trƣng mức patch.

Gradient match kernel đƣợc xây dựng từ 3 kernel, đó là magnitude

kernel , orientation kernel và position kernel .

(2.12)

Trong đó P và Q là các patch của hai ảnh cần đối sánh. là tọa độ

điểm ảnh trên các patch P và Q . và tƣơng ứng là hƣớng gradient

tại các điểm ảnh trong các patch P và Q.

27

Sử dụng trực tiếp hƣớng gradient trong orientation kernel thì

vect đặc trƣng trích rút đƣợc ứng với match kernel sẽ không bất biến với

phép xoay. Do đó chúng ta chuẩn hóa hƣớng gradient trƣớc khi sử dụng trong

match kernel . Dựa trên ý tƣởng trong bộ mô tả SIFT Lowe (1999) [10] ,

chúng ta tính hƣớng chính của patch rồi chuẩn hóa tất cả các vect gradient

theo hƣớng chính này. Ta có thể sử dụng một trong hai cách để xác định

hƣớng chính của patch P. Cách thứ nhất là cách đƣợc sử dụng trong

Lowe (1999) [10]. Cách thứ hai là lấy hƣớng chính là hƣớng véctơ tổng của

tất cả các véctơ gradient trong patch. Khi đó, góc của các véctơ gradient tại

điểm ảnh trong patch P trở thành (2.13):

(2.13)

Sau đó, theo (2.2), hƣớng gradient sau khi chuẩn hóa sẽ là:

(2.14)

Cuối cùng, chúng ta xác định đƣợc gradient match kernel với hƣớng

gradient sau khi chuẩn hóa nhƣ sau:

(2.15)

Gradient magnitude kernel đƣợc xác định nhƣ sau (2.16):

(2.16)

Trong đó độ lớn véctơ gradient sau khi chuẩn hóa đƣợc xác định

nhƣ sau (2.17):

28

(2.17)

là độ lớn của véctơ gradient tại điểm ảnh Trong đó là hằng số,

. Ta thấy rằng gradient magnitude kernel là một kernel xác định dƣơng.

Cả hai kernel, orientation kernel và position kernel đều là

Gaussiankernel có dạng:

(2.18)

Hệ số γ sẽ đƣợc xác định riêng cho từng kernel ko và kp, đƣợc ký hiệu là

γo và γp .

Câu hỏi đặt ra là một match kernel thì làm thế nào để tính toán véctơ

đặc trƣng cho một patch? Gọi là ánh xạ đặc trƣng ứng với

gradient orientation kernel và position kernel . Khi đó công thức 2.15

đƣợc viết lại nhƣ sau:

(2.19)

trong đó Fgradient (P) là véctơ đặc trƣng của parth P, đƣợc xác định nhƣ

sau(2.20):

(2.20)

Sau đó, xấp xỉ véctơ đặc trƣng của patch P đƣợc xây dựng nhƣ sau

(2.21):

29

(2.21)

Với là Kronecker product, là xấp xỉ ánh xạ đặc

trƣng ứng cới các kernel ko và kp .

Xấp xỉ ánh xạ dặc trƣng đƣợc tính toán dựa trên một phƣơng pháp cơ

bản của KDES. Ý tƣởng cơ bản của việc biểu diễn dựa trên kernel method là

tính toán xấp xỉ ánh xạ đặc trƣng ứng với hàm kernel match, nhƣ hình (2.5):

Nói cách khác, các hàm kernel match đƣợc xấp xỉ dựa trên các ánh xạ

Hình 2.5: Ý tưởng cơ bản của việc biểu diễn dựa trên kernel method

đặc trƣng đƣợc tính toán tƣờng minh. Điều này cho phép áp dụng các phƣơng

pháp học hiệu quả dành cho các kernel tuyến tính trên các kernel phi tuyến.

Hƣớng tiếp cận này đƣợc giới thiệu trong [4] [5] [11] [12] [16].

Một trong những phƣơng pháp tính toán xấp xỉ đặc trƣng đƣợc trình

bày trong [4]. Cho một hàm match kernel k(x,y), ánh xạ đặc trƣng ứng

với kernel k(x,y) là một hàm thực hiện ánh xạ x vào không gian một véctơ:

(2.22)

30

Giả sử ta có hệ véctơ cơ sở, khi đó xấp xỉ của véctơ đặc trƣng

là trong đó đƣợc xác định nhƣ sau (2.23):

(2.23)

trong đó là ma trận biến đổi, là biểu diễn của

trên hệ véctơ cơ sở B.(2.23) là một bài toán quy hoạch toàn phƣơng lồi.

Nghiệm giải tích của (2.23) là (2,24):

( 2.24)

Xấp xỉ ánh xạ đặc trƣng là (2.25), [4]:

(2.25)

trong đó G đƣợc xác định bởi công thức(2.26):

(2.26)

trong đó KBB là ma trận D x D với {KBB}ij = k(vi,vj).kB là một véctơ D x 1 với

{kB}i = k(x,vi).

Với một tập đặc trƣng X= {x1,….,xp}, xấp xỉ ánh xạ đặc trƣng trên X

đƣợc xác định nhƣ sau (2.27):

(2.27)

Để tính toán xấp xiranhs xạ đặc trƣng, ta cần hệ véctơ cơ sở

. Hệ véctơ cơ sở B thu đƣợc bằng cách học trên một training

pool của các đặc trƣng F, {x1,…,xF}, bằng cách sử dụng CKSVD (constrained

kernel singular value decomposition, [4]).

31

Để tính toán xấp xỉ đặc trƣng trong công thức 2.21 từ

các match kernel, hệ véctơ tối thiểu cần đƣợc sinh ra bằng việc học. Hệ véctơ

cơ sở tối thiểu phải đƣớc học từ hệ véctơ cơ sở đầy đủ sử dụng KPCA (kernel

principal component analysis). Trong đó, hệ véctơ cơ sở đầy đủ thu đƣợc

bằng cách lấy mẫu đều và dày từ các vùng ảnh sử dụng một lƣới sao cho hệ

các véctơ cơ sở thu đƣợc giúp xấp xỉ một cách chính xác các match kernel.

Chúng ta sử dụng hệ véctơ cơ sở và các tham số của các match kernel đã

đƣợc học từ một tập con của cơ sở dữ liệu ảnh Imagenet đã đƣợc trình bày tại

[5].

và Gọi tập do véctơ cơ sở đã học đƣợc là

tập dp véctơ cơ sở là ứng với các kernel ko và kp.

trong đó xi là các véctơ gradient đã đƣợc lấy mẫu và dã đƣợc chuẩn hóa và yi

là các tọa độ trong patch 2D đã đƣợc chuẩn hóa.

Kronecker product làm cho véctơ đặc trƣng có số chiều lớn.

để giảm số chiều của , ta áp dụng KPCA lên tập véctơ cơ sở đã đƣợc

nối lại . Gọi thành phần thứ t học đƣợc thông qua

KPCA là , ta áp dụng theo[5], gradient kernel descriptor kết quả ứng với

match kernel trong (2.12) có dạng (2.28):

(2.28)

2.4.3 Tính toán đặc trƣng mức ảnh

Khi đặc trƣng mức patch đã đƣợc tính cho mỗi patch, công việc còn lại

là tính toán véctơ đặc trƣng cho toàn bộ ảnh. Theo Bo & Sminchisescu (2009)

32

[4], ta sử dụng một cấu trúc Pyramid bằng cách chia ảnh thành các ô bao gồm

các dòng và các cột ở một số layer (hình 2.6).

Để tính toán đặc trƣng của toàn bộ ảnh, đầu tiên chúng ta tính toán

véctơ đặc trƣng cho mỗi ô của cấu trúc pyramid sau đó ghép chúng lại để thu

đƣợc véctơ đặc trƣng cuối cùng của toàn bộ ảnh.

Để tính toán véctơ đặc trƣng cho mỗi ô, chúng ta sử dụng một phƣơng

pháp sinh véctơ dặc trƣng từ tập véctơ đặc trƣng mức patch của một vùng.

Phƣơng pháp này là một biến thể của phƣơng pháp BoW (Bag Of Word) sử

dụng các match kernel để đo độ tƣơng tác giữa hai đặc trƣng cục bộ. Một

phƣơng pháp cụ thể đƣợc trình bày chi tiết trong Bo&Sminchisescu(2009) [4]

Hình 2.6: Cấu trúc pyramid

sử dụng EMK (Efficient Match Kernels).

Gọi C là một ô chứa một tập các patch. Tập các patch này có một tập

các véctơ đắch trƣng mức patch tƣơng ứng:

X= {x1,….,xp} (2.29)

trong đó P là số patch của ô C.

33

Trong BoW, mỗi véctơ đặc trƣng mức patch của ảnh đƣợc coi nhƣ một

từ (word). Giả sử V={v1,…,vD} là từ điển ( một tập các từ). một véctơ đặc

trƣng mức patch đƣợc lƣợng tử hóa thành một véctơ chỉ báo nhị phân D

chiều:

(2.30)

trong đó ( ) đƣợc các định nhƣ sau:

(2.31)

trong đó . Véctơ đặc trƣng

của một ảnh đƣợc định nghĩa là một hitogram đã đƣợc chuẩn hóa:

(2.32)

trong đó |X| là lực lƣợng của tập X . Khi Bow cƣợc sử dụng cùng với một bộ

phân lớp tuyến tính, hàm match kernel là:

(2.33)

Ta ký hiệu độ tƣơng tự giữa hai véctơ đặc trƣng mức patch là x và y

(xem định nghĩa của ( ) trong công thức 2.30 và công thức 2.31):

(2.34)

34

Công thức 2.33 đƣợc viết lại nhƣ sau:

(2.35)

Ý nghĩa của công thức 2.34 là độ tƣơng tự giữa hai véctơ x và y là 1

nếu x và y đều cùng thuộc về một vung R(vi), và 0 nếu ngƣợc lại. Theo đó, hai

véctơ đặc trƣng mức patch có thể đƣợc quy về hai cụm (cluster) khác nhau

mặc dù hai véctơ đó rất gần nhau nhƣng lại đƣợc xem là hoàn toàn khác nhau

(xem hình 2.7). Trong hình 2.7, các điểm v1,…,v4 biểu diễn trung tâm các cụm

(các word), và điểm x,y,z là véctơ đặc trƣng mức patch. Ở đây, ta thấy hai

Hình 2.7: Nhược điểm của cách gán cứng [14]

nhƣợc điểm của cách gán cứng: (i) Trong cách gán cứng, độ tƣơng tự

giữa hai véctơ đặc trƣng mức patch y và z sẽ là 0. Có nghĩa là chúng khác

nhau hoàn toanfbowir vì chúng đƣợc gán vào hai word khác nhau mặc dù

chúng gần nhau trong không gian đặc trƣng mức patch; (ii) hai véctơ đặc

trƣng x và y cùng đƣợc gán vào một word v3 và không thể nhận ra rằng x gần

z hơn y cũng nhƣ không thể biết đƣợc thực tế là y gần z hơn x.Việc lƣợng tử

hóa này là một cách xấp xỉ rất thô của độ tƣơng tự trên thực tế giữa hai véctơ

đặc trƣng mức patch, 1 nếu đƣợc gán vào cùng một word và 0 nếu ngƣợc

35

lại.Cách gán cứng này có thể gây ra lỗi do sự thay đổi của véctơ đặc trƣng do

ảnh hƣởng của nhiễu, điều kiện chiếu sáng thay đổi, các biến đổi không tuyến

tính. Do đó chúng ta sẽ sử dụng cách gán mềm (“soft asignment”, đƣợc trình

bày trong [14]). Phƣơng pháp này dựa trên kỹ thuật kết hợp có trọng số các

word. Đây là một cải tiến trong việc matching các patch (so với việc gán

cứng). Thuật ngữ “soft asignment” mô tả một kỹ thuật mà ở đó trọng số đƣợc

gán cho các từ lân cận phụ thuộc vào khoảng cách giữa các véctơ đặc trƣng và

các trung tâm cụm.

Với ý tƣởng tƣơng tự, trong EMK, ( ) trong công thức 2.35 đƣợc

thay thế bằng hàm kernel liên tục ( ) giúp đo độ tƣơng tự giữa hai véctơ

đặc trƣng mức patch và một cách chính xác hơn. Khi đó hàm kernel trở

thành:

(2.36)

Giả sử rằng ( )là kernel hữu hạn chiều (xem Định nghĩa 1), khi đó

match kernel là:

(2.37)

Định nghĩa 1: (Kernel hữu hạn chiều[4]) Hàm kernel

được gọi là hữu hạn chiều nếu ánh xạ đặc trưng

là hữu hạn chiều.

Ánh xạ đặc trƣng trên tập véctơ đƣợc định nghĩa nhƣ sau:

36

(2.38)

Match kernel đƣợc viết lại nhƣ sau:

(2.39)

Véctơ đặc trƣng trên các tập patch đƣợc tính tƣờng minh. Sau đó

có thể áp dụng toàn bộ phân lớp tuyến tính vào các véctơ đặc trƣng đã đƣợc

tính toán. Trong 2.38, là ánh xạ đặc trƣng xấp xỉ (2.25) ứng với kernel

( ) với tập véctơ cơ sở đƣợc sinh ra bởi CKSVD [4].

Sau khi các véctơ ứng với mỗi ô đƣợc tính toán, ta ghép chúng lại để

tạo ra véctơ đặc trƣng mức ảnh. Cho một ảnh, gọi L là số layer. ở đây L=3. Số

ô ở layer thứ t trong layer l). Một patch đƣợc coi là thuộc một ô khi tâm của

patch đó thuộc vào ô. Ánh xạ đặc trƣng trên cấu trúc Pyramid là (2.40)

(2.40)

Trong công thức 2.40, là trọng số ứng với layer l.

Hình 2.6 minh họa cách tính toán đặc trƣng mwucs ảnh trên cấu trúc

pyramid.

Match kernel giữa 2 ảnh trên cấu truc pyramid sẽ là:

(2.41)

37

trong đó là ánh xạ đặc trƣng trên cấu trúc Pyramid :

(2.42)

Trong (2.42), trọng số ứng với layer l đƣợc xác định nhƣ sau:

(2.43)

Cuối cùng, chúng ta thu đƣợc véctơ đặc trƣng cho toàn bộ ảnh bằng cách

ghép tất cả các véctơ đặc trƣng của tất cả các ô trong lớp layer của cấu trúc

pyramid. Véctơ đặc trƣng này sẽ đƣợc đƣa vào bộ phận Multiclass SVM để

thu đƣợc xác xuất một mẫu thuộc về từng lớp. Kết quả tra cứu đƣợc đƣa ra

dựa trên việc sắp xếp theo giá trị xác xuất (thu đƣợc từ multiclass SVM)

2.5 Phân lớp ảnh lá cây

Có nhiều phƣơng pháp máy vectơ phân lớp nhƣ Hard Margin, Soft

Margin, Kernel....Các phƣơng pháp máy vectơ phân lớp đều đƣợc xây dựng

nhằm giải quyết bài toán Binary Classification, tức là bài toán phân lớp chỉ

với 2 classes. Việc này cũng tƣơng tự nhƣ Percetron Learning Algorithm hay

Logistic Regression. Các mô hình làm việc với bài toán có 2 classes còn đƣợc

gọi là Binary classifiers. Một cách tự nhiên để mở rộng các mô hình anyf áp

dụng cho các bài toán multi-class classification, tức là có nhiều lớp dữ liệu

khác nhau, là sử dụng nhiều Binary classifiers và các kỹ thuật nhƣ one-vs-one

hoặc one-vs-rest.

2.5.1 Máy véctơ hỗ trợ - SVM

Máy hỗ trợ vectơ hỗ trợ (SVM – viết tắt tiếng Anh support vector

machine) là một khái niệm trong thống kê và khoa học máy tính cho một tập

hợp các phƣơng pháp học có giám sát liên quan đến nhau để phân loại và

phân tích hồi quy. SMV dạng chuẩn dữ liệu vào và phân loại chúng vào hai

38

lớp khác nhau. Do đó SVM là một dạng thuật toán nhị phân. Với một bộ các

ví dụ luyện tập thuộc hai thể loại cho trƣớc, thuật toán luyện tập SVM xây

dựng mô hình SVM là một các biểu diễn các điểm trong không gian và lựa

chọn ranh giới giữa hai thể loại sao cho khoảng cách từ các ví dụ luyện tập tới

ranh giới là xa nhất có thể. Các ví dụ mới cũng đƣợc biểu diễn trong cùng một

không gian và đƣợc thuật toán dự đoán thuộc một trong hai thể loại tùy vào ví

dụ đó nằm ở phía nào của ranh giới.

Một máy vecto hỗ trợ xây dựng một siêu phẳng hoặc một tập hợp các

siêu phẳng trong một không gian nhiều chiều hoặc vô hạn chiều, có thể sử

đƣợc dụng cho phân loại, hồi quy, hoặc các nhiệm vụ khác. Một cách tự giác,

để phân loại tốt nhất thì các siêu phẳng nằm ở xa càng xa các điểm dữ liệu

của tất cả các lớp ( gọi là hàm lề) càng tốt, vì nói chung lề càng lớn thì sai số

tổng quát hóa của thuật toán phân loại càng bé.

Trong nhiều trƣờng hợp, không thể phân chia các lớp dữ liệu một cách

tuyến tính trong một không gian ban đầu đƣợc dùng để mô tả một vấn đề. Vì

vậy, nhiều khi cần phải ánh xạ các điểm dữ liệu trong không gian ban đầu vào

một không gian mới nhiều chiều hơn, để phân việc tách chúng trở nên dễ

dàng hơn trong không gian mới. Để việc tính toán đƣợc hiệu quả , ánh xạ sử

dụng trong thuật toán SVM chỉ đòi tích vô hƣớng của các vecto dữ liệu trong

không gian mới có thể đƣợc tính dễ từ các tọa độ trong không gian cũ. Tích

vô hƣớng này đƣợc xác định bằng một hạt nhân K (x,y) phù hợp. Một siêu

phẳng trong không gian mới đƣợc định nghĩa là tập hợp các điểm có tích vô

hƣớng với một vecto cố định trong không gian đó là một hằng số. Vecto xác

định một siêu phẳng sử dụng trong SVM là một tổ hợp tuyến tính của các

vecto dữ liệu luyện tập trong không gian mới với các .Với siêu phẳng lựa

chọn nhƣ trên, các điểm x trong không gian đặc trƣng đƣợc ánh xạ vào một

siêu phẳng là các điểm thỏa mãn:

39

(2.44)

Ghi chú rằng nếu K ( x,y) nhận giá trị ngày càng nhỏ khi y xa dần khỏi

x thì mỗi số hạng của tổng trên đƣợc dùng để đo độ tƣơng tác giữa x với

điểm tƣơng ứng trong dữ liệu luyện tập. Nhƣ vậy, tác dụng của tổng trên

chính là so sánh khoảng cách giữa điểm cần dự đoán với các điểm dữ liệu đã

biết. Lƣu ý là tập hợp các điểm x đƣợc ánh xạ vào một siêu phẳng có thể độ

phức tạp tùy ý trong không gian ban đầu, nên có thể phân tách các tập hợp

thậm chí không lồi trong không gian ban đầu.

Phân loại thống kê là một nhiệm vụ phổ biến trong học máy. Trong mô

hình học có giám sát, thuật toán đƣợc cho trƣớc một số điểm dữ liệu cùng với

nhãn của chúng thuộc một trong hai lớp cho trƣớc. Mục tiêu của thuật toán là

xác định xem một điểm dữ liệu mới sẽ thuộc về lớp nào. Mỗi điểm dữ liệu

đƣợc biểu diễn dƣới dạng một vector p-chiều, và ta muốn biết dữ liệu có thể

chia tách hai lớp dữ liệu bằng một siêu phẳng p -1. Đậy gọi là phân loại tuyến

tính. Có nhiều siêu phẳng có thể phân loại đƣợc dữ liệu. Một lựa chọn hợp lý

trong chúng là siêu phẳng có lề lớn nhất giữa hai lớp.

Năm 1995, Corinna Cortes và Vladimir N. Vapnik đề xuất một ý tƣởng

mới cho phép thuật toán gán nhãn sai cho một ví dụ luyện tập. Nếu không tồn

tại siêu phẳng nào phân tách đƣợc hai lớp giữ liệu, thì thuật toán lề mềm sẽ

chọn một siêu phẳng phân tách các ví dụ luyện tập tốt nhất có thể, và đồng

thời cực đại hóa khoảng cách giữa siêu phẳng với các ví dụ đƣợc gán đúng

nhãn.

Ƣu điểm của SVM:

40

Là một kỹ thuật phân lớp khá phỏ biến, SVM thể hiện đƣợc nhiều ƣu

điểm trong số đó có việc tính toán hiệu quả trên các tập dữ liệu lớn. có thể kể

thêm một số ƣu điểm của phƣơng pháp này nhƣ:

Xử lý trên không gian số chiều cao: svm là một công cụ tính toán hiệu

quả trong không gian chiều cao, cao trong đó đặc biệt áp dụng cho các bài

toán phân loại văn bản và phân tích quan điểm nơi chiều cao có thể cực kỳ

lớn.

Tiết kiệm bộ nhớ: nhớ do chỉ có một tập hợp con của các điểm đƣợc

sử dụng trong quá trình huấn luyện và ra quyết định thực tế cho các điểm dữ

liệu mới nên chỉ có những điểm cần thiết mới đƣợc lƣu trữ trong bộ nhớ khi

ra quyết định.

Tính linh hoạt- phân lớp lớp thƣờng là phi tuyến tính. khả năng áp

dụng kernel mới cho phép linh động giữa các phƣơng pháp tuyến tính và phi

tuyến tính từ đó khiến cho hiệu suất phân loại lớn hơn

Nhƣợc điểm của SVM:

Bài toán số chiều cao: trong trƣờng hợp số liệu thuộc tính (p) của tập

dữ liệu lớn hơn rất nhiều so với số lƣợng dữ liệu u(n) thì SVM cho kết quả

khá tồi.

Chƣa thể hiện rõ tính xác suất: việc phân lớp của svm chỉ là việc cố

gắng tách các đối tƣợng vào hai lớp đƣợc phân tách bởi siêu phẳng svm. điều

này chƣa giải thích đƣợc xác suất xuất hiện của một thành viên trong nhóm

nhƣ là thế nào. tuy nhiên hiệu quả của việc phân lớp có thể đƣợc xác định

dựa vào khái niệm margin từ điểm dữ liệu mới đến siêu phẩm phân lớp mà

chúng ta đã bàn luận ở trên.

41

SVM là một phƣơng pháp hiệu quả cho bài toán phân lớp dữ liệu. Nó

là một công cụ đắc lực cho các bài toán về xử lý ảnh, phân loại văn bản, Phân

tích quan điểm. Một yếu tố làm nên hiệu quả của SVM đó là việc sử dụng

kernel function khiến cho các phƣơng pháp chuyển không gian trở nên linh

hoạt hơn

2.5.2 Máy véctơ hỗ trợ nhiều lớp – MSVM

2.5.2.1 Từ Binary classification tới multi-class classification

Các phƣơng pháp Support Vector Machine đã đề cập (Hard Margin,

Soft Margin, Kernel) đều đƣợc xây dựng nhằm giải quyết bài toán Binary

Classification, tức bài toán phân lớp với chỉ hai classes. Việc này cũng tƣơng

tự nhƣ Percetron Learning Algorithm hay Logistic Regression vậy. Các mô

hình làm việc với bài toán có 2 classes còn đƣợc gọi là Binary classifiers. Một

cách tự nhiên để mở rộng các mô hình này áp dụng cho các bài toán multi-

class classification, tức có nhiều classes dữ liệu khác nhau, là sử dụng nhiều

binary classifiers và các kỹ thuật nhƣ one-vs-one hoặc one-vs-rest.

2.5.2.2 Xử lý dữ liệu ảnh

Để cho mọi thứ đƣợc đơn giản và có đƣợc một mô hình hoàn chỉnh,

chúng ta sẽ sử dụng phƣơng pháp sử dụng tính năng kỹ thuật đơn giản nhất:

lấy trực tiếp tất cả các pixel trong mỗi ảnh theo tiêu chuẩn hóa.

Ví dụ ứng dụng trong bộ cơ sở dữ liệu ảnh CIFAR-10

- Mỗi ảnh của CIFAR-10 đã có kích thƣớc giống nhau 32×32 pixel, vì

vậy việc đầu tiên chúng ta cần làm là kéo dài mỗi trong ba channels Red,

Green, Blue của bức ảnh ra thành một vector có kích thƣớc là 3×32×32=3072

- Vì mỗi pixel có giá trị là một số tự nhiên từ 0 đến 255 nên chúng ta

cần một chút chuẩn hóa dữ liệu. Trong Machine Learning, một cách đơn giản

42

nhất để chuẩn hóa dữ liệu là center data, tức làm cho mỗi feature có trung

bình cộng bằng 0. Một cách đơn giản để làm việc này là ta tính trung bình

cộng của tất cả các ảnh trong tập training để đƣợc ảnh trung bình, sau đó trừ

từ tất cả các ảnh đi ảnh trung bình này. Tƣơng tự, ta cũng dùng ảnh trung

bình này để chuẩn hoá dữ liệu trong validation set và test set.

Softmax Regression sử dụng Cross-entropy để ép hai véctơ các suất

bằng nhau, tức là ép phần tử tƣơng ứng với corect class trong véctơ xác suất

gần với 1, đồng thời, các phần tử còn lại trong véctơ đó gần với 0. Nói cách

khác, cách làm này khiến cho phần tử tƣơng ứng với corect class càng lớn

hơn so với các phần tử còn lại càng tốt. Trong khi đó, Multi-class SVM sử

dụng một chiến thuật khác cho mục đích tƣơng tự dựa trên score vector. Điểm

khác biệt là Multi-class SVM xây dựng hàm mất mát dựa trên định nghĩa của

biên an toàn, giống nhƣ Hard/Soft Margin. Multi-class SVM muốn thành

phần ứng với corect class của score véctơ lớn hơn các phần tử khác, không

những thế, nó còn lớn hơn một đại lƣợng gọi là biên an toàn.

2.5.2.3 Softmax Regression.

Chúng ta cùng xem lại mô hình Softmax layer

Hình 2.8: Mô hình Softmax Regression dưới dạng Neural network.

43

Trong hình 2.9 ở trên, dữ liệu trong lớp màu xanh lục đƣợc coi nhƣ

feature vector của dữ liệu. Với dữ liệu CIFAR-10, nếu ta coi mỗi feature là

giá trị của từng pixel trong ảnh, tổng số chiều của feature vector cho mỗi bức

ảnh là 32×32×3+1=3073, với 3 là số channels trong bức ảnh (Red, Green,

Blue). Qua ma trận hệ số W , dữ liệu ban đầu trở thành z=WTx. Lúc này, ứng

với mỗi một trong C classes, chúng ta nhận đƣợc một giá trị tƣơng ứng zi ứng

với class thứ i. Giá trị zi này còn đƣợc gọi là score của dữ liệu x ứng với class

thứ i.

Ý tƣởng chính trong Sofftmax Regression là đi tìm ma trận hệ số W,

mỗi cột của ma trận này ứng với một class, sao cho score vector z đạt giá trị

lớn nhất tại phần tử tƣơng ứng với class chính xác của nó. Sau khi mô hình đã

đƣợc trained, nhãn của một điểm dữ liệu mới đƣợc tính là vị trí của thành

phần score có giá trị lớn nhất trong score vector

Để huấn luyện trên tập các cặp (dữ liệu, nhãn), Softmax Regression sử

dụng hàm softmax để đƣa score vector về dạng phân phối xác suất có các

phần tử là dƣơng và có tổng bằng 1. Sau đó dùng hàm cross entropy để ép

vector xác suất này gần với vector xác suất thật sự của dữ liệu - tức one-hot

vector mà chỉ có đúng 1 phần tử bằng 1 tại class tƣơng ứng, các phần tử còn

lại bằng 0.

44

CHƢƠNG 3

THỰC NGHIỆM

3.1 Thu thập dữ liệu

Để bƣớc đầu xây dựng cơ sở dữ liệu lá cây, em đã tiến hành thu thập

hình ảnh lá cây của một số loài cây quý hiếm thuộc khu bảo tồn thiên nhiên

Na Hang, tỉnh Tuyên Quang. Dữ liệu hình ảnh chủ yếu đƣợc lấy tại khu bảo

tồn Bản Bung, xã Thanh Tƣơng huyện Na Hang tỉnh Tuyên Quang. Thời

gian thu thập dữ liệu hình ảnh đƣợc tiến hành vào tháng 5 năm 2018.

Các thông tin về cây thuốc đƣợc kế thừa từ các tài liệu có liên quan

nhƣ: Các bộ thực vật chí, đa dạng thực vật khu bảo tồn thiên nhiên Na Hang

tỉnh Tuyên Quang

3.1.1 Cơ sở dữ liệu hình ảnh

- Tổng số ảnh thu thập: 380

- Tổng số mẫu ảnh (ảnh lá cây ): 38

- Số lƣợng ảnh mỗi mẫu: 10

- Tổng số loài cây lấy đƣợc mẫu: 23

- Định dạng ảnh: JPG

- Độ phân giải camera: 9MP

- Kích cỡ ảnh nhỏ nhất (Width x Hight): 115x 122 pixels

- Kích cỡ ảnh lớn nhất (Width x Hight): 1000x 3792 pixels

45

3.1.2 Phƣơng pháp lấy mẫu hình ảnh lá cây:

Đối với mỗi cây, trên một cây thƣờng xuất hiện nhiều mẫu lá khác nhau

ở thời kì sinh trƣởng của lá khác nhau nhƣ lá non, lá già... Do đó, chúng ta sẽ

lựa chọn mẫu lá đặc trƣng nhất, phổ biến nhất, cụ thể nhƣ sau:

+ Đối với cây lá đơn: Với mỗi cây dùng để lấy mẫu, ta lựa chọn lá có

hình dạng bao gồm phiến lá, gân chính, gân phụ; Không bị sứt mẻ, bìa lá

không bị rách hoặc sâu ăn; Màu sắc lá mầu đậm nổi nhất của lá, thông thƣờng

là lấy lá thứ năm đến lá thứ mƣời của một cành tính từ búp của cảnh.

+ Đối với cây lá kép: Tƣơng tự đối với cây lá đơn, với mỗi mẫu lá cũng

tiến hành lựa chọn những phiến lá kép bao gồm phiến lá, gân chính, gân phụ;

Không bị sứt mẻ, bìa lá không bị rách hoặc sâu ăn; Màu sắc lá mầu đậm nổi

bật nhất tƣơng ứng với cây, thông thƣờng cũng là nhánh lá kép thứ năm đến

thứ mƣời trên một cành. Tuy nhiên, với mỗi nhánh lá kép có nhiều lá nhỏ thì

luôn chọn lá nhỏ trên đỉnh trên đỉnh của nhánh. Một số lá không thể lấy đƣợc

lá nhỏ thì chụp ảnh toàn bộ nhành lá.

Vì bài toán phân đoạn ảnh lá cây trong môi trƣờng tự nhiên với nền

phức tạp là bài toán khó với nhiều thách thức trong thị giác máy tính. Do đó,

các công trình nghiên cứu về nhận dạng hoặc tra cứu thực vật dựa trên hình

ảnh lá thƣờng dựa trên giả định rằng ảnh lá cây đƣợc chụp trên nền đơn giản.

Trong khuôn khổ của đề tài, dữ liệu lá cây thuốc đƣợc lấy hình ảnh của lá cây

đƣợc chụp trên nền đơn giản (màu trắng). Hình ảnh lá cây thuốc đƣợc thu

thập bằng điện thoại thông minh với camera sau có độ phân giải 9MP.

Do điều kiện có hạn về thời gian, khả năng di chuyển nên số lƣợng mẫu

lá cây thu thập đƣợc chỉ là 38, thuộc địa phận Bản Bung, xã Thanh Tƣơng,

huyện Na Hang, tỉnh Tuyên Quang.

46

Hình 3.1: Hình ảnh 38 mẫu lá cây đã thu thập được trong đề tài.

Dƣới đây là thông tin về một số loài cây thuốc xuất hiện trong cơ sở dữ

liệu đã thu thập đƣợc

47

Bảng 3.1: Danh sách mẫu thực vật trong cơ sở dữ liệu

ID Tên cây ID Tên cây

01 20 Cây Cà Lồ Cây Nghiến

02 21 Cây Hu Cây Lim

03 22 Cây Ô Dô Cây Lim (cả cành)

04 23 Cây Sổ Cây Lát

05 24 Cây Tăm Cây Phay

06 25 Cây Tăm (cả cành) Cây Nhội ( cả cành)

07 26 Cây Đinh (cả cành) Cây Nhội

08 27 Cây Đinh (lá đỉnh) Cây Vảy Ốc

09 28 Cây Đinh (lá cạnh đỉnh) Cây Vảy Ốc (cả cành)

10 29 Cây Đinh (lá giữa cành) Cây Lim Xẹt (cả cành)

11 30 Cây Đinh (lá cuống 1) Cây Lim Xẹt

12 31 Cây Đinh (lá cuống 2) Cây Vàng Anh

13 32 Cây Chăm Pa Cây Kẹn

14 33 Cây Cơi (cành) Cây lá đắng (9 lá)

15 34 Cây Cơi Cây lá đắng (9 lá) (cả cành)

16 35 Cây Đắng Cày Cây Trầm Hƣơng

17 36 Cây Dƣớng (lá già) Cây Trầm Hƣơng (lá đỉnh)

18 Cây Dƣớng (lá non) 37 Cây Trầm Hƣơng (lá nhánh)

19 Cây Húng rừng 38 Cây Sa Nhân

48

3.2 Tiền xử lý ảnh trong bộ cơ sở dữ liệu

Với hình ảnh lá cây thu thập đƣợc, công việc đầu tiên là xử lý ảnh nền

sao cho số lƣợng nền là it nhất. Mỗi mẫu lá cây lấy đƣợc đều sẽ đƣợc gán cho

1 ID là các số nguyên dƣơng, bắt đầu từ số 01 và tăng dần thên 1 đơn vị. Đối

với mỗi loại cây, ta tiến hành lấy 10 mẫu lá. Mỗi mẫu lá ta chụp một ảnh và

lƣu thành các file có tên đƣợc đặt theo thứ tự từ 1 đến 10. Các file này sẽ

đƣợc chia thành 02 thƣ mục: thƣ mục Huấn luyện: chứa 05 ảnh mỗi mẫu lá

cây dùng trong quá trình huấn luyện và đƣợc gán ID từ 01 đến 05; thƣ mục

Thử nghiệm: chứa 05 ảnh mỗi mẫu lá cây và cũng đƣợc gán ID từ 01 đến 05

dùng để thử nghiệm phƣơng pháp và đƣa ra kết quả.

Trong luận văn này, em chỉ áp dụng đối với ảnh lá cây trên nền đơn

giản, nên em sử dụng giải pháp tách lá tự động gồm 4 bƣớc nhƣ sau:

Hình 3.2. Phân đoạn ảnh tự động

 Bƣớc 1: Sử dụng giải thuật phân đoạn vùng nổi bật (Salient Region

Segmentation) [1]. Đƣợc minh họa trong Hình 3.3.

49

Hình 3.3. giải thuật sử dụng Salient region segmentation

Với các thông số nhƣ sau:

Thực hiện phân đoạn Mean-Shift với -

(sigmaS, sigmaR, minRegion) = (7, 10, 20)

Vùng ảnh đƣợc lựa chọn thuộc đối tƣợng là vùng ảnh có -

Chuyển đổi ảnh từ không gian RGB sang Lab -

Hình 3.4. Sự chuyển đổi hai không gian màu RGB và Lab

50

- Tính giá trị là LAB trung bình của toàn ảnh

- Giá trị saliency của mỗi điểm ảnh đƣợc tính theo công thức

( ) ‖ ( )‖

 Bƣớc 2: Áp dụng Finding Contours để tìm ra vùng có diện tích lớn

nhất là vùng chứa lá cây.

 Bƣớc 3: Cắt bỏ cuống lá.

Theo nhƣ quan sát ta có thể thấy, phần cuống lá là vùng ảnh có kích

thƣớc rất mảnh nên ta có thể loại bỏ bằng cách sau:

- Tạo ra mặt nạ bằng cách chuyển ảnh màu sang ảnh nhị phân

- Sử dụng phép co ảnh nhị phân trên mặt nạ để loại bỏ đi cuống lá

Xét tập hợp A và tập hợp B (Phần tử cấu trúc), phép co ảnh nhị phân

của tập hợp A bởi phần tử cấu trúc B đƣợc kí hiệu A B và viết dƣới dạng

công thức nhƣ sau:

A B ={z | (B)Z A)

Phép co ảnh nhị phân của tập hợp A bởi phần tử cấu trúc B là tập

hợp các điểm z (z nằm ở tâm điểm của phần tử cấu trúc B) sao cho Bz là

tập con của A.

Hình 3.5. Co ảnh nhị phân

51

- Vì khi sử dụng phép co ảnh sẽ đồng thời loại bỏ đi một số đặc điểm

trên biên lá, nên cần tiếp tục sử dụng phép giãn ảnh với phần tử cấu trúc lớn

hơn.

Gọi A là ảnh gốc, B là một phần tử cấu trúc. Phép giãn nhị phân của

ảnh A với phần tử cấu trúc B đƣợc kí hiệu A B và chúng ta có thể biểu diễn

phép toán co ảnh dƣới dạng phép toán tổ hợp nhƣ sau:

* ,( ̂) - +

Phép giãn ảnh nhị phân của tập A bởi phần tử cấu trúc B là tập hợp của

các điểm z (z là tâm của phần tử cấu trúc B trên tập A) sao cho phản xạ của Bz

giao với tập A tại ít nhất một điểm.

Hình 3.6. Giãn ảnh nhị phân

- Áp dụng mặt nạ trên lên đối tƣợng để loại bỏ đi cuống lá.

 Bƣớc 4: Chuẩn hóa hƣớng lá.

Sau khi đã tách đƣợc đối tƣợng ra khỏi nền, ta cần tính toán moment

theo đƣờng biên của lá để có thể xoay lá về một hƣớng chuẩn. Thuật toán

chuẩn hóa hƣớng lá đƣợc thực hiện theo các bƣớc sau:

- Bƣớc 1: chuyển đổi ảnh RGB sang ảnh đa mức xám rồi từ ảnh đa

mức xám đó chuyển sang ảnh nhị phân.

- Bƣớc 2: áp dụng bộ lọc Canny để tìm biên lá

52

- Bƣớc 3: tính toán các giá trị moment

- Bƣớc 3: tính toán hƣớng lá trong ảnh theo công thức

- Bƣớc 4: xoay ảnh về hƣớng dọc theo trục thẳng đứng

+ Xây dựng ma trận chuyển đổi T ( kích thƣớc 2x3) nhƣ sau:

Trong đó:

+ Công thức chuyển đổi trục tọa độ:

Trong đó: w, h là kích thƣớc cột, hàng của ảnh đầu ra.

+ Ảnh sau khi xoay trục sẽ đƣợc tính bằng công thức sau:

53

Hình 3.7. Chuẩn hóa hướng của lá cây. (a): Ảnh lá sau khi được phân

đoạn, chưa chuẩn hóa hướng, (b): Chuyển sang ảnh nhị phân, (c): Xác định

biên lá sử dụng bộ lọc Canny, (d): Ảnh đã được chuẩn hóa hướng.

3.3 Phƣơng pháp đánh giá

Để đánh giá hiệu năng của hệ thống tra cứu, em sử dụng hai độ đo đó là

độ thu hồi (recall) và độ chính xác (precision). Các số đo này đƣợc mƣợn từ

hệ thống tra cứu thông tin truyền thông. Đối với một truy vấn q, tập hợp các

ảnh trong cơ sở dữ liệu thích hợp với truy vấn q đƣợc kí hiệu là R(q) còn kết

quả tra cứu của truy vấn q đƣợc kí hiệu là Q(q).

Độ chính xác (precision) của việc tra cứu đƣợc định nghĩa là tỉ lệ những

kết quả thu đƣợc thực sự thích hợp với truy vấn:

( 3.1)

Độ thu hồi (Recall) là tỉ lệ những kết quả thích hợp do truy vấn trả lại:

(3.2)

Thông thƣờng phải có sự thỏa hiệp giữa hai số đo này bởi vì nếu muốn

tăng cƣờng số đo này thì lại phải chịu giảm số đo kia và ngƣợc lại. Trong các

hệ thống tra cứu điển hình thì độ thu hồi có xu hƣớng tăng lên khi số lƣợng

54

các kết quả thu đƣợc tăng lên trong khi đó thì độ chính xác dƣờng nhƣ lại bị

giảm đi.

Trong ngữ cảnh ứng dụng của hệ thống mà đề tài này hƣớng tới, với

mỗi truy vấn q, tập R(q) chỉ là một ảnh (mỗi mẫu là một loại) trong danh sách

các mẫu lá cây. Khi đó, tập Q(p) chỉ chứa duy nhất một hình ảnh thích hợp

với truy vấn q hoặc không chứa ảnh thích hợp nào. Với mỗi truy vấn, hệ

thống sẽ đƣa ra tập Q(q) gồm k ảnh đƣợc xếp theo mức độ thích hợp. Sau đó,

ngƣời dùng sẽ xem và lựa chọn những ảnh cùng với thông tin về loài cây thực

sự liên quan đến ảnh truy vấn.

Vì đặc thù của hệ thống ứng dụng mà đề tài hƣớng tới nhƣ trên, trong

luận văn này, bƣớc đầu em đánh giá với trƣờng hợp k=1. Khi đó, với mỗi truy

vấn q, ta có |Q(q)| = 1, R(q) = 1. Nếu ta có n truy vấn q1,..., qn thì độ chính

xác và độ thu hồi sẽ là:

(3.3)

3.4 Thử nghiệm và kết quả.

Với mỗi mẫu lá cây thuốc, ta có 10 ảnh với kích thƣớc khác nhau. Các

ảnh có kích thƣớc khác nhau phù hợp với thực tế khi hệ thống hoạt động bởi

vì ngƣời dùng sẽ chụp ảnh lá cây ở khoảng cách khác nhau. Chúng ta chia 10

ảnh thành 2 phần, mỗi phần 5 ảnh. Mỗi phần để xây dựng tập dữ liệu huấn

luyện, một phần để xây dựng bộ dữ liệu đánh giá. Để đánh giá phƣơng pháp

đã lựa chọn, em tiến hành thực hiện phƣơng pháp theo các bƣớc của giai đoạn

huấn luyện và giai đoạn kiểm thử sau:

55

Hình 3.8. Sơ đồ các khối chức năng của giai đoạn huấn luyện

Hình 3.9. Sơ đồ các khối chức năng của giai đoạn kiểm thử

Ta tiến hành thử nghiệm, đánh giá phƣơng pháp lựa chọn (Gradient -

KDES với patch thích nghi [13]) và so sánh với phƣơng pháp KDES gốc [5].

Với mức độ luận văn thạc sĩ của đề tài, chƣơng trình thử nghiệm mới

chỉ đƣợc lập trình để đánh giá trên cả tập ảnh dữ liệu và thử nghiệm nhằm so

sánh và đánh giá phƣơng pháp đƣợc lựa chọn là KDES, chứ chƣa có chƣơng

trình hay bản Demo thử nghiệm trên từng ảnh để so sánh với bộ cơ sở dữ liệu.

Để xử lý dữ liệu kết quả, trong đề tài luận văn này, em sử dụng Matlab

R2016a để xây dựng chƣơng trình kiểm tra và đƣa ra kết quả giúp cho việc

đánh giá phƣơng pháp đã đƣợc đề xuất

56

Hình 3.10: Một phần mã code chương trình

Trong bộ dữ liệu, Chƣơng trình sẽ lấy hình ảnh trong thƣ mục

HuanLuyen để trích trọn đặc trƣng theo trình tự: Tính toán đặc trƣng mức

Pixel, tính toán đặc trƣng mức Patch và tính toán đặc trƣng mức ảnh. với mỗi

phép tính toán đều sử dụng cấu trúc Pyramid để tính toán. Ở mức tính toán

đặc trƣng mức pixel, mỗi lần tính toán theo cấu trúc pyramid sẽ sử dụng 8

pixel vào trong tính toán tƣơng ứng với dòng lệnh: kdes_params.grid = 8; và

sử dụng kích thƣớc Patch là 16: kdes_params.patchsize = 16; và kích thƣớc

ảnh đầu vào nhỏ nhất là 80 và lớn nhất là 1600 pixel:data_params.minsize =

80; data_params.maxsize = 1600;

57

Hình 3.11: quá trình Huấn luyện của chương trình

Hình 3.12: Kết thúc quá trình huấn luyện

58

Hình 3.13: Tính toán số vòng lặp so sánh: Với bộ cơ sở dữ liệu

HuanLuyen gồm 190 ảnh , số vòng lặp được tính toán là 181.

Phân tích kết quả thu đƣợc từ ma trận nhầm lẫn

Hình 3.14: Hình ảnh ma trận nhầm lẫn của phương pháp KDES cải tiến

Toàn bộ kết quả đƣợc lƣu tại: results/Binh1_GradKDES_10.mat

59

Bảng 3.2: So sánh kết quả giữa KDES gốc và phương pháp lựa chọn

(KDES cải tiến).

Phƣơng pháp Precision = Recall

Gradient - KDES gốc 76.30%

Gradient - KDES cải tiến 96 %

Bảng 3.2 trình bày so sánh kết quả thử nghiệm giữa phƣơng pháp

KDES gốc và phƣơng pháp lựa chọn (KDES cải tiến). Ta thấy phƣơng pháp

lựa chọn đạt đƣợc độ chính xác 96% trong khi phƣơng pháp KDES gốc chỉ

đạt đƣợc độ chính xác 76.3%. Phƣơng pháp KDES gốc có độ chính xác thấp

hơn là do vectơ đặc trƣng bị ảnh hƣởng bởi sự thay đổi kích thƣớc ảnh.

Phƣơng pháp KDES cải tiến có véc tơ đặc trƣng bất biến với phép thu phóng

ảnh (dẫn đến kích thƣợc ảnh lá cây thu đƣợc thay đổi). Đồng thời, hiện nay số

lớp lá cây chƣa nhiều (38) và khá phân biệt; Ảnh lá cây đƣợc thu nhận trong

điều kiện nền đơn giản. Do đó, phƣơng pháp KDES cải tiến cho độ chính xác

cao trên tập dữ liệu hiện tại (96%). Khi số lớp lá cây tăng lên và khi điều kiện

thu nhận trong môi trƣờng tự nhiên với phông nền phức tạp, tƣ thế lá cây đa

dạng thì độ chính xác sẽ giảm và cần tiếp tục thử nghiệm, nghiên cứu.

Hình 3.15: Hình ảnh nhầm lẫn ma trận của phương pháp KDES gốc

60

Hình 3.16: Hình ảnh nhầm lẫn ma trân của phương pháp KDES Cải tiến

KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN.

Những kết quả đạt đƣợc

Trong luận văn này, em đã tìm hiểu thực tế, phát hiện nhu cầu, nghiên

cứu, lựa chọn phƣơng pháp và thực nghiệm. Cụ thể, em đã thực hiện các

nhiệm vụ sau:

- Tìm hiểu thực tế và phát hiện nhu cầu nghiên cứu phát triển một hệ

thống tra cứu cây thuốc thuộc khu bảo tồn thiên nhiên Na Hang - Tuyên

Quang.

- Nghiên cứu khảo sát tổng quan về bài toán phân lớp, tra cứu thực vật

sử dụng thông tin hình ảnh nói riêng. Em cũng đã tìm hiểu một số nghiên cứu

trogn lĩnh vự thị giác máy tính có liên quan đến đề tài. Từ đó em đã lựa chọn

phƣơng pháp để áp dụng cho bài toán tra cứu ảnh lá cây. Phƣơng pháp đƣợc

lựa chọn là KDES cải tiến.

- Em đã bƣớc đầu thực hiện đƣợc việc thu thập dữ liệu hình ảnh cũng

nhƣ thông tin về một số loài cây thuộc khu bảo tồn thiên nhiên Na Hang, tỉnh

Tuyên Quang. Do điều kiện hạn chế về tài chính, cơ sở vật chất cũng nhƣ điều

61

kiện di chuyển, em mới chỉ thu thập đƣợc một số lƣợng có hạn mẫu ảnh lá cây

(38 mẫu ảnh trong đó có 23 loài)

- Do điều kiện về thời gian và khuôn khổ của Luận văn thạc sỹ, em mới

chỉ bƣớc đầu tiến hành thử nghiệm trên tập dữ liệu nhỏ để bƣớc đầu đánh giá

phƣơng pháp lựa chọ. Kết quả thử nghiệm cho kết quả tốt trên tập dữ liệu đã

thu thập.

Hƣớng phát triển tiếp theo

Những công việc trong đề tài mới chỉ là bƣớc đầu của quá trình nghiên

cứu phát triển một hệ thống tra cứu lá cây thuộc khu bảo tồn thiên nhiên Na

Hang. Trong tƣơng lai, để tiếp tục thực hiện và hoàn thiện hệ thống , chúng ta

cần thực hiện nhiều nhiệm vụ nghiên cứu phát triển tiếp theo. Trong đó có

một số nhiệm vụ chính cần thực hiện nhƣ sau:

- Tiếp tục thu thập dữ liệu hình ảnh cũng nhƣ thông tin chi tiết hơn về

các loài cây thuộc khu bảo tồn thiên nhiên Na Hang với số lƣợng lớn hơn,

điều kiện thu thập phù hợp với ứng dụng thực tế cuối cùng.

- Thử nghiệm phƣơng pháp lựa chọn treencow sở dữ liệu lớn hơn để

đánh giá và cải tiến nếu cần.Chúng ta cũng cần khảo sát, so sánh với những

phƣơng pháp mới trong lĩnh vực thị giác máy tính để cập nhật, lựa chọn

phƣơng pháp tốt hơn nếu có thể. Ví dụ nhƣ các phƣơng háp sử dụng Deep

learning.

- Nghiên cứu phát triển phƣơng pháp phân đoạn vùng ảnh lá cây để

tách vùng ảnh lá quan tâm ra khỏi ảnh chụp trong ứng dụng nền thực tế cuối

cùng khi ngƣời dùng sử dụng điện thoại di động để chụp ảnh trên thực địa.

- Nghiên cứu phát triển các phƣơng pháp tra cứu thông tin thực vật

không chỉ dựa vào hình ảnh lá cây nữa mà cho phép ngƣời dùng lựa chọn sử

dụng các bộ phận khác của cây với câu truy vấn mềm dẻo.

62

- Tích hợp hệ thống với đầy đủ các chức năng cho phép cập nhật, nâng

cấp cơ sở dữ liệu, thông tin một cách thuận lợi.

60

TÀI LIỆU THAM KHẢO

[1] Nguyễn Thị Hải, N.T.C.T.H.T.N.A.T., Đoàn Thị Phƣơng Lý (2015) Một

số kết quả điều tra, nghiên cứu về nguồn tài nguyên cây thuốc của đồng

bào dân tộc Cao Lan khai thác ở khu rừng đặc dụng Na Hang, tỉnh

Tuyên Quang. Tạp chí khoa học Đại học Tân Trào, 107-114.1

[2] A. Bhardwaj and M. Kaur, “A review on plant recognition and

classification,” Int. J. Eng. Trends Technol., 2013.

[3] Bhardwaj, A. & Kaur, M. (2013). A review on plant recognition and

classification techniques using leaf images. Int J Eng Trends Technol, 86 -

91. 3, 4

[4] Bo, L. & Sminchisescu, C. (2009). Efficient Match Kernel between Sets

of Features for Visual Recognition. NIPS, 19. 19, 20, 21, 22, 25

[5] Bo, L., Ren, X. & Fox, D. (2010). Kernel descriptors for visual

recognition. In NIPS, 244252. 4, 11, 12, 13, 14, 15, 19, 21, 39

[6] A. Bhardwaj and M. Kaur, “A review on plant recognition and

classification,” Int. J. Eng. Trends Technol., 2013.

[7] Cerutti, G., Tougne, L., Sacca, C., Joliveau, T., Mazagol, P.O.,

Coquin, D., Vacavant, A. et al. (2013). Late information fusion for

multimodality plant species identification. CLEF Working Notes. 10

[8] Guillaume Cerutti, J.M.A.V.D.C., Laure Tougne (2011). Guiding active

contours for tree leaf segmentation and identification. In Proceedings of

the Conference on Multilingual and Multimodal Information Access

Evaluation. 10, 11

61

[9] Le, T.L., Tran, D.T. & Pham, N.H. (2014). Kernel descriptor based plant

leaf identification. 4th International Conference on Image Processing

Theory, Tools and Applications. 10, 11

[10] Lowe, D.G. (1999). Object recognition from local scale-invariant

features. In ICCV , vol. 2, 11501157 vol.2. 14, 17

[11] Maji, S., Berg, A.C. & Malik, J. (2008). Classification using intersection

kernel support vector machines is efficient. In Computer Vision and

Pattern Recognition, 2008. CVPR 2008. IEEE Conference on, 1- 8. 19

[12] Maji, S., Berg, A.C. & Malik, J. (2013). Efficient classification for

additive kernel SVMs. IEEE transactions on pattern analysis and

machine intelligence, 35, 66-77. 19

[13] Nguyen, V., Le, T., Tran, T., Mullot, R. & Courboulay, V. (2015).

A new hand representation based on kernels for hand posture

recognition.In 2015 11th IEEE International Conference and Workshops

on Automatic Face and Gesture Recognition (FG), vol. 1, 1-6. 15, 39

[14] Philbin, J., Chum, O., Isard, M., Sivic, J. & Zisserman, A. (2008).

Lost in quantization: Improving particular object retrieval in large scale

image databases. 2008 IEEE Conference on Computer Vision and

Pattern Recognition, 1-8. iv, 24

[15] T.-L. Le, N.-D. Duong, V.-T. Nguyen, and H. Vu, “Complex

Background Leaf-based Plant Identification Method Based on Interactive

Segmentation and Kernel Descriptor,” in 2nd International Workshop on

Environmental Multimedia. In Conjunction with ACM Conference on

Multimedia Retrieval (ICMR) 2015., 2015.

62

[16] Vedaldi, A. & Zisserman, A. (2012). Efficient additive kernels via

explicit feature maps. IEEE transactions on pattern analysis and machine

intelligence, 34, 480-92. 19

[17] X.-F. W. G.-J. Z. Du J.-X., “Leaf shape based plant species recognition,”

Appl. Math. Comput., pp. 883–893, 2007.

[18] X.-F. Wang, D.-S. Huang, J.-X. Du, H. Xu, and L. Heutte,

“Classification of plant leaf images with complicated background,” Appl.

Math. Comput., vol. 205, no. 2, pp. 916–926, 2008.