thesis (ppt)

Download Report

Transcript thesis (ppt)

เฟรมเวิร์กของส่วนต่อประสานกับ
ผู้ใช้ผ่านศีรษะมนุษย์เสมือนโดยใช้
โมโนสโกปิกฟิชแทงก์วีอาร์
นำเสนอโดย นำย อรรถกร พูนศิลป์
อำจำรย์ ทปี่ รึกษำวิทยำนิพนธ์ อ.ดร.อรรถวิทย์ สุ ดแสง
ภำควิชำวิศวกรรมคอมพิวเตอร์ จุฬำลงกรณ์ มหำวิทยำลัย
Outline
 ความเป็ นมาและความสาคัญของปั ญหา
 งานวิจยั และทฤษฎีที่เกี่ยวข้อง
 รายละเอียดในการพัฒนา
 การทดลองและผลการทดลอง
 สรุ ป
2
ควำมเป็ นมำและควำมสำคัญของปัญหำ
3
ควำมเป็ นมำและควำมสำคัญของปัญหำ
 User Interface ที่ใช้กนั ทัว่ ไปตั้งแต่อดีตถึงปั จจุบนั



ส่ วนใหญ่จากัดแค่แป้นพิมพ์และเมาส์
ไม่เป็ นธรรมชาติ ต้องใช้เวลาศึกษาเรี ยนรู ้
การนาเสนอขาดความน่าสนใจ
 User Interface ที่นาเสนอ



ใช้ภาษาพูด และภาษาท่าทางประกอบ
เป็ นธรรมชาติ คนที่ไม่เคยใช้มาก่อนก็สามารถใช้งานได้ทนั ที
ดึงดูดความสนใจได้มากกว่า
4
ควำมเป็ นมำและควำมสำคัญของปัญหำ
 แนวคิดของงานวิจยั นี้

พูดคุย และมีปฏิกิริยาต่างๆ ไปยังผูใ้ ช้งานได้
5
งำนวิจัยทีเ่ กีย่ วข้ อง
6
งำนวิจัยทีเ่ กีย่ วข้ อง
 Jun Rekimoto, A Vision-Based Head Tracker for Fish Tank Vitual Reality -
VR without Head Gear. Proceedings of VRAIS'95 ,1995, Pages 94-100


ตรวจจับตาแหน่งผูใ้ ช้งาน
นาตาแหน่งไปปรับมุมมองแบบฟิ ชแทงก์วอี าร์ของโมเดลสามมิติ
7
งำนวิจัยทีเ่ กีย่ วข้ อง
8
งำนวิจัยทีเ่ กีย่ วข้ อง
 ข้อจากัด


ผูใ้ ช้ตอ้ งอยูห่ ่างจากกล้องเป็ นระยะที่คงที่
ต้องเก็บภาพต้นแบบใบหน้าไว้ก่อน และไม่ทนทานต่อสภาพแสงที่เปลี่ยน
9
งำนวิจัยทีเ่ กีย่ วข้ อง
 Paula Salgado Lucena, Marcelo Gattass, and Luiz Velho. Expressive Talking
Heads: A Study on Speech and Facial Expression in Virtual Characters.
Revista SCIENTIA, 2002.


Talking Head ที่สามารถพูดตามสคริ ปต์ และขยับปากสอดคล้องกับเสี ยงพูด
กรอกลูกตาไปมา และ แสดงอารมณ์ได้
10
งำนวิจัยทีเ่ กีย่ วข้ อง
 ตัวอย่างใบหน้าที่ใช้
11
งำนวิจัยทีเ่ กีย่ วข้ อง
 ข้อจากัด


พูดตามข้อความที่ป้อนโดยผูใ้ ช้เท่านั้น
ไม่สามารถรับรู ้ความเป็ นไปของผูใ้ ช้งาน
12
งำนวิจัยทีเ่ กีย่ วข้ อง
 Cynthia Breazeal, Brian Scassellati, How to build robots that make friends
