Tải bản đầy đủ (.pdf) (6 trang)

Kỹ thuật LOD tự động áp dụng tối ưu hóa mô hình 3D trong trưng bày bảo tàng ảo

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (461.92 KB, 6 trang )

Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

189(13): 9 - 14

KỸ THUẬT LOD TỰ ĐỘNG ÁP DỤNG TỐI ƯU HÓA MÔ HÌNH 3D
TRONG TRƯNG BÀY BẢO TÀNG ẢO
Vũ Đức Thái*, Mã Văn Thu, Lê Sơn Thái, Đỗ Thị Chi
Trường Đại học Công nghệ thông tin và Truyền thông – ĐH Thái Nguyên

TÓM TẮT
Thực tại ảo và thực tại ảo tăng cường đang là công nghệ được áp dụng nhiều trong các bài toán về
mô phỏng thế giới thực. Một trong những ứng dụng là mô hình hóa trình diễn các hiện vật từ thực
tiễn thậm chí khôi phục từ tư liệu khảo cứu để đưa vào trưng bày trong bảo tàng ảo. Vấn đề chính
khi ứng dụng xây dựng bảo tàng ảo là các mô hình 3D cần được thể hiện tỉ mỉ, chi tiết đảm bảo
giống với vật khi quan sát trong không gian thế giới thực. Ta biết, mỗi hình ảnh 3D cần rất nhiều
hình 2D với các hướng nhìn, góc và vị trí quan sát. Điều này có nghĩa là khi có nhiều hiện vật cần
mô phỏng thì sẽ cần dung lượng lớn để lưu trữ và máy tính cần thực hiện nhiều các phép tính toán
trong quá trình biểu diễn hình ảnh với mỗi hiện vật ảo. Để giải quyết vấn đề này, chúng tôi đã
nghiên cứu sử dụng kỹ thuật LOD tự động để cài đặt ứng dụng trong phần mềm trưng bày ảo tại
Bảo tảng Văn hóa các dân tộc Việt Nam tại thành phố Thái Nguyên. LOD là kỹ thuật hỗ trợ xác
định độ chi tiết về hình ảnh của đối tượng ba chiều phụ thuộc vào khoảng cách từ vị trí của vật tới
vị trí người quan sát. Qua đó giảm bớt khối lượng cần tính toán của máy tính trong một đơn vị thời
gian, giúp tăng số lượng và chất lượng hiện vật được trưng bày. Trong nội dung bài báo, chúng tôi
trình bày một kỹ thuật tối ưu lưới cho mô hình 3D. Kỹ thuật này được áp dụng trong thời gian thực
từ đó tạo ra kỹ thuật LOD tự động áp dụng cho bài toán trong trưng bày bảo tàng ảo.
Từ khóa: tối ưu hóa lưới, tối ưu hóa tam giác, tối ưu bề mặt lưới mô hình, lod tự động

MỞ ĐẦU*
Mô hình 3D hiện đang ngày càng phổ biến và


sử dụng rộng rãi trong các ứng dụng mô
phỏng, thực tại ảo. Ta thấy, với các khoảng
cách khác nhau trong khi quan sát chúng ta sẽ
thấy các độ chi tiết khác nhau của mô hình.
Điều này có nghĩa các mô hình ở gần sẽ rất
chi tiết trong khi các mô hình càng ở xa sẽ
càng mờ. Để tối ưu tính toán chúng ta thường
phải có sẵn các mô hình 3D với các mức độ
chi tiết khác nhau. Khi biểu diễn vật ở mỗi
khoảng cách nhất định chương trình sẽ gọi và
sử dụng mô hình với độ chi tiết tương ứng, kỹ
thuật này trong thực tại ảo gọi là LOD (Level
Of Detail) [4]. Kỹ thuật này đã được F.
Biljecki , H. Ledoux và J. Stoter trình bày để
biểu diễn các mô hình 3D các tòa nhà năm
2016 [3], Như vậy, mỗi mô hình 3D phải thiết
kế lại nhiều lần với độ chi tiết khác nhau.
Điều này dẫn tới thời gian và chi phí tạo ra
mô hình ra tăng và đồng nghĩa với tổng chi
phí cho một hệ thống trưng bày ảo là lớn. Để
giảm chi phí khi xây dựng mô hình cần áp
*

dụng các chiến lược tự động tối ưu mô hình
dựa trên khoảng cách quan sát ngay khi
chương trình đang chạy. Quá trình tối ưu này
gọi là LOD tự động. Trong đó, độ chi tiết của
mô hình được tự động tính toán dựa trên
khoảng cách của nó tới vị trí quan sát.
Có ba phương pháp chính để tạo ra mô hình

3D: Một là sử dụng các phần mềm thiết kế 3D
tạo ra thư viện mô hình (do các nhà thiết tạo
ra). Hai là sử dụng các lệnh trong ngôn ngữ
lập trình để vẽ ra các mô hình. Ba là sử dụng
các thiết bị máy quét 3D tạo mô hình từ vật
thể thực. Phương pháp dùng lệnh rất vất vả
tốn kém và hầu như không còn được sử dụng
nữa. Phương pháp sử dụng các thiết bị phần
cứng là máy quét để tạo mô hình 3D mang
nhiều ưu điểm như thời gian tạo ra một mô
hình ngắn, độ chính xác cao, tính ổn định, chi
phí rẻ v.v.. Tuy nhiên, mô hình tạo ra từ máy
quét có một nhược điểm chính là số lượng
lưới lớn. Do đó, trên thực tế đa phần các
chương trình mô phỏng thực tại ảo thường sử
dụng các mô hình sinh ra từ phần mềm thiết
kế 3D.

Tel: 0985 158998, Email:

9


Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

Khi xây dựng ứng dụng, chúng ta cần giải
pháp tiết kiệm các chi phí khi xây dựng mô
hình. Ý tưởng của giải pháp chúng ta chỉ thiết

kế mô hình 3D của đối tượng một lần duy
nhất còn các cấp độ giảm lưới sẽ tự động tạo
ra mô hình mới tương ứng.
Đầu tiên, ta phải xây dựng các mô hình hiện
vật 3D ở mức độ chi tiết nhất. Sau đó dựa vào
khoảng cách từ mắt người tham quan ảo đến
vị trí của hiện vật 3D sẽ tiến hành rút gọn bề
mặt lưới của mô hình đó. Quy luật là khoảng
cách càng xa thì lưới của mô hình đó càng
giảm. Chúng tôi chia độ chi tiết của mô hình
thành bốn mức từ LOD1 tới LOD4. Trong đó,
lưới mức độ một (LOD1) ở trong khoảng cách
gần nhất với mức mô tả chi tiết nhất, và lưới
cấp độ bốn (LOD4) ở khoảng cách xa nhất.
Quá trình chuyển từ LOD1 sang thấp hơn là
quá trình rút gọn lưới của các mô hình trong
cảnh của bảo tàng mà chúng tôi mong muốn
[2]. Số lưới của mô hình cấp độ LOD2 bằng
khoảng 50% số lưới của mô hình cấp độ
LOD1, tương tự ta quy định số lưới LOD3
bằng khoảng 25% số lưới LOD1, và số lưới
LOD4 bằng khoảng 12,5% số lưới LOD1.
Với việc giảm lưới này thì các mô hình sẽ bị
biến dạng và đôi khi sẽ không còn là chính
mô hình đó mà biến thành một mô hình khác
và điều này không chấp nhận được. Do đó,
chúng ta cần một thuật toán rút gọn lưới hợp
lý sao cho khi chúng ta giảm lưới ở các cấp
độ khác nhau thì việc mô hình bị biến dạng là
thấp nhất. Trong các phần tiếp theo của bài

báo chúng tôi trình bày kỹ thuật tối ưu lưới và
kết quả sau quá trình cài đặt ứng dụng trong
bài toàn trưng bày ảo.

Hình 1. So sánh hình ảnh rút gọn bề mặt lưới

PHƯƠNG PHÁP TỐI ƯU LƯỚI MÔ HÌNH
10

