วิธีการเลียนแบบ / คัดลอก / ปลอมเสียงของใครบางคน?


19

มีแอปพลิเคชั่นใดที่มีอยู่เพื่อสุ่มตัวอย่างเสียงของใครบางคนและใช้เพื่อปรับแต่งเสียงอื่น ๆ หรือสังเคราะห์ข้อความให้มีลักษณะคล้ายกับต้นฉบับหรือไม่

ตัวอย่างเช่นการสาธิตการอ่านออกเสียงข้อความโดย AT&Tช่วยให้คุณสามารถเลือกเสียงและภาษาจากค่าที่ตั้งไว้ล่วงหน้าที่ฉันเดาขึ้นอยู่กับเสียงมนุษย์บางส่วนที่ได้รับการสุ่มตัวอย่าง

คุณเรียกกระบวนการนี้อย่างไร มันคือการปรับเสียง? การสังเคราะห์เสียง?


ฉันเดาว่าถ้าคุณมีตัวอย่างการฝึกอบรมเพียงพอสำหรับคำที่เฉพาะเจาะจงมันอาจเป็นไปได้
Phorce

ในชุมชนการวิจัยสิ่งนี้เรียกว่า "การแปลงเสียง"
pichenettes

@ user1582478 ฉันมีพวกเขามากมายคุณจะดำเนินการอย่างไร
clapas

เป็นไปได้ไหมที่จะสร้างเสียงจากคำพูดของเพื่อนจากนั้นนำเสียงนั้นมาใช้ในการโทรศัพท์เช่นเสียงแปรเปลี่ยน แต่ด้วยเสียงที่คุณสร้างขึ้น?

สิ่งนี้ไม่ได้ให้คำตอบสำหรับคำถาม จะวิจารณ์หรือการร้องขอคำชี้แจงจากผู้เขียนแสดงความคิดเห็นด้านล่างโพสต์ของพวกเขา - คุณสามารถแสดงความคิดเห็นในโพสต์ของคุณเองและเมื่อคุณมีเพียงพอชื่อเสียงคุณจะสามารถที่จะแสดงความคิดเห็นในโพสต์ใด
Matt L.

คำตอบ:


24

หมายเหตุแรก: ระบบข้อความเป็นคำพูดที่ทันสมัยที่สุดเช่นเดียวกับจาก AT&T ที่คุณเชื่อมโยงใช้การสังเคราะห์เสียงพูดแบบเรียงต่อกันการสังเคราะห์เสียงพูดการเชื่อมเทคนิคนี้ใช้ฐานข้อมูลขนาดใหญ่ของการบันทึกเสียงของคนคนหนึ่งโดยใช้ประโยคยาว ๆ - เลือกเพื่อให้มีการผสมฟอนิมจำนวนมากที่สุด การสังเคราะห์ประโยคสามารถทำได้เพียงแค่คบด้วยเซ็กเมนต์จากคลังข้อมูลนี้ - บิตที่ท้าทายคือการทำให้การร้อยเข้าด้วยกันราบรื่นและแสดงออก

มีอุปสรรคใหญ่สองอย่างถ้าคุณต้องการใช้เทคนิคนี้เพื่อทำให้ประธานาธิบดีโอบามาพูดคำที่น่าอาย:

  • คุณต้องมีการเข้าถึงคอลเลกชันขนาดใหญ่ของเสียงของเป้าหมายบันทึกโดยเฉพาะอย่างยิ่งกับเงื่อนไขการบันทึกที่สม่ำเสมอและมีคุณภาพดี AT&T มีงบประมาณในการบันทึกเสียงลำโพงเดียวกันหลายสิบชั่วโมงในสตูดิโอเดียวกัน แต่ถ้าคุณต้องการปลอมเสียงของใครบางคนจากการบันทึกเพียง 5 นาทีมันจะยาก
  • มีการจัดแนวแมนนวลและการประมวลผลล่วงหน้าจำนวนมากก่อนที่วัตถุดิบที่บันทึกจะอยู่ใน "รูปแบบ" ที่ถูกต้องเพื่อใช้ประโยชน์จากระบบการสังเคราะห์เสียงพูดแบบเรียงต่อกัน

