1. Trang chủ
  2. » Cao đẳng - Đại học

Tìm hiểu ARcore và xây dựng ứng dụng mô phỏng makeup

22 17 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 469,19 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Với phần mềm thử kính bằng AR, em đem đến giải pháp cho những người dùng đang mong muốn được thử nhiều loại kính khác nhau để chọn ra được cái thích hợpvới mình nhất, đây cũng sẽ đồng th

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Tìm hiểu ARcore và xây dựng ứng dụng

Tp Hồ Chí Minh,Tháng 1 năm 2021

Trang 2

LỜI NÓI ĐẦU

Lời đầu tiên, em xin bày tỏ lòng biết ơn sâu sắc đến thầy Nguyễn Công Hoan – Giảng viên hướng dẫn môn Đồ án 2 - SE122.L11.PMCL, người đã cùng đồng hành

và tận tình hướng dẫn cho em qua những buổi thảo luận Chính nhờ sự giúp đỡ hết lòng của thầy mà em mới có thể hoàn thiện được được đồ án này một cách suôn sẻ nhất

Mặc dù kiến thức của em vẫn còn hạn hẹp nên không thể tránh khỏi những thiếu sót nhưng em đã cố gắng hoàn thiện đồ án đúng thời hạn, hạn chế mắc lỗi nhất có thể Vì vậy,em rất mong đợi nhận được những ý kiến đóng góp quý báu từ thầy và qua đó lắng nghe, tiếp thu để rút kinh nghiệm, tự sửa chữa, hoàn thiện bản thân mình trên tinh thần nghiêm túc, tự giác học hỏi

Chân thành cảm ơn !

Trang 3

MỤC LỤC

1 Giới thiệu đề tài 3

2 Các kiến thức/công nghệ nền tảng 4

3 Xây dựng ứng dụng 6

3.1 Tổng quan khảo sát các ứng dụng liên quan 6

3.2 Phân tích, thiết kế, cài đặt phần mềm 6

3.2.1.1 Phân tích, thiết kế yêu cầu phần mềm 6

3.2.2.1 Các bên liên quan – Stakeholders 7

3.2.2.2 Các actors và mục tiêu 8

3.2.2.3 Các usecase 8

Mô tả tổng quan 8

3.2.2.3.1 Sơ đồ Use Case 9

3.2.2.3.2 Đặc tả Use Cases 9

3.2.2.4 Sơ đồ Sequence 13

3.2.2.4.1 Sơ đồ Sequence cho UC-1 – Cấp quyền camera 13

3.2.2.4.2 Sơ đồ Sequence cho UC-2 – Tìm kiếm gương mặt 13

3.2.2.4.3 Sơ đồ Sequence cho UC-3 – Chọn mẫu kính phù hợp với gương mặt 14 3.2.2.4.4 Sơ đồ Sequence cho UC-4 – Chụp màn hình sau khi thử kính.14 3.2.2.5 Sơ đồ Activity 14

3.2.2.5.1 Sơ đồ Activity cho UC-1 – Cấp quyền camera 14

3.2.2.5.2 Sơ đồ Activity cho UC-3 – Chọn mẫu kính phù hợp với gương mặt 14 3.2.2.5.3 Sơ đồ Activity cho UC-2 – Chụp màn hình 14

Trang 4

3.3 Các áp dụng chính của Arcore và SceneForm 15

4 Thiết kế Kiểm thử 15

5 Kết luận và hướng phát triển 16

6 Tài liệu tham khảo 17

1 GIỚI THIỆU ĐỀ TÀI

Tên đề tài: Phần mềm thử kính bằng AR sử dụng công nghệ ARcore

Trang 5

Lí

do chọn đề tài:

Thực tế tăng cường (AR) hiện đang là một trong những công nghệ tiên tiến nhất trên thế giới hiện nay Đó cũng là lý do công nghệ này đang ứng dụng rất nhiều trong lĩnh vực của đời sống với tốc độ nhanh chóng Điều này cũng khiến nhiều người chưa hiểu hết về tầm quan trọng của AR đối với các doanh nghiệp và lợi ích

mà nó đem lại

