۴ بهمن ۱۳۹۹
948 بازدید
مقالات تصادفی
- آموزش عکاسی حرفهای از طبیعت و مناظر
- آموزش نصب ویندوز 10 از روی فلش
- تلگرام به قابلیت برقراری تماس تصویری گروهی مجهز میشود
- افکت دابلاکسپوژر در فتوشاپ: کانگورو در آتش
- راکاستار برای حل مشکل لودینگ GTA Online ده هزار دلار جایزه داد
- پتنت (patent) چیست؟ همه چیز درباره پتنت
- با Piktochart اینفوگرافیکهای رایگان بسازید
- آیکون پک اندروید چیست و چگونه میتوانیم از آن استفاده کنیم؟
- تنظیم مرورگرهای مختلف برای دانلود فایلهای PDF
- راهنمای توییتر برای تازهواردها

در این نوشته به چگونگی تبدیل فایلهای صوتی به فایلهای متنی با استفاده از پایتون میپردازیم. این تبدیل حاصل فرایندِ تشخیص گفتار است و به طور متداول در دنیای حقیقی مورد استفاده قرار میگیرد. برای مثال، دستیارهای صوتی شخصی مثل «Home Mini» گوگل، «Alexa» آمازون و «Siri» اپل تنها چند نمونه از ابزارهای محبوب و پرکاربردی هستند که نامشان را شنیدهایم.
تشخیص گفتار باعث صرفهجویی در زمان میشود زیرا دیگر نیازی به تایپ کردن نیست. به کمک این سیستم میتوانیم با سایر وسیلهها ارتباط برقرار کنیم؛ بدون اینکه نیاز به نوشتنِ حتی یک خط کُد باشد. این کار باعث میشود وسایل و ابزارهای فناوری به میزان بیشتری در دسترس قرار گرفته و استفاده از آنها آسان شود. تشخیص گفتار نمونه خوبی از بکارگیری هوش مصنوعی در دنیای حقیقی است.
در نوشته حاضر، یک مدل تشخیص گفتار ساده ایجاد میشود. این مدل میتواند جملات را از فایل صوتی شناسایی کند. در وهله بعدی، این جملات به یک سند متنی وارد میشوند.
فراخوانی کتابخانه
در ابتدا باید ماژول SpeechRecognition را نصب کنیم تا بتوانیم آن را در برنامه فراخوانی کنیم. ماژول SpeechRecognition از APIهای تشخیص مختلفی پشتیبانی میکند و Google Speech API یکی از آنهاست. شما میتوانید در اینجا اطلاعات بیشتری در خصوص این ماژول بدست آورید.
حالا میتوان کتابخانه را وارد کرد:
Python
import speech_recognition as sr
ساخت سیستم تشخیص
در گام نخست، باید نمونه سیستم تشخیص خودمان را مقداردهی کنیم:
Python
r = sr.Recognizer()
وارد کردن فایل صوتی
پسوند فایل در هنگام وارد کردنِ فایل صوتی به برنامه اهمیت دارد. من کد را در فرمتهای دیگر نیز آزمایش کردم، اما نتیجهای که با فرمت «wav» به دست آمد، خیلی بهتر بود. امکان استفاده از وبسایت تبدیلکنندۀ فایل نیز وجود دارد. این وبسایتها قابلیت تبدیل فایلهای صوتی به wav را نیز فراهم میکنند. برای نمونه، اگر از memoهای صوتی مَکبوک برای ضبط صدا استفاده کنید، فایل در قالب m4a ذخیره خواهد شد. اگر این عبارت را در موتور جستجوی گوگل وارد کنید: «تبدیل فایل m4a به فرمت فایل wav به صورت آنلاین»، در نتایج به دست آمده می توانید وب سایتهای تبدیل کننده فرمتهای صوتی زیادی را بیابید.
AudioFile تابعی برای وارد کردن فایل و Sr ماژول تشخیص گفتار است.
Python
audio_file = sr.AudioFile('test.wav')
تشخیص گفتار
ما از روش recognize_google برای تشخیص گفتار استفاده کردیم:
Python
with audio_file as source:
r.adjust_for_ambient_noise(source)
audio = r.record(source)result = r.recognize_google(audio)
وارد کردن نتایج به فایل متنی
در کد زیر، یک فایل متنی ایجاد و باز میکنیم. سپس، نتیجهای که در کد قبلی بدست آمد را وارد میکنیم. وقتی فرایند به پایان برسد، عبارت «ready» را در پایانه خواهید دید:
Python
with open('test.txt',mode ='w') as file:
file.write("Recognized text:")
file.write("n")
file.write(result)
print("ready!")
Python
# importing the module
import speech_recognition as sr# define the recognizer
r = sr.Recognizer()# speech recognition
with audio_file as source:
r.adjust_for_ambient_noise(source)
audio = r.record(source)result = r.recognize_google(audio)# exporting the result
with open('test.txt',mode ='w') as file:
file.write("Recognized text:")
file.write("n")
file.write(result)
print("ready!")
تبریک میگوییم! شما موفق شدید برنامه تشخیص گفتار خودتان را با پایتون بسازید. امیدواریم از این پست آموزشی لذت برده و نکات تازهای را یاد گرفته باشید. بهترین راه برای تمرین مهارتهای کدنویسی این است که پروژههای سرگرمکننده را پیادهسازی کنید.