and influence people., IROS99, Kyonjiu, Korea, 1999.




มีลกั ษณะเป็ นหุ่นยนต์ที่มีเฉพาะส่ วนของศีรษะ
แสดงออกทางอารมณ์ได้ และพูดคุยง่ายๆ ได้
รับรู ้ปฏิกิริยาของผูใ้ ช้งานได้
เป็ นเพื่อนเล่นกับเด็กๆ ได้
13
งำนวิจัยทีเ่ กีย่ วข้ อง
14
งำนวิจัยทีเ่ กีย่ วข้ อง
 ข้อจากัด


มีตน้ ทุนในการสร้างที่สูง
ลักษณะภายนอกเป็ นหุ่นยนต์ที่ไม่เหมือนหน้าคนจริ ง
15
รำยละเอียดในกำรพัฒนำ
16
รำยละเอียดในกำรพัฒนำ
 ความสามารถของระบบ





แสดงโมเดลสามมิติของศีรษะมนุษย์เสมือนจริ ง
สามารถมองไปยังผูใ้ ช้ได้
สนทนาพูดคุยกับผูใ้ ช้ได้
แสดงอารมณ์ ได้แก่ ปกติ ยิม้ เศร้า ประหลาดใจ หวาดกลัว โกรธ และ
สะอิดสะเอียน
สามารถปรับมุมมองให้สอดคล้องกับตาแหน่งของผูใ้ ช้โดยใช้ฟิชแทงก์วอี าร์
17
โครงสร้ ำงกำรทำงำน
INPUT
Text Input
Speech
Recognition Engine
Main Process
A.L.I.C.E Bot
Pattern Tracker
3D Reconstructor
Fish
Tank VR
AIML
(ALICE Brain)
Text Filter
Text-to-speech Engine
Lip
3D Head
Model
Eyes
Camera
Perspect
ive
OUTPUT
18
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ผูใ้ ช้ตอ้ งสวมหมวกที่ติดรู ปแบบตรวจจับ เพื่อให้กล้องรับภาพเข้ามา
ประมวลผลหาตาแหน่ง
19
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 เหตุผลที่ใช้รูปแบบตรวจจับแบบที่กล่าวมา





ประมวลผลหาตาแหน่งได้อย่างรวดเร็ วกว่าการตรวจจับใบหน้าโดยตรง
ไม่จาเป็ นต้องเทรนระบบให้รู้จาใบหน้าผูใ้ ช้แต่ละคน
การตรวจจับสี่ เหลี่ยมสี ดาบนพื้นขาวทาได้อย่างแม่นยาและคงทน (Robust) กว่า
รู ปแบบอื่นๆ
หากรู ปสี่ เหลี่ยมมีจานวนมากกว่าสอง จะมีโอกาสเกิดความผิดพลาดมากขึ้น
เพราะจุดมีจานวนมากขึ้น
หากรู ปสี่ เหลี่ยมมีเพียงรู ปเดียว อาจมีรูปร่ างซ้ ากับวัตถุอื่นๆ เช่น จอมอนิเตอร์ทา
ให้การตรวจจับผิดพลาดง่าย
20
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 เมื่อรับภาพมาจากกล้อง ขั้นตอนแรกคือการปรับแก้การบิดเบี้ยวในแนวรัศมีของ
ภาพ (Undistortion)
21
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ตัวอย่างภาพที่ปรับแก้การบิดเบี้ยวในแนวรัศมีแล้ว
22
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 แปลงจากภาพสี ให้เป็ นภาพระดับเทา (Gray Scale)
23
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ขยายขนาดจุดสว่าง (Dilation)
24
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 แปลงให้เป็ นภาพไบนารี โดยใช้ค่าเทรชโฮล (Threshold) จากค่าเฉลี่ยของความ
สว่างทัว่ ทั้งภาพ
25
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 หาเส้นรอบรู ป (Contour)
26
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ตัดเส้นที่ลอ้ มรอบของจุดสว่าง ให้เหลือแต่เส้นที่ลอ้ มรอบกลุ่มของจุดมืด
 ตัดเส้นรอบรู ปที่มีพ้น
ื ที่นอ้ ยกว่าที่กาหนดออก
27
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 เลือกเฉพาะเส้นที่คล้ายสี่ เหลี่ยม
 เลือกเฉพาะเส้นที่มีลกั ษณะนูนโค้ง (Convex)
28
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ในขั้นตอนนี้ อาจมีกรณี ที่มีเส้นรอบรู ปจากวัตถุอื่นที่ไม่ใช่รูปแบบตรวจจับก็ได้ แก้
โดยการเลือกเอาเฉพาะเส้นสี่ เหลี่ยมสองรู ปที่มีมุมติดกัน
29
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 เฉลี่ยค่าตาแหน่งจุดมุมทุกจุดจาก 4 เฟรมล่าสุ ด เพื่อลดการกระตุกและกระโดด
ของตาแหน่งที่ตรวจจับได้
30
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ภาพผลลัพธ์
31
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 ตรวจจับตาแหน่งผูใ้ ช้ (x,y,z) จากตาแหน่ง (x,y) ของจุดมุมทั้ง 7 จุด
 ใช้เทคนิค Camera Calibration

Intrinsic Camera Parameters





ความยาวโฟกัส (Focal length)
ตาแหน่งของจุดกึ่งกลางภาพ (Principal point)
ขนาดของแต่ละจุดภาพ (Effective pixel size)
สัมประสิ ทธิ์ การบิดเบี้ยวในแนวรัศมีของเลนส์ (Radial distortion coefficient)
Extrinsic Camera Parameters


เมตริ กซ์การหมุน (Rotation matrix)
เวกเตอร์การเคลื่อนที่ (Translation vector)
32
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 จุดในพิกดั สามมิติ M และจุดที่ปรากฏบนภาพ m เป็ นไปตามความสัมพันธ์
m  A[ Rt ]M




ต้องการหา [Rt] เพื่อนาไปใช้งาน
m คือตาแหน่งในภาพของจุดมุมทั้งเจ็ด
M คือตาแหน่งจริ งที่ได้จากการวัดแบบ Relative ของจุดมุมทั้งเจ็ด
A (Intrinsic parameters) หาได้จากการทา Camera calibration โดยต้องหาให้
เสร็ จสิ้ นก่อนที่ระบบจะเริ่ มทางาน
33
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
 Translation Vector ที่ได้คือตาแหน่ง (x,y,z) ของรู ปแบบตรวจจับเทียบกับ
กล้อง
 สามารถหาตาแหน่งของตาเทียบกับกล้อง (รู ปแบบตรวจจับมีตาแหน่งที่คงที่
เทียบกับตา)
 สามารถหาตาแหน่งของตาเทียบกับกึ่งกลางจอภาพ
 ตาแหน่งพิกดั สามมิติที่ได้มีหน่วยเป็ นเซนติเมตร (cm)
34
กำรตรวจหำตำแหน่ งของผู้ใช้ เทียบกับจอภำพ
คานวณหาพารามิเตอร์แบบภายใน
รับภาพจากกล้อง
ปรับแก้การบิดเบี้ยวตามแนวรัศมี
ตรวจจับจุดมุมทั้ง 7 จุด
คานวณหาพารามิเตอร์แบบภายนอก
คานวณหาตาแหน่งตาผูใ้ ช้เทียบกับ
จอภาพ แล้วนาไปใช้งาน
35
กำรปรับมุมมองให้ สัมพันธ์ กบั ตำแหน่ งของผู้ใช้
 ใช้เทคนิค Fish-Tank VR
 แสดงภาพกราฟฟิ กผ่านจอมอนิ เตอร์ ธรรมดา