สัญชาตญาณของคุณว่านี่เป็นวิธีแก้ปัญหาที่เป็นไปได้ถูกต้อง - หากคุณมีงบประมาณในการแก้ไขปัญหาทั้งสองนี้

โชคดีที่มีเทคนิคอื่น ๆ ที่สามารถทำงานกับการดูแลน้อยและข้อมูลน้อยลง ด้านการสังเคราะห์เสียงพูดที่สนใจในการ "แกล้ง" หรือ "เลียนแบบ" หนึ่งเสียงจากการบันทึกเป็นที่รู้จักกันเป็นแปลงเสียง คุณมีการบันทึก A1 ของลำโพงเป้าหมาย A บอกว่าประโยคที่ 1 และบันทึก B2 ของลำโพงต้นทาง B บอกว่าประโยคที่ 2 คุณตั้งเป้าที่จะสร้างลำโพงบันทึก A2 ของลำโพง A ประโยคที่ 2 ว่าประโยคที่ 2 อาจสามารถเข้าถึงการบันทึก B1 ของลำโพง B ด้วยเสียงพูดของเขา / เธอเหมือนกับลำโพงเป้าหมาย

โครงร่างของระบบแปลงเสียงเป็นดังนี้:

  1. คุณสมบัติด้านเสียงถูกดึงออกมาจากการบันทึก A1 และถูกรวมเข้าในคลาสอะคูสติก ในขั้นตอนนี้มันเป็นเหมือนการมีกระเป๋าจะเป็น "a" ของลำโพง A, "o" ทั้งหมดของลำโพง A ฯลฯ โปรดทราบว่านี่เป็นการดำเนินการที่ง่ายและหยาบกว่าการรู้จำเสียงพูดจริง - เราไม่สนใจ รู้จักคำที่ถูกต้อง - และเราไม่รู้ด้วยซ้ำว่ากระเป๋าใบใดมี "o" และกระเป๋าใบใดมี "a" - เราเพิ่งรู้ว่าเรามีเสียงเดียวกันหลายครั้งในแต่ละถุง
  2. กระบวนการเดียวกันนี้ใช้กับ B2
  3. คลาสอะคูสติกจาก A1 และ B2 ถูกจัดตำแหน่ง เพื่อดำเนินการต่อกับการเปรียบเทียบถุงนี่เท่ากับการจับคู่กระเป๋าจากขั้นตอนที่ 1 และ 2 เพื่อให้เสียงทั้งหมดที่เรามีในกระเป๋าใบนี้จากลำโพง A ควรตรงกับเสียงที่เรามีในกระเป๋าใบนั้นจากลำโพง B การจับคู่นี้คือ ง่ายกว่ามากถ้าใช้ B1 ในขั้นตอนที่ 2
  4. มีการประมาณฟังก์ชั่นการทำแผนที่สำหรับกระเป๋าแต่ละคู่ เนื่องจากเรารู้ว่ากระเป๋าใบนี้มีเสียงจากลำโพง A และกระเป๋าใบนั้นเป็นเสียงเดียวกัน แต่พูดโดยลำโพง B - เราสามารถหาการดำเนินการได้ (ตัวอย่างเช่นการคูณเมทริกซ์กับเวกเตอร์คุณลักษณะ) ที่ทำให้มันสอดคล้องกัน กล่าวอีกนัยหนึ่งตอนนี้เรารู้วิธีการทำเสียง "o" ของผู้พูด 2 เหมือน "ผู้พูด" 1
  5. ในขั้นตอนนี้เรามีการ์ดทั้งหมดในมือเพื่อทำการแปลงเสียง จากแต่ละส่วนของการบันทึก B2 เราใช้ผลลัพธ์ของขั้นตอนที่ 2 เพื่อหาว่าระดับเสียงของมันตรงกับที่ใด จากนั้นเราจะใช้ฟังก์ชั่นการทำแผนที่ประมาณขั้นตอนที่ 4 เพื่อเปลี่ยนชิ้น

