Với khả năng đưa con người tới một môi trường ảo nhằm thực hiện mô phỏng thế giới thực, công nghệ thực tại ảo đã mang lại sự hứng thú tới những doanh nghiệp làm công việc liên quan tới t
Trang 1
BÁO CÁO ĐỒ ÁN 2
ĐỀ TÀI
TÌM HIỀU CÔNG NGHỆ THỰC TẠI ẢO
VÀ XÂY DỰNG PHẦN MỀM
Nhóm thực hiện:
Huỳnh Quốc Trung 17520184
Lê Quốc Phương 17520134
Giáo viên hướng dẫn: Huỳnh Hồ Thị Mộng Trinh Lớp : SE122.L11
Hồ Chí Minh, ngày 20 tháng 01 năm 2021
Trang 2những loại hình thiết bị hay kĩ thuật mới Ngày nay, lĩnh vực liên quan tới môi trường ảo đang được những doanh nghiệp trong và ngoài nước quan tâm và phát triển Với khả năng đưa con người tới một môi trường ảo nhằm thực hiện mô phỏng thế giới thực, công nghệ thực tại ảo đã mang lại sự hứng thú tới những doanh nghiệp làm công việc liên quan tới thiết kế nói chung và những công ty nội thất nói riêng Theo đó, đối với những công ty nội thất, một lần tổ chức triển lãm sẽ phải tốn những chi phí về mặt bằng và nhân lực Không những vậy những khách hàng đến với công ty nội thất cũng không thực sự thỏa mãn với những sản phẩm mà bên cung cấp đưa ra Nguyên nhân chính là do khách hàng không có cài nhìn đủ trực quan về những đồ dùng mà họ thấy trên giấy
Đối với môi trường thực tại ảo, để đáp ứng được những mong muốn cũng như khắc phục được những vấn đề của cả hai phía là khách hàng và doanh nghiệp, thì bắt buộc môi trường được mô phỏng phải có đầy đủ các yếu tố về tính thẩm mĩ Những đồ nội thất được hiển thị trong môi trường phải đảm bảo được độ chân thực và chi tiết nhất định, sao cho phù hợp với cảm quan của khách hàng và hiệu năng của phần mềm
Công nghệ thực tại ảo cũng là một công nghệ mới và ít được mọi người đầu tư, tìm hiểu và làm quen Như vậy, việc cài đặt hệ thống điều khiển trong môi trường thực tại ảo cũng đặt ra nhiều thách thức Người dùng muốn tương tác với môi trường này sẽ phải thông qua những cần điều khiển được trong bộ thiết bị thực tại ảo được cung cấp Với những ai ít
sử dụng bộ điều khiển dạng này sẽ cảm thấy khó khăn ban đầu Tuy nhiên nếu được sắp xếp một cách hợp lý thì việc làm quen không tốn quá nhiều thời gian Cũng như việc điều khiển, người dùng có thể tự do di chuyển trong môi trường thực tại ảo Tuy nhiên, việc này
có thể gây ra cảm giác chóng mặt nếu như di chuyển quá nhanh Để khắc phục việc này tốc
độ di chuyển trong môi trường cũng phải được cân nhắc
Hồ Chí Minh, 21/01/2021
Trang 3NHẬN XÉT CỦA GIÁO VIÊN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 4Mục lục
LỜI NÓI ĐẦU 1
NHẬN XÉT CỦA GIÁO VIÊN 2
PHẦN 1: PHÁT BIỂU BÀI TOÁN 4
1.1 Đặt vấn đề 4
1.2 Phạm vi ứng dụng 4
1.2 Những ứng dụng tương tự 5
1.2.1 IKEA Place 5
1.2.1.1 Mô tả ứng dụng 5
1.2.1.2 Hình ảnh 6
PHẦN 2: TỔNG QUAN VỀ CÔNG NGHỆ 6
2.1 Augmented Reality - Thực tế tăng cường 6
2.2 ARCore 8
2.3 Unity 9
PHẦN 3: PHÂN TÍCH THIẾT KẾ ỨNG DỤNG 11
3.1 Danh sách yêu cầu 11
3.2 Sơ đồ và danh sách Usecase 12
3.2.1 Sơ đồ: 12
3.2.2 Bảng mô tả usecase: 12
PHẦN 4: THIẾT KẾ GIAO DIỆN 15
4.1 Mô tả chi tiết các màn hình 15
4.1.1 Màn hình khởi tạo 15
4.1.2 Màn hình bố trí nội thất 16
4.1.3 Màn hình treo tranh 16
4.1.4 Màn hình sơn tường, dán Decal 17
PHẦN 5: CÀI ĐẶT VÀ THỬ NGHIỆM 17
5.1 Công nghệ sử dụng 17
5.2 Sản phẩm 17
Trang 5PHẦN 1: PHÁT BIỂU BÀI TOÁN
1.1 Đặt vấn đề
Trong một doanh nghiệp kinh doanh đồ nội thất, phía nhà cung cấp sẽ đưa ra các mẫu vẽ và hình ảnh chụp đồ nội thất có thể thương mại Khách hàng có nhu cầu mua đồ nội thất sẽ liên hệ hoặc tới những nơi phân phối đồ nội thất đó để lựa chọn và thực hiện giao dịch
Theo như những nhận định được đưa ra, khách hàng khi xem những đồ nội thất này hầu như không có cái nhìn trực quan về tính hợp lý khi bày biện chúng vào không gian của công trình Điều này gây nên những lựa chọn sai và mất nhiều thời gian để quyết định Như vậy việc đưa quá trình lựa chọn này vào môi trường ảo sẽ mang lại cho người dùng trải nghiệm và cải thiện tính trực quan đối với những đồ nội thất
Để tăng trải nhiệm cho khách hàng trong việc lựa chọn đồ nội thất, nhiều doanh nghiệp kinh doanh mặt hàng đã chọn áp dụng nhiều loại hình công nghệ mới Ví dụ tạo ra những phần mềm dựng phòng nhanh kết hợp với chức năng sắp xếp đồ nội thất trong không gian đó Những công nghệ mới như thực tại ảo tăng cường cũng được ứng dụng để người dùng không nhất thiết phải tạo mới một căn phòng mà vẫn có thể bố trí nội thất trong không gian thật
Đưa những thông tin về đồ nội thất vào môi trường ảo là một phương pháp có thể khắc phục những vấn đề về việc thể hiện những đồ nội thất cho khách hàng Tuy nhiên trải nghiệm của khách hàng và những thông tin của đồ nội thất có thể bị tối giản do những hạn chế về mặt công nghệ
Nhận thấy được những nhu cầu sẽ tạo ra một thị trường tiềm năng cho tin học hóa dịch vụ, nhóm đã lên ý tưởng thực hiện một phần mềm giúp hỗ trợ vấn đề xem và bố trí những đồ nội thất trong một căn phòng, giúp cho những khách hàng khi đến với những công ty nội thất có cái nhìn chi tiết hơn về sản phẩm họ mong muốn
1.2 Phạm vi ứng dụng
Mô hình phát triển của phần mềm hỗ trợ thiết kế nội thất này có thể được phát triển rộng rãi cho nhiều doanh nghiệp khác nhau có nhu cầu Vì phần đa nhu cầu về phần mềm
Trang 6của khách hàng là như nhau, nên mô hình phần mềm này có thể nhân rộng cho nhiều công
ty nội thất có mục đích tương tự
Phần mềm tạo ra hướng đến người dùng là nhân viên hỗ trợ và chủ doanh nghiệp nội thất - những người trực tiếp tiếp xúc cũng như tư vấn sản phẩm với khách hàng
Hệ thống được sử dụng trong các việc xem thông tin đồ nội thất, bố trí nội thất Sử dụng bộ cơ sở dữ liệu mà được doanh nghiệp trực thuộc cung cấp Cụ thể là thông tin về những đồ nội thất mà doanh nghiệp đang kinh doanh gồm: mô hình ba chiều, kích thước, vật liệu Dữ liệu về mô hình ba chiều sẽ được thêm trực tiếp vào ứng dụng, sau một thời gian hoặc theo yêu cầu của doanh nghiệp phần mềm sẽ được cập nhập dữ liệu mới về mô hình ba chiều
Các chức năng chính và thao tác của phần mềm đều được thực hiện trong môi trường thực tại ảo Người dùng sẽ ngồi ở một vị trí và thực hiện quá trình thiết kế nội thất thông quan cần điều khiển đi kèm với kính Oculus Rift S Để đảm bảo an toàn cho người dùng sẽ không được phép di chuyển cho tới khi kết thúc tiến trình bố trí nội thất
1.2 Những ứng dụng tương tự
1.2.1 IKEA Place
1.2.1.1 Mô tả ứng dụng
IKEA Place cho phép đặt các mô hình 3D theo tỷ lệ thật trong không gian của riêng Kết hợp công nghệ AR mới nhất và các giải pháp nhà thông minh của IKEA, người dùng
có thể trải nghiệm IKEA hơn bao giờ hết
Lấy cảm hứng từ trải nghiệm máy ảnh đầu tiên và bộ sưu tập được tuyển chọn đặc biệt Với các sản phẩm nổi bật liên tục và luôn có điều gì đó mới để thử ở nhà
Trang bị toàn bộ căn phòng chỉ bằng một lần nhấn hoặc tìm sản phẩm hoàn hảo bằng cách tìm kiếm bằng máy ảnh của bạn IKEA Place có những cách mới và thú vị để thưởng thức IKEA Cùng với nhiều hơn nữa sắp ra mắt - hãy tiếp tục kiểm tra IKEA Place để xem bạn có thể đặt gì tiếp theo
Trang 71.2.1.2 Hình ảnh
PHẦN 2: TỔNG QUAN VỀ CÔNG NGHỆ
2.1 Augmented Reality - Thực tế tăng cường
Thực tế tăng cường ( AR ) là một trải nghiệm tương tác của một môi trường thực tế trong thế giới thực được tăng cường bởi các thông tin nhận thức máy tính tạo ra, đôi khi trên nhiều giác quan phương thức , trong đó có thị giác , thính giác , xúc giác và khứu giác
AR có thể được định nghĩa là một hệ thống đáp ứng ba tính năng cơ bản: sự kết hợp giữa thế giới thực và ảo, tương tác thời gian thực và đăng ký 3D chính xác giữa các đối tượng thực và ảo Trải nghiệm này được đan xen liền mạch với thế giới vật chất sao cho nó được coi là một khía cạnh nhập vai của môi trường thực Bằng cách này, thực tế tăng cường thay đổi nhận thức liên tục của một người về môi trường thế giới thực, trong khi thực tế ảo thay thế hoàn toàn môi trường thế giới thực của người dùng bằng môi trường giả lập Thực tế tăng cường có liên quan đến hai thuật ngữ gần như đồng nghĩa: thực tế hỗn hợp và thực tế qua máy tính
Giá trị cơ bản của thực tế tăng cường là cách thức mà các thành phần của thế giới
kỹ thuật số hòa vào nhận thức của một người về thế giới thực, không phải là một màn hình
Trang 8hiển thị dữ liệu đơn giản, mà thông qua việc tích hợp các cảm giác nhập vai, được coi là các phần tự nhiên của một Môi trường Các hệ thống AR chức năng sớm nhất cung cấp trải nghiệm thực tế hỗn hợp nhập vai cho người dùng được phát minh vào đầu những năm 1990, bắt đầu với hệ thống Đồ đạc ảo được phát triển tại Phòng thí nghiệm Armstrong của Không quân Hoa Kỳ vào năm 1992 Trải nghiệm thực tế tăng cường thương mại lần đầu tiên được giới thiệu trong các doanh nghiệp giải trí và trò chơi Sau đó, các ứng dụng thực tế tăng cường đã mở rộng các ngành thương mại như giáo dục, truyền thông, y học và giải trí Trong giáo dục, nội dung có thể được truy cập bằng cách quét hoặc xem hình ảnh bằng thiết
bị di động hoặc bằng cách sử dụng các kỹ thuật AR không đánh dấu
Ứng dụng của thực tế ảo tăng cường
Thực tế tăng cường được sử dụng để cải thiện môi trường hoặc tình huống tự nhiên
và cung cấp trải nghiệm phong phú về mặt tri giác Với sự trợ giúp của các công nghệ AR tiên tiến (ví dụ như thêm thị giác máy tính, kết hợp camera AR vào các ứng dụng điện thoại thông minh và nhận dạng đối tượng), thông tin về thế giới thực xung quanh của người dùng trở nên tương tác và thao tác kỹ thuật số Thông tin về môi trường và các đối tượng của nó được phủ lên thế giới thực Thông tin này có thể là ảo hoặc thực, ví dụ như nhìn thấy thông
Trang 9tin thực khác được cảm nhận hoặc đo lường, chẳng hạn như sóng vô tuyến điện từ được phủ lên một cách chính xác với vị trí thực sự của chúng trong không gian Thực tế tăng cường cũng có nhiều tiềm năng trong việc thu thập và chia sẻ kiến thức ngầm Các kỹ thuật tăng cường thường được thực hiện trong thời gian thực và trong bối cảnh ngữ nghĩavới các yếu tố môi trường Thông tin tri giác sâu sắc đôi khi được kết hợp với thông tin bổ sung như điểm số qua nguồn cấp dữ liệu video trực tiếp về một sự kiện thể thao Điều này kết hợp những lợi ích của cả công nghệ thực tế tăng cường vàcông nghệ hiển thị thông minh (HUD)
2.2 ARCore
ARCore là nền tảng của Google để xây dựng trải nghiệm thực tế tăng cường Sử
dụng các API khác nhau, ARCore cho phép điện thoại của bạn cảm nhận môi trường, hiểu thế giới và tương tác với thông tin Một số API có sẵn trên Android và iOS để cho phép chia sẻ trải nghiệm AR
ARCore sử dụng ba khả năng chính để tích hợp nội dung ảo với thế giới thực khi
được nhìn thấy qua camera trên điện thoại của bạn:
• Theo dõi chuyển động cho phép điện thoại hiểu và theo dõi vị trí của nó so với thế giới
• Hiểu biết về môi trường cho phép điện thoại phát hiện kích thước và vị trí của tất
cả các loại bề mặt: bề mặt ngang, dọc và góc cạnh như mặt đất, bàn cà phê hoặc tường
• Ước tính ánh sáng cho phép điện thoại ước tính điều kiện ánh sáng hiện tại của môi trường
Về cơ bản, ARCore đang làm hai việc: theo dõi vị trí của thiết bị di động khi nó di
chuyển và xây dựng hiểu biết của riêng nó về thế giới thực
Trang 10Công nghệ theo dõi chuyển động của ARCore sử dụng camera của điện thoại để xác
định các điểm, được gọi là các tính năng và theo dõi cách các điểm đó di chuyển theo thời gian Với sự kết hợp giữa chuyển động của những điểm này và số đọc từ cảm biến quán
tính của điện thoại, ARCore xác định cả vị trí và hướng của điện thoại khi nó di chuyển
trong không gian
Ngoài việc xác định các điểm chính, ARCore có thể phát hiện các bề mặt phẳng, như
bàn hoặc sàn nhà và cũng có thể ước tính ánh sáng trung bình ở khu vực xung quanh nó
Những khả năng này kết hợp với nhau để cho phép ARCore xây dựng hiểu biết của riêng
mình về thế giới xung quanh
Sự hiểu biết của ARCore về thế giới thực cho phép đặt các đối tượng, chú thích hoặc
thông tin khác theo cách tích hợp hoàn toàn với thế giới thực
2.3 Unity
Unity là một công cụ phát triển game đa nền tảng được phát triển bởi Unity
Technologies Unity cho phép người dùng làm những game 2D và 3D, cung cấp cho người dùng API để có thể viết code bằng ngôn ngữ C#
Unity có nguồn tài nguyên lớn được đóng góp bởi các cộng đồng phát triển game
Nhờ vậy nên Unity gần như hỗ trợ đầy đủ những thứ cần thiết để có thể làm một game theo mong muốn của người dùng
Chức năng cốt lõi trong Unity đa dạng bao gồm: cung cấp công cụ dựng hình (kết
xuất đồ họa) cho các hình ảnh 2D hoặc 3D, công cụ vật lý (tính toán và phát hiện va chạm), âm thanh, mã nguồn, hình ảnh động, trí tuệ nhân tạo, phân luồng, tạo dò ng dữ liệu
xử lý, quản lý bộ nhớ, dựng ảnh đồ thị và kết nối mạng Nhờ có các engine mà công việc làm game trở nên ít tốn kém và đơn giản hơn
Trang 11Một trong các thế mạnh của Unity3D chính là khả năng hỗ trợ gần như toàn bộ các
nền tảng hiện có bao gồm: PlayStation 3, Xbox 360, Wii U, iOS, Android, Windows, Blackberry 10, OS X, Linux, trình duyệt Web và cả Flash Nói cách khác, chỉ với một gói engine, các studio có thể làm game cho bất kỳ hệ điều hành nào và25 dễ dàng chuyển đổi chúng sang những hệ điều hành khác nhau Đồng thời, đây cũng là giải pháp cho các game online đa nền tảng – có thể chơi đồng thời trên nhiều hệ điều hành, phần cứng khác nhau như Web, PC, Mobile, Tablet…
Unity3D được xây dựng trong một môi trường phát triển tích hợp, cung cấp một
hệ thống toàn diện cho các lập trình viên, từ soạn thảo mã nguồn, xây dựng công cụ tự động hóa đến trình sửa lỗi Do được hướng đến đồng thời cả lập trình viên không chuyên
và studio chuyên nghiệp, nên Unity3D khá dễ sử dụng Hơn nữa, đây là một trong những
engine phổ biến nhất trên thế giới, người dùng có thể dễ dàng tìm kiếm kinh nghiệm sử dụng của “tiền bối” trên các diễn đàn công nghệ
Unity Technologies hiện cung cấp bản miễn phí engine Unity3D cho người dùng
cá nhân và các doanh nghiệp có doanh thu dưới 100.000 USD/năm Với bản Pro, người dùng phải trả 1.500 USD/năm – một con số rất khiêm tốn so với những gì engine này mang lại
Trang 12PHẦN 3: PHÂN TÍCH THIẾT KẾ ỨNG DỤNG
3.1 Danh sách yêu cầu
STT Use case Ghi chú/Ý nghĩa
1 Khởi tạo Nghiệp vụ này cho phép người dùng tiến hành cho khách hàng quét không gian xung quanh thiết kế
2 Bố trí nội thất
Nghiệp vụ này cho phép người dùng tiến hành sắp xếp đồ nội thất trong không gian đã có.Người dùng có thể bắt đầu lại, tiếp tục tiến trình bố trí nội thất của một không gian đã được khởi tạo
3 Treo tranh Nghiệp vụ này cho phép người dùng tiến hành trang trí các bức
trang treo thường
4 Sơn tường, dán
Decal
Nghiệp vụ này cho phép người dùng tiến hành sơn tường theo màu sắc mình thích, hoặc dán các decal trang trí phòng
Nghiệp vụ này cho phép người dùng tiến hành chụp lại bố cục của căn phòng sau quá trình sắp xếp đồ nội thất Toàn bộ không gian sẽ được chụp và được lưu trữ dưới định dạng JPEG
Hình 3.1 Danh sách các yêu cầu
Trang 133.2 Sơ đồ và danh sách Usecase
3.2.1 Sơ đồ:
Hình 3.2 Sơ đồ usecase
3.2.2 Bảng mô tả usecase:
* Khởi tạo:
Mô tả Cho phép người dùng tiến hành cho khách hàng quét
không gian xung quanh thiết kế Dòng sự kiện chính 1 Vào màn hình chính ứng dụng
2 Quét camera xung quanh để nhận các điểm
3 Thông báo thành công khi quét xong