Voice print system

จาก OpenTLE Wiki

ข้ามไปที่: ป้ายบอกทาง, ค้นหา

เนื้อหา

การเพิ่มผู้ใช้งานการเข้าระบบด้วยเสียง

ลักษณะของงาน

ระบบที่สามารถเพิ่มผู้ใช้ระบบและทดสอบว่าเปนบุคคลใดที่ได้รับอนุญาตให้เข้าสู่ระบบได้ เพื่อป้องกันบุคคลภายนอกที่ไม่ได้รับอนุญาตให้เข้าระบบ โดยระบบจะทำการอัดเสียงของผู้ใช้แต่ละคน ตามจำนวนครั้งที่กำหนด แล้วนำไปสร้าง Model จากนั้นทดสอบโดยการให้ผู้ใช้อัดเสียงเข้าไป แล้วนำไปทดสอบกับ Model ที่สร้างจากผุ้ใช้แต่ละคนที่ได้บันทึกไว้ ผลลัพธ์ที่ก็จะบอกได้ว่าเป็นเสียงของผู้ใช้ที่สามารถเข้าสู่ระบบ

คุณสมบัติของผู้ร่วมโครงการ

  • มีพื้นฐานเกี่ยวกับการเขียนโปรแกรมบน Linux
  • มีความสามารถในการเขียนโปรแกรมด้วยภาษา C, C++
  • มีความสามารถในการออกแบบ user interface ด้วย Glade Interface Designer

Tools

ขั้นตอนการดำเนินงาน

เขียน module ส่วนติดต่อกับ sound card ด้วย ALSA library

ALSA มี module ที่สามารถติดต่อกับ sound card ได้โดยติดต่อผ่าน driver ของ sound card ลักษณะของการทำงานมีดังนี้

 open_the_device(); // เปิดการเชื่อมต่อกับ sound card
 set_the_parameters_of_the_device();
 while (!done) {
     /* ทำคำสั่ง */
     receive_audio_data_from_the_device();
     deliver_audio_data_to_the_device();
     }
 close_the_device(); // ปิดการใช้อุปกรณ์

เขียน module ให้โปรแกรมสามารถอัดเสียงโดยใช้เสียงพูดจาก microphone และบันทึกลงในเครื่องได้

โดยจัดเก็บเสียงเป็นนามสกุล WAV

  • arecord ใช้ในการบันทึกเสียง
  • aplay ใช้ในการเล่นเสียง

เขียน module ของคำสั่ง Play, Stop, Pause และปรับระดับเสียง

เขียน Train module

เขียน Test module

ออกแบบ user interface และเพิ่ม module โปรแกรม

สร้างส่วนแสดงผลเส้นเสียง

การทดสอบการใช้งาน

  • พิมพ์ชื่อ user login
  • กดปุ่ม REC ค้างไว้ในขณะอัดเสียงคำว่า "เข้าระบบ" แล้ว save ไว้ในชื่อ userlogin_[index*].wav
  • แต่ละคนอัดเสียงคนละตามจำนวนครั้งที่กำหนด เมื่ออัดเสียงเรียบร้อยแล้ว จะได้ Model และ ค่า Threshold ของแต่ละคน
  • ทดสอบโดยการให้ผู้ใช้อัดเสียงเข้าไป แล้วกดปุ่ม Test เพิ่อนำเสียงที่เป็นไปทดสอบกับ Model และค่า Threshold เพื่อระบุว่าเป็นบุคคลที่ได้รับการอนุญาตให้เข้าระบบหรือไม่
  • จะแสดงผล "PASS" สำหรับผู้ใช้ที่มีสิทธิ์เข้าระบบได้ และจะแสดงผล "NOT PASS" สำหรับผู้ใช้ที่ไม่มีสิทธิ์เข้าระบบ

(*1,2,3,4,...)


เอกสารอ้างอิง


รายนามสมาชิก

  • ชื่อ: นายสยาม ศรีพั่ว
  • ชื่อเล่น: สยาม
  • ชื่อ Online: -
  • Blog Or Web: -
  • จาก: มหาวิทยาลัยบูรพา
  • หน้าที่:


  • ชื่อ: น.ส.พรนภา ประจักษ์ทิพย์
  • ชื่อเล่น: แพน
  • ชื่อ Online: appan
  • Blog Or Web: -
  • จาก: มหาวิทยาลัยเกษตรศาสตร์ วิทยาเขตศรีราชา
  • หน้าที่:


  • ชื่อ: นายพลพีร์ สร้อยสุวรรณ
  • ชื่อเล่น: โอ๊บ
  • ชื่อ Online: -
  • Blog Or Web: -
  • จาก: มหาวิทยาลัยเกษตรศาสตร์ วิทยาเขตศรีราชา
  • หน้าที่:


  • ชื่อ: น.ส.สุภา บรรเริงเสนาะ
  • ชื่อเล่น: ทราย
  • ชื่อ Online: supa
  • Blog Or Web: -
  • จาก: KU
  • หน้าที่:


  • ชื่อ: นายพสุ อินทรียงค์
  • ชื่อเล่น: เค
  • ชื่อ Online: -
  • Blog Or Web: -
  • จาก: มหาวิทยาลัยเกษตรศาสตร์ วิทยาเขตศรีราชา
  • หน้าที่:


  • ชื่อ: นายภราดร ภูษิตวณิชย์
  • ชื่อเล่น: ดร
  • ชื่อ Online: -
  • Blog Or Web: -
  • จาก: สถาบันเทคโนโลยีพระจอมเกล้าธนบุรี
  • หน้าที่:


  • ชื่อ: นายวรานนท์ เปียศรี
  • ชื่อเล่น: แบงค์
  • ชื่อ Online: waranonkmutt
  • Blog Or Web: -
  • จาก: สถาบันเทคโนโลยีพระจอมเกล้าธนบุรี
  • หน้าที่:

[กลับหน้าหลัก]

รับข้อมูลจาก "http://wiki.opentle.org/Voice_print_system"
เครื่องมือส่วนตัว