ใช้ระบบการติดตามตาแหน่งของศีรษะผูใ้ ช้ (Head Tracking)
ปรับมุมมองหรื อเพอสเปกทีฟให้สมั พันธ์กบั ตาแหน่งดวงตาผูใ้ ช้ในขณะนั้น
ถ้าใช้ร่วมกับแว่นตาสามมิติจะเป็ นแบบ stereoscopic แต่ถา้ ไม่ได้ใช้ร่วมกับแว่น
ก็จะเป็ นแบบ monoscopic
36
กำรปรับมุมมองให้ สัมพันธ์ กบั ตำแหน่ งของผู้ใช้
 Fish-Tank VR
37
กำรปรับมุมมองให้ สัมพันธ์ กบั ตำแหน่ งของผู้ใช้
 กล้องในโลกสามมิติและการกาหนดเพอสเปกทีฟ
38
กำรปรับมุมมองให้ สัมพันธ์ กบั ตำแหน่ งของผู้ใช้
+y
Entire Screen Area
(xmax, ymax, 0)
Window Area
(0,0,0)
+x
(xmin, ymin, 0)
Camera Direction
(trans[0], trans[1], trans[2])
39
กำรทำให้ โมเดลสบตำผู้ใช้
 แยกชิ้นโมเดลระหว่างใบหน้าและดวงตาทั้งสองข้าง
40
กำรทำให้ โมเดลสบตำผู้ใช้


y
  tan 

2
2
 x z 
1
 x
  tan 1  
z
41
กำรพูดคุยโต้ ตอบ
 ใช้ A.L.I.C.E Bot


ติดต่อผ่านพอร์ต 2001
ฐานข้อมูลประโยคสนทนาเก็บไว้ในไฟล์ AIML
42
กำรพูดคุยโต้ ตอบ
 รู ปแบบการติดต่อกับ A.L.I.C.E Bot


“text = ข้อความที่อยากจะพูดคุย” ส่ งไปที่พอร์ต 2001
จะได้รับการตอบกลับเป็ นข้อความเช่นเดียวกัน
 เมื่อได้ Output จาก A.L.I.C.E Bot ออกมาแล้ว ก็จาเป็ นต้องนาเข้าสู่
กระบวนการกรองข้อความก่อนที่จะสังเคราะห์เป็ นเสี ยง
43
ระบบกล้ำมเนื้อบนใบหน้ ำ
 แสดงจุดยอด, โพลีกอนและเส้นไวร์เฟรม
44
ระบบกล้ำมเนื้อบนใบหน้ ำ
 จาลองระบบกล้ามเนื้อจากคนจริ ง

มีสองสถานะคือ ยืด (Relax) และ หด (Contract)
45
ระบบกล้ำมเนื้อบนใบหน้ ำ
V1
V2
V1
V2
V3
V3
46
ระบบกล้ำมเนื้อบนใบหน้ ำ
 ปรับกล้ามเนื้อเพื่อให้มีลกั ษณะการยิม้
47
ระบบกล้ำมเนื้อบนใบหน้ ำ
 ปรับกล้ามเนื้อเพื่อให้มีลกั ษณะหน้าบึ้ง
48
ระบบกล้ำมเนื้อบนใบหน้ ำ
 การปรับขากรรไกรเพื่อให้อา้ ปาก
49
กำรขยับปำกให้ สอดคล้ องกับเสี ยงพูด
 Text-to-speech จะส่ ง “Viseme” ออกมาขณะทางาน
 Viseme คือรู ปแบบปากที่สัมพันธ์กบั หน่วยเสี ยงหนึ่ งๆ
 เก็บรู ปแบบปากทั้งหมดไว้ในไฟล์ก่อน


ค่าการยืดหดกล้ามเนื้อแต่ละเส้น
ค่าองศาขากรรไกร
 เรี ยกใช้รูปแบบปากที่ตอ้ งการจากไฟล์
50
กำรขยับปำกให้ สอดคล้ องกับเสี ยงพูด
 รู ปแบบปากแบบต่างๆ กัน
