AIcode مرجع تخصصی هوش مصنوعی

<aicode>

 

 

 

 

 

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

در این تمرین قصد داریم تا با کارهای مقدماتی بر روی فایل‌های صوتی و نمایش آن به همراه طراحی یک واسط کاربری ساده، مهارت های اوليه را در این درس کسب نمایيم. در این تمرین هر دانشجو باید یک واسط کاربری، مشابه آنچه در زیر نمایش داده شده را در MATLAB R2013b به بالا طراحی کند. در ادامه توضيحاتی مربوط به این واسط کاربری داده شده است. در هر مورد میتوانيد با مراجعه به Help در MATLAB از جزئيات دستورات استفاده کنيد.(در ادامه متن صورت مسئله و موارد خواسته شده آمده است)

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

text to speech HW1
امکانات زیر از این واسط کاربری مد نظر است:
1- بتوان با زدن دکمه Load هر فایل Wave را باز کرده و سيگنال و اسپکتروگرام آن نمایش داده شود.
   a. برای انتخاب فایل میتوانيد از دستور uigetfile استفاده کنيد.
   b. برای نمایش سيگنال میتوانيد از دستور plot استفاده کنيد.
      i. دقت شود که محور افقی بر اساس ثانيه نمایش داده شود (و نه شماره نمونه سيگنال).
   c. برای نمایش اسپکتروگرام از دستور spectrogram استفاده کنيد.
      i. اندازه پنجره اسپکتروگرام باید از قسمت مربوط به واسط کاربری انتخاب شود. قابل توجه است که این پارامتر در واقع ویژگی narrowband و wideband را تنظيم می‌کند و در پارامتر window از دستور spectrogram‌، قابل تعيين است.
      ii. در نمایش اسپکتروگرام دقت کنيد که باید محور افقی زمان و محور عمودی فرکانس باشد. (به مثالهای Help در MATLAB برای این دستور مراجعه کنيد)
   d. باید بعد از نمایش سيگنال در واسط کاربری، فرکانس نمونهبرداری و دقت نمونهبرداری و طول فایل صوتی به ثانيه، نمایش داده شود (مطابق تصویر).
2- با زدن دکمه Plot ، اسپکتروگرام مجددا با مقدار پنجره جدید رسم خواهد شد.
3- باید با زدن دکمه Play و Pause ، فایل پخش و یا متوقف شود.
   a. برای پخش فایل صوتی میتوانيد از دستور audioplayer به همراه دستور play استفاده کنيد.
   b. برای توقف پخش میتوانيد از دستور pause استفاده کنيد.
   c. برای ادامه پخش میتوانيد از دستور resume استفاده کنيد.
4- با زدن دکمه Record ، واسط کاربری باید شروع به ضبط صدا از ميکروفون کرده و با زدن دکمه Pause، ضبط متوقف شده و همانند قسمت قبل سيگنال را نمایش و اسپکتروگرام آن را نيز رسم نماید.
   a. برای ضبط می توانيد از دستور audiorecorder به همراه دستور record استفاده کنيد.
   b. برای گرفتن سيگنال ضبط شده می توانيد از دستور getaudiodata استفاده کنيد.
   c. برای آنکه بتوانيد از دکمه pause برای توقف پخش صدا و هم توقف ضبط صدا استفاده کنيد، می‌توانيد از پارامتر موجود Type در شئ ساخته شده برای ضبط یا پخش صدا استفاده کنيد.
      i. مقدار این پارامتر برابر 'audiorecorder' و یا 'audioplayer' است.
5- با زدن دکمه Zoom ، باید نمایش سيگنال و اسپکتروگرام، به طول مشخص شده در واسط کاربری تنظيم شود. یعنی اگر مقدار 2 و 4 در واسط کاربری نشان داده شده است، باید سيگنال از ثانيه 2 تا 4 در واسط کاربری نمایش داده شود.
6- با زدن دکمه Up و Down باید ولوم فایل صوتی کم و زیاد شود. به عنوان مثال با هر بار زدن دکمه، ولوم 1.5 برابر و یا نصف شود. برای این کار تنها کافی است سيگنال را در عدد مربوطه ضرب کنيد.
7- با زدن دکمه Save باید فایل صوتی که ضبط شده یا ولوم آن تغيير کرده و روی آن Zoom شده است، در حافظه ذخيره شود.
   a. برای این کار می توانيد از دستور wavwrite استفاده کنيد.

در انتها به سوالات زیر نيز پاسخ دهيد (برای پاسخ دادن به سوالات علاوه بر توضيح آن، تصاویر مربوط به آن را هم با نرمافزار WaveSurfer1 و هم با کمک واسط کاربری که طراحی کرده اید، در گزارش خود بياورید و مقایسه نمایيد).
 i. کلمه "خيس" را به کمک واسط کاربری و نرم افزار WaveSurfer ضبط نمایيد.
   a. با زوم بر روی واج "ی" ، متناوب بودن سيگنال در آن را نشان دهيد و همچنين فرکانس گام خود را به طور تقریبی از روی آن بدست آورید.
   b. با نمایش سيگنال واج "ی" و واج "س" ، چه تفاوتی بين این دو سيگنال وجود دارد؟
ii . کلمه "انسانيت" را یک بار به صورت خبری و یک بار به صورت سوالی در واسط کاربری و نرم افزار WaveSurfer ضبط نمایيد. چه تفاوتی در شکل اسپکتروگرام آن مشاهده می کنيد؟
iii . جمله " ارزش هر کس به اندازه همت اوست " را در واسط کاربری و نرم افزار WaveSurfer ضبط نموده و
مقادیر فرمنت را از روی اسپکتروگرام به صورت دستی بر روی آن نشان دهيد.

محتویات فایل قابل خرید: سورس کد متلب، فایل گزارش ورد، مجموعه داده  (قابل تغییر)
زبان برنامه نویسی: متلب

تمرین درس تبدیل متن به گفتار: طراحی رابط کاربری گرافيکی برای ضبط، پخش و نمایش سيگنال های صوتی و کار با نرم افزار WaveSurfer
200,000ریال

تبلیغات AIcodeMahak

AIcode مرجع تخصصی آموزش مهندسی کامپیوتر و هوش مصنوعی

تماس با ما

ايميل: info@aicode.ir

عضویت در خبرنامه AIcode