189(13): 9 - 14

Tối ưu lưới mô hình 3D là rút gọn số lượng
đa giác của lưới trên mô hình, giải pháp đưa
ra là xóa bỏ một đỉnh và phục hồi bề mặt mô
hình. Ba toán tử chính để loại bỏ điểm là:
vertex removal (xóa điểm), edge collapse
(gộp hai điểm trên cạnh thành một điểm), half
edge collapse (gộp hai điểm thành một điểm,
trong đó một điểm sẽ được giữ nguyên vị trí
như ban đầu).Thứ tự xóa điểm dựa trên một
số hàm ưu tiên [4][6], quy trình cho việc tối
ưu hóa bề mặt lưới tam giác như sau:
Repeat
{
Chọn đối tượng 3D;
Xóa đỉnh, giảm lưới đối tượng;
Kết xuất đối tượng 3D;
}
Until (mục tiêu tối giản được đáp ứng);
Quy trình loại bỏ đỉnh và phục hồi bề mặt áp

dụng theo thứ tự ưu tiên để loại bỏ điểm ra
khỏi mô hình, sau khi đã xóa điểm xong thì
cần thêm bước phục hồi bề mặt của đối
tượng. Việc xử lý loại bỏ đỉnh dừng khi số
lượng lưới thấp nhất có thể mà bề mặt mô
hình vẫn đảm bảo về hình dáng [4].

Hình 2. Loại bỏ và phục hồi bề mặt

Một phép đo được sử dụng tính các lỗi dự
kiến xảy ra khi áp dụng các toán tử. Phép đo
lỗi gần đúng này được sử dụng để ưu tiên loại
bỏ đỉnh, đánh giá chất lượng của các kết quả.
Đại lượng Error metrics [4] là giá trị thể hiện
sự khác nhau về hình dáng giữa hai mô hình
trước và sau khi rút gọn lưới đa giác. Error
metrics giữa hai mô hình là nhỏ, có nghĩa là
hai mô hình gần giống nhau. Các độ đo khi
tính toán việc giảm lưới gồm: edge length (độ
dài các cạnh kết nối từ điểm đang xét đến các


Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

189(13): 9 - 14

điểm láng giềng), distance to plane (khoảng
cách từ điểm tới mặt phẳng chứa láng giềng

của nó), curvature (bề mặt cong của các mặt
phẳng chứa điểm), volume (thể tích).

Áp dụng công thức (1), chúng tôi đã thử
nghiệm cho một số mô hình và thấy rõ về mặt
tối ưu lưới. Tuy nhiên, lưới tối ưu còn rất
nhiều lỗi khi chúng ta thực hiện rút gọn lưới
như lưới xóa không đều, một số mặt khi tối
ưu bị biến dạng [2]. Để khắc phục các lỗi
trên, chúng tôi đưa ra một số giả thiết về
trường hợp ngoại lai của các điểm cần tối ưu
trên bề mặt mô hình 3D khi áp dụng theo
phương pháp này và đề xuất thuật toán để giải
quyết bài toán tương ứng các trường hợp.

Hình 3. Rút gọn lưới theo tổng góc curvature

Trường hợp thứ nhất, trong hình 4 nếu điểm
v1 chúng ta có thể xóa mà không ảnh hưởng
đến bề mặt đối tượng.

Khi đó xấp xỉ độ cong bề mặt K tại đỉnh
v0được tính theo công thức (1) [5]:
K=

(1)

Với
: là các góc tại đỉnh v0 sinh ra từ các
cạnh kề nhau cùng kết nối đến đỉnh v0.

