خریدی لذت بخش تر با کد تخفیف بیست درصدی: khanecode20
سبد خرید
0

No products in the cart.

Return To Shop
  • تمام دسته ها
  • وبلاگ

ساخت برنامه تشخیص گفتار با پایتون

ساخت برنامه تشخیص گفتار با پایتون

ساخت برنامه تشخیص گفتار با پایتون

در این آموزش جذاب ساخت برنامه تشخیص گفتار با پایتون، نحوه تبدیل فایل‌های صوتی به فایل متنی به کمک پایتون را یاد می‌گیریم. فرایندِ تشخیص گفتار را که امروزه در دنیای حقیقی مورد استفاده قرار می‌گیرد. به طور مثال، دستیارهای صوتی شخصی مثل «Home Mini» گوگل، «Alexa» آمازون و «Siri» اپل تنها تعدادی از ابزارهای محبوب و پرکاربرد این حوزه هستند که بسیار شناخته شده هستند.

تبدیل متن به صدا در پایتـون

تشخیص گفتار صرفه‌جویی در زمان را در پی دارد چراکه نیاز به تایپ کردن را از بین می‌برد. با این سیستم می‌توانیم با سایر وسیله‌ها ارتباط برقرار کنیم. این کار باعث می‌شود استفاده از ابزارها و فناوری‌ها بسیار سریع‌تر و آسان‌تر باشد. در واقع تشخیص گفتار نمونه خوبی از هوش مصنوعی در دنیای حقیقی است.

در این نوشته، یک مدل تشخیص گفتار به کمک پایتون را پیاده سازی می‌کنیم. این مدل می‌تواند جمله‌ها را از فایل صوتی شناسایی کند. در گام بعدی، این جملات به یک سند متنی وارد می‌شوند.

فراخوانی کتابخــانه

در ابتدا باید ماژول SpeechRecognition را نصب کنیم تا بتوانیم آن را در برنامه فراخوانی کنیم. ماژول SpeechRecognition از APIهای تشخیص مختلفی پشتیبانی می‌کند و Google Speech API یکی از آن‌هاست. شما می‌توانید در اینجا(کلیک کنید) اطلاعات بیشتری در خصوص این ماژول بدست آورید.

حال کتاب‌خانه را به کمک قطعه کد زیر Import می کنیم:

				
					import speech_recognition as sr
				
			

ساخت سیستـم تشخیـص

در گام نخست، باید نمونه سیستم تشخیص خودمان را مقداردهی کنیم:

				
					r = sr.Recognizer()
				
			

وارد کردن فایل صوتـی

پسوند فایل در هنگام وارد کردنِ فایل صوتی به برنامه اهمیت دارد. من کد را در فرمت‌های دیگر نیز آزمایش کردم، اما نتیجه‌ای که با فرمت «wav» به دست آمد، خیلی بهتر بود. امکان استفاده از وب‌سایت تبدیل‌کنندۀ فایل نیز وجود دارد. این وب‌سایت‌ها قابلیت تبدیل فایل‌های صوتی به wav را نیز فراهم می‌کنند. برای نمونه، اگر از memoهای صوتی مَک‌بوک برای ضبط صدا استفاده ‌کنید، فایل در قالب m4a ذخیره خواهد شد. اگر این عبارت را در موتور جستجوی گوگل وارد کنید: «تبدیل فایل m4a به فرمت فایل wav به صورت آنلاین»، در نتایج به دست آمده می توانید وب سایتهای تبدیل کننده فرمت‌های صوتی زیادی را بیابید.

AudioFile تابعی برای وارد کردن فایل و Sr ماژول تشخیص گفتار است.

				
					audio_file = sr.AudioFile('test.wav')
				
			

تشخیص گفتار

از روش recognize_google برای تشخیص گفتار استفاده می‌کنیم:

				
					with audio_file as source:
    r.adjust_for_ambient_noise(source)
    audio = r.record(source)result = r.recognize_google(audio)
# By KhaneCode
				
			

وارد کردن نتایج به فایل متنی

در کد زیر، یک فایل متنی ایجاد و باز می‌کنیم. سپس، نتیجه‌ای که در کد قبلی بدست آمد را وارد می‌کنیم. وقتی فرایند به پایان برسد، عبارت «ready» را در پایانه خواهید دید:

				
					with open('test.txt',mode ='w') as file:
    file.write("Recognized text:")
    file.write("\n")
    file.write(result)
print("ready!")
				
			

کل کدهای پروژه به صورت یکجــا و کامل:

				
					# 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!")
				
			

تبریک می‌گویم! شما موفق به ساخت برنامه تشخیص گفتار با پایتون شده‌اید. امیدواریم از این پست آموزشی لذت برده و نکات تازه‌ای را یاد گرفته باشید. بهترین راه برای تمرین مهارت‌های کدنویسی این است که پروژه‌های سرگرم‌کننده را پیاده‌سازی کنید. در سایت خانه کد، پروژه‌های متنوعی برای بهبود برنامه نویسی شما کاربران عزیز با ❤️ فراهم کرده‌ایم. برای دسترسی به مجموعه کدهای تمرینی جذاب پایتون در سطوح مختلف از اینجا(کلیک کنید) وارد شوید.

اگر شما تابه‌حال با استفاده از پایتون فایل صوتی‌ای را به متن تبدیل کردید برای ما از مشکلاتی که بر سر راهتان وجود داشته بنویسید.

انجام پروژه‌های پایتونی و مجموعه‌داده‌های آماده با خانه‌کد

برای انجام پروژه‌های پایتونی خود با خانه‌کد در تماس باشید؛ هدف ما انجام پروژه‌های شما در زمانی کوتاه و البته با دقت و بازدهی ایده‌آل است. همینطور در خانه کد مجموعه‌داده‌های مختلف در حوزه‌های پژوهشی مختلف موجود هستند. برای دریافت مجموعه‌داده مورد نظر خود، از طریق فرم زیر با ما در تماس باشید تا براساس نیاز شما مجموعه داده لازم را تهیه کنیم. 

در کنار هم تا رسیدن به بهترین‌ها

9

محمدرضا باغبانی‌ام. دانش‌آموخته رشته کامپیوتر؛ عاشق یادگیری و یاد دادن... مطلبی که مطالعه کردید و مطالب دیگر داخل سایت را با ❤️ نوشته‌ام و امید دارم به افزودن دانش شما و ترقی جامعه کمک کنم...

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان