PDA

View Full Version : درخواست کمک در مورد Speech Recognition



majid2004
جمعه 23 آذر 1386, 15:40 عصر
سلام به همه دوستان
من می خواستم یه برنامه با دلفی بنویسم که با دریافت صوت شخص از میکروفون یه سری کارا رو به دستور اون انجام بده . چیزی که فعلا می خوام باهاش شروع کنم یه ماشین حسابه که می خوام شخص به جای زدن کلیدها عدد رو بگه و عملیات مورد نظرش رو هم بگه و خود نرم افزار با تشخیص صوت (Speech Recgnition) اون کارو واسش انجام بده .
روش خیلی کار کردم و حالا می تونم کاری کنم که نتیجه رو از speaker بخونه . یعنی این قسمتش حل شد.اما در مورد speech recognition توی اینترنت و توی همین فروم زیاد سرچ کردم و SAPI Engine کامل و Dtalk که یه کامپوننت کامل و خوب توی این زمینه هستش رو هم دانلود کردم اما نمی دونم اصلا اساس کار چیه . فکر کنم باید یه دیکشنری از کلماتی که می خواهیم تشخیص بده رو توی فایل XML ذخیره کنیم و ...
از هر کدوم از دوستان که می تونه توی این زمینه منو راهنمایی کنه و یه تیکه سورس بهم بده که اینکاره ماشین حسابه رو (حتی یه کلیدشو) انجام بده خواهش می کنم که راهنماییم کنند .
مرسی
منتظرم

Touska
شنبه 24 آذر 1386, 08:27 صبح
من تو این زمینه برای طراحی این سیستم از پایه اطلاعات خاصی ندارم.

ولی می دونم که یک Speech recognition فارسی داریم که خیلی کامله که توسط شرکت

هوش مصنوعی رایورز تهیه شده است.

موفق باشید :)

Valadi
شنبه 24 آذر 1386, 08:46 صبح
این هم آدرس اینترنتی شرکت هوش مصنوعی رایورز
http://www.airayvarz.com
این هم اطلاعات بیشتر در باره موضوع تاپیک
http://www.airayvarz.com/fa/tts-enlarge.aspx

B-Vedadian
شنبه 24 آذر 1386, 11:38 صبح
احتمالا با توجه به اینکه مقوله بسته به کاربرد الگوریتمهای متفاوتی داره یک کامپوننت براش پیدا نشه.
این کار رو میتونید مشابه روشی که موبایلها برای بازشناسی دستور یا نام فرد انجام میدن انجام بدید. اول باید یک بانک اطلاعاتی از دستوراتی که میخواید شناخته بشه تهیه کنید و بعدش با استفاده از (DTW(Dynamic Time Wrapping کارتون رو انجام بدین. البته ناگفته نماند در این روش برای هر فرد باید بانک اطلاعاتی جدا داشته باشید و به عبارت بهتر برای مثل موبایل دستورات رو یکبار از کاربر بخونید.

اگه همین عبارت رو توی Web جستجو کنید الگوریتمهای آماده هم پیدا می کنید.

best_ariya
شنبه 24 آذر 1386, 21:13 عصر
این کار بسیار ساده است با استفاده از Speech recognition که توسط ماکروسافت ارائه شده به راحتی می توانی این کار رو انجام بدی و با یه دستور شرطی ساده می توانی عمل مقایسه رو انجام بدی.
نکته : برای زبان فارسی نمی توانی از این استفاده کنی.حتی شرکت هوش مصنوعی رایورز هم که dll یه کشور عربی رو تو ایران داره می فروشه نیز نتوانسته از 30% تا 40% بیشتر صدا رو تشخیص بده.
برای اینکه بتوانی زبان فارسی رو نیز تو برنامه خودت داشته باشی به دنبال برنامه نباش بلکه خودت به صورت دستی از اول شروع به نوشتن کن.تو ایران چند شرکت توانستن این کار رو انجام بدن.

majid2004
چهارشنبه 28 آذر 1386, 18:55 عصر
با تشکر از همه دوستان اما مثل اینکه من منظورمو خوب نگفتم .
من نیازی به Speech Recognition فارسی ندارم . من با انگلیسیشم کارم راه میفته .
ضمنا لینکی که دوستمون زحمتشو کشیدند ربطی به نیاز من نداره . اگر دقت کرده باشید من به Speech Recognition نیاز دارم (مثلا مثل اون چیزی که برای بار اول در Word2003‌ گذاشته شده و می تونیم باز کردن منوها و خیلی دیگه از کارا رو با دستور دادن از طریق microphone انجام بدیم) Speech Recognition از SpeechAPI خود ویندوز XP استفاده می کنه و نیازی به ظبط صدا و بعد مقایسه کردن و ... نداره و مستقیما میشه از Speech Engine خروجی گرفت که در حقیقت Speech to text هستش و من بعد از گرفتن این text کارای مقایسه و ... رو انجام میدم . در حقیقت من دنبال همین قسمتم که چطور می تونم خروجی Speech engine ویندوزو بگیرم که بعد کارمو باهاش انجام بدم . بازم می گم که من فارسی نمی خوام . فکر نکنم چند خط دستور بیشتر باشه . من همون چند خط رو می خوام . قبلا عین این کار رو با KDTELE از طریق خط تلفن انجام دادم . اما حالا می خوام با microphone خود کامپیوتر انجامش بدم .

B-Vedadian
چهارشنبه 05 دی 1386, 11:16 صبح
برای کار با Command And Control SAPI یک مجموعه کد و آموزش خوب از Brian Long هست که آدرس اصلی فایلهای مربوطه (مثال کامل و اسلاید آموزش)
http://www.blong.com/UserGroupTalks/BUG20020820.zip
هستش.

omid_delphi2
چهارشنبه 12 دی 1386, 09:48 صبح
آقای ودادیان باسلام
آیا میتوانید در این زمینه بیشتر توضیح دهید با تشکر