معمولا براي پردازش سيگنالهاي صوتي از نمودار spectrum يا همان تبديل فوريه ي آنها استفاده مي شود. با استفاده از نرم افزار matlab مي توانيد براحتي نمودار spectrum سيگنال صوتي خود را رسم كنيد. براي اين كار از دستور plot(fft(data)) استفاده كنيد. نموداري مشابه شكل زير خواهيد ديد:

4y9spvp.jpg

معمولا هنگام رسم spectrum اندازه و فاز آن را جداگانه رسم مي كنند. براي آنكه بتوانيم تحليل درستي بر روي نمودار در حوزه ي فركانس داشته باشيم اندازه ي spectrum را رسم مي كنيم. براي اين كار از تابع قدرمطلق در matlab يعني abs استفاده مي كنيم. دستور plot(abs(fft(data))) را در matlab وارد كنيد. نمودار زير بدست مي آيد:

5y8sqkl.jpg

همانطور كه مشاهده مي كنيد اين نمودار متقارن بوده و چندين پيك مشخص دارد. قسمت سمت چپ نمودار را بزرگ كرده و به محل پيك ها دقت كنيد. اولين پيك formant اول ناميده مي شود و به ترتيب پيك هاي بعدي formant هاي دوم و سوم و ... مي باشند.

ما با مقايسه ي formant هاي spectrum صداي توليد شده، مصوت را مشخص مي كنيم. مثلا سه formant اول را معيار قرار داده و با محاسبه ي محل آنها با استفاده از matlab و مقايسه با جدول مربوطه نوع مصوت را مشخص مي كنيم.

بنابراين ابتدا بايد بتوانيم در يك سيگنال مصوت ها را از هم جدا كنيم. مثلا سيگنالي كه شكل آن را در بالا ملاحظه كرديد مربوط به مصوت /A/ بود كه توسط پنج نفر به صورت جداگانه ادا شده بود. ابتدا بايد مصوت مربوط به هر نفر را جدا كنيم. براي اين كار با استفاده از m-file در matlab برنامه اي مي نويسيم كه با بررسي انرژي سيگنال قسمت هايي كه مربوط به تلفظ مصوت مي باشند را جدا كند. در يادداشت هاي بعدي در مورد اين برنامه بيشتر توضيح خواهم داد.

البته به خاطر نزديك شدن امتحانات احتمالا يادداشت بعدي با تاخير زيادي ارسال خواهد شد.از دوستي كه مطالب مربوط به switching رو براي من ارسال كردند تشكر مي كنم، اگر كسي مايل هست در اين زمينه پست بدم لطفا در قسمت نظرات بنويسه.

ممنون از نظراتتون...

/ 3 نظر / 5 بازدید
منوچهری

ممنون از اطلاعات خوبتون.من روی صوت کار میکنم وسه پروژه کارشناسی ارشدم به اطلاعات بیشتری د ر مورد پردازش سیگنال با مطلب نیاز دارم.میتونید بهم اطلاع رسانی کنید.

هلاکو

با سلام و تشکر از مطالب مفیدتون. من چند تا سوال داشتم: وقتی یک فایل صوتی رو توی مطلب پلات می کنیم نمودار افقی و عمودی نشان دهنده چه چیزی هستند و وقتی ازش fft می گیریم چی و در نهایت وقتی از abs(fft(voice)) استفاده می کنیم، چطور؟ ممنون می شم اگر زودتر جواب بدین.

nasrin

به درم خورد. خدا خیرتون بده