ฉันยืนยันความจริงที่ว่าสิ่งนี้ทำงานในระดับที่ต่ำกว่าการรู้จำเสียงใน B2 และจากนั้นทำ TTS โดยใช้เสียงของ A1 เป็นคลังข้อมูล

มีการใช้เทคนิคทางสถิติที่หลากหลายสำหรับขั้นตอนที่ 1 และ 2 - GMM หรือ VQ ซึ่งเป็นเทคนิคที่พบบ่อยที่สุด อัลกอริทึมการจัดตำแหน่งที่หลากหลายถูกนำมาใช้สำหรับส่วนที่ 2 - นี่คือส่วนที่ยากที่สุดและเห็นได้ชัดว่าง่ายต่อการจัดตำแหน่ง A1 vs B1 มากกว่า A1 กับ B2 ในกรณีที่ง่ายกว่าวิธีการเช่นการแปรปรวนเวลาแบบไดนามิกสามารถใช้ในการจัดตำแหน่ง สำหรับขั้นตอนที่ 4 การแปลงที่พบมากที่สุดคือการแปลงเชิงเส้น (การคูณเมทริกซ์) บนเวกเตอร์คุณลักษณะ การแปลงที่ซับซ้อนมากขึ้นทำให้เกิดการลอกเลียนแบบที่เหมือนจริงมากขึ้น แต่ปัญหาการถดถอยเพื่อค้นหาการทำแผนที่ที่ดีที่สุดนั้นซับซ้อนกว่าที่จะแก้ ในที่สุดสำหรับขั้นตอนที่ 5 คุณภาพของการสังเคราะห์จะถูก จำกัด ด้วยคุณสมบัติที่ใช้ โดยทั่วไปแล้ว LPC จะจัดการกับวิธีการเปลี่ยนรูปแบบที่ง่ายกว่า (รับสัญญาณกรอบ -> ประมาณค่าส่วนที่เหลือและสเปกตรัม LPC -> หากจำเป็นต้องเปลี่ยนระดับเสียงส่วนที่เหลือ -> ใช้คลื่นความถี่ LPC ที่ได้รับการแก้ไขกับส่วนที่เหลือที่ได้รับการแก้ไข) การใช้การเป็นตัวแทนของคำพูดที่สามารถย้อนกลับไปยังโดเมนเวลาและที่ให้การแยกที่ดีระหว่างฉันทลักษณ์และหน่วยเสียงเป็นกุญแจสำคัญที่นี่! ท้ายที่สุดหากคุณสามารถเข้าถึงการบันทึกของผู้พูด A และ B ที่เรียงประโยคเดียวกันได้มีแบบจำลองทางสถิติที่จัดการกับขั้นตอนที่ 1, 2, 3 และ 4 พร้อมกันในขั้นตอนการประมาณค่าแบบเดียว

ฉันอาจกลับมาพร้อมกับบรรณานุกรมในภายหลัง แต่สถานที่ที่ดีมากที่จะเริ่มรู้สึกถึงปัญหาและกรอบการทำงานโดยรวมที่ใช้ในการแก้ปัญหาคือ Stylianou, Moulines และCappé "ระบบการแปลงเสียงตามการจัดประเภทน่าจะเป็นและฮาร์มอนิก บวกกับเสียงโมเดล "

มีความรู้ของฉันไม่มีชิ้นส่วนของซอฟแวร์ที่ดำเนินการแปลงเสียง - ซอฟต์แวร์เฉพาะการแก้ไขคุณสมบัติของเสียงต้นฉบับ - พารามิเตอร์ความยาวระดับเสียงและระดับเสียงพูด (เช่น IRCAM TRAX Transformer) ซึ่งคุณต้องยุ่งกับการหวังว่าจะทำให้คุณ บันทึกเสียงใกล้เคียงกับเสียงเป้าหมาย


คำตอบที่น่ากลัว! ฉันอาจจะไม่สามารถเข้าใจได้โดยไม่ต้องใช้กระเป๋าเปรียบเทียบ ... มีเพียงสิ่งเดียวที่ฉันไม่เข้าใจหลังจากนี้คำอธิบายที่ชัดเจนดังนั้น: เพื่อความเข้าใจของฉันคุณสามารถมี B1! ขอบคุณมาก.
clapas

