Đề tài được thực hiện có cấu trúc của luận văn bao gồm: Chương 1/ Tổng quan về thực tại ảo và bài toán biểu diễn trạng thái khuôn mặt 3D, chương 2/ Một số kỹ thuật nội suy trong biểu diễn trạng thái khuôn mặt 3D, chương 3/ Chương trình thực nghiệm. Mời các bạn cùng tìm hiểu.
1 MỤC LỤC CHƢƠNG – TỔNG QUAN VỀ THỰC TẠI ẢO VÀ BÀI TỐN BIỂU DIỄN TRẠNG THÁI KHN MẶT 3D 1.1 Tổng quan thực ảo 1.2 Đối tƣợng 3D 1.2.1 Giới thiệu đối tƣợng 3D 1.2.2 Mô đối tƣợng 3D 1.3 Bài toán biểu diễn trạng thái khuôn mặt 3D 1.3.1 Giới thiệu .3 1.3.2 Cách thức thể trạng thái biểu cảm khuôn mặt ngƣời .5 1.3.3 Mơ hình hóa khn mặt 3D 1.3.4 Một số phƣơng pháp biểu diễn trạng thái khuôn mặt 3D CHƢƠNG - MỘT SỐ KỸ THUẬT NỘI SUY TRONG BIỂU DIỄN TRẠNG THÁI KHUÔN MẶT 3D 2.1 Kỹ thuật nội suy tuyến tính .8 2.1.1 Giới thiệu .8 2.1.2 Sử dụng biểu diễn trạng thái khuôn mặt 3D 2.1.3 Nhận xét .10 2.2 Kỹ thuật nội suy song tuyến 10 2.2.1 Giới thiệu .10 2.2.2 Sử dụng biểu diễn trạng thái khuôn mặt 3D 11 2.2.3 Nhận xét .13 2.3 KỸ THUẬT NỘI SUY DỰA TRÊN HÀM CƠ SỞ BÁN KÍNH 13 2.3.1 Giới thiệu .13 2.3.2 Sử dụng biểu diễn trạng thái khuôn mặt 3D 14 2.3.3 Nhận xét .15 CHƢƠNG –THỰC NGHIỆM .16 3.1 Giới thiệu toán 16 3.2 Phân tích chƣơng trình thực nghiệm 16 3.2.1 Các công cụ kỹ thuật 16 3.2.2 Các bƣớc triển khai cụ thể 17 3.3 Kết thực nghiệm 18 KẾT LUẬN 21 CHƢƠNG – TỔNG QUAN VỀ THỰC TẠI ẢO VÀ BÀI TOÁN BIỂU DIỄN TRẠNG THÁI KHUÔN MẶT 3D 1.1 Tổng quan thực ảo VR- Virtual Reality – Thực ảo (hay thực tế ảo): hệ thống giao diện cấp cao ngƣời dùng máy tính Hệ thống mô vật tƣợng theo thời gian thực tƣơng tác với ngƣời sử dụng thông qua kênh cảm giác nhƣ thị giác, thính giác, xúc giác, khứu giác vị giác Hay nói cách khác là, ngƣời sử dụng di chuyển, quan sát, tƣơng tác với giới nhân tạo đƣợc xây dựng mơ máy tính nhƣ giới thực Ngƣời dùng nhìn thấy đối tƣợng đồ họa 3D nổi, điều khiển đƣợc đối tƣợng giới nhân tạo sờ, nắm, cảm nhận đối tƣợng giống nhƣ giới thực Một hệ thống thực ảo có đặc tính chính: Tƣơng tác (interactive) – Đắm chìm (Immersion) – Tƣởng tƣợng (Imagination) Hình 1.1 Các đặc tính hệ thống thực ảo + Tính tƣơng tác: hệ thống thực ảo có khả tạo giới nhân tạo giống nhƣ giới thật Thế giới nhân tạo không tĩnh mà lại phản ứng, thay đổi theo ý muốn ngƣời sử dụng Ngƣời sử dụng tƣơng tác với mơ hình 3D ảo giới ảo thay đổi theo ý muốn + Đắm chìm: Hệ thống thực ảo có khả thu hút ngƣời sử dụng vào giới ảo giống nhƣ thật, ngƣời dùng có cảm giác trở thành phần hành động hình họ trải nghiệm thực ảo Ngƣời dùng nhìn thấy, sờ thấy cảm thấy nhƣ đối tƣợng có thật thực tế + Tƣởng tƣợng: Có hai khía cạnh tính tƣởng tƣợng hệ thống thực ảo: Thứ khả di chuyển khắp nơi cách độc lập nhƣ bên giới thật ngƣời dùng Thứ hai quy tắc cách thức mà ngƣời, vật, tƣợng giới ảo tƣơng tác với theo trật tự để trao đổi lƣợng thông tin 1.2 Đối tƣợng 3D 1.2.1 Giới thiệu đối tƣợng 3D Khái niệm đối tƣợng thƣờng đƣợc dùng để vật thể tồn xung quanh chúng ta, chúng đối tƣợng có thực giới thực nhƣ ngƣời, nhà cửa, cối, sinh vật, v.v chúng đối tƣợng ngƣời tƣởng tƣợng đƣợc xây dựng mô giới ảo Đối tƣợng 3D đối tƣợng mô lại đối tƣợng giới thực mô lại đối tƣợng mà tƣởng tƣợng ra, máy tính Đối tƣợng 3D phần giới ảo Để xây dựng nên không gian ảo, phải có đối tƣợng 3D sau kết hợp đối tƣợng với thiết bị ngoại vi để giúp ngƣời sử dụng điều khiển tƣơng tác đƣợc với giới ảo giống nhƣ tƣơng tác với đối tƣợng thực tế Một đối tƣợng 3D bao gồm có hai phần chính: - Thứ mơ hình hình học biểu diễn đƣờng nét, hình dáng đối tƣợng màu sắc (hay chất liệu) đối tƣợng đƣợc gọi chung mơ hình 3D - Thứ hai thuộc tính, ràng buộc mối quan hệ thành phần đối tƣợng 1.2.2 Mơ đối tƣợng 3D Có hai cách để thực mơ đối tƣợng 3D: - Thứ mô mơ hình 3D nhờ ngơn ngữ lập trình truyền thống nhƣ C, C++ v.v Cách thực mơ phức tạp đòi hỏi xác cao, nhiên đòi hỏi máy tinh phải có cấu hình mạnh phần cứng , ngƣời lập trình phải có trình độ lập trình cao cách gồm nhiều thuật tốn phức tạp, nhiều thời gian khó việc tạo cảnh rộng lớn Mặc dù vậy, lại lựa chọn cho muốn mơ xác vật, tƣợng tự nhiên với chất Ví dụ nhƣ mô nƣớc, mô lửa, mô tƣợng vật lý,.v.v Mơ mơ hình 3D nhờ ngơn ngữ lập trình truyền thống thƣờng thích hợp trƣờng hợp mơ có quy mơ nhỏ sử dụng q trình học tập - Cách thứ hai sử dụng công cụ mô đƣợc xây dựng sẵn nhƣ 3DSmax, Maya, Autocad, v.v Cách thƣờng phù hợp với việc mô mơ hình khơng u cầu độ xác cao khơng đòi hỏi ngƣời mơ phải có trình độ lập trình cao, khơng tốn nhiều thời gian thực Tuy nhiên có nhƣợc điểm yêu cầu cấu hình hệ thống phải mạnh để cài đặt chạy chƣơng trình, đặc biệt xuất (Rendering) mơ hình Hiện nay, cách đƣợc ƣa chuộng đƣợc sử dụng phổ biến công việc nhƣ làm Game 3D, Web 3D, dựng cơng trình kiến trúc, phim hoạt hình 3D, v.v Khuôn mặt 3D trạng thái khuôn mặt 3D đối tƣợng 3D Việc xây dựng mơ hình 3D khn mặt sử dụng phần mềm dựng sẵn việc mô lại thay đổi trạng thái khn mặt sử dụng phần mềm có sẵn sử dụng ngơn ngữ lập trình truyền thống 1.3 Bài tốn biểu diễn trạng thái khuôn mặt 3D 1.3.1 Giới thiệu Ngày nay, với phát triển phần mềm thơng minh, giao tiếp với máy tính nhƣ thể giao tiếp với ngƣời Con ngƣời ln tìm cách biến máy tính thành ngƣời cách trang bị cho giao diện giống ngƣời thơng qua giọng nói, khn mặt, cử chỉ,.v.v thay sử dụng bàn phím, chuột hay dòng chữ vơ cảm Ngƣời ảo ứng dụng thể mong muốn ngƣời Ngƣời ảo nhân vật có hình dáng, hành động tƣơng tự nhƣ ngƣời Ngƣời ảo giao tiếp với ngƣời thơng qua lời nói cử chỉ, có khả cảm nhận, cảm thụ giới, có suy nghĩ hành động, thể trạng thái tâm lý giống nhƣ ngƣời Hiện nay, giới có nhiều nhà nghiên cứu tiến hành xây dựng mơ hình nhân vật ảo có khả thể mơ tả chuyển động, nói, phát âm, thể cảm xúc,.v.v nhƣ dự án bệnh viện ảo Khoa kỹ thuật – khoa học máy tính thơng tin thuộc Đại học Florida (Mỹ) Khoa xây dựng nhân vật bệnh nhân ảo phục vụ cho việc giảng dạy sinh viên ngành y, sinh viên nói chuyện, vấn, sờ nắn bệnh nhân ảo để thực hành thăm khám, bệnh nhân ảo có khả biểu lộ cảm xúc trả lời câu hỏi bác sĩ Hay bƣu điện Anh ngƣời ta xây dựng nhân vật ảo đƣợc sử dụng để giúp ngƣời khiếm thính mua tem điền giấy tờ cách dịch ngơn ngữ nói sang ngơn ngữ dấu hiệu ngƣời anh Hoặc quyền quận Brent London (Anh) phóng nhân viên trợ lý ảo 3D lên hình nhƣ thể nhân viên ngồi sau bàn tiếp tân văn phòng hội đồng quận Brent Nhân viên ảo đƣợc lập trình để trả lời số câu hỏi khai sinh, khai tử, đăng ký kết hôn quyền công dân, nhƣ dẫn lối cho khách viếng thăm Việc sử dụng nhân viên ảo làm cho quyền quận Brent tiết kiệm đƣợc nhiều chi phí, tiền bạc mà lại khơng ảnh hƣởng đến dịch vụ cơng Hình 1.3 Nhân viên tiếp tân ảo quận Brent Để có đƣợc nhân vật ảo ứng dụng lĩnh vực khác nhƣ trên, nhà nghiên cứu đặt nhiều toán liên quan tới việc xây dựng nhân vật ảo nhƣ: Mô trạng thái khuôn mặt, mô tƣ ngƣời, mô cử chỉ, hành động ngƣời, mô chuyển động đầu, mơ phản hồi giao tiếp, v.v Trong đó, tốn mơ trạng thái khn mặt 3D toán quan trọng việc xây dựng nhân vật ảo 3D, đồng thời có nhiều ứng dụng lĩnh vực nhƣ điện ảnh truyền hình, game, y học, giáo dục,.v.v Đặc biệt việc biểu diễn trạng thái khn mặt 3D kết hợp với hệ chuyên gia trí tuệ nhân tạo để tạo nên ứng dụng nhƣ khám bệnh qua internet, phân tích hoạt ảnh mặt tìm tội phạm nhu cầu tạo nên giới ảo thân thiện có tính trị liệu tâm lý cho ngƣời, v.v Đây ứng dụng mang tính thực tế hiệu kinh tế cao góp phần thúc đẩy cho phát triển kinh tế xã hội đất nƣớc Tuy nhiên, việc biểu diễn trạng thái khn mặt 3D máy tính gặp phải khơng khó khăn việc mơ phức tạp giải phẫu khuôn mặt ngƣời nhạy cảm tự nhiên tới xuất khn mặt Hơn nữa, việc mơ hình hóa khn mặt 3D cách tối ƣu, cho mơ hình vừa nhẹ lại vừa đảm bảo độ chi tiết phù hợp cho việc hoạt hóa trạng thái khuôn mặt đảm bảo cho hệ thống hoạt hóa khn mặt phải tạo hoạt ảnh động thực tế mặt, thao tác thời gian thực, v.v việc khơng dễ dàng Có nhiều cách giải đƣợc đƣa ra, dƣới luận văn xin trình bày số cách tiếp cận việc mơ hình hóa, hoạt hóa biểu diễn trạng thái biểu cảm khuôn mặt 3D 1.3.2 Cách thức thể trạng thái biểu cảm khuôn mặt ngƣời Trạng thái khuôn mặt ngƣời thể khuôn mặt khoảng thời gian định dùng để mơ tả tính chất hình dáng định khuôn mặt thời điểm định Mỗi trạng thái khn mặt xuất dài hay ngắn tùy theo mức độ ảnh hƣởng làm thay đổi yếu tố tác động lên việc thể cảm xúc ngƣời Theo Shaver đồng nghiệp [8] biểu cảm khuôn mặt ngƣời gồm có trạng thái biểu cảm vui vẻ, buồn, ngạc nhiên, tức giận, sợ hãi, căm ghét - Trạng thái vui vẻ: Trạng thái vui vẻ đƣợc thể với số đặc điểm bật khuôn mặt nhƣ đƣợc thể qua nụ cƣời tƣơi làm cho hở hàm răng, hai khóe miệng căng sang hai bên - - - dịch chuyển lên phía trƣớc, gò má nhơ cao đuôi mắt nhăn Buồn: Trạng thái buồn đƣợc thể khn mặt nhƣ vùng trán nhăn, góc đơi mơi kéo xuống, lơng mày phía nhơ lên kéo gần vào nhau, mí mắt trùng xuống, hàm giảm xuống ngƣời đau đớn khóc Tức giận: Trạng thái tức giận thƣờng biểu qua điệu đôi lông mày kéo lại gần hạ thấp, mơi mím chặt hàm nghiến chặt, ánh mắt giận giữ, mi mắt căng, có hở hai hàm tiếp xúc miệng có dạng hình chữ nhật Sợ hãi: Thƣờng đƣợc thể khuôn mặt nhƣ lông mày nhô lên, sát vào nhau, mắt mở to, mi mắt căng môi kéo giật sau Ngạc nhiên: Trạng thái ngạc nhiên đƣợc biểu khuôn mặt nhƣ lông mày nhô cao, mắt mở to, hàm dƣới trề xuống miệng há hốc Căm ghét (hay coi thƣờng, khinh bỉ): thƣờng biểu qua điệu nhăn mũi, lông mày hạ thấp, mắt gần nhƣ nhắm hẳn mơi chun lên 1.3.3 Mơ hình hóa khn mặt 3D Gần đây, mơ hình hóa khn mặt ngƣời trở nên có nhiều ý nghĩa cách đặt nhiều thách tức lĩnh vực y học, kỹ thuật, hoạt hình đồ họa máy tính Do đó, q trình tạo gƣơng mặt tổng hợp cách thực tế với đặc trƣng ba chiều cố gắng để làm cho hấp dẫn thu hút nhiều ý quan tâm nhà nghiên cứu Với đời thuật toán kỹ thuật mặt hình ảnh, tạo dạng hình học khn mặt ngƣời cách chi tiết sử dụng phần mềm hình ảnh máy quét 3D Trong luận văn này, xin trình bày số mơ hình khn mặt 3D cách mơ hình hóa mơ hình khn mặt 3D có số nghiên cứu gần Conde [27] giải thích ngày có đƣợc hai loại liệu khn mặt, liệu hình ảnh (2D) liệu ba chiều (3D) Loại liệu đại diện cho kết cấu khuôn mặt loại thứ hai thu thập cấu trúc hình học khn mặt Cả hai loại liệu bổ sung cho chúng chung cấp hai loại thông tin khác Tuy nhiên, hạn chế hệ thơng biểu diễn khn mặt dựa kết cấu phụ thuộc vào điều kiện ánh sáng vị trí khn mặt Trong 3D rendering khơng phụ thuộc vào chiếu sáng cho phép chuẩn hóa vị trí khn mặt 3D Với đặc điểm mục đích này, mơ hình khn mặt 3D lý tƣởng theo Golovinskiy đồng nghiệp [29], phải đƣợc phổ cập, dễ dàng thu nhận tính tốn, mục tiêu để mơ lại tất khía cạnh khn mặt ngƣời thành mô khuôn mặt 3D biểu diễn đƣợc máy tính Cootes Taylor [31] mơ hình hữu ích cụ thể, chi tiết, điều có nghĩa mơ hình có khả biểu diễn cho đối tƣợng mơ hình hóa Bảng 1.1 trình bày tóm tắt nghiên cứu tác giả theo thời gian việc xây dựng mơ hình khn mặt 3D với thông tin nhƣ tác giả, năm xuất bản, số đỉnh, số lƣợng đa giác số lƣợng đối tƣợng sử dụng để xây dựng mô hình khn mặt 3D Bảng 1.1 Các mơ hình khn mặt 3D Model/author/year Purpose Vertices Polygons Subjects Park [25], 1974 Speech animation 356 334 75 100 Candide – 3, 2001 Facial expressions and animation Morphable Model, Blaz y Vetter[24], 1999 Generation of human faces 70,000 200 Bronstein et al [28], 2003 Facial recognition 2,000 a 2,500 157 El-Husuna [32], 2003 Facial model Golovinskiy et al [29], 2006 Facial details modeling 500,000 149 Basel Face Model, Paysan et al, 2009 Generation of human faces 53,490 160,470 200 Ramirez et al [30], 2009 Facial recognition 2,777 2,676 Phothisane et al [26], 2011 Head tracking 3,000 200 1.3.4 Một số phƣơng pháp biểu diễn trạng thái khn mặt 3D Hoạt hóa khn mặt máy tính đƣợc mơ tả cách tƣơng đối nhƣ tập kỹ thuật để biểu diễn khn mặt đồ họa hệ thống máy tính sau hoạt hóa khn mặt theo cách quán với dịch chuyển khuôn mặt ngƣời thực Dƣới luận văn trình bày bốn phƣơng pháp để biểu diễn trạng thái khn mặt, key-frame animation, hoạt hóa theo tham số, hoạt hóa dựa hoạt hóa dựa giả a.Hoạt hóa dựa vào Key-frame Phƣơng pháp chủ yếu sử dụng kỹ thuật nội suy để cung cấp cách tiếp cận trực quan q trình hoạt hóa khn mặt Trong phƣơng pháp hàm nội suy đƣợc sử dụng để tạo frame khung hình hỗ trợ cho q trình chuyển đổi khung hình cách trơn tru Các khung hình gƣơng mặt với biểu cảm khác Phƣơng pháp hoạt hóa dựa vào key-frame có ƣu điểm nhanh chóng dễ dàng để tạo hoạt ảnh động khuôn mặt Tuy nhiên, phƣơng pháp khơng tạo đƣợc biểu cảm nằm ngồi giới hạn tập khung hình Sự kết hợp động chuyển động mặt độc lập đƣợc tạo khó khăn Do đó, nội suy phƣơng pháp tốt để tạo tập hoạt ảnh động nhỏ từ vài khung hình b Hoạt hóa theo tham số Phƣơng pháp hoạt hóa theo tham số đƣợc phát triển lần Parke vào năm 1974 Phƣơng pháp hoạt hóa khn mặt với tập tham số điều khiển Các tham số đƣợc nối cố định với vùng cụ thể khuôn mặt Một chuyển động mặt cụ thể đƣợc tạo biến dạng tham số nối với vùng vùng cụ thể khuôn mặt Không giống nhƣ phƣơng pháp hoạt hóa dựa vào key-frame, hoạt hóa theo tham số cho phép kiểm sốt cách rõ rang khu vực cụ thể khuôn mặt Phƣơng pháp cung cấp chuỗi biểu cảm khn mặt với chi phí tính tốn tƣơng đối thấp Tuy nhiên, phƣơng pháp hoạt hóa theo tham số tạo biểu cảm ngƣời cách tự nhiên xung đột tham số xảy Do đó, phƣơng pháp phù hợp cho biến dạng vùng cụ thể khuôn mặt c Hoạt hóa dựa giả Sự hình thành biểu cảm khn mặt q trình phức tạp, liên quan đến tham gia đồng số Ngồi ra, gây biến dạng da nhìn thấy đƣợc, phù hợp với chuyển động phức tạp da Mơ hình hóa q trình mặt giải phẫu đòi hỏi phải có khả tính tốn tốt Vì lý này, nhà khoa học quan sát kết biểu cảm khn mặt đề tìm cách tái tạo lại kết mà không cần đến mơ hình giải phẫu phức tạp Một kết cho nỗ lực đƣợc gọi cách tiếp cận dựa giả Hoạt hóa dựa giả cố gắng mô lại tập co thực tế cách trực tiếp làm biến dạng lƣới khuôn mặt Phƣơng pháp hoạt hóa dựa giả có ƣu điểm đơn giản phƣơng pháp dựa bỏ qua giải phẫu khn mặt Phƣơng pháp xử lý chuyên sâu phƣơng pháp dựa cơ, máy tính khơng phải tính tốn hành động động lực học mà biến dạng lƣới cách trực tiếp Tuy nhiên, phƣơng pháp bỏ qua giải phẫu khuôn mặt nên khơng thể mơ hình hóa xác nếp nhắn nhƣ chỗ lồi lõm khuôn mặt, giảm tính thực khn mặt Đồng thời phƣơng pháp không ý tới việc giải tƣơng tác khn mặt d Hoạt hóa dựa Phƣơng pháp chủ yếu dựa vào giải phẫu mô hình nhiều lớp da để làm biến dạng lƣới khuôn mặt tạo chuyển động khuôn mặt ngƣời Phƣơng pháp tiếp cận dựa đƣợc đặc trƣng việc mô hành động phù hợp với thực tế thể ngƣời 8 CHƢƠNG - MỘT SỐ KỸ THUẬT NỘI SUY TRONG BIỂU DIỄN TRẠNG THÁI KHUÔN MẶT 3D 2.1 Kỹ thuật nội suy tuyến tính 2.1.1 Giới thiệu Trong tốn học, nội suy tuyến tính phƣơng pháp đƣờng cong phù hợp sử dụng đa thức tuyến tính để xây dựng điểm liệu phạm vi tập rời rạc điểm liệu biết Trong khoa học kỹ thuật, ngƣời ta thƣờng có số điểm liệu biết giá trị cách lấy mẫu thực nghiệm Những điểm giá trị đại diện hàm số biến số độc lập có lƣợng giới hạn giá trị Thƣờng phải nội suy (hoặc ƣớc lƣợng) giá trị hàm số cho giá trị trung gian biến độc lập Giả sử có hai điểm biết tọa độ (x0, y0) (x1, y1) nội suy tuyến tính đƣờng thằng hai điểm Cho giá trị x khoảng (x0, x1) giá trị y dọc theo đƣờng thẳng đƣợc đƣa từ phƣơng trình (2.1) ( ) (2.2) Hay ( ) ( ) (2.3) Đây công thức nội suy tuyến tính khoảng (x0, x1) Nội suy tuyến tính phƣơng pháp đơn giản để nhận đƣợc giá trị vị trí điểm liệu Các điểm liệu đƣợc kết nối cách đơn giản đoạn thẳng Mỗi đoạn thẳng (giới hạn hai điểm liệu) đƣợc nội suy cách độc lập Khi hàm nội suy hai điểm đƣợc viết nhƣ sau: ( ) ( ) Tham số t xác định nơi để ƣớc tính giá trị đƣờng nội suy, điểm điểm thứ hai Các giá trị nội suy hai điểm t nằm khoảng 2.1.2 Sử dụng biểu diễn trạng thái khuôn mặt 3D Giả sử khuôn mặt 3D đƣợc biểu diễn da đa giác thích hợp Tƣ tƣởng kỹ thuật tƣơng tự nhƣ phƣơng pháp tạo chuyển động phim hoạt hình thơng thƣờng Các phim hoạt hình xác định chuyển động mong muốn cách tạo loạt vẽ chuyển động chính, sau ngƣời tạo chuyển động tạo loạt khung hình (frame) trung gian chuyển động vẽ Đối với việc hoạt hóa trạng thái khn mặt máy tính vẽ đƣợc thay tập tin liệu mô tả trạng thái khuôn mặt khác 9 Các trạng thái khuôn mặt khác bao gồm trạng thái nhƣ trạng thái khuôn mặt tự nhiên, trạng thái cƣời, trạng thái tức giận, ngạc nhiên,.v.v Các liệu tập tin mô tả trạng thái khuôn mặt vị trí ba chiều điểm xác định da đa giác sử dụng để đại diện cho khn mặt vị trí ba chiều điểm vùng đặt trƣng khn mặt mà trạng thái khn mặt đƣợc thể Các khung hình trung gian đƣợc xác định cách sử dụng phép nội suy tuyến tính P_interpolated (t) = (1-t)* P_prev + t*P_next (2.5)