Bài viết đề xuất xây dựng mô hình “Nhận dạng cua giống” trên nền thiết bị di động, trước mắt là các thiết bị chạy hệ điều hành Android. Mô hình nhận dạng được xây dựng dựa trên giải thuật Boosting phân tầng có sử dụng đăc trưng Haar-like. Thông qua ảnh chụp từ thiết bị di động (ví dụ, chụp ảnh chậu chứa cua giống), hệ thống sẽ lọc nhiễu theo phương pháp lọc trung vị (Median Filter) để nâng cao chất lượng ảnh, loại bỏ các chi tiết không cần thiết. Mời các bạn cùng tham khảo!
Trang 1Hệ Thống Hỗ Trợ Nông Dân Trên Thiết Bị Di Động:
Nhận Dạng Cua Giống Nguyễn Thiện An và Nguyễn Thái Nghe Khoa CNTT&TT, Trường Đại học Cần Thơ Email: ntankg@gmail.com; ntnghe@cit.ctu.edu.vn
Tóm tắt - Bài viết này là một phần trong giải pháp xây dựng hệ
thống hỗ trợ nông dân trên thiết bị di động mà nhóm chúng tôi
đề xuất Trong phạm vi của nghiên cứu này, chúng tôi đề xuất
xây dựng mô hình “Nhận dạng cua giống” trên nền thiết bị di
động, trước mắt là các thiết bị chạy hệ điều hành Android Mô
hình nhận dạng được xây dựng dựa trên giải thuật Boosting phân
tầng có sử dụng đăc trưng Haar-like Thông qua ảnh chụp từ
thiết bị di động (ví dụ, chụp ảnh chậu chứa cua giống), hệ thống
sẽ lọc nhiễu theo phương pháp lọc trung vị (Median Filter) để
nâng cao chất lượng ảnh, loại bỏ các chi tiết không cần thiết Kế
đến, dựa trên đặc trưng Haarlike kết hợp với giải thuật Boosting
phân tầng, hệ thống sẽ nhận dạng và đếm số lượng cua giống có
trong ảnh Kết quả thực nghiệm bước đầu đã cho thấy việc nhận
dạng cua giống dựa trên mô hình đã xây dựng là rất khả quan
Mô hình này sẽ được cải tiến hơn nữa để có thể áp dụng vào thực
tế
Từ khóa- Xử lý ảnh, thị giác máy tính, đặc trưng Haar-like, nhận
dạng cua giống, nhận dạng trên thiết bị di động
I GIỚI THIỆU Đồng bằng sông Cửu Long là vùng rất phát triển nghề nuôi
trồng thuỷ sản Đặc biệt, ở một số tỉnh giáp biển như: Cà Mau,
Bạc Liêu, Kiên Giang, Trà Vinh,… do đất sản xuất bị nhiễm
mặn nên việc trồng lúa nước cho sản lượng không cao, chất
lượng lại thấp Vì vậy, từ nhiều năm nay nghề nuôi thuỷ sản
nơi đây đã trở thành nghề chủ đạo thay cho trồng lúa nước,
trong đó nuôi cua biển là ngành kinh tế mang lại thu nhập khá
cao cho nông dân
Hàng năm, khi đến thời điểm thả con giống, người nông dân
thường ra trại cua (là nơi sản xuất cua con) để mua cua giống
(cua con, kích thước nhỏ, như minh họa trong Hình 1 phần
trên) về nuôi Cua giống có kích thước nhỏ nhưng lại được
bán theo đơn vị “con” và cách xác định số lượng chủ yếu là
đếm và ước lượng là chính Do đó, số lượng cua thực tế sẽ ít
hơn số lượng cua được ước lượng rất nhiều Chẳng hạn, nếu
người mua muốn mua 1000 con, người bán sẽ đếm 100 con
cho vào một chậu nhỏ làm “chậu mẫu”, sau đó dùng 1 chậu
khác có kích thước giống chậu mẫu và cho cua vào đó đến khi
thấy màu sắc, số lượng giống như chậu mẫu thì xem như chậu
đó cũng chứa 100 con, như minh họa trong Hình 1 (trên) Lặp
lại tương tự với các chậu khác cho đến khi đủ 10 chậu, tức là
đã đủ 1000 con
Qua tìm hiểu từ những người nông dân có kinh nghiệm thì tỷ
lệ cua được mua thực tế khoảng 80% so với tỷ lệ ước lượng
Tức là khi người mua mua 1000 con thì số lượng thực tế chỉ
khoảng 800 con, điều này đã gây thiệt thòi khá nhiều cho nông
dân, mặc dù người bán cũng đã có “bù thêm” một số lượng
cho mỗi lần bán Chính vì thế, người dân đang rất cần một phương pháp hiệu quả hơn
Bên cạnh đó, công nghệ Xử lý ảnh và Thị giác máy tính đã được áp dụng rộng rãi trong rất nhiều lĩnh vực, như: Y học, Giáo dục, Thiên văn, Công nghiệp, Nông nghiệp,…Một số ứng dụng tiêu biểu như: Xử lý ảnh trong Y học (McAuliffe et al., 2001) (Pierre et al., 2002), xử lý ảnh vệ tinh trong Thiên văn (John R Jensen and Dr Kalmesh Lulla, 1987), nhận dạng dấu vân tay trong Khoa học Hình sự (Hong L., Yifei Wan, Jain A., 1998), nhận dạng mặt người (Châu Ngân Khánh, Đoàn Thanh Nghị, 2014), nhận dạng chữ viết tay (Phạm Anh Phương et al., 2009), nhận dạng biển số xe (Nguyễn Thái Nghe et al., , 2014), nhận dạng biển báo giao thông (Bahlmann
et al., 2005), Robot thu hoạch nông sản trong Nông nghiệp (Bulanon et al., 2002) (Wei et al., 2012),…
Hình 1 Cua giống được đếm khi bán (ảnh trên) và cua trưởng
thành (ảnh dưới)
ISBN: 978-604-67-0635-9
Trang 2Từ những phân tích trên, chúng tôi thấy rằng việc áp dụng
công nghệ xử lý ảnh vào Nông nghiệp, đặc biệt là ngành nuôi
trồng Thuỷ sản là rất cần thiết nhưng vẫn chưa được nghiên
cứu tốt
Trong bài viết này, chúng tôi đề xuất xây dựng mô hình “Nhận
dạng và đếm số lượng cua giống” trên thiết bị di động nhằm
hỗ trợ nông dân một cách đếm khác thay cho cách đếm truyền
thống khi đi mua cua giống Đây cũng là cách giúp người
Nông dân bảo vệ quyền lợi cũng như tạo ra sự công bằng khi
mua bán
II CÁC NGHIÊN CỨU LIÊN QUAN
Nhận dạng là lĩnh vực đang rất được quan tâm trong nghiên
cứu khoa học cũng như thương mại Kết quả của các công
trình nghiên cứu về nhận dạng đã được thương mại hoá trong
các sản phẩm điện tử tiêu biểu như: máy ảnh kỹ thuật số, điện
thoại thông minh,… với tính năng xác định gương mặt, nụ
cười khi chụp ảnh Hay chức năng Tag ảnh trong các mạng xã
hội nổi tiếng như: Facebook, Twitter, Instagram,… với chức
năng nhận dạng gương mặt Ngoài ra, còn rất nhiều nghiên
cứu khoa học về nhận dạng như: nhận dạng chữ viết tay, nhận
dạng biển số xe, nhận dạng mặt người…
Trong rất nhiều nghiên cứu về nhận dạng vẫn chưa thấy
nghiên cứu nào liên quan đến vấn đề nhận dạng cua giống
trong ngành nuôi trồng Thuỷ sản Vì vậy mô hình “Nhận dạng
cua giống” sẽ góp phần làm phong phú thêm các lĩnh vực có
thể áp dụng kỹ thuật nhận dạng và đặc biệt là việc ứng dụng
công nghệ cao phục vụ Nông Nghiệp - Nông dân – Nông thôn
III ĐẶC TRƯNG HAAR-LIKE VÀ GIẢI THUẬT
BOOSTING PHÂN TẦNG
A Đặc trưng Haar-like
Đặc trưng Haar-like (Paul A Viola and Michael J Jones,
2001) được sử dụng trong việc nhận da ̣ng đối tượng trong ảnh
số Mỗi đặc trưng Haar-like là sự kết hợp gồm 2 hoặc 3 hình
chữ nhật đen, trắng với nhau theo một trật tự, một kích thước
nào đó Những khối chữ nhật này thể hiện sự liên hệ tương
quan giữa các bộ phận trong ảnh mà bản thân từng giá tri ̣ pixel
không thể diễn đa ̣t được Có 4 đặc trưng Haar-like cơ bản thể
hiện ở Hình 2 như sau
Hình 2 Đặc trưng Haar-like cơ bản
Từ 4 đặc trưng cơ bản, đặc trưng Haar-like còn được mở rộng
thành nhóm các đặc trưng đường, đặc trưng cạnh, đặc trưng
tâm (Lienhart, Kuranov, Pisarevky, 2002; Lienhart, Maydt,
2002)
Hình 3 Các đặc trưng Haar-like mở rộng Giá tri ̣ của đặc trưng Haar-like là sự chênh lệch giữa tổng các điểm ảnh của các vùng đen và các vùng trắng theo công thức:
f(x)=Sum black rectangle (pixel gray level) – Sum white rectangle (pixel gray level)
Như vậy, để tính toán các giá trị của đặc trưng Haar-like ta phải tính tổng các vùng pixel trên ảnh Nếu muốn tính các giá trị của các đặc trưng cho tất cả các vùng trên ảnh ta phải tốn chi phí tính toán khá lớn, không thể đáp ứng cho các ứng dụng chạy thời gian thực Do đó, để có thể tính nhanh các đặc trưng này, Viola và Jones (2001; 2004) giới thiệu khái niệm ảnh tích phân (Integral Image) Integral Image là một mảng hai chiều với kích thước bằng kích thước của ảnh cần tính giá tri ̣ đặc trưng Haar-like, với mỗi phần tử của mảng này được tính bằng cách tính tổng của điểm ảnh phía trên (dòng-1) và bên trái (cột-1) của nó Bắt đầu từ vị trí trên, bên trái đến vị trí dưới, bên phải của ảnh, việc tính toán này đơn thuần chỉ dựa trên phép cộng số nguyên đơn giản, do đó tốc độ thực hiện rất nhanh
Hình 4 Tính giá trị ảnh tích phân tại điểm có toạ độ P(x,y) Giá trị của điểm P có toạ độ (x,y) được tính theo công thức sau:
Sau khi đã tính được ảnh tích phân, việc tính tổng giá trị mức xám của vùng ảnh bất kỳ nào đó ta tính được dễ dàng như sau: Giả sử ta cần tính tổng giá trị mức xám của vùng D như trong Hình 5, ta tính như sau:
D = A + B + C + D – (A+C) – (A+B) + A
Hình 5 Tính nhanh giá trị mức xám vùng ảnh D
Trang 3<Tên_ảnh_1> <số_đối_tượng> <x1 y1 width height>
<x2 y2 width height> <…>
…
<Tên_ảnh_n> <số_đối_tượng> <x1 y1 width height>
<x2 y2 width height> <…>
Với A+B+C+D là giá trị tại điểm P4 trên Integral Image,
tương tự như vậy A+C là giá trị tại điểm P3, A+B là giá trị tại
điểm P2, và A là giá trị tại điểm P1 Vậy ta có thể viết lại biểu
thức tính D ở trên như sau:
𝐷𝐷 = (𝑥𝑥4, 𝑦𝑦4) − (𝑥𝑥3, 𝑦𝑦3) − (𝑥𝑥2, 𝑦𝑦2) + (𝑥𝑥1, 𝑦𝑦1)
B Thuật toán Adaboost
Thuật toán Adaboost (Adaptive Boosting) là thuật toán máy
học được cải tiến từ thuật toán Boosting (Freund, Schapire,
1995) được giới thiệu vào năm 1995 Adaboost là một bộ phân
loại phi tuyến phức, hoạt động theo nguyên tắc kết hợp tuyến
tính các bộ phân lớp yếu (weak classifiers) thành một bộ phân
lớp mạnh (Strong Classifiers) AdaBoost sử dụng trọng số để
đánh dấu các mẫu khó nhận da ̣ng Trong quá trình huấn luyện
cứ mỗi bộ phân loa ̣i yếu được xây dựng thì thuật toán sẽ tiến
hành cập nhật la ̣i trọng số để chuẩn bi ̣ cho việc xây dựng bộ
phân loa ̣i tiếp theo Cập nhật bằng cách tăng trọng số của các
mẫu nhận da ̣ng sai và giảm trọng số của các mẫu được nhận
da ̣ng đúng bởi bộ phân loa ̣i yếu vừa xây dựng Bằng cách này
thì bộ phân loa ̣i sau có thể tập trung vào các mẫu mà bộ phân
loa ̣i trước nó làm chưa tốt Cuối cùng các bộ phân loa ̣i yếu sẽ
được kết hợp la ̣i tùy theo mức độ tốt của chúng để ta ̣o nên một
bộ phân loa ̣i ma ̣nh
Bộ phân loại hk được biểu diễn như sau:
ℎ𝑘𝑘(𝑥𝑥) = {1 𝑛𝑛ế𝑢𝑢 𝑝𝑝𝑘𝑘𝑓𝑓𝑘𝑘(𝓍𝓍) < 𝑝𝑝𝑘𝑘𝜃𝜃𝑘𝑘
0 𝑛𝑛ế𝑢𝑢 𝑛𝑛gược 𝑙𝑙ạ𝑖𝑖 Với x là cửa sổ con cần xét, 𝜃𝜃𝑘𝑘 là ngưỡng, 𝑓𝑓𝑘𝑘 là giá trị đặc
trưng Haar-like và 𝑝𝑝𝑘𝑘 hệ số quyết định chiều của phương trình
(Châu Ngân Khánh, Đoàn Thanh Nghị, 2014)
C Mô hình phân tầng Cascade
Mô hình phân tầng Cascade (Cascade of Boosted Classifiers)
là mô hình phân tầng với mỗi tầng là một mô hình AdaBoost
sử dụng bộ phân lớp yếu là cây quyết đi ̣nh với các đặc trưng
Haar-like
Trong quá trình huấn luyện, bộ phân lớp phải duyệt qua tất cả
các đặc trưng của mẫu trong tập huấn luyện Việc này tốn rất
nhiều thời gian Tuy nhiên, trong các mẫu đưa vào, không phải
mẫu nào cũng thuộc loa ̣i khó nhận da ̣ng, có những mẫu
background rất dễ nhận ra (go ̣i đây những mẫu background
đơn giản) Đối với những mẫu này, chỉ cần xét một hay một
vài đặc trưng đơn giản là có thể nhận da ̣ng được chứ không
cần xét tất cả các đặc trưng Nhưng đối với các bộ phân loa ̣i
thông thường thì cho dù mẫu cần nhận da ̣ng là dễ hay khó nó
vẫn phải xét tất cả các đặc trưng mà nó rút ra được trong quá
trình học Do đó, chúng tốn thời gian xử lý một cách không
cần thiết
Mô hình Cascade of Classifiers được xây dựng nhằm rút ngắn
thời gian xử lý, giảm thiểu nhận da ̣ng lầm (False Alarm) cho
bộ phân loại Cascade trees gồm nhiều tầng (stage hay còn go ̣i
là layer), mỗi tầng là một mô hình AdaBoost với bộ phân lớp
yếu là các cây quyết đi ̣nh Một mẫu để được phân loa ̣i là đối
tượng thì nó cần phải đi qua hết tất cả các tầng Các tầng sau
được huấn luyện bằng những mẫu âm (Negative – không chứa
đối tượng nhận diện) mà tầng trước nó nhận da ̣ng sai, tức là nó sẽ tập trung học từ các mẫu background khó hơn, do đó sự kết hợp các tầng AdaBoost này la ̣i sẽ giúp bộ phân loa ̣i giảm thiểu nhận dạng lầm Với cấu trúc này, những mẫu background dễ nhận dạng sẽ bi ̣ loa ̣i ngay từ những tầng đầu tiên, giúp đáp ứng tốt nhất thời gian xử lý và vẫn duy trì được hiệu quả phát hiện đối tượng (Châu Ngân Khánh, Đoàn Thanh Nghị, 2014)
Hình 6 Mô hình Cascade of Boosted Classifiers (Javier,
2006)
IV ĐỀ XUẤT MÔ HÌNH NHẬN DẠNG
Hệ thống “Nhận dạng và đếm số lượng cua giống” được xây
dựng qua 2 bước Thứ nhất, xây dựng mô hình nhận dạng đối
tượng sử dụng giải thuật Boosting phân tầng và đặc trưng
Haar-like Thứ hai, triển khai mô hình đã xây dựng lên thiết bị
di động nền tảng Android để nhận dạng và đếm số lượng cua giống
A Xây dựng mô hình nhận dạng cua giống
Quy trình nhận dạng cua giống thông qua các bước chính như
mô tả trong Hình 7
Hình 7: Mô hình nhận dạng cua giống
Để hệ thống nhận dạng được đối tượng, trước hết cần phải thu thập dữ liệu đầu vào để tạo tập dữ liệu học Trong bài viết này,
dữ liệu đầu vào chính là ảnh cua giống Có 2 lớp ảnh cần thu thập là lớp dương (Positive - ảnh chứa cua giống) và lớp âm (Negative - ảnh bất kỳ nhưng không chứa cua giống) Ảnh lớp dương được cắt ra sao cho mỗi ảnh chỉ chứa 1 đối tượng Chúng tôi sử dụng 1.460 ảnh có kích thước 20x20 pixels làm lớp dương và 12.638 ảnh kích thước 320x240 pixels làm lớp
âm
Khi đã có đủ 2 lớp ảnh, chúng tôi thực hiện giai đoạn tạo mẫu theo các bước được trình bày dưới đây
Bước 1: Tạo tập tin mô tả đối tượng lớp dương, đây là tâp tin
Trang 4<Tên_ảnh_1>
…
<Tên_ảnh_n>
text có cấu trúc:
Trong đó:
- Tên_ảnh_1, Tên_ảnh_n: ảnh thứ nhất, ảnh thứ n có
chứa đối tượng
- Số_đối_tượng: số lượng đối tượng có trong ảnh
- x1, y1: toạ độ (tính từ góc trên bên trái) của đối tượng
thứ nhất
- width, height: chiều rộng, cao của hình chữ nhật bao
quanh đối tượng
Tập tin mô tả đối tượng sau khi tạo có cấu trúc như Hình 8:
Hình 8 Tập tin mô tả đối tượng lớp dương
Bước 2: Tạo tập tin mô tả đối tượng lớp âm, đây là tập tin
dạng text chứa tên ảnh có cấu trúc:
Tập tin mô tả đối tượng sau khi tạo có cấu trúc như Hình 9:
Hình 9 Tập tin mô tả đối tượng lớp âm
Trong đó:
- Tên_ảnh_1: tên ảnh âm thứ nhất
- Tên_ảnh_n: tên ảnh âm thứ n
Bước 3: Tạo mẫu bằng tiện ích opencv_createsamples và
createtrainsamples.pl:
Tiện ích createtrainsamples.pl được viết bởi Natoshi Seo
năng xoay ảnh theo các trục x, y, z để vét cạn các trường hợp
khi đối tượng trong ảnh không nằm theo hướng thẳng đứng
Câu lệnh:
$ perl createtrainsamples.pl positive.txt negative.text vec 7000
“./opencv_createsamples -w 20 -h 20”
Trong đó:
- createtrainsamples.pl: tiện ích xoay ảnh khi tạo mẫu
- positive.txt, negative.txt: tập tin mô tả đối tượng lớp
dương và lớp âm được tạo ở Bước 2
- vec: thư mục chứa tập tin kết quả
- 7000: số lượng mẫu
- opencv_createsamples: tiện ích tạo mẫu của thư viện
OpenCV
- -w 20 -h 20: kích thước chiều rộng, cao của ảnh
Sau khi thực hiện Bước 3 chúng tôi thu được các tập tin
*.vec trong thư mục vec
Bước 4: Tạo tập tin mô tả các tập tin *.vec tương tự như cách
tạo tập tin mô tả đối tượng lớp âm ở Bước 2 Sau bước này
chúng tôi thu được tập tin vec.txt
Bước 5: Sử dụng chương trình mergevec.cpp được viết bởi
Natoshi Seo (http://note.sonots.com/) để kết hợp các tập tin
*.vec với nhau thành một tập tin vector phục vụ cho bước
huấn luyện Câu lệnh:
$ mergevec vec.txt samples.vec
Trong đó:
- mergevec: tên chương trình kết nối tập tin *.vec
- vec.txt: tập tin mô tả các tập tin *.vec
- samples.vec: tập tin kết quả
Bước 6: Huấn luyện dữ liệu học cho mô hình từ tập tin
samples.vec được tạo ở Bước 5 Chúng tôi sử dụng tiện ích
opencv_traincascade trong thư viện OpenCV để huấn luyện Câu lệnh:
$ /opencv_traincascade -data trainCascade -vec samples.vec -bg negative.txt -numPos 7000 -numNeg 12638 -numStages 25 w 20 h 20 minHitRate 0.995 maxFalseAlarmRate 0.5 -percalcValBufSize 2000 -percalcIdxBufSize 2000 -mode ALL
Trong đó:
- opencv_traincascade: tên chương trình huấn luyện dữ
liệu
- -data trainCascade: thư mục chứa tập tin kết quả
- -vec samples.vec: tập tin vector tạo ở Bước 5
- -bg negative.txt: tập tin mô tả đối tượng lớp âm được
tạo ở Bước 2
- -numPos 7000: số lượng mẫu lớp dương
- -numNeg 12638: số lượng mẫu lớp âm
- -numStage 25: số bước huấn luyện
- -w 20 –h 20: kích thước rộng, cao của ảnh
- minHitRate 0.995: tỷ lệ nhận dạng đúng thấp nhất
- -maxFalseAlarmRate 0.5: tỷ lệ cảnh báo sai cao nhất
- -percalcValBufSize 2000, -percalcIdxBufSize 2000: tỷ lệ
Ram (MB) được sử dụng khi huấn luyện dữ liệu
Khi quá trình huấn luyện kết thúc, chúng tôi thu được tập tin
cascade.xml Đây là tập tin chứa dữ liệu học để giúp hệ thống
nhận dạng đối tượng khi triển khai xây dựng hệ thống Tập tin
cascade.xml có cấu trúc như Hình 10:
Trang 5Hình 10 Cấu trúc tập tin cascade.xml
B Xây dựng hệ thống nhận dạng và đếm cua giống
Mô hình tổng quát của hệ thống Nhận dạng và đếm số
lượng cua giống được mô tả như Hình 11:
Hình 11 Mô hình tổng quát của hệ thống Nhận dạng và
đếm số lượng cua giống Sau khi xây dựng xong mô hình nhận dạng, chúng tôi cài đặt
mô hình vào ứng dụng chạy trên thiết bị di động, trước mắt là
hệ điều hành Android do các thiết bị chạy Android khá phổ
biến và giá thành cũng phù hợp với phần lớn người dùng, đặc
biệt là nông dân
Sau khi cài đặt, ứng dụng cho phép người dùng chụp ảnh chậu
chứa cua giống và lưu ảnh vào bộ nhớ điện thoại Sau đó, hệ
thống thực hiện tiền xử lý ảnh bằng các phép toán lọc ảnh để
khử nhiễu trước khi tiến hành nhận dạng Kết quả đầu ra của
hệ thống là số lượng cua giống được xác định sau khi nhận
dạng bằng mô hình do chúng tôi xây dựng
V KẾT QUẢ MINH HỌA
Trong giai đoạn xây dựng và huấn luyện mô hình, chúng tôi
dùng 12638 ảnh âm (ảnh bất kỳ không phải con cua) và 1460
ảnh dương (các con cua) để trích xuất 7000 đặc trưng phục vụ
quá trình huấn luyện Sau khi huấn luyện xong, mô hình được
triển khai trên thiết bị di động chạy hệ điều hành Android
Từ ảnh chụp các con cua trong chậu, hệ thống tự động nhận
dạng, đếm và hiển thị số con như minh họa trong Hình 12
Trong hình này, hệ thống đã nhận dạng và đếm là 356 con
Trong đó nhận dạng đúng là 334 con, nhận dạng nhầm là 22
con trong tổng số lượng cua thực tế trong ảnh là 375, với độ
chính xác tương ứng là 89% Để độ chính xác được khách
quan hơn, người sử dụng có thể chụp nhiều lần ở nhiều góc độ
khác nhau, sau đó hệ thống sẽ cho kết quả trung bình trên số
ảnh đã chụp
Hình 12 Kết quả nhận dạng và đếm cua giống Những con
đã được hệ thống nhận dạng được bao trong ô hình chữ nhật Hình 13 minh hoạ kết quả nhận dạng khi chụp cùng bức ảnh ở Hình 12 nhưng ở góc độ nghiêng Hệ thống nhận dạng đúng
245 con trong số 270 con được nhận dạng (ảnh thực là 375 con) Tuy nhiên độ chính xác thấp hơn nhiều (đạt 65.33%) do một đối tượng bị khuất hoặc quá nhỏ Yếu tố (chủ quan) này
sẽ được khắc phục đơn giản bằng cách hướng dẫn người dùng chụp trực diện hình ảnh thay vì chụp nghiêng để có kết quả tốt hơn
Thử nghiệm trong môi trường thực tế, chúng tôi đã chụp 9 ảnh sau đó lấy kết quả trung bình, độ chính xác đạt 81.86% Chúng tôi sẽ tiếp tục việc kiểm thử trên nhiều ảnh khác trong tương lai
VI KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Chúng tôi đã đề xuất xây dựng mô hình Nhận dạng cua giống trên thiết bị di động dựa trên giải thuật Boosting phân tầng và đặc trưng Haar-like Nghiên cứu này sẽ là tiền đề cho các nghiên cứu ứng dụng công nghệ cao để phục vụ Nông nghiệp – Nông dân – Nông thôn, đặc biệt là các ứng dụng trên nền thiết bị di động Kết quả bước đầu đã cho thấy mô hình đề
Trang 6xuất là rất khả thi, mặc dù độ chính xác của mô hình chưa
được như mong muốn
Chúng tôi sẽ tiếp tục cải tiến các thuật toán và tập dữ liệu học
để tăng độ chính xác cho kết quả nhận dạng Sau đó phát triển
trên các hệ điều hành thông dụng khác như iOS, Windows
Phone
Hình 13 Minh họa kết quả nhận dạng và đếm cua giống
khi chụp ở góc nghiêng
TÀI LIỆU THAM KHẢO
1 Bahlmann C., Ying Zhu, Ramesh V., Pellkofer M., Koehler T.,
2005 A system for traffic sign detection, tracking, and
recognition using color, shape, and motion information
Intelligent Vehicles Symposium, IEEE: 255-260
2 Bulanon D.M., Kataoka T., Ota Y., Hiroma T., 2002 Automation and Emerging Technologies: A Segmentation Algorithm for the Automatic Recognition of Fuji Apples at Harvest Biosystems Engineering 83(4): 405-412
3 Châu Ngân Khánh, Đoàn Thanh Nghị, 2014 Nhận dạng mặt người với giải thuật Haar Like Feauture – Cascade of Boosted Classifiers và đặc trưng SIFT Tạp chí khoa học Đại học An Giang 3(2): 15-24
4 Freund, Y., Robert E.Schapire, 1995 A decision- theoretic generalization of on-line learning and an application to boosting AT&T Labs, New Jersey
5 Hong L., Yifei Wan, Jain A., 1998 Fingerprint image enhancement: algorithm and performance evaluation Pattern Analysis and Machine Intelligence, IEEE Transactions 8:
777-789
6 Javier Ruiz-del-Solar, Rodrigo Verschae, 2006 Object detection using cascades of boosted classifiers Universidad de Chile, Chile
7 John R Jensen and Dr Kalmesh Lulla, 1987 Introductory digital image processing: A remote sensing perspective Geocarto International 1: 65
8 Lienhart, R., Kuranov, A., & Pisarevsky, V., 2002 Empirical Analysis of Detection Cascades of Boosted Classifiers for Rapid Object Detection Microprocessor Research Lab, USA
9 Lienhart, R., Maydt, R., 2002 An Extended Set of Haar-like Features for Rapid Object Detection Intel Labs, Intel Corporation, Santa Clara, USA
10 McAuliffe M.J., Lalonde F.M., McGarry D., Gandler W., Csaky K., Trus B.L, 2001 Medical Image Processing, Analysis and Visualization in clinical research Computer-Based Medical Systems, IEEE Symposium: 381-386
11 Nguyễn Thái Nghe, Nguyễn Văn Đồng, Võ Hùng Vĩ, 2014 Một giải pháp trong xây dựng hệ thống hỗ trợ giữ xe thông minh Tạp chí khoa học Trường Đại học Cần Thơ 35: 17-30
12 Paul A Viola and Michael J Jones, 2001 Rapid Object Detection using a Boosted Cascade of Simple Features IEEE Conference on Computer Vision and Pattern Recognition
13 Phạm Anh Phương, Ngô Quốc Tạo, Lương Chi Mai, 2009 Kết hợp các bộ phân lớp SVM cho việc nhận dạng chữ Việt viết tay rời rạc Tạp chí Tin học và Điều khiển học 25(1): 88-97
14 Pierre Jannin, J Michael Fitzpatrick, David Hawkes, Xavier Pennec, Ramin Shahidi, et al , 2002 Validation of medical image processing in image-guided therapy IEEE Transactions
on Medical Imaging, Institute of Electrical and Electronics Engineers (IEEE) 21(12): 1445-9
15 Viola, P., Jones, M., 2001 Robust Real-time Object Detection International Journal of Computer Vision
16 Viola, P., Jones, M., 2004 Robust Real-time Face Detection International Journal of Computer Vision, Netherlands
17 Wei Ji, Dean Z., Fengyi C., Bo Xu, Ying Z., Jinjing Wan, 2012 Automatic recognition vision system guided for apple harvesting robot Computers &Electrical Eng., 38(5):
1186-1195