Với phần mềm thử kính bằng AR, em đem đến giải pháp cho những người dùng đang mong muốn được thử nhiều loại kính khác nhau để chọn ra được cái thích hợpvới mình nhất, đây cũng sẽ đồng thời sẽ là giải pháp cho các doanh nghiệp khi khách hàng của họ có thể được thử qua sản phẩm một các trực tiếp mà không cần phải đi đến cửa hàng, điều này sẽ giúp cải thiện trải nghiệm mua sắm của khách hàng, tăng doanh thu của cửa hàng

Tổng quan các vấn đề chính:

Bài toán: Sử dụng công nghệ ARCore của google để thiết kế một phần mềm

có tính ứng dụng trong cuộc sống hoặc cho xã hội

Giới hạn/phạm vi: Trang thiết bị trong quá trình xây dựng phần mềm, các

nguồn tài liệu tham khảo

Các nội dung nghiên cứu/thực hiện: Nghiên cứu các quy trình nghiệp vụ

và áp dụng công nghệ AR và các công nghệ liên quan khác để triển khai được một phần mềm hoàn chỉnh

Kết quả hướng tới: Một phần mềm và có giá trị sử dụng khi triển khai.

2 CÁC KIẾN THỨC/CÔNG NGHỆ NỀN TẢNG

1 ARcore Introduction

ARCore là một nền tảng của Google dùng để trải nghiệm thực tế ảo tăng cường ARCore sử dụng các API khác nhau, giúp điện thoại của bạn có thể cảm nhận

Trang 6

được môi trường xung quanh, hiểu được thế giới thực và tương tác với các thông tin trong thế giới thực Một số API đã có sẵn trên Android và iOS để cho phép chia sẻ trải nghiệm về AR.

ARCore sử dụng 3 khả năng chính để tích hợp nội dung ảo với thế giới thực thông qua camera điện thoại:

Motion tracking giúp điện thoại hiểu được và theo dõi được vị trí của nó

so với thế giới thực

Environmental understanding giúp điện thoại phát hiện được kích cỡ

và vị trí của tất cả các bề mặt: ngang, dọc và các góc cạnh bề mặt như mặtđất, mặt bàn hay bức tường

Light estimation giúp điện thoại ước lượng được điều kiện ánh sáng của

môi trường

2 ARcore

ARcore là một thư viện giúp các Developer tích hợp AR vô phần mềm của mình Vì nó là thư viện open source nên sẽ không có các chức năng cụ thể mà chỉ có các chức năng đa dụng để có thể triển khai AR trên các nền tảng khác nhau

Các tính năng hiện tại mà ARcore cung cấp cho developer:

 Anchor: Khi ARcore update môi trường xung quanh thì những object sẽ có hiệu ứng trôi đi và anchor giúp giữ object tại chỗ trong vị trí tương đối với thế giới hiện tại.Chúng ta dùng anchor để đảm bảo trải nghiệm cho người dùng và tính chân thật của phần mềm của chúng ta

 Camera Config: hỗ trợ Developer chỉnh sửa camera, cung cấp các thông tin như CPU và GPU.Lớp này giúp Developer điều chỉnh khả năng nhận biết chiều sâu của camera, FPS của camera,

 Plane:Lớp mặt phẳng do ARcore tạo ra để Developer sử dụng định nghĩa mặtphẳng ngoài đời thực qua Camera

 Config: Cho develop khả năng tinh chỉnh lại các hiệu năng khác nhau của Arcore như PlaneFindingMode, UpdateMode (chỉnh sửa các hành vi của Session.Update()),…

Trang 7

3 XÂY DỰNG ỨNG DỤNG

3.1 Tổng quan khảo sát các ứng dụng liên quan

3.1.1 Khảo sát Chplay, Appstore

 Một số phần mềm dùng để khảo sát gồm có rounz, GlassOn Tuy nhiên các phần mềm lại ít được người dùng biết đến và sử dụng

3.2 Phân tích, thiết kế, cài đặt phần mềm

3.2.1.1 Phân tích, thiết kế yêu cầu phần mềm

3.2.1.2 Yêu cầu chức năng

