intTypePromotion=1

Một phương pháp hiển thị đặc trưng trên đối tượng ảo ba chiều dựa trên công nghệ lập trình GPU

Chia sẻ: ViColor2711 ViColor2711 | Ngày: | Loại File: PDF | Số trang:9

0
19
lượt xem
0
download

Một phương pháp hiển thị đặc trưng trên đối tượng ảo ba chiều dựa trên công nghệ lập trình GPU

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong bài viết này, qua khai thác ưu điểm của công nghệ lập trình GPU và kỹ thuật phủ ảnh, chúng tôi đề xuất một phương pháp hiệu quả, thể hiện được một số đặc trưng cơ bản trên các đối tượng ảo ba chiều. Phương pháp sử dụng kỹ thuật phủ ảnh và tính khả trình của card đồ họa GPU.

Chủ đề:
Lưu

Nội dung Text: Một phương pháp hiển thị đặc trưng trên đối tượng ảo ba chiều dựa trên công nghệ lập trình GPU

Đo lường & Tin học<br /> <br /> MỘT PHƯƠNG PHÁP HIỂN THỊ ĐẶC TRƯNG TRÊN ĐỐI TƯỢNG<br /> ẢO BA CHIỀU DỰA TRÊN CÔNG NGHỆ LẬP TRÌNH GPU<br /> Lê Anh1*, Đặng Hoàng Minh2, Phạm Văn Lai2<br /> Tóm tắt: Trong bài báo này, qua khai thác ưu điểm của công nghệ lập trình GPU<br /> và kỹ thuật phủ ảnh, chúng tôi đề xuất một phương pháp hiệu quả, thể hiện được<br /> một số đặc trưng cơ bản trên các đối tượng ảo ba chiều. Phương pháp sử dụng kỹ<br /> thuật phủ ảnh và tính khả trình của card đồ họa GPU. Kết quả nghiên cứu có thể<br /> được ứng dụng hiệu quả trong mô phỏng các loại vũ khí, khí tài phục vụ huấn luyện<br /> trong quân đội.<br /> Từ khóa: Mô phỏng; Texture; Ảnh phủ; GPU.<br /> <br /> 1. ĐẶT VẤN ĐỀ<br /> Trong thực tế, các đối tượng được nhận biết qua hình dạng hoặc một số đặc<br /> trưng bên ngoài của đối tượng. Các đặc trưng khá phong phú, đa dạng được thể<br /> hiện qua màu sắc, hình ảnh, ký tự, ký hiệu, …, các đặc trưng này chứa đựng nội<br /> dung nhất định thể hiện đặc điểm của đối tượng. Tuy nhiên, các đặc trưng trên đối<br /> tượng có thể thay đổi liên tục theo thời gian, gây ra những khó khăn khi mô phỏng<br /> trên máy tính. Trong môi trường ảo ba chiều, bài toán đặt ra là phải mô phỏng<br /> được đầy đủ, chính xác các đặc trưng trên đối tượng nhưng vẫn phải bảo đảm được<br /> tính thời gian thực của một phần mềm mô phỏng.<br /> Một đối tượng được nhận biết qua các đặc trưng như hình dạng, màu sắc, ký tự,<br /> ký hiệu, … các đặc trưng này chứa đựng những nội dung nhất định. Ví dụ, đồng hồ<br /> có đặc trưng là các kim chỉ và các con số thể hiện thông số đo được bởi đồng hồ<br /> đó; màn hình radar có đặc trưng là các đường tròn đồng tâm và các ký hiệu, chúng<br /> biểu diễn các đối tượng đang nằm trong vùng quét của radar.<br /> Trong không gian ảo ba chiều, phương pháp thường được sử dụng để mô<br /> phỏng đối tượng và các đặc trưng là mô hình hóa 3D các đặc trưng của đối tượng<br /> và áp dụng các phép biến hình cơ bản [1], [3], [4]. Ưu điểm của phương pháp trên<br /> là cài đặt đơn giản, nhưng cần sự tỉ mỉ trong bước dựng mô hình ba chiều các<br /> thành phần đặc trưng. Tuy nhiên, đối với các đối tượng có nhiều thành phần đặc<br /> trưng thì việc xây dựng dữ liệu mô hình tốn nhiều thời gian hơn, đồng thời số<br /> lượng mặt lưới của mô hình cũng tăng lên, từ đó dữ liệu mô hình cần lưu trữ và xử<br /> lý sẽ lớn hơn. Bên cạnh đó, phương pháp trên khó có thể áp dụng trong một số<br /> trường hợp. Ví dụ, màn hình đa năng ở chế độ vô tuyến và chỉ thị tình thế chiến<br /> thuật trên máy bay Su30MK2 có đặc trưng là nhiều hình ảnh, ký tự, ký hiệu đặc<br /> biệt…, các đặc trưng này thay đổi liên tục theo thời gian và khó mô phỏng được<br /> bằng phương pháp mô hình hóa.<br /> Để giải quyết vấn đề trên, chúng tôi đề xuất một phương pháp hiển thị đặc<br /> trưng trên đối tượng ảo ba chiều sử dụng kỹ thuật phủ ảnh (texture mapping) [1],<br /> [2], [5] và tính khả trình trên card đồ họa GPU [8], [9] để gia tăng tốc độ xử lý và<br /> hiển thị hình ảnh. Cách tiếp cận này mô phỏng được các đặc trưng thay đổi trên đối<br /> tượng mà vẫn đảm bảo được tốc độ hiển thị hình ảnh ba chiều theo thời gian thực.<br /> Các phần tiếp theo của bài báo bao gồm các nội dung sau: cơ sở lý thuyết, phương<br /> pháp được đề xuất, kết quả thực nghiệm và kết luận.<br /> <br /> <br /> <br /> 218 L. Anh, Đ. H. Minh, P. V. Lai, “Một phương pháp hiển thị đặc trưng … lập trình GPU.”<br /> Nghiên cứu khoa học công nghệ<br /> <br /> 2. CƠ SỞ LÝ THUYẾT<br /> Trong đồ họa máy tính, một đối tượng được dựng hình ba chiều phải trải qua<br /> hai giai đoạn. Giai đoạn một là mô hình hóa đối tượng, đối tượng được khảo sát,<br /> chụp hình, thu thập thông tin và dựng dữ liệu mô hình và dữ liệu hoạt cảnh qua các<br /> phần mềm như 3DSMax, Blender, C4D…Giai đoạn hai là phủ ảnh vật liệu lên đối<br /> tượng sử dụng kỹ thuật phủ ảnh (texture mapping) [1][2]. Trong hai giai đoạn trên,<br /> khái niệm ảnh phủ và vật liệu đóng vai trò rất quan trọng.<br /> 2.1. Ảnh phủ<br /> Khái niệm texture được định nghĩa là một vùng nhớ trên bộ nhớ hình ảnh<br /> (video memory) của card đồ họa (Hình 1), và được sử dụng rất nhiều trong các chu<br /> trình xử lý đồ họa. Dữ liệu texture thuộc một trong hai dạng: dữ liệu được load từ<br /> file ảnh, hoặc dữ liệu được sao chép từ bộ đệm tính toán (render target) của card đồ<br /> họa. Bộ đệm tính toán là một bộ đệm mà ở đó các tính toán điểm ảnh được thực<br /> hiện. Kết quả tính toán các điểm ảnh nằm trên bộ đệm tính toán sau đó có thể được<br /> sử dụng như một texture. Đặc điểm này cho phép các kết quả tính toán ở trên bộ<br /> đệm tính toán có thể được sử dụng cho những lần tính toán tiếp theo.<br /> Khái niệm ảnh phủ được sử dụng trong mô hình hóa đối tượng cũng được gọi<br /> là texture, đây là trường hợp đặc biệt của khái niệm texture. Các ảnh phủ được hiểu<br /> là một thành phần của vật liệu được phủ trên mô hình đối tượng ảo ba chiều.<br /> <br /> <br /> <br /> <br /> Hình 1. Texture.<br /> 2.2. Vật liệu<br /> Thực tế, các đối tượng có thể được làm từ nhiều loại vật liệu khác nhau, từ các<br /> vật liệu thô như gỗ, đất, sỏi, đá... đến các vật liệu được con người sản xuất ra như<br /> vải, kim loại, thủy tinh, cao su, xi măng... Từ nguồn nguyên vật liệu đầu vào, các<br /> đối tượng được tạo hình và có màu sắc là màu của vật liệu đã tạo nên chúng. Sau<br /> đó, các đối tượng có thể được trang trí thêm bằng các hình họa tiết. Thực tế thì vật<br /> liệu được phân thành hai loại là vật liệu màu (màu của vật liệu tạo hình lên đối<br /> tượng) và vật liệu họa tiết (có các hình họa tiết được vẽ trên đối tượng).<br /> Trong đồ họa máy tính, vật liệu gồm hai loại là vật liệu màu và vật liệu ảnh<br /> (hay vật liệu trang trí). Trong đó, vật liệu ảnh chứa các hình ảnh bên ngoài của đối<br /> tượng, và các đặc trưng bên ngoài của đối tượng sẽ được thể hiện chủ yếu qua các<br /> hình ảnh này. Trong quá trình xây dựng mô hình ba chiều của một đối tượng, ban<br /> đầu, đối tượng được dựng dưới dạng mô hình mặt lưới ba chiều được phủ vật liệu<br /> màu nhất định, đây được gọi là mô hình đồng màu. Sau đó, mô hình đồng màu sẽ<br /> được phủ vật liệu ảnh, mô hình nhận được sẽ thể hiện được đầy đủ hình dáng và<br /> các đặc điểm bên ngoài của đối tượng. Do đó, vật liệu ảnh đã thể hiện được vai trò<br /> rất quan trọng trong quá trình xây dựng mô hình ba chiều của một đối tượng.<br /> <br /> <br /> Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 219<br /> Đo lường & Tin học<br /> <br /> 2.3. Chu trình hiển thị ảnh phủ trên đối tượng<br /> Một đối tượng được mô phỏng trong không gian ba chiều cần có file mô hình<br /> ba chiều và file ảnh phủ. Đầu tiên, file mô hình và file ảnh phủ được tải lên bộ nhớ<br /> chính bởi chương trình trên CPU. CPU phụ trách việc sử dụng bộ nhớ, điều khiển<br /> dòng dữ liệu giữa CPU và GPU. Các lệnh yêu cầu thực hiện tính toán trên GPU<br /> được truyền từ CPU thông qua bộ đệm các lệnh (command buffer). Khi chương<br /> trình trên CPU gọi các lệnh vẽ đối tượng để thực thi trên GPU thì dữ liệu các đỉnh,<br /> dữ liệu ảnh phủ được chuyển vào bộ nhớ GPU, đồng thời chu trình xử lý đồ họa<br /> trên GPU bắt đầu được thực hiện.<br /> <br /> <br /> <br /> <br /> Hình 2. Chu trình hiển thị ảnh phủ trên đối tượng.<br /> Trên bộ nhớ GPU, dữ liệu các đỉnh của mô hình ba chiều của đối tượng được<br /> lưu trong các bộ đệm đỉnh và bộ đệm chỉ số đỉnh, còn dữ liệu ảnh phủ của đối<br /> tượng được lưu trên các texture. Bộ đệm đỉnh, bộ đệm chỉ số và texture sẽ là dữ<br /> liệu đầu vào của các bước trong chu trình xử lý đồ họa trên GPU [6][7].<br /> <br /> <br /> <br /> <br /> Hình 3. Các bước xử lý đồ họa trên GPU.<br /> Trong chu trình xử lý đồ họa trên GPU, đầu vào của bộ đệm đỉnh và bộ đệm<br /> chỉ số là tập hợp các đỉnh nằm trong một cấu trúc hình học cơ bản của mô hình ba<br /> chiều của đối tượng. Tại bước xử lý đỉnh, các phép xử lý trên từng đỉnh sẽ được<br /> thực hiện, (ví dụ, phép biến đổi tọa độ ba chiều của đỉnh). Tiếp theo, các phép biến<br /> đổi hình học cơ bản sẽ được thực hiện tại bước xử lý hình học. Sau đó, tại bước<br /> phân mảnh, điểm ảnh nào trên màn hình thuộc vào hình chiếu của đối tượng hình<br /> học đang được xử lý sẽ được xác định, những điểm ảnh được xác định sẽ được xử<br /> lý ở bước tiếp theo. Kế tiếp, dựa trên thông tin về tọa độ ảnh phủ của điểm, mỗi<br /> điểm sẽ được cập nhật màu từ ảnh phủ texture tại bước xử lý điểm. Cuối cùng, tại<br /> bước hợp nhất, giá trị màu của điểm đang xử lý sẽ được kết hợp với giá trị màu của<br /> điểm ảnh đã lưu trên bộ đệm màu (nếu có) sẽ xuất ra giá trị màu để hiển thị trên<br /> màn hình.<br /> 3. PHƯƠNG PHÁP ĐỀ XUẤT<br /> Một trong những điểm đặc biệt trong chu trình hiển thị ảnh phủ trên đối tượng<br /> đó là: tại bước xử lý điểm, kết quả tính toán điểm có thể được lưu vào trong bộ nhớ<br /> GPU để xử lý tiếp. Trong phương pháp được đề xuất, bộ đệm tính toán (render<br /> <br /> <br /> 220 L. Anh, Đ. H. Minh, P. V. Lai, “Một phương pháp hiển thị đặc trưng … lập trình GPU.”<br /> Nghiên cứu khoa học công nghệ<br /> <br /> target) sẽ được sử dụng để lưu trữ các đặc trưng của đối tượng thông qua các ảnh<br /> phủ. Sau đó, kết quả trên bộ đệm tính toán được lưu trữ qua các lần tính toán sẽ<br /> được hiển thị lên trên đối tượng ảo ba chiều. Các bước xử lý đều được thực hiện<br /> trên card đồ họa sử dụng các đoạn code shader. Cách tiếp cận sử dụng bộ đệm tính<br /> toán trên bộ nhớ GPU đồng thời khai thác khả năng xử lý song song của GPU giảm<br /> được các tính toán trên CPU và nâng cao tốc độ hiển thị hình ảnh của chương trình.<br /> 3.1. Phân loại các ảnh đặc trưng của đối tượng<br /> Đầu tiên, khi khảo sát để xây dựng mô hình đối tượng, các đặc trưng của một<br /> đối tượng phải được xác định và được phân lớp rõ ràng, chúng phải được biểu diễn<br /> dưới dạng các file ảnh, được gọi là các file ảnh đặc trưng. Do đó, bên cạnh dữ liệu<br /> file mô hình thì dữ liệu đầu vào của chương trình sẽ là các file ảnh đặc trưng.<br /> 3.2. Khởi tạo bộ đệm tính toán<br /> Trong bước này, một bộ đệm tính toán cũng được khởi tạo trên không gian bộ<br /> nhớ GPU, đồng thời, các file ảnh đặc trưng được tải lên bộ nhớ chính bởi chương<br /> trình trên CPU. Kích thước bộ đệm tính toán được thiết lập là lũy thừa của 2 (ví dụ,<br /> 64x64, 128x128, 256x256) để các tính toán đồ họa được tối ưu, đặc biệt là các tính<br /> toán liên quan đến texture.<br /> 3.3. Vẽ các ảnh đặc trưng lên bộ đệm tính toán<br /> Tại bước này, khi chương trình trên CPU gọi lệnh vẽ lên bộ đệm tính toán thì<br /> các dữ liệu các ảnh đặc trưng sẽ được chuyển sang bộ nhớ GPU. Trên bộ nhớ<br /> GPU, dữ liệu các ảnh đặc trưng sẽ tương ứng là các vùng nhớ texture (được ký<br /> hiệu là Texture1, ..., TextureN), chúng là đầu vào của chương trình xử lý điểm. Tại<br /> bước xử lý điểm, sử dụng đoạn code pixel shader, giá trị màu của các điểm ảnh sẽ<br /> được cập nhật trên bộ đệm tính toán thay vì bộ đệm màn hình như chu trình xử lý<br /> đồ họa thông thường. Đồng thời, căn cứ vào sự thay đổi về nội dung thông tin trên<br /> đối tượng tại từng thời điểm, các phép biến đổi ảnh trên các texture (chứa các đặc<br /> trưng) có thể được sử dụng để mô phỏng sự thay đổi đặc trưng của đối tượng tại<br /> một thời điểm.<br /> <br /> <br /> <br /> <br /> Hình 4. Vẽ các ảnh đặc trưng lên bộ đệm tính toán.<br /> Ví dụ, hai phép biến đổi ảnh thường được sử dụng là phép xoay và phép dịch<br /> ảnh. Nếu tâm của phép xoay là tâm của ảnh phủ (tâm có tọa độ ảnh phủ là [0.5,<br /> 0.5]), thì phép xoay ảnh được biểu diễn qua phép biến đổi tọa độ ảnh phủ như sau:<br /> (1)<br /> Trong đó, [u, v] và [u’, v’] là tọa độ ảnh phủ của điểm ảnh trước và sau khi<br /> thực hiện phép xoay.<br /> Phép dịch ảnh được biểu diễn qua phép biến đổi tọa độ ảnh phủ như sau:<br /> <br /> <br /> Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 221<br /> Đo lường & Tin học<br /> <br /> (2)<br /> Trong đó, du và dv tương ứng là khoảng dịch chuyển trên trục u và trục v của<br /> ảnh trong một khoảng thời gian.<br /> Sau đó, áp dụng phép hòa trộn ảnh, các texture chứa các đặc trưng của đối<br /> tượng sẽ được kết hợp với nhau trên bộ đệm tính toán theo một thứ tự xác định để<br /> biểu diễn được các đặc trưng của đối tượng. Bộ đệm tính toán sẽ là nơi lưu trữ các<br /> giá trị màu của các texture. Sau bước xử lý này, kết quả của bộ đệm tính toán sẽ<br /> được lưu lại trên bộ nhớ GPU và được sử dụng cho bước xử lý tiếp theo.<br /> 3.4. Hiển thị kết quả của bộ đệm tính toán lên đối tượng<br /> Tại bước này, chu trình hiển thị ảnh phủ trên đối tượng được áp dụng trên file<br /> mô hình đối tượng. Đầu tiên, file mô hình được tải lên bộ nhớ chính bởi chương<br /> trình trên CPU. Khi chương trình trên CPU gọi lệnh vẽ đối tượng, dữ liệu các đỉnh<br /> từ file mô hình được chuyển vào bộ nhớ GPU. Đồng thời, dữ liệu trên bộ đệm tính<br /> toán được sao chép sang một texture khác gọi là render target texture (RT texture),<br /> RT texture sẽ là đầu vào của chương trình xử lý điểm. Sau đó, áp dụng chu trình<br /> hiển thị ảnh phủ trên đối tượng với đoạn code vertex shader và pixel shader, các<br /> đặc trưng của đối tượng đã được lưu trữ trên RT texture sẽ được hiển thị trên mô<br /> hình ba chiều của đối tượng.<br /> <br /> <br /> <br /> <br /> Hình 5. Hiển thị kết quả của bộ đệm tính toán lên đối tượng.<br /> Kết luận, trong phương pháp này, quan trọng nhất là bước phân loại các ảnh<br /> đặc trưng của đối tượng vì nó quyết định nội dung thông tin được thể hiện trên mô<br /> hình ba chiều của đối tượng. Phương pháp có thể áp dụng để mô phỏng nhiều loại<br /> đối tượng khác nhau. Trong phần thực nghiệm, phương pháp được sử dụng để mô<br /> phỏng các đối tượng sau: đồng hồ chỉ thị trên máy dò bom, đồng hồ chân trời điện<br /> tử trên máy bay Su30MK2 và mô phỏng tọa độ đối tượng trên màn hình radar.<br /> 4. KẾT QUẢ THỰC NGHIỆM<br /> Chương trình thực nghiệm được tiến hành trên máy tính có cấu hình như sau:<br /> CPU Intel Core i5-6400 CPU 2.70GHz, RAM 8GB, card màn hình Nvidia<br /> GeForce GTX 1060 6GB, hệ điều hành Windows 7 64 bits. Các dữ liệu ảnh và mô<br /> hình 3D được xây dựng trên phần mềm photoshop và 3DSMax, bao gồm: mô hình<br /> 3D máy dò bom Foerster Ferex 4032-API, mô hình 3D đồng hồ chân trời trên máy<br /> bay Su30MK2, mô hình 3D một màn hình radar, được sử dụng trong các thực<br /> nghiệm. Các thực nghiệm được lập trình trên engine đồ họa mã nguồn mở Unreal<br /> Engine 4, môi trường Microsoft Visual Studio C++ 2015. Tốc độ xử lý và hiển thị<br /> hình ảnh nhận được xấp xỉ 60 fps, đáp ứng được tính thời gian thực trong các ứng<br /> dụng mô phỏng.<br /> <br /> <br /> 222 L. Anh, Đ. H. Minh, P. V. Lai, “Một phương pháp hiển thị đặc trưng … lập trình GPU.”<br /> Nghiên cứu khoa học công nghệ<br /> <br /> 4.1. Mô phỏng đồng hồ chỉ thị trên máy dò bom Foerster Ferex 4032-API<br /> Trên máy dò bom Foerster Ferex 4032-API, đồng hồ chỉ thị thể hiện sự thay<br /> đổi từ tính cục bộ khi đầu dò đi qua đối tượng được dò. Đồng hồ chỉ thị được mô<br /> phỏng bằng phương pháp đã đề xuất: đầu tiên, hai ảnh đặc trưng cho đồng hồ chỉ<br /> thị là ảnh bảng chia và ảnh kim đồng hồ cơ học (các ô vuông màu đen trắng trong<br /> ảnh kim đồng hồ cơ học là vùng ảnh trong suốt). Bảng chia được phân thành 10 độ<br /> vạch trên chia về mỗi bên bắt đầu tính từ giữa là 0; chính giữ có vạch đen là<br /> ngưỡng cho phép sai số; kim đồng hồ cơ học lệch báo hiệu có sự thay đổi từ tính<br /> cục bộ. Sau khi khởi tạo bộ đệm tính toán, để mô phỏng sự thay đổi của từ tính khi<br /> máy dò dò qua đối tượng, phép quay đã được thực hiện trên ảnh kim đồng hồ cơ<br /> học. Tại bước kế tiếp, hai ảnh đặc trưng được vẽ lên bộ đệm tính toán theo thứ tự<br /> là ảnh bảng chia và ảnh kim đồng hồ cơ học. Tại bước cuối, vertex shader và pixel<br /> shader được sử dụng để hiển thị kết quả trên bộ đệm tính toán mô phỏng đồng hồ<br /> chỉ thị lên trên mặt hộp máy trong mô hình ba chiều của máy dò.<br /> <br /> <br /> <br /> <br /> Hình 6. Mô phỏng đồng hồ chỉ thị trên máy dò bom Foerster Ferex<br /> 4032-API: (a) Ảnh bảng chia, (b) Ảnh kim đồng hồ, (c) Đồng hồ chỉ thị.<br /> 4.2. Mô phỏng đồng hồ chân trời điện tử trên máy bay Su30MK2<br /> <br /> <br /> <br /> <br /> Hình 7. Mô phỏng đồng hồ chân trời điện tử trên máy bay Su30MK2<br /> (a) Ảnh vạch số góc nghiêng, (b) Ảnh vạch số góc chúc, (c) Ảnh máy bay,<br /> (d) Đồng hồ chân trời, (e) Màn hình đa chức năng, (f) Hình ảnh khoang lái.<br /> <br /> <br /> <br /> Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 223<br /> Đo lường & Tin học<br /> <br /> Đồng hồ chân trời điện tử được mô phỏng theo phương pháp đã đề xuất. Đầu<br /> tiên, ba ảnh đặc trưng được phân loại bao gồm: ảnh vạch số góc nghiêng, ảnh vạch<br /> số góc chúc, ảnh máy bay. Tiếp theo, phép dịch ảnh vạch số góc chúc được thực<br /> hiện để thể hiện góc chúc của máy bay, phép xoay ảnh ký hiệu máy bay được thực<br /> hiện để thể hiện góc nghiêng của máy bay. Kế tiếp, ba ảnh đặc trưng được vẽ lên<br /> bộ đệm tính toán theo thứ tự là ảnh vạch số góc nghiêng, ảnh vạch số góc chúc và<br /> ảnh hình máy bay (sử dụng phép hòa trộn ảnh). Tại bước cuối, vertex shader và<br /> pixel shader được sử dụng để hiển thị kết quả mô phỏng đồng hồ chân trời điện tử<br /> lên trên màn hình đa chức năng (nằm ở góc trái của khoang lái máy bay<br /> Su30MK2).<br /> 4.3. Mô phỏng tọa độ đối tượng trên màn hình radar<br /> Trong phần này, màn hình radar được biểu diễn bởi hai ảnh đặc trưng là ảnh<br /> radar (gồm các đường tròn đồng tâm) và ảnh ký hiệu đối tượng đặc trưng cho các<br /> đối tượng đang nằm trong vùng quét của radar. Nếu lấy vị trí của radar là trung<br /> tâm, thì tọa độ của các đối tượng nằm trong vùng quét của radar cần được tính<br /> toán. Phép biến đổi tọa độ của một đối tượng nằm trong vùng quét của radar về<br /> không gian ảnh radar được biểu diễn dưới dạng ma trận như sau:<br /> <br /> (3)<br /> <br /> <br /> <br /> <br /> Hình 8. Phép biến đổi tọa độ của một đối tường nằm trong vùng quét<br /> của radar (a) về không gian ảnh radar (b).<br /> Trong đó, O là vị trí radar, P(PX, PY) là tọa độ của đối tượng nằm trong vùng<br /> quét của radar, O’ là gốc tọa độ của ảnh radar, P‘(P’x, P’y) là tọa độ ảnh của đối<br /> tượng nằm trong không gian ảnh radar, W và H biểu diễn vùng quét radar, w và h<br /> biểu diễn không gian ảnh.<br /> Sau khi xác định được tọa độ ảnh của đối tượng, ảnh radar và ảnh ký hiệu đối<br /> tượng được vẽ lên bộ đệm tính toán. Cuối cùng, vertex shader và pixel shader được<br /> sử dụng để hiển thị kết quả của bộ đệm tính toán mô phỏng tọa độ đối tượng lên<br /> trên màn hình radar.<br /> <br /> <br /> 224 L. Anh, Đ. H. Minh, P. V. Lai, “Một phương pháp hiển thị đặc trưng … lập trình GPU.”<br /> Nghiên cứu khoa học công nghệ<br /> <br /> <br /> <br /> <br /> Hình 9. Mô phỏng tọa độ đối tượng trên màn hình radar<br /> (a) Ảnh radar, (b) Ảnh ký hiệu đối tượng, (c) Màn hình radar.<br /> <br /> 5. KẾT LUẬN<br /> Các đặc trưng bên ngoài của đối tượng chứa đựng nội dung thông tin nhất định<br /> và đóng vai trò quan trọng trong việc thể hiện các đặc trưng của một đối tượng.<br /> Trong các ứng dụng mô phỏng, mô phỏng được đầy đủ, chính xác các đặc trưng<br /> trên đối tượng là một bài toán khó vì sự đa dạng về mặt nội dung thông tin của các<br /> đối tượng. Để giải quyết bài toán trên, chúng tôi đưa ra một phương pháp hiển thị<br /> các đặc trưng trên đối tượng ảo ba chiều dựa trên công nghệ lập trình trên GPU và<br /> kỹ thuật phủ ảnh, khai thác tính năng hỗ trợ lập trình trên các card đồ họa. Trong<br /> đó, hầu hết khối lượng tính toán liên quan đến các ảnh đặc trưng của đối tượng đều<br /> được thực hiện trên GPU thông qua các đoạn code shader. Cách tiếp cận này đã<br /> giảm các phép tính toán trên CPU và khai thác được khả năng xử lý song song trên<br /> GPU, từ đó nâng cao tốc độ hiển thị hình ảnh, đảm bảo được yêu cầu xử lý thời<br /> gian thực trong các ứng dụng mô phỏng.<br /> <br /> TÀI LIỆU THAM KHẢO<br /> [1]. JungHyun Han, 3D Graphics for Game Programming, CRC Press 2011, pp 25-<br /> 27, pp 177-183.<br /> [2]. David Blythe, Tom McReynolds, Advanced Graphics Programming Using<br /> Open GL, chapter 14.Texture Mapping Techniques, O’Reilly, pp 269-316 .<br /> [3]. Gerald Farin , State of the art in 3D modeling. In Proceedings - 5th<br /> International Conference on Frontier of Computer Science and Technology,<br /> FCST 2010 [5577356] DOI: 10.1109/FCST.2010.114, 2010.<br /> [4]. Georgios Kordelas , Juan Diego P`erez-Moneo Agapito, Jes`us M. Vegas<br /> Hernandez , and Petros Daras, State-of-the-art Algorithms for Complete 3D<br /> Model Reconstruction, University of Valladolid, Valladolid, Spain.<br /> [5]. Wojciech Matusik, Frédo Durand, Texture Mapping & Shaders – Computer<br /> Graphics Course, MIT OpenCourseWare, http://ocw.mit.edu, Fall 2012.<br /> [6]. Ricardo Marroquim ; André Maximo, Introduction to GPU Programming with<br /> GLSL, Conference: 2009 Tutorials of the XXII Brazilian Symposium on<br /> <br /> <br /> <br /> Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 225<br /> Đo lường & Tin học<br /> <br /> Computer Graphics and Image Processing, At Rio de Janeiro, RJ, Brazil, DOI:<br /> 10.1109/SIBGRAPI-Tutorials, 2009, 9.<br /> [7]. Jason Zink, Matt Pettineo, Jack Hoxley, Practical Rendering and Computation<br /> with Direct3D 11, CRC Press 2011, pp 5-7.<br /> [8]. Nguyễn Trung Kiên, Tăng tốc bởi GPU trong mô phỏng màn hình radar,<br /> chuyên san Công nghệ thông tin và Truyền thông số - số 01 (10-2012), Học<br /> viện Kỹ thuật quân sự, 2012.<br /> [9]. F.Klose, O.Wang, J.-C.Bazin, M.Magnor, A.Sorkine-Hornung, Efficient GPU<br /> Based Sampling for Scene-Space Video Processing; Vision, Modeling, and<br /> Visualization, 2015.<br /> <br /> ABSTRACT<br /> A METHOD FOR RENDERING FEATURES ON 3D VIRTUAL OBJECTS<br /> BASED ON GPU PROCESSING TECHNOLOGY<br /> <br /> In this paper, by exploring the advantages of GPU programming and<br /> texture mapping techniques, we propose an efficient method that<br /> demonstrates some of the basic features of three-dimensional virtual<br /> objects. The texture mapping techniques and programmable shaders on<br /> graphics processors are used in the method. Research results can be<br /> applied effectively in military training by the simulation of weapons and<br /> military equipment.<br /> <br /> Keywords: Simulation; Texture; GPU.<br /> <br /> Nhận bài ngày 24 tháng 12 năm 2018<br /> Hoàn thiện ngày 08 tháng 3 năm 2019<br /> Chấp nhận đăng ngày 15 tháng 3 năm 2019<br /> <br /> 1<br /> Địa chỉ: Viện Công nghệ mô phỏng, Học viện Kỹ thuật quân sự.<br /> 2<br /> Viện Công nghệ thông tin, Viện KHCN quân sự.<br /> *<br /> Email: anhle.simtech@mta.edu.vn.<br /> <br /> <br /> <br /> <br /> 226 L. Anh, Đ. H. Minh, P. V. Lai, “Một phương pháp hiển thị đặc trưng … lập trình GPU.”<br />
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2