ไม่ใช่ถ้า A และ B พูดภาษาอื่น (มีแอปพลิเคชั่นแปลงเสียงแปลก ๆ ที่ TTS ในภาษาอื่นเล่นด้วยเสียงของคุณเอง!) หรือถ้า A และ B เป็นทั้งบุคคลที่มีชื่อเสียงซึ่งคุณไม่สามารถหาประโยคทั่วไปที่มีความยาวเพียงพอในการบันทึกที่เปิดเผยต่อสาธารณะทั้งหมดและหากคุณไม่พูดภาษาของพวกเขาคุณจะไม่สามารถใช้การบันทึกเสียงของคุณเป็น "สะพาน" ระหว่างสอง
pichenettes

ฉันเห็น. ขอบคุณอีกครั้ง @ pichenettes ฉันจะลองดูที่หนังสือ Menctioned จาก Stylianou และคณะ ไชโย
clapas

โปรดอัปเดตคำตอบของคุณพร้อมลิงก์ไปยังตัวย่อที่คุณใช้ เช่น LPC, VQ, GMM
aaronsnoswell

ในการตอบสนองต่อความคิดเห็นจาก aaronsnoswell: LCP: การเข้ารหัสเชิงเส้นตรง, VQ: การหาปริมาณเวกเตอร์, GMM: แบบจำลองการผสมแบบเกาส์ ไม่ชัดเจนว่าการขยายตัวย่อของคำศัพท์เหล่านี้ช่วยได้มากเนื่องจากแต่ละแนวคิดเป็นแนวคิดที่ซับซ้อน แต่ (โดยคร่าวๆ) แต่ละแนวคิดเกี่ยวข้องกับการสร้างแบบจำลองหรืออธิบายข้อมูล pst หรือข้อมูลอนาคตจากกลุ่มตัวอย่างที่มีอยู่
GregD

2

คุณสามารถใช้สิ่งที่ต้องการMorphVOX นี่คือการสาธิต กระบวนการนี้เรียกว่าการแปลงเสียงหรือการแปลงเสียง หากคุณมีความสนใจในด้านเทคนิค, บทความล่าสุดที่คุณสามารถศึกษาคือการแปลงเสียงแบบไดนามิกการใช้ Kernel บางส่วนอย่างน้อยสี่เหลี่ยมถดถอย


เสียงพึมพำของ Dark Vader มันเป็นเรื่องตลก ฉันเคยเห็นเอฟเฟกต์ที่คล้ายกันมาก่อน ขอบคุณ
clapas

1

ฉันกำลังมองหาสิ่งเดียวกัน แต่ไม่สามารถทำได้ มี บริษัท ในสกอตแลนด์ที่ชื่อว่า CereProc ซึ่งทำการจำลองเสียง แต่พวกเขาต้องการใครซักคนในห้องอัดเสียงและชั่วโมงในการสร้างเสียงหนึ่งเสียงประมาณ USD 30K


0

สิ่งที่คุณกำลังมองหาเรียกว่านักร้อง

คุณเคยลองใช้คำพูดของ Audcity หรือไม่? Audacity สามารถดาวน์โหลดได้จาก: http://audacity.sourceforge.net/download การสาธิตวิธีการใช้งานก็สามารถพบได้ที่https://www.youtube.com/watch?v=J_rPEmJfwNs


1
Vocoding ประกอบด้วยการใช้ซองสเปกตรัมของการบันทึกเสียงหนึ่งครั้ง (ซึ่งโดยปกติจะเป็นเสียง) เพื่อกรองเสียงอื่น (ซึ่งโดยปกติจะเป็นเสียงซินธิไซเซอร์แบบดิบ ไม่สามารถใช้เพื่อปลอมเสียงของใครบางคน
pichenettes

ใช่ฉันรู้จักความกล้า แต่ฉันไม่ได้ลองส่งเสียงร้อง ฉันคิดว่าคุณสามารถใช้เสียงสีขาวกับซองจดหมายของเสียงที่บันทึกไว้เท่านั้น ขอบคุณ
clapas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.