Yêu cầu Trọng số ưu tiên Mô tả

nhiều mẫu kính khác nhauREQ-2 6 Phần mềm cho phép khách hàng phát hiện

gương mặt để áp dụng mẫu kínhREQ-3

6 Phần mềm cho phép khách hàng chụp lại mànhình sau khi đã thiết kế

3.2.1.3 Yêu cầu phi chức năng

Yêu cầu Trọng số ưu tiên Mô tả

REQ-4

7 Người dùng cần có một thiết bị tương thích với ARREQ-5 6 Người dùng phải có mạng để tải phần mềm từ

CHplay

Trang 8

3.2.1.4 Yêu cầu giao diện

Yêu cầu Trọng số ưu tiên Mô tả

REQ-6 8 Phần mềm có các nút để đổi sang các mẫu

kính khác nhauREQ-7 7 Phần mềm phải có nút chụp lại màn hình đã

thiết kế

2 Đặc tả yêu cầu phần mềm

3.2.2.1 Các bên liên quan – Stakeholders

Các bên liên quan (stakeholders) là những người có liên quan và ảnh hướng tới các yếu tố hình thành nên dự án Các bên liên quan đến đề tài bao gồm:

 Người dùng

3.2.2.2 Các actors và mục tiêu

Người dùng Bật phần mềm và cấp quyền camera UC-1

Người dùng Tìm kiếm gương mặt người dùng UC-2

Người dùng Chọn mẫu kính phù hợp với gương mặt UC-3

Người dùng Chụp màn hình sau khi thử kính UC-4

Trang 9

3.2.2.3 Các usecase

Mô tả tổng quan

 UC-1: Cấp quyền camera – bắt đầu sử dụng phần mềm

 UC-2: Tìm kiếm gương mặt người dùng

 UC-3: Chọn mẫu kính phù hợp với gương mặt

 UC-4: Chụp màn hình sau khi thử kính

Trang 10

3.2.2.3.1 Sơ đồ Use Case

3.2.2.3.2 Đặc tả Use Cases

Use case “Cấp quyền camera”

Tên Use Case UC-1: Cấp quyền camera

Tóm tắt Chức năng cấp quyền camera

Dòng sự kiện

chính

1 Phần mềm hiển thị popup đòi quyền camera

2 Người dùng chấp nhận cho quyền camera

Trang 11

(Dòng sự kiện khác: Không cho quyền camera).

Trạng thái Phần

mềm sau khi thực

hiện use case

Người dùng cho phép quyền và có thể tiến hành sử dụng phần mềm

Use case “Tìm kiếm gương mặt”

Tên Use Case UC-2: Tìm kiếm gương mặt

Tóm tắt Chức năng Tìm kiếm gương mặt

Dòng sự kiện

chính

1 Phần mềm quét gương mặt người dùng

2 Phần mềm phát hiện được gương mặt người dùng

3 Phần mềm áp dụng mẫu kính đang chọn lên gương mặt người dùng

Trạng thái Phần

mềm sau khi thực

hiện use case

Phát hiện gương mặt và áp dụng mẫu kính đang được chọn

Trang 12

Use case “Chọn mẫu kính phù hợp với gương mặt”

Tên Use Case UC-3: Thay đổi mẫu kính

Tóm tắt Khách hàng có thể thay đổi mẫu kính để lựa chọn

được mẫu mà mình yêu thích

Dòng sự kiện chính 1 Người dùng chọn mẫu kính mình muốn thử

2 Người dùng tiếp tục lướt qua các mẫu khác nhau

Use case “Chụp màn hình sau khi thử kính”

Tên Use Case UC-4: Chụp màn hình sau khi thử kính

Tóm tắt Khách hàng có thể chụp màn hình sau khi thử mẫu kính

Trạng thái Phần mềm Khách hàng chụp màn hình và có màn hình đó trong

Trang 13

3.2.2.4 Sơ đồ Sequence

Các sơ đồ sequence cho một số Use Case quan trọng

3.2.2.4.1 Sơ đồ Sequence cho UC-1 – Cấp quyền camera

Trang 14

