هل من الممكن استخدام محرك التعرف على الكلام في Windows في لعبة نطق الكلمات؟

StackOverflow https://stackoverflow.com/questions/2854087

سؤال

أستخدمه لإنشاء تطبيق يستخدم محرك التعرف على Windows Windows أو SAPI. انها مثل لعبة ل النطق أنه يعطيك النتيجة عند نطقها بشكل صحيح. ولكن عندما بدأت التجارب مع SAPI ، يكون لها اعتراف ضعيف إلا إذا قمت بتحميل قواعد اللغة عليها (XML) تقدم أفضل نتيجة التعرف.

لكن المشكلة الآن هي أقرب نطق من نص الإدخال سيتم التعرف عليها. فمثلا:

قاعدة البيانات -> dedebase -> صحيح.

حتى لو كنت أخطأ في عدم إساءة إلى ذلك. يمنحك إجابات صحيحة.

دون استخدام قواعد XML

عندما تقول قاعدة البيانات ، فإنها تمنحك "في القاعدة/قاعدة/قاعدة البيانات/إلخ ..."

يرجى نشر إجابتك ، والاقتراح ، والتوضيح. أصوات لأفضل إجابة.

is it possible or not?

بالمناسبة أستخدم برنامج التحويل البرمجي Delphi في المشاريع ....

هل كانت مفيدة؟

المحلول

لما تريد ، من الأفضل عدم استخدام قواعد اللغة. ولكن يتطلب الأمر أن يقوم المستخدمون بالتدريب الأساسي "الحد الأدنى" لمحرك التعرف على الكلام. انها ليست طويلة جدا وممتعة نسبيا. وهو حقًا يحدث فرقًا في دقة الاعتراف (صدقوني ، لدي لهجة فرنسية قوية في لغتي الإنجليزية).
يمكن أن يتم تضمينه حتى كممارسة أولية للعبة نفسها.
قد تجد مثيرة للاهتمام لرؤية هذا CODERAGE 4 جلسة على "الكلام تمكين تطبيقات دلفي (ZIP)"

نصائح أخرى

سأفعل شيئين:

  1. قم بتحويل النص الأصلي إلى الأصوات باستخدام ispenginepronficiation :: getPronications.
  2. استخدم قواعد الإملاء ونموذج لغة النطق لإجبار SAPI على إعادتك مجموعة من الصوتيات - قم بذلك عن طريق الاتصال isprecogrammar :: loaddictation(ل "النطق" ، splo_static).
  3. قارن الصوتيات المعترف بها مع الصوتيات المستهدفة.

لاحظ أن ispenginepronfication غير متوفر على SAPI 5.1 ، لذلك يقتصر هذا على Vista و Windows 7.

إذا كانت نقطة اللعبة هي تشجيع المستخدم على التحدث باستخدام النطق الأقرب إلى "النطق القياسي" للغة المعينة (على سبيل المثال) ، فإن وجود المستخدم يقوم بتدريب المعرف على التكيف مع المستخدم الخاص (غير المعدل) قد تكون أنماط الكلام نتائج عكسية. سوف تقوم جزئيًا بتدريب المعرف على أن يكون أكثر تسامحًا مع لفات النطق الخاصة بالمستخدم.

سواء كنت ينتهي بك الأمر باستخدام الاعتراف القائم على القواعد أو الاعتراف القائم على الإملاء (يبدو منشور إريك براون واعداً للغاية) ، فمن المحتمل أن ترغب أيضًا في النظر في درجات "الثقة". تتوفر هذه الدرجات بعد تنفيذ الاعتراف ، وهي تعطي قيمة رقمية لمدى ثقة المعرف في أن ما قاله المستخدم يطابق بالفعل ما يعتقده المعرف أن المستخدم قال. اعتمادًا على حالة التعرف على حالة الاستخدام واستخدامها ، قد تكون أو لا تكون درجات الثقة ذات معنى.

إذا كنت تستند إلى درجة الدقة الخاصة بك من التمثيل النصي للهواتف/الصوتيات/النطق ، فإن طريقة سريعة وسهلة للحصول على درجة دقة هي استخدام مسافة Levenshtein ، وهي خوارزمية تتوفر لها العديد من التطبيقات بحرية على الشبكة . قد تكون خوارزمية التسجيل الأفضل عبارة عن اختلاف متزامن ، حيث تكون الوحدة الذرية للمقارنة هو الهواتف المفردة.

فيما يلي بعض الكلمات الرئيسية لصيد MSDN Doc:
iSprecoreTult -> getPhrase -> spphrase -> القاعدة -> spphraserule -> srengineconfidence.

http://msdn.microsoft.com/en-us/library/ee413319٪28v=vs.85٪29.aspx
http://msdn.microsoft.com/en-us/library/ms720460٪28v=vs.85٪29.aspx

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top