Theo công thức trên, với K càng nhỏ thì đỉnh
v0 càng dễ xóa bỏ. Bởi vì với một điểm bất kỳ
nằm trên một mặt phẳng thì tổng các góc
xung quanh nó là 2 = 3600, khi đó K =0.Thì
việc xóa điểm v0 sẽ không hề ảnh hưởng đến
hình dạng của mô hình. Một ngưỡng α được
cho trước để thỏa mãn điều kiện loại bỏ điểm
v0, thuật toán chi tiết:
Khởi tạo:
∀v ∈ V: v.errormetric: = CalcErrorMetric (v);
Sort_Vertexlist ();
Repeat
{
Lấy v0;

Hình 4. Góc tại đỉnh v1 so với v và v2

Những điểm v2 nằm trên đường thẳng, mà
đường thẳng này là giao của hai mặt phẳng
vuông góc với nhau. Ta nhận thấy tổng các
góc xung quanh điểm v2 là 360o và điểm v là
giao của ba mặt phẳng có tổng các góc xung
quanh lớn hơn 360o, nhưng nếu chúng ta xóa
đỉnh v2 và đỉnh v thì mô hình thu được sau khi
tối ưu sẽ bị méo mó. Khi đó công thức (1)
được thay thế bằng công thức (2) [2]:

if (v0.errrormetric <α)
{
Loại bỏ (v0);

Lưới tam giác (Nghb (v0));
Cập nhật (v0):
}
else break;
}
Until (mục tiêu cần giảm là đạt);

= |2.π –

|

(2)

Do đó, đỉnh v tại vị trí này sẽ được phân biệt với
đỉnh v1 là véc tơ pháp tuyến của hai mặt phẳng
chứa hai tam giác kề nhau có chung đỉnh v
không được lớn hơn một giá trị λ cho phép.
Chúng xác định các cạnh i+1là cạnh nối giữa
v và vi+1, góc giữa hai cạnh kề nhau liên tiếp
θi,i+1 = ‫ ( ﻠ‬i,

i+1).

Tam giác giữa

i,

i+1

được


đặt tên ti =Δ(v, vi, vi+1), véc tơ pháp tuyến

11


Vũ Đức Thái và Đtg

tương ứng là

i+1

Tạp chí KHOA HỌC & CÔNG NGHỆ

. Trên cạnh

=

{

i+1

Tìm láng giềng của (v0);

góc giữa hai véc tơ pháp tuyến của hai tam
giác ti và tam giác liền kề ti+1 là βi+1 = ‫( ﻠ‬

189(13): 9 - 14

Loại bỏ (v0);


i+1,

Lưới tam giác (Nghb (v0));

i+2).

Cập nhật (v0):

Trường hợp thứ hai, tại một điểm v đang xét
mà góc quanh điểm khi áp dụng công thức:
= |2π –
| nhỏ hơn một ngưỡng α cho
phép và góc giữa hai véc tơ pháp tuyến của
hai tam giác kề nhau nhỏ hơn một giá trị λ
cho trước. Tuy nhiên, số đường kết nối đến
điểm v là rất nhiều hay bậc của đỉnh v là cao.
Trong trường hợp này, chúng tôi sẽ giữ lại
đỉnh v có số lượng cạnh kết nối đến nó là
nhiều hơn số lượng m cho phép.

}
Else break;
}
Until Đạt mục tiêu cần giảm
Saukhi đưa ra thuật toán rút gọn bề mặt lưới
mô hình, chúng tôi tiếp tục phân tích các mô
hình thực tế để áp dụng cho việc mô phỏng
các hiện vật. Do việc trưng bày trong bảo tàng
là đa dạng và khoảng cách giữa các đối tượng

là khá gần. Thế nên chúng tôi lựa chọn để đưa
ra các thông số vị trí nhìn [3], khoảng cách và
các mức Lod được đưa vào sao cho phù hợp
trong bảng 1.
KẾT QUẢ THỰC NGHIỆM

Hình 5. Đỉnh v với nhiều cạnh kết nối

Một tập tam giác lưới M bao gồm một tập các
đỉnh V = {vi} ⊂ IR3, được kết nối bởi một tập
các cạnh E = {ej = (vj1, vj2)} và một bộ tam
giác T = {tk= Δ(vk1, vk2, vk3)}. Với v ∈ V là
một đỉnh của một tam giác lưới M và để v1,
..., vn là các đỉnh lân cận của v.
Thuật toán đề xuất chi tiết [1],[2]:
∀v ∈ V: v.errormetric: = CalcErrorMetric (v);
CalcErrorMetric (v) = |2π –

|;

Sort_Vertexlist ();
Repeat:
{
Lấy v0 (một đỉnh trong lưới tam giác);
if ((v0.errrormetric <α)
and ( ‫( ﻠ‬

12

i-1,


i)

< δ) and (

i

; i
Các mô hình thực nghiệm là các mô hình hiện
vật bảo tàng dưới dạng 3D, có số lượng lưới
bề mặt lớn được xây dựng trên phần mềm 3D
ở cấp độ LOD1. Các mô hình này chúng tôi
tổng hợp thành một khu lúa nước của dân tộc
Kinh để trưng bày theo mô hình bảo tàng Các
Dân Tộc Việt Nam thực tế. Chúng tôi sử dụng
phương pháp tổng góc của mặt quanh một
đỉnh kết hợp với các ràng buộc khi phát hiện
một số trường hợp ngoại lai của điểm trên bề
mặt lưới khi áp dụng công thức tổng góc để
xóa điểm. Mô hình mới sinh ra có số lượng
lưới bề mặt giảm đáng kể mà vẫn giữ được
nguyên mẫu về hình dáng kể cả các mô hình
ở cấp độ LOD4. Kết quả này cũng là một
phần của kết quả thu được trong các nghiên
cứu trước khi chúng tôi đã thử nghiệm với
hầu hết các mô hình 3D khác [1][2].
Ban đầu khu trưng bày các mô hình đã được
xây dựng ở mức LOD1, là mức độ chi tiết các
hiện vật để cho người tham quan có thể quan

sát và tương tác với mô hình.


Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

189(13): 9 - 14

Bảng 1. Bảng phân tích phân loại độ phức tạp của mô hình

Mô tả
Độ chính xác
mô hình
Độ chính xác
của vị trí và
chiều cao
Tổng quát
Mô hình
Ràng buộc
yêu cầu
trong công
thức (2)

LOD4
Mô hình trong khoảng
không gian rộng lớn,
khu nhà trưng bày

LOD3

Mô hình hiện vật
trong khoảng phòng
lớn, căn nhà

LOD2
Mô hình hiện vật
trong khoảng
phòng nhỏ

LOD1
Mô hình trong khoảng
nhìn có thể tương tác
hiện vật được

Thấp

Trung bình

Cao

Rất cao

Trên 10 mét

5 đến 10 mét

2 đến 5 mét

0 đến 2 mét


Các mô hình mang độ
chính xác thấp. Một số
mô hình thiếu các chi tiết
v0.errror < 4α
and
( ‫ ( ﻠ‬i-1, i) < δ
and i ; i
Các mô hình có độ
chính xác vừa phải, có
thể chấp nhận được
v0.errror < 2α
and ( ‫ ( ﻠ‬i-1, i) <δ
and i ; i
Các mô hình
mang độ chính
xác tương đối
v0.errror <α
and ( ‫ ( ﻠ‬i-1,
i)< δ
and i ; i
Các mô hình mang độ
chính xác cao và khá
chi tiết các góc cạnh
0

khá cao. Tuy nhiên, về hình dáng của mô hình
chúng ta hoàn toàn có thể chấp nhận được.


Hình 6. Mô hình được xây dựng từ đầu LOD1

Rút gọn bề mặt lưới với số lượng lưới còn lại
là khoảng 50% số lượng lưới đa giác chúng
tôi đã nhận được các mô hình ở cấp độ
LOD2.

Hình 8. Hình ảnh mô hình ở cấp độ LOD3

Hình 9. Hình ảnh mô hình ở cấp độ LOD4

KẾT LUẬN
Hình 7. Hình ảnh mô hình ở cấp độ LOD2

Rút gọn bề mặt lưới với số lượng lưới còn lại
là khoảng 25% số lượng lưới đa giác chúng
tôi được các mô hình ở cấp độ LOD3.
Rút gọn bề mặt lưới với số lượng lưới còn lại
là khoảng 12,5% số lượng lưới đa giác chúng
tôi được các mô hình ở cấp độ LOD4.
Với tham số rút gọn lưới là khoảng 12,5%thì
sự khác biệt giữa mô hình LOD1 và LOD4 là

Trong nghiên cứu này, chúng tôi áp dụng
phương pháp tính tổng góc của một điểm trên
bề mặt để giải quyết việc rút gọn lưới bề mặt
mô hình. Kết quả thực nghiệm cho thấy ba
mức độ phức tạp của mô hình đã giảm lưới từ
mô hình gốc có hình dạng thay đổi thấp so

với mô hình ban đầu. Từ đó, là nền tảng cho
kỹ thuật LOD tự động áp dụng trong chương
trình mô phỏng bảo tàng cũng như các chương
13


Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

trình ứng dụng thực tại ảo khác chạy với chế độ
thời gian thực. Nhóm tác giả hi vọng báo cáo
này sẽ đóng góp một phần cho những phát triển
của ngành công nghệ thực tại ảo nói riêng và
công nghệ thông tin nói chung.
LỜI CÁM ƠN
Nghiên cứu này được hỗ trợ bởi đề tài khoa
học và công nghệ cấp Bộ (Mã số: B2017TNA-56).
TÀI LIỆU THAM KHẢO
1. Mã Văn Thu, Đỗ Năng Toàn, Lê Sơn Thái, Đỗ
Hồng Quân(2017), “Một kỹ thuật tối ưu hóa mô
hình 3D trong thực tại ảo”, hội thảo Fair 10 tại
Đà Nẵng.

189(13): 9 - 14

2. Mã Văn Thu (2016),“Mô hình 3D và tối ưu hóa
mô hình trong thực tại ảo”, Luận văn thạc sỹ, Đại
học QGHN.
3. F. Biljecki, H. Ledoux, J. Stoter (2016),

“Generation of multi – lod 3D city models in
cityGML with the procedural modeling engine
random3Dcity”,on Gottingen Vol. IV-4/W1, pp.
51-59.
4. David Luebke, Martin Reddy, Jonathan D.
Cohen, Amitabh Varshney, Benjamin Watson,
Robert Huebner (2002),“Level of detail for 3D
graphics”, Elsevier.
5. Nira Dyn, Kai Hormann, Sun-Jeong Kim, and
David
Levin
(2000),
“Optimizing
3D
Triangulations
Using
Discrete
Curvature
Analysis”. Farinhansford. P:578
6. Kobbelt, L.Discrete ”The Mathematics of
Surfaces” VII,T.Goodman and R. Martin (eds.),
Clarendon Press, Oxford, 1997, PP: 101–131.

ABSTRACT
LOD AUTOMATION TECHNOLOGY APPLICATION FOR OPTIMIZE 3D
MODELS IN THE MUSEUM VIRTUAL EXHIBIT
Vu Duc Thai*, Ma Van Thu, Le Son Thai, Do Thi Chi
University of Information and Communication Technology - TNU

Virtual reality and augmented reality technology is applied more and more widely in simulating

reality world problem. This technology allows modeling of artifacts from the actual and exhibited
in the virtual museum. The big problem here is the number of models in the museum is much, and
three-dimensional models need to be designed in much the same as actual models. This means that
a large amount of artifacts need to be simulated, it also require large amounts of storage space and
the computer needs to perform many calculations during the image processing with each virtual
artifact. In order to solve this problem, we propose to use automatic LOD techniques in the
problems of virtual exhibit. LOD is a technique that determines the image detail of a threedimensional object depending on the distance from its location to the observer position. This
reduces the amount of computing needed in a unit of time to increase the amount and quality of
exhibits. In the article, we present some of the optimization techniques of modeling threedimensional grid. This technique is applied in real time from which the automatically LOD
technique is applied to the problem in the virtual museum exhibit.
Key words: optimize mesh, optimizing triangle, optimize grid surface model, auto lod

Ngày nhận bài: 22/8/2018; Ngày hoàn thiện: 06/9/2018; Ngày duyệt đăng: 30/11/2018
*

Tel: 0985 158998, Email:

14



×