3.2.2.4.2 Sơ đồ Sequence cho UC-2 – Tìm kiếm gương mặt

Trang 15

3.2.2.4.3 Sơ đồ Sequence cho UC-3 – Chọn mẫu kính phù hợp với gương mặt

Trang 16

3.2.2.4.4 Sơ đồ Sequence cho UC-4 – Chụp màn hình sau khi thử kính

Trang 17

3.2.2.5 Sơ đồ Activity

3.2.2.5.1 Sơ đồ Activity cho UC-1 – Cấp quyền camera

Trang 18

3.2.2.5.2 Sơ đồ Activity cho UC-3 – Chọn mẫu kính phù hợp với gương mặt

Trang 19

3.2.2.5.3 Sơ đồ Activity cho UC-2 – Chụp màn hình

3.3 Các áp dụng chính của Arcore và SceneForm

3.3.1.1 Arcore

ar.core.AugmentedFace được sử dụng để xác định gương mặt và

cung cấp các phương thức liên quan đến các vùng trên gương mặt

core.TrackingState để mô tả trạng thái theo dõi của Arcore.

Trang 20

ar.core.Config giữ các cài đặt được sử dụng để định cấu hình

session mà ở đây là Config.AugmentedFaceMode

3.3.1.2 SceneForm

ar.sceneform.rendering.ModelRenderable dùng để render một

mô hình 3D bằng cách gắn nó vào một Node với thiết lập có thể render (setRenderable(Renderable))

ar.sceneform.rendering.Renderable lớp cơ sở để render trong

không gian 3D bằng cách gắn vào một Node với thiết lập có thể render (setRenderable(Renderable))

ar.sceneform.ux.AugmentedFaceNode được sử dụng để hiển thị

các hiệu ứng trên gương mặt nhờ vào tính năng của ARCore's AugmentedFace

ar.sceneform.ux.ArFragment dùng để triển khai ArFragment

Không yêu cầu thêm quyền bổ sung nào và sử dụng cấu hình mặc định cho ARCore

 Camera trước không có lỗi

 Phần mềm Arcore của google được cài đặt trên máy 4.2 Kết quả thử nghiệm

 Phần mềm chạy đầy đủ các chức năng

 Thử nghiệm theo usecase hoàn toàn không có lỗi

4.3 Kết quả sản phẩm:

 Sản phẩm chỉ mới tương đối đầy đủ các chức năng chính, nếu muốn phân phối thì cần phải thêm một số chức năng tiện dụng hơn như lưu

Trang 21

mẫu kính người dùng thích, chỉ địa điểm có bán mẫu kính đó cho người dùng,…

 UI/UX nhìn đơn giản, dễ dàng tiếp cận

 Phần mềm chạy mượt trên các hệ máy hỗ trợ Arcore của google

5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

5.1 Kết quả đạt được

 Học tập được cách sử dụng ARcore

 Học tập được các nguyên lý thiết kế một phần mềm AR

 Học tập được các công nghệ SceneForm để phát triển một phần mềm android

 Phần mềm có giá trị sử dụng kể cả cho người mới

5.1.1.1 Hạn chế

 Hạn chế về thời gian tìm hiểu

 Không có teamate để cùng tìm hiểu sâu hơn về hệ thống

 Không có tài liệu phổ thông, tài liệu tìm hiểu còn hạn chế

 Không deploy lên Chplay do không có đủ kinh phí

 Phần mềm còn tương đối sơ sài chưa thể gọi là hoàn chỉnh

5.1.1.2 Hướng phát triển

 Phát triển các chức năng phụ giúp cải thiện trải nghiệm của người dùng hoặc các chức năng có giá trị kinh doanh hơn đối với một doanh nghiệp bán kính

 Hoàn thiện các chức năng chính để đảm bảo chất lượng sản phẩm, tối ưu hơn trong việc nhận diện gương mặt (nhận diện được trên hai gương mặt cùng một lúc)

 Thêm nhiều mẫu sản phẩm hơn vào phần mềm

6 TÀI LIỆU THAM KHẢO

Trang 22

 https://stackoverflow.com/

Ngày đăng: 05/09/2021, 20:48

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w