4.3. FamiliarHand
4.3.1. Quy trình thực hiện
Sau ựây là quy trình thực hiện bài toán: - Bước 1:
Ớ Công việc: Sử dụng tool thiết kế 3D (Maya, 3ds max, PoserẦ) ựể thiết kế mô hình 3D rồi xuất dữ liệu ra dưới dạng file VRML97.
Ớ Kết quả: File VRML chứa dữ liệu ựể xây dựng nên mô hình 3 chiều thể hiện một bàn tay.
Ớ Công việc: Xây dựng module làm nhiệm vụ load file VRML và ựọc ra các nút trong file ựó và gán cho các ựối tượng tương ứng của Java3D. Bộ render của Java3D sẽ dựa vào cấu trúc Scene Graph ựể render thành mô hình 3D tương ứng.
Ớ Kết quả: Module load mô hình bàn tay, module ựọc các ựối tượng Joint và mối quan hệ phân cấp giữa các Joint.
- Bước 3:
Ớ Công việc: Xây dựng các module ựiều khiển các ựối tượng TransformGroup của Java3D theo các tham số truyền vào (các ựối tượng TransformGroup quy ựịnh hình thức + vị trắ dịch chuyển của các hình khối 3D).
Ớ Kết quả: module ựiều khiển cử ựộng của tay - Bước 4:
Ớ Công việc: Xây dựng bảng các tham số thắch hợp ựể làm ựầu vào cho việc ựiều khiển hình khối 3D. Với mỗi bộ tham số, bộ render của Java3D sẽ render lại thành các hình 3D tương ứng với bộ tham số truyền vào.
Ớ Kết quả: Công cụ thu các tham số tương ứng của từng joint trong không gian 3 chiều ứng với từng ựộng tác tay do người dùng trực tiếp ựiều khiển.
- Bước 5:
Ớ Công việc: Xây dựng module chắnh tự ựộng ựiều khiển tay cử ựộng tới các vị trắ tương ứng với các bộ tham số thắch hợp.
Ớ Kết quả: Module tự ựộng tạo các chuyển ựộng. 4.3.2. Cấu trúc mô hình bàn tay trong FamiliarHand
các cơ, bề mặt da. Hiện tại thì với số lượng khớp như vậy, mô hình bàn tay cũng ựã hoạt ựộng với ựộ chân thực khá cao.
Hình 19: mô hình bàn tay 3D trong chương trình FamiliarHand
Dưới ựây trình bày cây phân cấp Joint của mô hình FamiliarHand, bên phải tương ứng là cây phân cấp mô tả các ựốt chi của bàn tay:
Wrist Palm | ThumbJoint_01 | ThumbPhalanx_01 | ThumbJoint_02 | ThumbPhalanx_02 | IndexJoint_01 | IndexPhalanx_01 | IndexJoint_02 | IndexPhalanx_02 | IndexJoint_03 | IndexPhalanx_03 | MiddleJoint_01 | MiddlePhalanx_01 | MiddleJoint_02 | MiddlePhalanx_02 | MiddleJoint_03 | MiddlePhalanx_03 | RingJoint_01 | RingPhalanx_01 | RingJoint_02 | RingPhalanx_02 | RingJoint_03 | RingPhalanx_03 | PinkyJoint_01 | PinkyPhalanx_01
| PinkyJoint_03 | PinkyPhalanx_03
4.3.3. Cấu trúc chương trình
Chương trình ựược xây dựng dưới dạng một applet. Trong chương trình nói chung có khá nhiều module, bảng sau ựây chỉ liệt kê các module chắnh ựảm nhiệm những công việc then chốt:
Tên module Chức năng
createHand : Load mô hình bàn tay từ file VRML là tham số truyền vào.
createSceneGraph : Xây dựng cấu trúc SceneGraph.
getControlledJoints : đọc các ựối tượng Joint trong file VRML, xác ựịnh mối tương quan cha-con giữa chúng.
guiPanel : Xây dựng panel biểu diễn mô hình + các nút ựiều khiển việc biểu diễn dấu hiệu.
myHand : module dùng ựể tắnh ra các bộ tham số cụ thể tương ứng với từng chữ cái trong bảng ngôn ngữ dấu hiệu.
myWriting :
là lớp con của lớp Timer, có nhiệm vụ thực hiện chuỗi biến ựổi tư thế của bàn tay tùy theo bộ tham số truyền vào.
setComponentRot : Thực hiện việc biến ựổi các tư thế của bàn tay tùy theo bộ tham số truyền vào.
file FamiliarHand.wrl : chứa ựựng các dữ liệu ựể xây dựng nên mô hình 3 chiều diễn tả một bàn tay.
4.3.3. Kết quả ựạt ựược
Sau ựây là bảng mẫu các ký hiệu biểu ựạt các ký tự theo hệ thống ngôn ngữ dấu hiệu ASL. A a B b C c D d E e G g H h I i K k
L l M m N n O o P p Q q R r S s T t
U u V v X x
Và ựây là mô hình 3 chiều biểu diễn bảng ký tự trên do FamiliarHand thực hiện: --- A ---
--- C ---
--- D ---
--- E ---
--- H ---
--- I ---
--- K ---
--- L ---
--- M ---
--- O ---
--- Q ---
--- S ---
--- T ---
--- U ---
--- V ---
--- X ---
Kết luận
đề tài ỘỨng dụng mô hình chuyển ựộng hình nhân 3D vào tương tác người máy và E-learningỢ là một phần trong dự án lớn mà tôi và các ựồng nghiệp ựang tiến hành. Trong luận văn này, tôi tập trung xây dựng cây phân cấp của các khớp xương trong mô hình bàn tay biểu diễn trong không gian 3 chiều mô phỏng bàn tay sinh học của con người trong thực tế, mối liên hệ chuyển ựộng giữa các khớp với nhau theo hệ cơ. Sau ựó tôi tiến hành xây dựng công cụ ựiều khiển các khớp xương (tổng cộng trong mô hình chương trình xây dựng có 15 khớp) trực tiếp bằng tay ựể thu ựược các tham số quay trong hệ tọa ựộ 3 chiều tương ứng với từng khớp xương ở từng tư thế biểu diễn các ký tự trong bảng ngôn ngữ ký hiệu. Và cuối cùng là xây dựng công cụ nhận các tham số này làm ựầu vào ựể tự ựộng ựiều khiển mô hình bàn tay chuyển ựộng mô tả các ký tự .
Trong quá trình xây dựng chương trình tôi ựã cân nhắc và lựa chọn ASL làm bộ ngôn ngữ ký hiệu chuẩn do tắnh ựơn giản và phổ dụng của nó. Và theo tôi ựược biết thì trường trẻ em câm ựiếc Xã đàn cũng sử dụng ngôn ngữ này. ASL cũng là ngôn ngữ dấu hiệu dành cho người khiếm thắnh phổ biến nhất trên thế giới. Do ựó tôi hy vọng phạm vi ứng dụng của chương trình sẽ có thể mở rộng hơn nữa.
Kết quả của luận văn này là một phần mềm ứng dụng mô phỏng chuyển ựộng hình nhân 3D, cụ thể là một phần cơ thể của hình nhân 3D - bàn tay và áp dụng các chuyển ựộng ựó vào việc biểu diễn ngôn ngữ dấu hiệu dành cho người khiếm thắnh.
Ứng dụng này cũng có thể ựược sử dụng vào mục ựắch dạy học (vắ dụ: dạy về luật giao thông, các bài học về y sinh) hoặc giải trắ (phim ảnh, game)Ầ.
tay chuyển ựộngẦ Và tôi nghĩ rằng trong tương lai hệ thống phải ựược tắch hợp với một hệ thống nhận biết âm thanh ựể biến ựổi tắn hiệu âm thanh thành tắn hiệu hình ảnh biểu ựạt ngôn ngữ dấu hiệu dành cho người khiếm thắnh, thậm chắ là tắch hợp cả hệ thống nhận biết âm thanh và hệ thống mô phỏng cảm xúc khuôn mặt ựể có thể kết hợp cùng lúc hai phương pháp nhận biết cổ ựiển ựã giới thiệu ở phần 6, mục 6.1.2 (Lịch sử ngôn ngữ dấu hiệu): nhận biết qua cách biểu ựạt của tay và nhận biết qua cách biểu ựạt của khuôn miệng. Những ựiều này cũng chắnh là hướng phát triển tiếp theo của luận văn này.
Phụ lục A Ờ Danh mục một số công trình nghiên cứu về tương tác người máy.
2004
Ớ 3TP: 3-D models transport protocol
Ghassan Al-Regib, Yucel Altunbasak
Ớ Adaptive interaction in Web3D virtual worlds
Augusto Celentano, Michele Nodari
Ớ Periscope: a system for adaptive 3D visualization of search results
Wojciech Wiza, Krzysztof Walczak, Wojciech Cellary
Ớ Adding a fourth dimension to three dimensional virtual spaces
Robina E. Hetherington, John P. Scott
Ớ A VRML97-X3D extension for massive scenery management in virtual worlds
Jean-Eudes Marvie, Kadi Bouatouch
Ớ Building Virtual and Augmented Reality museum exhibitions
Rafal Wojciechowski, Krzysztof Walczak, Martin White, Wojciech Cellary
Ớ The unreal editor as a Web 3D authoring environment
David Arendash
Ớ 3D graphics rendering time modeling and control for mobile terminals
Nicolaas Tack, Francisco Morán, Gauthier Lafruit, Rudy Lauwereins
Ớ Automatic derivation of electronic maps from X3D/VRML worlds
Lucio Ieronutti, Roberto Ranon, Luca Chittaro
Ớ Using GeoVRML for 3D oceanographic data visualizations
Michael P. McCann
Ớ Utilizing X3D for immersive environments
Johannes Behr, Patrick Dảhne, Marcus Roth
Ớ An XML-based visual shading language for vertex and fragment shaders
Frank Goetz, Ralf Borau, Gitta Domik
Ớ Interactive Web-based visualisation of block model data
Tony Gill, Con Caris, Guy LeBlanc Smith
Ớ X3D programmable shaders
Nicholas F. Polys, Doug A. Bowman, Chris North, Reinhard C. Laubenbacher, Karen Duca
Ớ Model-based design, generation, and evaluation of virtual user interfaces
Jean Vanderdonckt, Chow Kwok Chieu, Laurent Bouillon, Daniela Trevisan
Ớ JINX: an X3D browser for VR immersive simulation based on clusters of commodity
computers
Luciano P. Soares, Marcelo Knỏrich Zuffo 2003
Ớ Multimodal presentation of dynamic object scenarios on the web
Andrea Esuli, Antonio Cisternino, Giuliano Pacini, Maria Simi
Ớ 3D CAD format for the web update
Larry Wickstrom
Ớ Emotionally-rich virtual worlds with emotion synthesis
Stefanos D. Kollias, Kostas Karpouzis
Ớ A multi-user virtual environment system with extensible animations
Yi-Lin Liu, Tsai-Yen Li
Ớ WebCAME: a light-weight modular client/server multiresolution rendering system
Markus Grabner
Ớ Adopting and augmenting X3D for efficient 3D content production: concepts and tools
Raimund Dachselt, Ralf Dỏrner, Paul Grimm
Ớ A comparison of the usability and effectiveness of web-based delivery of instructions
for inherently-3D construction tasks on handheld and desktop computers
Guy Zimmerman, Julie Barnes, Laura M. Leventhal
Ớ Binary compression rates for ASCII formats
Martin Isenburg, Jack Snoeyink
Ớ VRML97 distributed authoring interface
Stéphane Louis Dit, Samuel Degrande, Christophe Gransart, Christophe Chaillou, Grégory Saugis
Ớ A framework for mobile-agents embodied in X3D networked virtual environment
Yoann Fabre
Ớ Cultural heritage applications of virtual reality
Krzysztof Walczak, Martin White
Ớ Early experiences with a 3D model search engine
Patrick Min, John A. Halderman, Michael Kazhdan, Thomas A. Funkhouser
Ớ Implementation of a scripting language for VRML/X3D-based embodied agents
Ớ MVIP-II: a protocol for enabling communication in collaborative virtual environments
John Robinson, Sarah Dumoulin, John Stewart
Ớ 3D virtual clothing: from garment design to web3d visualization and simulation
Luca Chittaro, Demis Corvaglia
Ớ An introduction to the Xj3D toolkit
Alan D. Hudson
Ớ Stylesheet transformations for interactive visualization: towards a Web3D chemistry
curricula
Nicholas F. Polys
Ớ 3D and mixed reality: a European research panorama
Eric Badiqué
Ớ Generation of VRML city models for focus based tour animations: integration,
modeling and presentation of heterogeneous geo-data sources
Arne Schilling, Alexander Zipf
Ớ Robust transmission of 3D geometry over lossy networks
Zhihua Chen, Bobby Bodenheimer, J. Fritz Barnes
Ớ Behavior3D: an XML-based framework for 3D graphics behavior
Raimund Dachselt, Enrico Rukzio
Ớ InViWo agents: write once, display everywhere
Nadine Richard
Ớ Guiding visitors of Web3D worlds through automatically generated tours
Luca Chittaro, Roberto Ranon, Lucio Ieronutti
Ớ Web3D for medical education and training
Nigel W. John, Ken Brodlie, Fernando Bello
Ớ An accelerated remote graphics architecture for PDAS
Fabrizio Lamberti, Claudio Zunino, Andrea Sanna, Antonino Fiume, Marco Maniezzo
Ớ Viewpoint adaptation during navigation based on stimuli from the virtual environment
Szilárd Kiss, Anton Nijholt 2002
Ớ A collaborative analysis tool for visualisation and interaction with spatial data
Ớ Rapid evaluation of Catmull-Clark subdivision surfaces
Jeffrey Bolz, Peter Schrỏder
Ớ A generic approach for interfacing VRML browsers to various input devices and
creating customizable 3D applications
Frank Althoff, Herbert Stocker, Gregor McGlaun, Manfred K. Lang
Ớ MPEG-4 BIFS streaming of large virtual environments and their animation on the web
Mojtaba Hosseini, Nicolas D. Georganas
Ớ Multiresolution streaming mesh with shape preserving and QoS-like controlling
Bing-Yu Chen, Tomoyuki Nishita
Ớ VRML data sharing in the spin-3D CVE
Stéphane Louis Dit Picard, Samuel Degrande, Christophe Gransart, Christophe Chaillou
Ớ Teaching 3D modeling and simulation: virtual kelp forest case study
Donald P. Brutzman
Ớ Interactive scene manipulation in the Virtue3D system
Gordon W. Lescinsky, Costa Touma, Alex Goldin, Max Fudim, Amit Cohen
Ớ X-rooms
Karsten Isakovic, Thomas Dudziak, Kai Kỏchy
Ớ 3D agent-based virtual communities
Zhisheng Huang, Anton Eliẻns, Cees T. Visser
Ớ Investigation into effective navigation in desktop virtual interfaces
Eyal Haik, Trevor Barker, John Sapsford, Simon A. Trainis
Ớ Contigra: an XML-based architecture for component-oriented 3D applications
Raimund Dachselt, Michael Hinz, Klaus Meiưner
Ớ Coding polygon meshes as compressable ASCII
Martin Isenburg, Jack Snoeyink
Ớ InTml: a description language for VR applications
Pablo Figueroa, Mark Green, H. James Hoover
Ớ Web3D in ocean science learning environments: virtual big beef creek
Bruce Campbell, Paul Collins, Hunter Hadaway, Nick Hedley, Mark Stoermer
Ớ Dynamic generation of personalized VRML content: a general approach and its
application to 3D e-commerce
Luca Chittaro, Roberto Ranon
Ớ Scheduling level of detail with guaranteed quality and cost
Wouter Pasman, Frederik W. Jansen
K. S. Choi, H. Sun, Pheng-Ann Heng, Jack C. Y. Cheng
Ớ Creating 3D oceanographic data visualizations for the web
Michael P. McCann
Ớ Facial animation framework for the web and mobile platforms
Igor S. Pandzic
Ớ Building database applications of virtual reality with X-VRML
Krzysztof Walczak, Wojciech Cellary 2001
Ớ Using lattice for web-based medical applications
Akira Wakita, Takamichi Hayashi, Takashi Kanai, Hiroaki Chiyokura
Ớ Volume visualization in VRML
Johannes Behr, Marc Alexa
Ớ Customizable interactions in 3D Web applications with meta beans
Ralf Dỏrner, Paul Grimm
Ớ jGL and its applications as a Web3D platform
Bing-Yu Chen, Tomoyuki Nishita
Ớ rhizoreality.mu
Christian Babski, Patrick Keller
Ớ Enabling custom enhancements in digital sports broadcasts
Richter A. Rafey, Simon Gibbs, Michael Hoch, Hubert Lê Van Gông, Sidney W. Wang
Ớ A framework for component based model acquisition and presentation using Java 3D
Peter Blanchebarbe, Stephan Diehl
Ớ Development of a collaborative virtual environment for educational applications
Tereza G. Kirner, Claudio Kirner, André L. S. Kawamoto, Jefferson Cantão, Aloắsio Pinto, Raul Sidnei Wazlawick
Ớ FaceEngine a 3D facial animation engine for real time applications: a 3D facial animation engine for real time applications
Gaspard Breton, Christian Bouville, Danielle Pelé
Ớ Navigation by query in virtual worlds
Alex van Ballegooij, Anton Eliẻns
Ớ Integrating active tangible devices with a synthetic environment for collaborative engineering
Sandy Ressler, Brian Antonishek, Qiming Wang, Afzal Godil
Ớ A reactive behavior framework for dynamic virtual worlds
Frédéric Boussinot, Jean-Ferdy Susini, Frédéric Dang Tran, Laurent Hazard
Ớ A stateless client for progressive view-dependent transmission
Richard Southern, Simon Perkins, Barry Steyn, Alan Muller, Patrick Marais, Edwin H. Blake
Ớ Steerable media: interactive television via video synthesis
Chris Marrin, Rob Myers, Jim Kent, Peter Broadwell 2000
Ớ Commercial applications of 3D on the Web (panel session - abstract only)
Christian Doegle, Franz Buchenberger, Steve Timmerman, Eric Anschủtz, Maurizio Vecchione
Ớ Forging interactive experiences: a content perspective (panel session - abstract only)
Chris Marrin, Rob Myers, Linda Hahner, Jim Stewartson, Leonard Daly
Ớ Under the hood of GeoVRML 1.0
Martin Reddy, Lee Iverson, Yvan G. Leclerc
Ớ Special panel session on multi-user virtual environments (panel session) (abstract only)
Chris Greenhalgh, Michael V. Capps
Ớ Three-dimensional Beans - creating Web content using 3D components in a 3D
authoring environment
Ralf Dỏrner, Paul Grimm
Ớ NURBS in VRML
Holger Grahn, Thomas Volk, Hans J. Wolters
Ớ New uses of interactive 3D for museums (panel session - abstract only)
Robert Temel, Kris Covarrubias, Jim Spadaccini, Manfred Koob
Ớ Smart virtual prototypes: distributed 3D product simulations for Web based
environments
Marko Salmela, Harri Kyllỏnen
Ớ 3D behavioral model design for simulation and software engineering
Paul A. Fishwick
Ớ MVIP - audio enabled multicast VNet
John L. Robinson, John A. Stewart, Isabelle Labbe
Ớ Real-time animation and motion capture in Web human director (WHD)
Ớ Evolutionary co-operative design between human and computer: implementation of ``the genetic sculpture park''
Duncan Rowland, Frank Biocca
Ớ Implementing multi-user virtual worlds: ideologies and issues (panel session)
Chris Greenhalgh
Ớ 3D gadgets for business process visualization - a case study
Bastiaan Schỏnhage, Alex van Ballegooij, Anton Eliẻns
Ớ VRML visualization in a surgery planning and diagnostics application
Hans Holten-Lund, Mogens Hvidtfeldt, Jan Madsen, Steen Pedersen
Ớ Mu3D: a causal consistency protocol for a collaborative VRML editor
Ricardo Galli, Yuhua Luo
Ớ XVL: a compact and qualified 3D representation with lattice mesh and surface for the
Internet
Akira Wakita, Makoto Yajima, Tsuyoshi Harada, Hiroshi Toriya, Hiroaki Chiyokura
Ớ A database driven server for an Internet based plant layout presentation system