Đặt vấn đề Tái tạo bề mặt 3D của các vật thể nhỏ trong điều kiện giới hạn về không gian, thiết bị, chất lƣợng… đã đƣợc nghiên cứu và áp dụng vào nhiều lĩnh vực nhƣ thiết kế và tạo mẫu ảo, kiểm định chất lƣợng, trò chơi điện tử, tạo mô hình thế giới ảo, mô hình hóa sản phẩm, mô phỏng mặt ngƣời làm hình đại diện,… Kỹ thuật quét hình 3D hiện hành thƣờng dựa trên những thiết bị cảm biến phức tạp và chuyên nghiệp nhƣ hệ thống camera/máy chiếu dùng công nghệ ánh sáng cấu trúc (structured light) hoặc laser định tầm. Mặc dù dữ liệu thu đƣợc có chất lƣợng cao nhƣng các thiết bị trên tốn kém và thƣờng đòi hỏi ngƣời sử dụng có kiến thức chuyên môn để có thể vận hành. Vì thế ngƣời dùng bán chuyên nghiệp không đƣợc sử dụng những công nghệ đó. Mặt khác, nếu máy quét 3D giá rẻ và dễ vận hành trở nên phổ biến hơn thì mô hình vật thể 3D có thể đƣợc sử dụng rộng rãi hơn giống nhƣ hình ảnh và video hiện nay.
Điều này có thể mở rộng sự phát triển của nhiều ứng dụng mới, ví dụ nhƣ trong lĩnh vực hội họa và điêu khắc, trong các nền tảng web cộng đồng hoặc mua sắm trực tuyến. Camera độ sâu (depth camera) nhƣ cảm biến Microsoft Kinect là một loại thiết bị mới phát triển trong thời gian gần đây đã thu hút sự chú ý của đông đảo giới giải trí và cộng đồng khoa học. So với các loại máy quét 3D thông thƣờng, camera độ sâu có thể thu thập đƣợc dữ liệu màu và chiều sâu của vật thể (khoảng cách từ vật thể đến camera) ở tốc độ khung hình khá tốt, ít phụ thuộc vào điều kiện ánh sáng và hoa vân bề mặt (texture). Camera Kinect nhỏ gọn, giá rẻ và dễ dùng nhƣ một máy quay video thích hợp cho ngƣời dùng phổ thông.
Kinect đã đƣợc dùng nhƣ là một máy quét 3D, tuy nhiên độ phân giải X/Y và độ chính xác của thông tin độ sâu trong dữ liệu thu đƣợc còn tƣơng đối thấp. Do đó, luận văn này sẽ khắc phục các vấn đề trên, tái tạo mô hình 3D của vật thể với chất lƣợng tốt trên máy tính chỉ với camera Kinect cầm tay.2 Mục tiêu Luận văn Luận văn này sử dụng phƣơng pháp ghép nối, tái tạo mô hình từ các đám mây điểm thu đƣợc từ camera Kinect dƣới các góc nhìn khác nhau thỏa mãn điều kiện các đám mây điểm phải có miền phủ chồng lên nhau đủ lớn, tức là góc nhìn vật thể giữa các đám mây điểm kế cận không chênh lệch quá lớn. Ngƣời dùng có thể thu đƣợc các đám mây điểm này bằng cách di chuyển camera Kinect tự do xung quanh vật thể. Chuyển động hoặc thiết lập của camera không nhất thiết phải xác định cụ thể.
Từ đó, các đám mây điểm đƣợc ghép lại với nhau tạo thành một mô hình đám mây điểm hoàn chỉnh, số điểm của đám mây điểm cuối bằng tổng số điểm của các đám mây điểm ghép lại, có thể lấy mẫu downsample hoặc upsample bằng thuật Chƣơng 1: Giới thiệu 2 SVTH: T.com Ứng dụng ICP kết hợp - tái tạo mô hình 3D GVHD: PGS.TS Lê Tiến Thƣờng toán để cải thiện độ phân giải (mật độ). Thuật toán tái tạo mô hình 3D thích hợp sẽ tạo đƣợc bề mặt 3D từ mô hình đám mây điểm hoàn chỉnh này. Quá trình quét và xử lý này đơn giản đối với ngƣời dùng phổ thông, chỉ với máy vi tính và camera Kinect. Các kết quả thực nghiệm cho thấy kết quả đảm bảo tốt hình dạng của vật thể trong giới hạn cho phép.
Với chi phí cho camera khoảng 150$, phƣơng pháp này rẻ hơn nhiều so với phƣơng pháp sử dụng máy quét 3D truyền thống. Mục tiêu của Luận văn này đƣợc tóm gọn lại nhƣ sau: Thu dữ liệu đám mây điểm từ camera Kinect, tiền xử lý dữ liệu bằng các thuật toán lọc để chuẩn bị tốt cho công đoạn ghép nối và tái tạo vật thể. Sử dụng giải thuật liên kết các đám mây điểm (registration) dùng giải thuật ICP kết hợp bao gồm giải thuật ghép thô (coarse alignment) và ghép tinh chỉnh (fine alignment) khôi phục mô hình 3D của vật thể. Thực thi các giải thuật cải thiện chất lƣợng bề mặt tối ƣu sau quá trình ghép nối các đám mây điểm.
Tái tạo lại bề mặt của vật thể.3 Phƣơng pháp thực hiện Hai giai đoạn chính của quá trình xử lý là liên kết các đám mây điểm (registration) và tái tạo bề mặt (reconstruction). Trƣớc khi các đám mây điểm đƣợc liên kết, chúng đƣợc tiền xử lý thông qua các bộ lọc nhiễu và vật thể xung quanh không cần thiết. Giai đoạn liên kết các đám mây điểm đƣợc chia làm hai tác vụ kết hợp một cách hợp lý là ghép nối thô và ghép nối tinh chỉnh. Sau đó, các giải thuật cải thiện chất lƣợng bề mặt gồm có giải thuật làm trơn bề mặt, upsampling sẻ đƣợc thực thi.
Giai đoạn cuối cùng là tái tạo bề mặt. Các giải thuật tái tạo bề mặt gồm có chiếu tam giác hóa với ƣu điểm bảo toàn màu sắc của vật thể, dạng alpha có ƣu điểm tạo đƣợc bề mặt chi tiết, chiếu lƣới tạo bề mặt trơn và marching cubes với giải thuật không quá phức tạp, thời gian thực thi ngắn và đƣợc sử dụng rộng rãi từ lâu, chất lƣợng bề mặt chấp nhận đƣợc.4 Sơ lƣợc về nội dung luận văn Luận văn gồm có các chƣơng: • Chƣơng 1 – Giới thiệu: Sơ lƣợc về tái tạo bề mặt 3D, những vấn đề hiện tại và tổng quan về nội dung luận văn. Chƣơng 1: Giới thiệu 3 SVTH: T.com Ứng dụng ICP kết hợp - tái tạo mô hình 3D GVHD: PGS.TS Lê Tiến Thƣờng • Chƣơng 2 – Tìm hiểu camera Kinect: phân tích chuyên sâu về cấu tạo và nguyên tắc hoạt động của camera Kinect. • Chƣơng 3 – Các thƣ viện hỗ trợ: giới thiệu về API OpenNI và Thƣ viện đám mây điểm (PCL) dùng trong luận văn này.
• Chƣơng 4 – Tái tạo mô hình 3D: chƣơng này phân tích lý thuyết, phƣơng pháp thực hiện và kết quả của các giải thuật xử lý liên kết đám mây điểm. • Chƣơng 5 – Tái tạo bề mặt 3D: chƣơng này phân tích lý thuyết, phƣơng pháp thực hiện và kết quả của các thuật toán tái tạo bề mặt. • Chƣơng 6 – Kết luận và hƣớng phát triển.5 Những nghiên cứu liên quan 1 Dự án KinectFusion của Microsoft [38] hợp tác với các trƣờng ở Anh và Canada cho phép tái tạo không gian 3D thời gian thực. Quá trình tái tạo 3D đƣợc thực hiện ở tốc độ khung hình cao nhƣng không dùng phƣơng pháp liên kết các đám mây điểm có lƣới tam giác, cho phép tái tạo chi tiết cụ của vật thể do bề mặt luôn đƣợc cải thiện chất lƣợng khi có thêm nhiều góc quay.
Điều này cho phép tích hợp các tƣơng tác đồ họa máy tính vào môi trƣờng quét ngay trong quá trình quét và tái tạo bề mặt. Viện nghiên cứu Intel thực hiện một hệ thống tái tạo 3D tinh vi và phức tạp dùng Kinect vào năm 2010. Hệ thống này dùng kĩ thuật tái tạo 3D quy mô lớn dùng vòng lặp kín, một ký thuật cực tiểu hóa lỗi toàn cục, vƣợt xa tầm của luận văn này. Nicolas Burrus, ngƣời nghiên cứu Kinect đã công bố thông tin lý thuyết và thực nghiệm về camera này trƣớc khi driver OpenNI xuất hiện, đã viết phần mềm RGBDemo dựa vào ý tƣởng trên của Intel vào tháng 1 năm 2011.
Tháng 4 năm 2011, Burrus đã cập nhật quá trình liên kết đám mây điểm tối ƣu hóa trên GPU cho chƣơng trình này. Chƣơng 1: Giới thiệu 4 SVTH: T.com Ứng dụng ICP kết hợp - tái tạo mô hình 3D GVHD: PGS.TS Lê Tiến Thƣờng Chƣơng 2 – Tìm hiểu về camera Kinect ___________________________________________________________________________ Chƣơng 2: Tìm hiểu về camera Kinect 5 SVTH: T.com Ứng dụng ICP kết hợp - tái tạo mô hình 3D GVHD: PGS.TS Lê Tiến Thƣờng Chƣơng này mô tả công nghệ cốt lõi liên quan đến quá trình thu thập các đám mây điểm. Một cách thông dụng để thu thập các đám mây điểm là sử dụng stereo camera. Mô tả tóm tắt công nghệ sử dụng stereo camera đƣợc trình bày dƣới đây: Hình 2.1: Camera thu ảnh 3D – stereo camera màn Stereo camera có hơn 2 thấu kính và một cảm biến ảnh hoặc màng film tách biệt cho mỗi thấu kính, cho phép camera mô phỏng cơ quan thị giác hai mắt của ngƣời, do đó nó có thể chụp đƣợc ảnh 3D, quá trình này đƣợc gọi là stereo photography.
Tuy nhiên nhƣ đã giới thiệu ở chƣơng 1, stereo camera là một thiết bị đắt tiền và phức tạp, độ linh động còn hạn chế mặc dù độ chính xác của đám mây điểm rất cao. Vào ngày 4 tháng 11 năm 2010, thiết bị cảm biến chuyển động thiết Microsoft Kinect cho máy chơi game Xbox 360 đƣợc phát hành. Kinect là sản phẩm của Microsoft dựa trên công nghệ camera đƣợc phát triển bởi PrimeSense, Kinect là thiết bị phần cứng chi phí thấp và giá cả phải chăng đƣợc sử dụng trong Luận văn này với mục đích chính là thu dữ liệu đám mây điểm của vật thể.1 Giới thiệu tổng quan về camera Kinect Kinect đƣợc coi nhƣ là một thiết bị ngoại vi cho Xbox 360, cho phép giao tiếp với con ngƣời thông qua các cử chỉ, đem lại những cảm giác thú vị cho ngƣời chơi game trên Xbox. Khả năng hiểu đƣợc cử chỉ con ngƣời của Kinect dựa trên hai đặc tính chính sau: thông tin về độ sâu ảnh (depth map), khả năng phát hiện và bám theo đặc tính cơ thể ngƣời (body skeleton tracking).
Bên cạnh phục vụ cho mục đích chơi game, sản phẩm Kinect còn đƣợc dùng vào mục đích nghiên cứu xử lý ảnh 3D, phát hiện cử chỉ (gesture recognition), bám theo ngƣời Chƣơng 2: Tìm hiểu về camera Kinect 6 SVTH: T.com Ứng dụng ICP kết hợp - tái tạo mô hình 3D GVHD: PGS.TS Lê Tiến Thƣờng (body tracking) đƣợc dùng trong các ứng dụng điều khiển robot tự động và nhiều mục đích khác. Kinect đang giữ kỷ lục Guiness thế giới về “Thiết bị điện tử đƣợc tiêu thụ nhanh nhất” với 8 triệu sản phẩm trong 60 ngày. Mƣời triệu sản phẩm Kinect đã đƣợc phân phối trên thế giới vào ngày 9 tháng 3 năm 2011. Lý do chính cho sự thành công của sản phẩm Kinect là giá cả khá rẻ (khoảng 140$ trên 1 sản phẩm) cho thiết bị có khả năng cung cấp các thông tin 3D với chất đủ tốt để nghiên cứu và phát triển.
Ngoài ra, nhờ khả năng theo giỏi và phát hiện cử chỉ của Kinect, ngƣời ta ví Kinect nhƣ là “mắt thần” trong những ứng dụng liên quan đến thị giác máy tính.