51
กำรแสดงอำรมณ์
 มีหลักการเช่นเดียวกันกับการขยับปาก
 เก็บอารมณ์ทุกแบบไว้ในไฟล์
 เมื่อต้องการแสดงอารมณ์แบบใด ก็ให้อ่านจากไฟล์แล้วปรับค่าการยืดหด
กล้ามเนื้อให้สัมพันธ์กบั ข้อมูลในไฟล์
52
กำรแสดงอำรมณ์
 รู ปแบบอารมณ์แบบต่างๆ กัน
53
กำรทดลองและผลกำรทดลอง
54
ระบบทีใ่ ช้ ในกำรทดลอง
หมวกที่ติดรู ปแบบ
ตรวจจับ
กล้องวงจรปิ ด
หูฟังและไมโครโฟน
55
วัดควำมถูกต้ องของกำรคำนวณตำแหน่ งรู ปแบบตรวจจับ
56
วัดควำมถูกต้ องของกำรคำนวณตำแหน่ งรู ปแบบตรวจจับ
 ทีร่ ะยะ 80 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน X = 0.613333 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน Y = 1.106667 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน Z = 3.774167 เซนติเมตร
 ทีร่ ะยะ 60 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน X = 0.935000 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน Y = 1.484167 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน Z = 6.221667 เซนติเมตร
 ทีร่ ะยะ 40 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน X = 0.587500 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน Y = 0.477500 เซนติเมตร
 ค่าความคลาดเคลื่อนเฉลี่ยของแกน Z = 2.222500 เซนติเมตร
57
วัดควำมถูกต้ องในกำรมองไปยังตำแหน่ งต่ ำงๆ
 ที่ระยะ 60 เซนติเมตร



ค่าความคลาดเคลื่อนเฉลี่ยของแกน X = 1.714286 เซนติเมตร
ค่าความคลาดเคลื่อนเฉลี่ยของแกน Y = 2.000000 เซนติเมตร
ค่าความคลาดเคลื่อนเฉลี่ยของแกน Z = 0.000000 เซนติเมตร
58
ผลทีไ่ ด้ จำกระบบ เมื่อไม่ ใช้ Fish Tank VR
59
ผลทีไ่ ด้ จำกระบบ เมื่อไม่ ใช้ Fish Tank VR
60
ผลทีไ่ ด้ จำกระบบ เมื่อเปิ ดใช้ Fish Tank VR
61
ผลทีไ่ ด้ จำกระบบ เมื่อเปิ ดใช้ Fish Tank VR
62
ผลกำรทดสอบกำรพูดคุยสนทนำ
63
ผลกำรวัดควำมพึงพอใจของผู้ใช้ งำน
 พึงพอใจ 80%

ให้เหตุผลว่าเป็ นระบบการ
ติดต่อที่แปลกใหม่และ
น่าสนใจ น่าจะเป็ นประโยชน์
ในอนาคต
 เฉยๆ 20%

พอใจ
เฉยๆ
ไม่พอใจ
ติดขัดตรงส่ วนรู ้จาเสี ยงพูด
เพราะผูใ้ ช้แต่ละคนก็มี
เสี ยงพูดที่ต่างกันไป
 ไม่พึงพอใจ 0%
64
สรุป
65
สรุปกำรวิจยั
 สรุ ปการวิจยั
 มีความแม่นยาอยูใ่ นระดับที่ดี
่ า้ ง เช่น ยังมี distortion หลงเหลืออยู,่ ระบบไม่รู้จกั ประโยค
 มีขอ้ ผิดพลาดอยูบ
สนทนาบางรู ปแบบ
 ข้อเสนอแนะ
 ต้องละเอียดในการทา Calibration ให้มากขึ้น
 เพิ่มเติมรู ปแบบประโยคใหม่ๆ ให้มากกว่าเดิม
 การวิจยั ในอนาคต
 ให้มีฟันและลิ้นด้วย
 ให้ระบบมีความจา และพัฒนาตัวเองได้
66
จบแล้ ว ขอบคุณครับ
67