Bài viết trình bày việc nghiên cứu bài toán phân đoạn đối tượng trên video và đề xuất cải tiến các thuật toán có sẵn để tăng cường độ chính xác và cải thiện tốc độ. Áp dụng kĩ thuật phân đoạn video để xây dựng ứng dụng sử dụng thông tin video và hình ảnh nhằm tạo ra môi trường trải nghiệm mới cho khách du lịch.
Trang 1ỨNG DỤNG TƯƠNG TÁC VÀ TĂNG CƯỜNG TIỆN ÍCH TRÊN THIẾT BỊ DI ĐỘNG
SỬ DỤNG TÌM KIẾM VÀ PHÂN ĐOẠN HÌNH ẢNH Nguyễn Phan Mạnh Hùng*, Đinh Quang Hiếu
Trường Đại học Khoa học Tự nhiên – Đại học Quốc gia Tp Hồ Chí Minh
*Tác giả liên hệ: nguyenphanmanhung@gmail.com
TÓM TẮT
Khám phá và chia sẻ trải nghiệm từ lâu đã là một trong những nhu cầu thiết yếu của con người Từ xa xưa con người đã phát triển và sử dụng những cách thức khác nhau nhằm chia
sẻ trải nghiệm của bản thân như nhật kí hải trình, sách, tranh, ảnh Sự phát triển bùng nổ của các thiết bị kĩ thuật số và công nghệ thông tin từ đầu thế kỉ 21 tới nay đã và đang thay đổi thói quen chia sẻ của con người Bên cạnh đó, bước tiến mạnh mẽ của các thiết bị di động giúp chúng ta có thể dễ dàng lưu trữ và chia sẻ những khoảnh khắc bên người thân, bạn bè Hàng loạt các ứng dụng cũng được phát triển để kịp thời đáp ứng nhu cầu đó như các trang mạng xã hội như facebook, twitter, instagram… Nắm bắt được nhu cầu đó nhóm quyết định nghiên cứu và phát triển ứng dụng trên nền tảng di động kết hợp với việc sử dụng các công nghệ, kĩ thuật mới bao gồm thực tại tăng cường, phân đoạn đối tượng trong video, tìm kiếm ảnh nhằm đem lại trải nghiệm độc đáo và hỗ trợ không chỉ người dùng cơ bản mà còn người dùng là các doanh nghiệm trong việc xây dựng những nội dung số mới lạ, sáng tạo
Từ khóa: Phân đoạn đối tượng, tìm kiếm kỉ niệm, thực tại tăng cường
INTERACTIVE APPLICATIONS AND STRENGTHS OF UTILITY ON MOBILE
DEVICE USING SEARCH AND PHOTOGRAPHY DISTRIBUTION
Nguyen Phan Manh Hung*, Đinh Quang Hieu
University of Science – VNU Ho Chi Minh City
*Corresponding Author: nguyenphanmanhhung@gmail.com
ABSTRACT
According to recent statistics of the Institute of Mental Health Central, the number of people with mental health problems is 15-20% of the population in Viet Nam In the US, the number
of people who are experiencing the phenomenon of mental health disorders in a year is 61.5 million, ie for 4 people, 1 people with the disease This poses an urgent problem for science, find solutions and reduce the symptoms of nerve Galvanic Skin Response Equipment launched, the aim is determined based on the psychological changes in human skin sweat This research focuses on the use OPAMP, sensor circuit design to get the signal "change the resistance of the skin", then transmit signals to KIT FRDM-KL46Z, for handling and identification of human emotions The study focused on KIT Freescale platform with the processor inside the ARM Cortex M0 + With psychological state analysis device opens psychological treatments more effective, device costs a lot cheaper products than overseas
Keywords: Audience segments, search for memories, enhanced reality
TỒNG QUAN
Từ xưa đến nay con người luôn thích được
khám phá và chia sẻ những trải nghiệm của
mình khi đi du lịch Cùng với việc các khu
du lịch, trung tâm vui chơi giải trí, khu sinh
thái, các thành phố lớn ngày càng mọc lên
nhiều để phục vụ cho nhu cầu khám phá và
trải nghiệm khiến cho nhu cầu đó ngày càng
tăng cao Cùng lúc đó, sự phát triển vượt bậc
của công nghệ thông tìn đã mang lại nhiều sự
thay đổi lớn trong trải nghiệm của người du
lịch Bên cạnh đó, sự phát triển của các thiết
bị kĩ thuật, công nghệ cao như máy ảnh kĩ thuật số, điện thoại và sự hỗ trợ mạnh mẽ của các ứng dụng trên nền tảng được phát triển bởi cộng đồng công nghệ rộng lớn cùng với các doanh nghiệp đã giúp cho việc chia sẻ những trải nghiệm trở nên dễ dàng, sáng tạo,
và hứng thú hơn bao giờ hết
Nắm bắt được nhu cầu này, nhóm quyết định tập trung vào việc nghiên cứu và phát triển một hệ thống thông minh trên nền tảng di
Trang 2động, tận dụng những công nghệ và kĩ thuật
mới như thực tại tăng cường, các thuật toán
hỗ trợ phân đoạn đối tượng trên video, đồng
thời cho phép người dùng tìm kiếm lại những
kĩ niệm cũ bằng hình ảnh
Lý do nhóm chọn phát triển hệ thống trên
nền tảng di động bởi thiết bị di động, đặc biệt
là điện thoại thông minh ngày càng trở nên
phổ biến Hơn nữa, điện thoại là thiết bị
không thể thiếu trong quá trình du lịch nhằm
giúp du khách có thể lưu giữ lại những
khoảnh khắc, kỉ niệm và chia sẻ với mọi
người một cách dễ dàng Tuy nhiên, hiện nay
có rất nhiều ứng dụng được phát triển nhằm
hỗ trợ du lịch với nhiều tính năng đa dạng
Tuy vậy, có thể thấy rằng các ứng dụng hiện
nay khá giống nhau và không sở hữu những
đặc trưng cần thiết để có thể thu hút người
dùng mới Điều này phần nào làm hạn chế trải nghiệm của người dùng Do vậy, nhóm quyết định nghiên cứu bài toán phân đoạn đối tượng trên video và tích hợp giải pháp này vào ứng dụng nhằm tạo ra nét độc đáo riêng cho sản phẩm Chức năng này có thể giúp người dùng tạo ra những đoạn video độc đáo dùng để chia sẻ với bạn bè, gia đình, người thân hay cũng có thể sử dụng để xây dựng những video quảng cáo mới lạ thu hút hơn
Trong bài toán phân đoạn đối tượng trên video, ta cần phân tách các đối tượng trong video ra khỏi background Các đối tượng thu được có thể sử dụng với nhiều mục đích khác nhau như để tổng hợp thông tin và tóm tắt video, nhận dạng đối tượng, index ảnh cho search engine,
Hình 1 Ví dụ về bài toán phân đoạn trên video
Trong ảnh, các đối tượng, được chỉ định, sẽ
được tách ra khỏi cảnh nền với độ chính xác
ở cấp độ pixel
Đề tài của nhóm sẽ tập trung vào 2 vấn đề
chính:
Nghiên cứu bài toán phân đoạn đối tượng
trên video và đề xuất cải tiến các thuật toán
có sẵn để tăng cường độ chính xác và cải
thiện tốc độ
Áp dụng kĩ thuật phân đoạn video để xây
dựng ứng dụng sử dụng thông tin video và
hình ảnh nhằm tạo ra môi trường trải nghiệm
mới cho khách du lịch
KIẾN THỨC NỀN TẢNG
Phân đoạn đối tượng trên video
Trong bài toán phân đoạn đối tượng trên
video, đã có nhiều phương pháp được đề xuất
chủ yếu thuộc hai hướng tiếp cận chính là:
Semisupervised: các phương pháp (Caelles,
et al 2017) (Tsai, Yang and Black n.d.)
thuộc nhóm này sẽ tách các đối tượng từ
video dựa trên thông tin tăng cường về đối
tượng được cung cấp bởi người dùng trên một hoặc một vài frame như bounding box hoặc mask của đối tượng Dựa trên thông tin
có được, ta có nhiều cách khác nhau để giải quyết bài toán như xây dựng model để rút trích và học các đặc trưng của object dựa trên thông tin có sẵn và dùng model này để trực tiếp tách đối tượng trong những frame còn lại
Unsupervised: các phương pháp (Papazoglou and Ferrari 2013) (Ochs and Brox 2011) thuộc nhóm này sẽ sử dung thông tin nội hàm của video, ảnh để quyết định đối tượng nào cần được tách khỏi background Cụ thể với một video, ta có thể xác định được đối tượng cần quan tâm nếu chúng di chuyển khác hướng với background Một vài phương pháp khác sử dụng một model đãđược huấn luyện trước với các tập dữ liệu khác nhằm phát hiện các đối tượng quan trọng trong một bức ảnh hay video
Mỗi hướng tiếp cận có ưu nhược điểm riêng
Trang 3Trong hướng tiếp cận đầu, ta có thể kiểm
soát được đối tượng cần theo dõi dễ hơn,
nhưng chi phí cung cấp object mask cũng
khá lớn Các mô hình thuộc hướng tiếp cận
sau cần phải phải dựa vào chuyển động của
vật thể để có thể xác định đối tượng cần tách
hoặc phải được huấn luyện trước trên một tập
dữ liệu khác để học khái niệm thế nào là một
vật thể Do vậy nếu vật thể đứng yên hoặc
không thuộc nhóm các vật thể trong tập dữ
liệu để huấn luyện thì các mô hình này sẽ gặp khó khăn để tách chúng ra khỏi background Tuy vậy điểm mạnh của các phương pháp này là nó có thể tự động rút trích tất cả các đối tượng nổi bật trong video mà không cần thông tin tăng cường
Trong đề tài này nhóm sử dụng và cải tiến dựa trên nền tảng thuật toán nêu trong
“Video object segmentation via optical flow” (OFL) thuộc hướng tiếp cận thứ nhất
Hình 5 Mô hình thuật toán OFL
Thuật toán OFL bao gồm các bước chính:
Bước 1: Ước lượng vị trí đối tượng trong ảnh
dựa vào object mask ở frame trước và optical
flow Dựa vào optical flow, ta có thể ước
lượng vị trí tương đối của đối tượng trong
frame hiện tại Nhằm đảm bảo đối tượng nằm
trọn trong object mask, tác giả sử dụng phép
dilation để mở rộng phạm vi tìm kiếm, gọi là
𝑀𝑖𝑛𝑖𝑡 Mask này được tinh chỉnh một lần nữa
dựa trên thông tin về màu sắc và khoảng cách
tương đối của mỗi pixel Cụ thể, mỗi pixel sẽ
được đánh giá tiềm năng thông qua hàm sau:
𝑆𝑡(𝑥𝑖) = 𝐴𝑡(𝑥𝑖𝑡) + 𝐿𝑡(𝑥𝑖𝑡, 𝑀𝑖𝑛𝑖𝑡)
Bước 2: Sử dụng multi-level graphical model
để xây dựng hàm đánh giá tiềm năng mỗi
pixel có thuộc object cần tách OFL đánh giá
tiềm năng mỗi pixel ở 2 cấp độ: pixel và
superpixel, dựa trên các thông tin về màu
sắc, vị trí, feature được rút trích từ mạng
CNN, độ thống nhất về tiềm năng giữa pixel
và superpixel chứa nó… Sử dụng thông tin ở
cấp độ pixel giúp mô hình có thể được những
chi tiết nhỏ của đối tượng nhưng các thông
tin này cũng dễ bị tác động bởi nhiễu có thể
do sự thiếu chính xác bởi optical flow
Ngược lại, ở cấp độ superpixel, ta có thể thu
được nhiều thông tin hơn khi xét các pixel có
tính chất tương tự nằm trong vùng lân cận
Tuy vậy, việc tính toán superpixel có thể
không chính xác do đường biên bị mờ, dẫn
tới việc mỗi superpixel có thể chứa cả object lẫn background Do đố, để tận dụng ưu điểm của 2 hướng tiếp cận, tác giả bài báo OFL đã xây dựng graphical model sử dụng thông tin hỗn hợp của cả 2 cấp độ, gọi là multi level graphical model
𝐸𝑠𝑒𝑔= 𝜆1𝐸𝑝𝑖𝑥(𝑋) + 𝜆2𝐸𝑠𝑢𝑝(𝑌)
+ 𝜆3𝐸𝑝𝑎𝑖𝑟(𝑋, 𝑌)
Bước 3: Dùng graph cut để tách các pixel
thuộc foreground và background Graph cut được sử dụng để gán nhãn cho từng pixel sao cho hàm lỗi xây dựng ở bước 3 được tối ưu nhất
𝑀𝑡 = 𝑎𝑟𝑔𝑚𝑖𝑛𝑀(𝐸𝑠𝑒𝑔)
Bước 4: Sử dụng kết quả có được để cải
thiện optical flow Sau đó optical flow sẽ được dùng để cải thiện kết quả segmentation Các bước từ 1 tới 4 sẽ được lặp đi lặp lại tới cho tới khi kết quả phân đoạn đối tượng không thay đổi đáng kể/hội tụ
PHƯƠNG PHÁP ĐỀ XUẤT Cải tiến thuật toán OFL
Dựa trên nền tảng thuật toán OFL (Tsai, Yang and Black n.d.), nhóm đề xuất 3 hướng cải tiến nhằm tăng độ chính xác cho kết quả:
Cải tiến 1: Object mask nhận được từ OFL
vẫn gặp một số vấn đề như nhiễu và đường biên chưa được rõ ràng Để giải quyết, nhóm tích hợp module contour snapping được đề
Trang 4xuất trong bài báo OSVOS Ý tưởng cơ bản
của phương pháp này là ta sẽ phân lớp 1
superpixel thuộc foreground/background thay
vì phân lớp riêng biệt từng pixel Nhãn của
mỗi superpixel sẽ được quyết định dựa vào
phần trăm pixel thuộc foreground nằm trong
superpixel ấy Nhìn chung, kết quả của contour snapping phụ thuộc khá nhiều vào kết quả của phương pháp dùng để xây dựng superpixel Sau khi kiểm tra, nhóm sử dụng model được đề xuất trong bài báo (Yang, et
al 2016)
Hình 3 Ví dụ về kết quả của OFL Có thể thấy vẫn còn một số vùng nhỏ trong thân chiếc xe
bus vẫn bị phân loại nhầm là background Hơn nữa, boundary của xe bus vẫn còn bị răng cưa
Hình 4 Ví dụ về kết quả trước và sau khi thực hiện Contour Snapping Có thể thấy kết quả
sau khi tinh chỉnh đã loại bỏ được nhiễu và đường biên cũng mượt hơn
Cải tiến 2: Tại bước 2, để xây dựng hàm lỗi
E_seg, ta cần tính potential của mỗi pixel dựa
trên feature rút trích từ CNN (Ví dụ: VGG)
Feature này sẽ được đưa vào SVM được
huấn luyện từ đầu dựa trên thông tin của
frame liền trước Dựa vào quan sát kết quả
thực tế, nhóm nhận thấy rằng việc sử dụng
một SVM mới, được huấn luyện từ đầu
không phải luôn phù hợp bởi có thể thông tin
của frame liền trước không đủ tốt (bị che
khuất, mờ, nhiễu Ví dụ: Hình 5) Bên cạnh
đó, nếu vật thể không biến đổi quá nhiều, ta
có thể tận dụng lại SVM trước đó bởi chúng vẫn mang thông tin hữu ích để đánh giá tiềm năng mỗi pixel Vấn đề đặt ra là khi nào thì
ta nên dùng SVM cũ và khi nào cần huấn luyện một SVM mới Nhóm đề xuất sử dụng kích thước tương đối của đối tượng được phát hiện ở frame trước so với kích thước đối tượng trong ground truth Khi kích thước này dưới một ngưỡng nhất định, ta sẽ dừng việc cập nhật SVM
Hình 5 Ảnh trái là của frame gần nhất, ảnh phải là của một frame trong quá khứ Có thể thấy,
thông tin của frame gần nhất về chiếc xe sẽ không đầy đủ do bị khói che khuất Trong khi đó,
ở frame kia, các chi tiết của chiếc xe tương đối rõ, do đó SVM được huấn luyện dựa trên
frame nhiều khả năng đánh giá tốt hơn
Trang 5Cải tiến 3: Một đối tượng có thể xuất hiện
dưới nhiều góc độ khác nhau Do đó, việc chỉ
sử dụng 1 SVM trên frame gần nhất mà đối
tượng còn hiển thị rõ ràng như cái tiến trước
là chưa đủ để đánh giá Ví dụ: khi theo dõi
cùng lúc nhiều người, một người có thể bị
che khuất bởi những người khác, và khi xuất
hiện trở lại người đó quay lưng vào camera
Do vậy, dù có lưu giữ SVM trước khi người
đó biến mất (quay mặt về camera), ta cũng
không thể nhận ra được người này dựa vào
thông tin học được của SVM đó Vì vậy,
nhóm quyết định sử dụng SVM được train
trên nhiều frame khác nhau Kết quả đánh giá
của mỗi pixel là trung bình các kết quả đánh
giá bởi các SVM khác Hiện thời, nhóm cố
định số lượng SVM cần sử dụng là 5, và cứ
mỗi 2 frame sẽ lưu lại 1 SVM để tránh trùng
lấp thông tin Trong tương lai, để có thể điều chỉnh số lượng và tần số lưu giữ SVM trong quá khứ, nhóm dự định sẽ sử dụng thông tin
về tốc độ chuyển động của vật thể dựa trên optical flow
Ứng dụng hỗ trợ du lịch Smart Travel
Dựa trên những nhu cầu thực tế, nhóm xây dựng ứng dụng hỗ trợ du lịch Smart Travel với các hướng tiếp cận sau:
Sử dụng thực tại tăng cường để tăng trải nghiệm du lịch thông qua camera của điện thoại Khi người dùng sử dụng camera của điện thoại để quét xung quanh thì thông tin
về các địa điểm, quán ăn, nhà hàng, sẽ được hiển thị lên màn hình camera của điện thoại tương ứng với vị trí của địa điểm đó – VD: Hình 6
Hình 6 Ví dụ hiển thị thông tin địa điểm dựa trên thực tại tăng cường
Áp dụng visual instance search để xem lại các kỷ niệm trong quá khứ, thông qua đó biết được mọi người thường làm gì ở địa điểm này, cung cấp cho người dùng một số gợi ý khi đi đến đây Thuật toán sử dụng để tìm kiếm các hình ảnh có liên quan được nhắc đến trong bài báo (Nguyen, et al 2016) – VD: Hình 7
Hình 7 Ví dụ sử dụng visual instance search
Trang 6Sử dụng video segmentation để cung cấp
thêm thông tin cho đối tượng: ứng dụng cho
phép người dùng chọn video, sau đó khoanh
vùng đối tượng cần segmentation và thêm
thông tin cho đối tượng đó Khi đó người
dùng có thể tạo một video hướng dẫn du lịch hoặc video giới thiệu về một đối tượng bất
kỳ Điều này giúp tăng trải nghiệm cho mọi người, cung cấp nhiều thông tin và cung cấp khả năng tương tác với video - VD: Hình 8
Hình 8 Ví dụ chức năng khoanh vùng đối tượng
KẾT LUẬN
Kết quả đạt được
Nhóm đã đề xuất và phát triển ứng dụng
Smart Travel dựa trên nên tảng di động nhằm
hỗ trợ người dùng khi đi du lịch, giúp người
dùng đạt được những trải nghiệm thú vị đồng
thời chia sẻ chúng với cộng động một cách
dễ dàng và hấp dẫn
Ứng dụng cũng nhắm tới đối tượng bao gồm
các đoàn thể, doanh nghiệp mong muốn cung
cấp khách hàng những nội dung số ấn tượng,
mới mẻ, mang tính tương tác cao nhưng
không tốn quá nhiều chi phí thông qua việc
ứng dụng các kĩ thuật tìm kiếm và phân đoạn
hình ảnh được sử dụng trong DAVIS
Challenge nhưng đã được thay đổi bổ sung
để phù hợp với thực tế
Hướng phát triển
Hiện nay, quá trình tạo video tương tác tốn khá nhiều thời gian, do đó chỉ có thể xử lý offline Trong tương lai, nhóm sẽ tìm hiểu và tối ưu số lượng tham số của mô hình cho phép việc xử lý video hiệu quả hơn
Bên cạnh đó, từ việc áp dụng các nghiên cứu trên để phát triển ứng dụng Smart Travel, nhóm hy vọng trong tương lai có thể mở roongj phạm vi không chỉ hỗ trợ du lịch, quảng cáo mà còn trong các lĩnh vực khác như giải trí, giáo dục,…
TÀI LIỆU THAM KHẢO
CAELLES, SERGI, KEVIS-KOKITSI MANINIS, JORDI PONT-TUSET, LAURA
LEAL-TAIXÉ, DANIEL CREMERS, AND LUC VAN GOOL 2017 “One-Shot Video Object Segmentation.” CVPR
NGUYEN, VINH-TIEP, KHANH-DUY LE, MINH-TRIET TRAN, AND MORTEN FJELD
2016 “NowAndThen: A Social Network-Based Photo.” MUM
OCHS, PETER, AND THOMAS BROX 2011 “Object segmentation in video: a hierarchical variational approach for turning point trajectories into dense regions.” ICCV
PAPAZOGLOU, ANESTIS, AND VITTORIO FERRARI 2013 “Fast object segmentation
in unconstrained video.” ICCV
TSAI, YI-HSUAN, MING-HSUAN YANG, AND MICHAEL J BLACK N.D “Video Segmentation via Object Flow.” CVPR, 2016
YANG, JIMEI, BRIAN PRICE, SCOTT COHEN, HONGLAK LEE, AND MING-HSUAN
YANG 2016 “Object Contour Detection with a Fully Convolutional Encoder-Decoder Network.” CVPR