Tạo video 3D từ mô hình 3D sử dụng công nghệ tính toán hiệu năng cao trên các bộ xử lý đồ họa Tạo video 3D từ mô hình 3D sử dụng công nghệ tính toán hiệu năng cao trên các bộ xử lý đồ họa Tạo video 3D từ mô hình 3D sử dụng công nghệ tính toán hiệu năng cao trên các bộ xử lý đồ họa luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
Mẫu 1a MẪU BÌA LUẬN VĂN CĨ IN CHỮ NHŨ VÀNG Khổ 210 x 297 mm DƯƠNG NHẬT TÂN BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - Dương Nhật Tân CHUYÊN NGHÀNH CÔNG NGHỆ THÔNG TIN TẠO VIDEO 3D TỪ MƠ HÌNH 3D SỬ DỤNG CƠNG NGHỆ TÍNH TỐN HIỆU NĂNG CAO TRÊN CÁC BỘ XỬ LÝ ĐỒ HỌA LUẬN VĂN THẠC SĨ KHOA HỌC CƠNG NGHỆ THƠNG TIN KHỐ 2010 Hà Nội – Năm 2011 MẪU TRANG PHỤ BÌA LUẬN VĂN Mẫu 1b BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Dương Nhật Tân TẠO VIDEO 3D TỪ MƠ HÌNH 3D SỬ DỤNG CƠNG NGHỆ TÍNH TỐN HIỆU NĂNG CAO TRÊN CÁC BỘ XỬ LÝ ĐỒ HỌA Chuyên ngành : CÔNG NGHỆ THÔNG TIN LUẬN VĂN THẠC SĨ KHOA HỌC CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC : TS NGUYỄN HỮU ĐỨC Hà Nội – Năm 2011 MỤC LỤC LỜI CAM ĐOAN T 35T LỜI CẢM ƠN T 35T DANH MỤC TỪ VIẾT TẮT, THUẬT NGỮ VÀ Ý NGHĨA T T DANH MỤC BẢNG T 35T DANH MỤC HÌNH VẼ T 35T CHƯƠNG MỞ ĐẦU T 35T 1.1 T 1.2 T 1.3 T 1.4 T 35T T 35T T 35T Lý chọn đề tài lịch sử nghiên cứu T T 35T T Mục tiêu nghiên cứu luận văn 13 T Kết đạt 14 35T 35T Nội dung luận văn 14 35T T CHƯƠNG CƠ SỞ LÝ THUYẾT 16 T 2.1 T 35T T 2.1.2 T 2.2 T T 2.2.2 2.2.3 T 2.3 T 35T 35T T Thư viện lib3ds 18 35T T Bounding volume hiearachy (BVH) 21 35T 35T 35T 35T 35T T Xây dựng BVH 22 T Duyệt BVH 26 35T 35T Giải thuật Raytracing 26 2.3.2 T 2.3.3 T 35T 35T 2.3.1 T Định dạng file 3ds 17 35T Xây dựng cấu trúc tăng tốc cho raytracing 20 T T 35T 35T 2.2.1 T T Mơ hình 3D 16 35T 2.1.1 T 35T 35T Mơ hình chiếu sáng Phong 29 35T 35T 35T 35T 35T T Tia phản xạ 31 35T Tia khúc xạ 31 35T 35T 2.3.4 T 2.3.5 T 2.3.6 T 2.3.7 T 2.4 T 2.5 T 35T 35T 35T 35T 35T 35T Màn ảnh 33 35T Camera pinhole 35 35T 35T Giao điểm tia – đối tượng 36 35T T Biểu diễn ảnh lược đồ lọc màu 43 T 35T T 35T T Cuda Gp-Gpu 48 2.5.1 T Che bóng 32 35T 2.5.2 T 35T Các xử lý đồ họa đa lõi NVIDIA 48 35T 35T 35T 35T T Môi trường phát triển ứng dụng CUDA 52 T CHƯƠNG THỰC HIỆN 58 T 3.1 T 3.2 T 35T T 35T 3.2.2 T 3.3 T 3.3.2 3.4 T 35T Khử đệ quy raytracing sử dụng khn hình C++ 61 35T 35T 35T 35T T Khử duyệt BVH đệ quy sử dụng ngăn xếp 62 T Thiết lập camera tạo ảnh anaglyph 63 T T T 35T 3.3.1 T 35T Khử đệ quy 61 3.2.1 T 35T Song song hóa giải thuật raytracing GPU 58 T T 35T T Thiết lập camera 63 35T 35T 35T 35T 35T Tạo ảnh anaglyph GPU 68 T Tạo video 3D 70 35T 35T CHƯƠNG KẾT QUẢ THỬ NGHIỆM 74 T 4.1 T 4.2 T 35T 35T T Môi trường thử nghiệm 74 T 35T T 35T T Kết đạt 74 35T CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 79 T 5.1 T 5.2 T 35T 35T T Kết luận 79 T 35T T 35T 35T Hướng phát triển 79 35T LỜI CAM ĐOAN Tôi – Dương Nhật Tân – xin cam đoan Luận văn tốt nghiệp Thạc sĩ cơng trình nghiên cứu thân hướng dẫn TS Nguyễn Hữu Đức Các kết Luận văn tốt nghiệp trung thực, chép tồn văn cơng trình khác Hà nội, ngày 11 tháng 11 năm 2011 LỜI CẢM ƠN Tôi xin gửi lời cảm ơn sâu sắc tới thầy giáo – Tiến sĩ Nguyễn Hữu Đức – giám đốc Trung tâm tính tốn hiệu cao ĐHBKHN, người tận tình hướng dẫn theo dõi sát tơi q trình thực luận văn Ngay từ ngày đầu chọn lựa đề tài cho luận văn, Thầy người đưa ý tưởng, giúp tơi xác định tốn mục đích nghiên cứu Cùng với q trình thực luận văn này, Thầy đưa nhận xét, lời khun định hướng có ích để tơi hồn thành luận văn Tiếp theo, xin gửi lời cảm ơn chân thành tới Thầy giáo – Giáo sư, Tiến sĩ – Nguyễn Thanh Thủy – Hiệu phó trường Đại học Cơng nghệ, ĐHQGN Thầy để lại nhiều điều đáng học hỏi Thầy giám đốc Trung tâm tính tốn hiệu cao ĐHBKH Tơi học hỏi từ Thầy nhiều, từ cách thức phương pháp làm khoa học, nghiên cứu điều sống Tôi gửi lời cảm ơn tới đồng nghiệp bạn nhóm nghiên cứu tính tốn đa lõi MCG Trung tâm tính tốn hiệu cao ĐHBKHN Có thể nói luận văn khơng hồn thành trọn vẹn khơng có phối hợp cộng tác thành viên nhóm: KS Trịnh Quốc Việt, KS Nguyễn Hữu Dũng Cũng xin gửi lời cảm ơn tới đồng nghiệp khác tơi Trung tâm tính tốn hiệu cao, học hỏi từ người nhiều điều chan hịa, chia sẻ người giúp cho thực luận văn tốt DANH MỤC TỪ VIẾT TẮT, THUẬT NGỮ VÀ Ý NGHĨA Kí hiệu / Thuật ngữ Ý nghĩa 3D chiều 2D chiều Kết xuất ảnh Render phương pháp, ảnh có độ dựa lọc màu Anaglyph CPU Bộ xử lý trung tâm GPU Bộ xử lý đồ họa đa lõi GPGPU Cơng nghệ tính toán đa dụng xử lý đồ họa BRDF Hàm giải thuật mô tả cách phản xạ ánh sáng lên bề mặt JPEG Là loại tệp tin định dạng ảnh Joint Photographic Experts Group đặt CUDA Môi trường phát triển ứng dụng cho xử lý đồ họa hãng NVIDIA Rasterization Phương pháp kết xuất đồ họa hỗ trợ phần cứng chuyên biệt GPU Ray tracing Giải thuật kết xuất đồ họa tạo ảnh có độ chân thực cao Định dạng tệp tin chứa đồng âm hình ảnh AVI Chuẩn nén video tín hiệu số MJPEG DANH MỤC BẢNG Bảng Các lược đồ trộn màu biểu diễn ảnh 44 U T T U Bảng - Thời gian chạy tính theo giây kết xuất mơ hình chessboard.tri gồm khoảng U T 46 000 tam giác với độ phân giải 600*800 điểm ảnh CPU Pentium D 2.8 GHz GPU Geforce GTX 295 76 35T U Bảng - Hiệu tính theo số frames/giây hai mơ hình (độ phân giải 600*800 U T điểm ảnh , CPU Pentium D 2.8 GHz GPU Geforce GTX 295) 77 T U DANH MỤC HÌNH VẼ Hình Tiếp cận tạo video 3d từ mơ hình 3d dựng sẵn 12 U T T U Hình Minh họa lưới tam giác 19 U T T U Hình Một số đối tượng bị bao quanh AABB 20 U T T U Hình Tia cắt hộp bao quanh đối tượng 21 U T T U Hình Ví dụ BVH – hình tam giác nằm 22 U T T U Hình Minh họa raytracing 27 U T 35T U Hình Raytracing có tính chất đệ quy 28 U T T U Hình Minh họa cơng thức tính cường độ sáng theo mơ hình Phong 29 U T T U Hình Minh họa tia phản xạ 31 U T 35T U Hình 10 Minh họa tia khúc xạ 32 U T 35T U Hình 11 Các tia che bóng để thực hiệu ứng che bóng 33 U T T U Hình 12 Màn ảnh chiều 34 U T 35T U Hình 13 Minh họa camera pinhole 36 U T T U Hình 14 Định nghĩa tia hệ tọa độ world 38 U T T U Hình 15 Hình ảnh chiều minh họa tìm giao điểm tia – hộp Bên trái, tnear > t far nên tia U T RU U RU U RU U RU U không cắt hộp Bên phải, tnear < t far nên tia cắt hộp 40 RU U RU U RU U RU U T U Hình 16 Chiếu đa giác lên mặt phẳng chiều 42 U T T U Hình 17 Kiểm tra điểm nằm đa giác Số đoạn thẳng bị cắt lẻ (3) nên điểm nằm U T đa giác 43 35T U Hình 18 Quan sát ảnh qua kính lọc màu 45 U T T U Hình 19 Ảnh trái woods.left.bmp 46 U T T U Hình 20 Ảnh phải woods.right.bmp 47 U T T U Hình 21 Ảnh kết hợp theo cơng thức anaglyph red/cyan 48 U T T U Hình 22 Số phép tính dấu phẩy động giây CPU GPU 49 U T T U Hình 2-22 GPU dành nhiều transistor CPU để xử lý liệu 50 U T T U Hình 24 Mơ hình lập trình kiến trúc GPU Geforce 8800 NVIDIA 51 U T T U Hình 25 Lưới gồm khối luồng CUDA 53 U T T U Hình 26 Các loại nhớ CUDA 56 U T T U Hình 27 Tương ứng đệm lưu giữ ảnh ảnh 59 U T T U Hình 28 Vị trí camera (eye, look-at) tọa độ không gian chiều 64 U T T U Hình 29: Hướng quay camera 66 U T T U Hình 30: Minh họa hướng dịch chuyển camera theo phương ngang 67 U T T U Hình 31 Các bước tạo video từ mơ hình 3D 71 U T T U Hình 32 Ảnh anaglyph tạo với mơ hình chessboard 75 U T T U Hình 33 Bức ảnh kết xuất từ mơ hình garden.3ds 76 U T T U /* Hai đối tượng camera host, liên tục cập nhật vị trí camera dịch chuyển theo kịch bản, sau đặt camera thứ hai lệch với camera thứ */ Cam1.calculate_position(); Cam2.calculate_position(); /* Copy đối tượng camera từ host device, dùng để tính tốn hàm ray tracing GPU */ cudaMemcpy(cudaCam1, &Cam1, sizeof(Cam1), cudaMemcpyHostToDevice) ); cudaMemcpy(cudaCam2, &Cam2, sizeof(Cam2), cudaMemcpyHostToDevice) ); /*Cấp phát mảng GPU để chứa ảnh anaglyph kết xuất được*/ cudaMalloc(Pixels); /* Gọi nhân song song để thực kết xuất ảnh anaglyph parallelRendering(cudaCam1, cudaCam2, Pixels); /* Lấy kết trả từ GPU */ int *result; cudaMemcpy(result, Pixels, MAXX*MAXY*(sizeof(int)), cudaMemcpyDeviceToHost) /* Ghi kết render vào ảnh đầu */ write_output_file(output,result); Đoạn mã trước hết khởi tạo liệu thiết lập camera host (CPU) mơ tả phần trước, sau camera chép lên vùng nhớ GPU Sau gọi nhân song song để thực kết xuất ảnh Kết đầu ảnh anaglyph chứa vùng nhớ Pixels GPU, chép host (CPU) Và hàm parallelRendering viết lại chi tiết so với mô tả 3.1, sau: global void parallelRendering(cudaCam1, cudaCam2, Pixels ) { int idx = blockIdx.x * blockDim.x + threadIdx.x; if (idx ≥ MAXX*MAXXY) return; x = idx mod MAXX; 69 y = idx div MAXX; (xw, yw) = convert-coordinates (x,y); /*mỗi luồng tạo tia từ camera tới tọa độ (xw,yw)*/ primaryRay1 = MakeRay(xw, yw, camera1); primaryRay2 = MakeRay(xw, yw, camera1); /*mỗi luồng thực raytracing để tính giá trị màu*/ Color1 = trace_ray (primaryRay1); Color2 = trace_ray (primaryRay2); Color = mix_color(color1, color2); /*mỗi luồng lưu color vào điểm ảnh (x,y) tương ứng */ Pixels[y*MAXX + x] = Color; } Trong đoạn mã trên, việc tính tốn màu cho ảnh đầu thực có màu Color điểm ảnh ứng với camera, hàm mix_color() gọi thực mix màu theo chuẩn anaglyph Kết thúc giải thuật, mảng Pixels chứa liệu ảnh anaglyph 3.4 Tạo video 3D Kết thu từ pha trước cho phép ta thực render ảnh 3D anaglyph từ mơ hình 3D với cải tiến tốc độ nhờ song song hóa thực tốn GPU Áp dụng kết với việc tạo hoạt cảnh cho camera, ta render liên tục frame ảnh sau kết hợp lại thành video 70 Hình 31 Các bước tạo video từ mơ hình 3D Phần trình bày cơng việc thực sau thu đủ số lượng frame anaglyph từ kết phần trên, pha chạy CPU với tư tưởng tận dụng hỗ trợ từ phần mềm mã nguồn mở có sẵn, bao gồm thư viện JPEGLIB abilib Các ảnh anaglyph sinh từ giải thuật có định dạng bitmap (BMP) nhằm đảm bảo màu sắc ảnh chân thực xử lý bit màu pixel thuận tiện Tuy nhiên, bitmap định dạng ảnh khơng nén ảnh bitmap có dung lượng lớn so với định dạng khác với độ phân giải Ví dụ, ảnh bitmap có độ phân giải 600*800 có dung lượng khoảng 1.4 MB Kết là, đoạn video dài phút tạo nên từ ảnh với tỷ lệ khung hình 71 25fps có kích thước khoảng 2.05 GB Các ảnh lớn khơng khả thi cho mục đích tạo video 3d từ tập ảnh sinh giải thuật nêu Do trước tạo video 3D, cần phải thực thao tác nén tập ảnh anaglyph thu Để làm việc này, luận văn sử dụng phương pháp nén ảnh không liệu JPEG, định dạng phổ biến lĩnh vực đồ họa Nền tảng Linux cung cấp thư viện JPEGLIB [38] giúp dễ dàng thực thao tác xử lý ảnh liên quan tới định JPEG Bằng cách sử dụng API thư viện này, tập ảnh bitmap chuyển đổi sang ảnh JPEG có kích thước nhỏ nhiều so với tập ảnh ban đầu, kết trình đệm ảnh chứa tất ảnh chuyển đổi Quá trình nén sang JPEG có bước: - Khởi tạo cấp phát nhớ cho đối tượng JPEG - Chỉ ảnh lưu kết đầu - Đặt tham số nén - Bắt đầu trình nén - Đọc dòng nội dung ảnh để nén - Kết thúc q trình nén - Giải phóng nhớ Sau thu tập ảnh nén JPEG, luận văn tạo video theo định dạng MJPEG cách sử dụng thư viện avilib [32] Thư viện cung cấp hàm bản, bao gồm avi_open() để khởi tạo file chứa video đầu ra, avi_add_frame() để thêm frame tới video avi_close() kết thúc trình tạo Create_avi(int number_frames) { if(number_frames == 0) return; else { /*Open a empty avi video*/ Avi_open(output_video); /*write the avi header*/ 72 Avi_write_header(output_video); /*write frames to the video*/ for i = to number_frames Avi_add_frame(frames[i]); /* finishing */ Avi_close(output_video); } } Toàn trình trên, bao gồm chuyển đổi ảnh tạo video, thực CPU với giá trị number_frames thiết lập 100 để thử nghiệm 73 CHƯƠNG KẾT QUẢ THỬ NGHIỆM 4.1 Môi trường thử nghiệm Các giải thuật song song hóa raytracing GPU sinh ảnh 3d anaglyph cài đặt thử nghiệm hệ thống máy tính có cấu hình • CPU: Intel(R) Pentium(R) D CPU 2.80GHz • RAM: GB • GPU: xử lý đồ họa GeForce GTX 295 NVIDIA • OS: hệ điều hành CentOS 5.3 - 32 bit (Linux) Đầu vào chương trình bao gồm mơ hình 3DS, có tên chessboard.tri garden.3DS Mơ hình đầu chứa khoảng 46 000 hình tam giác mơ hình sau phức tạp nhiều với khoảng 970 000 tam giác Với mơ hình, chương trình thử nghiệm nhằm mục đích kết xuất 100 ảnh 3D theo chuẩn anaglyph, ảnh có độ phân giải 600x800 pixels trình kết xuất, camera xoay quanh mơ hình ảnh kết xuất từ góc khác 4.2 Kết đạt Hình minh họa hai ảnh anaglyph tương ứng với hai mơ hình đầu vào (chessboard garden) mà chương trình kết xuất thành cơng theo công thức lọc màu red/cyan Để xem hiệu ứng nổi, cần đeo kính lọc màu red/cyan 74 Hình 32 Ảnh anaglyph tạo với mơ hình chessboard 75 Hình 33 Bức ảnh kết xuất từ mơ hình garden.3ds Trong chương trình thử nghiệm, trình kết xuất ảnh 3d chạy GPU trình chuyển đổi định dạng ảnh tạo video định dạng avi chạy CPU Trong thời gian cho việc kết xuất ảnh 3d chiếm hầu hết thời gian thực chương trình Các kết thử nghiệm tập trung so sánh việc kết xuất ảnh 3d hai phiên chạy song song GPU CPU Chương trình sử dụng giải thuật song song thể thời gian chạy giảm đáng kể so sánh với chương trình Bảng minh họa thời gian kết xuất với mơ hình đơn giản chessboard.tri chạy GPU CPU số lượng frame 3d thay đổi Bảng - Thời gian chạy tính theo giây kết xuất mơ hình chessboard.tri gồm khoảng 46 000 tam giác với độ phân giải 600*800 điểm ảnh CPU Pentium D 2.8 GHz GPU Geforce GTX 295 76 Số lượng frame Thời gian kết Thời gian kết xuất xuất CPU GPU 25 m 43 s 10.851 s 50 m 23 s 21.662 s 100 10 m 30 s 42.225 s Bảng cho thấy thời gian kết xuất ảnh 3d GPU hứa hẹn, điều minh chứng cách tiếp cận đề tài hiệu việc tạo video 3d từ mơ hình 3d Tiếp theo chương trình thử nghiệm với mơ hình khác nhau, hiệu chương trình song song thay đổi Bảng minh họa tốc độ sinh ảnh 3d CPU GPU với mơ hình chessboard garden Bảng - Hiệu tính theo số frames/giây hai mơ hình (độ phân giải 600*800 điểm ảnh , CPU Pentium D 2.8 GHz GPU Geforce GTX 295) Mô hình 3DS Số tam giác Tốc độ kết frame/s CPU xuất Tốc độ kết xuất frame/s GPU chessboard.tri 46,658 0.1073 2.368 garden.3DS 970,627 0.039 1.224 Như nhìn thấy bảng 3, tốc độ trình kết xuất ảnh 3d GPU tăng khoảng 22 lần mơ hình chessboard.tri, khoảng 31 lần mơ hình garden.3ds so với phiên CPU Điều có nghĩa khả tăng tốc chương trình song song so với chương trình phụ thuộc vào độ phức tạp mô hình 3d Điều giải thích chi phí tính tốn giá trị màu cho điểm ảnh mơ hình đơn giản khơng cao, có hình tam giác nên tia thứ cấp sinh không nhiều mơ hình phức tạp Do đó, 77 chương trình song song GPU không khai thác hết lực tính tốn thực với mơ hình đơn giản Ngược lại, với mơ hình phức tạp, số lượng hình nguyên thủy tăng kéo theo việc xác định tia thứ cấp, việc xác định giao điểm tia – đối tượng, thực hiệu ứng tơ bóng, che bóng trở nên tốn GPU nhanh chóng thể vượt trội lực tính tốn so với CPU thực nhiều luồng song song lúc Các kết thử nghiệm thực bao gồm việc sử dụng cấu trúc BVH để giảm số lượng kiểm tra giao điểm tia – đối tượng khơng tính thời gian xây dựng BVH, BVH cần xây dựng lần đầu tiên, sau lưu lại để sử dụng thay cho mơ hình lần chạy chương trình sau Tuy nhiên, kết thử nghiệm bao gồm thao tác mở, ghi file ảnh anaglyph cuối phần làm giảm hiệu 78 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 5.1 Kết luận Luận văn trình bày cách tiếp cận tạo video 3D từ mơ hình 3D sử dụng hai kỹ thuật raytracing lược đồ trộn màu anaglyph Để tăng tốc việc thực giải thuật render, luận văn áp dụng cấu trúc tăng tốc BVH xây dựng dựa hàm heuristic SAH sử dụng hộp bao AABB để làm giảm số lượng kiểm tra giao điểm tia sáng với vật thể Luận văn song song hóa giải thuật kết xuất đồ họa raytracing tác vụ tạo ảnh anaglyph xử lý đồ họa GPU NVIDIA sử dụng CUDA, từ ứng dụng vào chương trình tạo video 3d từ mơ hình 3d Trong giải thuật kết xuất raytracing song song, luận văn khai thác tính khn hình C++ ngăn xếp để giải vấn đề không hỗ trợ đệ quy mơi trường lập trình CUDA cho giải thuật raytracing duyệt BVH Các kết thử nghiệm cho thấy thời gian kết xuất tập frame 3D định dạng anaglyph với số lượng đủ cho đoạn video 3D ngắn mơ hình 3D, hứa hẹn 5.2 Hướng phát triển Việc xây dựng raytracing engine từ đầu nghiên cứu để lại nhiều hướng phát triển Hiện nghiên cứu sử dụng lược đồ lọc màu anaglyph, phương pháp đơn giản chi phí trang thiết bị thấp gây cho ảnh đầu bị màu Một giải pháp thay tốt lược đồ màu ColorCode3D [34] , kỹ thuật mã hóa trộn màu phát triển từ năm 2000 cấp sáng chế ColorCode 3D hoàn toàn tương tự anaglyph khác công thức lọc màu, trộn màu Để tạo đoạn video thú vị, việc thiết lập thêm số kịch quay có ý nghĩa camera quanh đối tượng cần thiết 79 Một hướng phát triển có giá trị tăng tốc cho raytracing để hướng tới ứng dụng kết xuất ảnh thời gian thực, pha tạo video khơng cịn cần thiết Để giảm thời gian kết xuất ảnh nổi, việc tăng cường lực tính tốn hệ thống điều đáng quan tâm Giải pháp sử dụng nhiều GPU, cụm tính tốn GPU đáng quan tâm cho việc cài đặt giải thuật song song 80 TÀI LIỆU THAM KHẢO A.S Glassner (1989), An Introduction to ray-tracing, Academic Press Ltd London, UK Suffern, Kevin (2007), Ray Tracing from the Ground Up Wellesley, MA: A K Peters, Ltd V Havran, Heuristic Ray Shooting Algorithms Ph.D thesis, Faculty of Electrical Engineering, Czech Technical University in Prague, 2001 J.D MacDonald, K.S.Booth, Heuristics for ray tracing using space subdivision, Proceedings of Graphics Interface, 1989 J Goldsmith, J Salmon (1987), Automatic creation of object hierarchies for ray tracing, IEEE Computer Graphics and Applications Wald, V Havran (2006), On building good kd-trees for ray tracing, and on doing this in O(N log N), Proceedings of the ieee symposium on interactive ray tracing Steven M Rubin, Turner Whitted, (1980) A 3-Dimensional Representation for Fast Rendering of Complex Scenes, NewsletterACM SIGGRAPH Computer Graphics IngoWald, WilliamR.Mark, JohannesGünther, SolomonBoulos, ThiagoIze, WarrenHunt, StevenG.Parker and PeterShirley (2007), State of the Art in RayTracing Animated Scenes, EURO GRAPHICS 2007 Akeley, Kurt, et al (2008), When Will Ray-Tracing Replace Rasterization? ACM Portal http://portal.acm.org/citation.cfm?id=1242120 10 Magnus Andersson (2006) Bounding Volume Hierarchy, Seminar in EDAN30 Photorealistic Computer Graphics 11 Stephen J Adelson and Larry F Stereoscopic Ray-Tracing 12 Per H Christensen, Julian Fong, David M Laur and Dana Batali Ray Tracing for the Movie ‘Cars 81 13 Stephen J Adelson and Charles D Hansen Fast Stereoscopic Images with RayTraced Volume Rendering 14 Whitted T (1979), An improved illumination model for shaded display Proceedings of the 6th annual conference on Computer graphics and interactive techniques 15 Wald, I , Boulos, S , and Shirley, P 2007 Raytracing deformable scenes using dynamic bounding volume hierarchies ACM Trans.Graph.26,1,6 16 Gold Smith, J., and Salmon, J 1987 Automatic creation of object hierarchies for ray tracing IEEE CG&A 7, 5, 1420 17 Kay, T.L and Kayjiya, J.T (1986), Ray Tracing Complex Scenes, Siggraph ’86 Proceedings, p 269-278 18 B T Phong (1975), Illumination for computer generated pictures, Communications of ACM , no 6, 311–317 19 NVIDIA http://www.nvidia.com/object/cuda home new.html 20 Andrew Woods (2000) Stereoscopic Presentations –Taking the Difficulty out of 3D, The 6th International Workshop on 3D Imaging Media Technology, Seoul, P P Korea 21 David Vandevoorde, Nicolai M Josuttis (2002), C++ Templates: The Complete Guide, Addison-Wesley Professional 22 Rodrigo A Urra (2009) Scalable Ray Tracing with Multiple GPGPUs Master Thesis of Science in Computer Engineering, Rochester Institute of Technology Rochester, NY 23 http://en.wikipedia.org/wiki/3-D_film 24 http://en.wikipedia.org/wiki/Autostereoscopy 25 The new RealD http://www.reald.com/content/cinema.aspx 26 http://en.wikipedia.org/wiki/Anaglyph_image 27 http://en.wikipedia.org/wiki/Triangle_mesh 82 28 .3ds, http://en.wikipedia.org/wiki/.3ds, last visited May 2011 29 lib3ds, http://code.google.com/p/lib3ds/, last visited May 2011 30 Ray tracing (graphics), http://en.wikipedia.org/wiki/Ray_tracing, last visited May 2011 31 http://www.alastra.com/~peter/io/raytracing-vs-rasterization.html 32 Avilib http://www.mathworks.com/matlabcentral/fileexchange/3133 33 Anaglyph Maker Software http://www.stereoeye.jp/software/index_e.html 34 ColorCode3D http://www.colorcode3d.com/Home.html 35 2D to 3D Stereo Conversion http://myweb.cableone.net/amh2004/2D_3D.html 36 Anaglyph Methods Comparison http://3dtv.at/Knowhow/AnaglyphComparison_en.aspx 37 INFICOLOR3D http://www.trioviz.com/ 38 LIBJPEG http://pkgs.org/package/libjpeg 39 BRDF http://en.wikipedia.org/wiki/Bidirectional_reflectance_distribution_function 83 ... Mẫu 1b BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Dương Nhật Tân TẠO VIDEO 3D TỪ MƠ HÌNH 3D SỬ DỤNG CƠNG NGHỆ TÍNH TỐN HIỆU NĂNG CAO TRÊN CÁC BỘ XỬ LÝ ĐỒ HỌA Chuyên... song xử lý đồ họa, từ ứng dụng vào để tạo video hiệu ứng 3d: - Nghiên cứu mơ hình 3D, số lược đồ tạo ảnh 3D phù hợp với nghiên cứu 13 - Nghiên cứu phương pháp kết xuất đồ họa raytracing lý thuyết... trình tạo video 3D anaglyph từ mơ hình 3D - So sánh hiệu thực toán GPU CPU, kết luận khả ứng dụng công nghệ GP-GPU vào lĩnh vực đồ họa 1.3 Kết đạt Chương trình thử nghiệm trên xử lý đồ họa GeForce