মানব বক্তৃতা শব্দ ফিল্টার


17

বাক-বক্তব্যকে তীব্র করতে কেউ কি ফিল্টার সম্পর্কে জানেন? আমি স্পিচ রিকগনিশন সফটওয়্যারটি লিখছি এবং মানব বক্তৃতা ব্যতীত সমস্ত কিছুই ফিল্টার করতে চাই। এর মধ্যে পটভূমি গোলমাল, ক্রেপি মাইক্রোফোন দ্বারা উত্পাদিত শব্দ, এমনকি পটভূমি সংগীত অন্তর্ভুক্ত থাকবে। আমি ইতিমধ্যে একটি প্রথম অর্ডার ফিল্টার প্রয়োগ করেছি যা পাওয়ার স্পেকট্রামের 6 ডিবি রোল-অফের জন্য ক্ষতিপূরণ দেয় তবে আমি এখনও শব্দ শুনতে পাচ্ছি (যদিও বক্তৃতাটি অনেক পরিষ্কার মনে হচ্ছে)। আমি একটি লো-পাস ফিল্টার ব্যবহার করার চিন্তা করেছি, তবে আমি দুটি কারণে এটি করা সম্পর্কে সন্তুষ্ট:

  1. আমি জানি না যে লো-পাসের পূর্ব-ফিল্টারটি বাকী বক্তব্য প্রক্রিয়াজাতকরণে হস্তক্ষেপ করবে কিনা। যদিও মানুষের কানটি কেবল 20 কেএজেডের চেয়ে কম শব্দ সনাক্ত করতে পারে, তবুও আমি উচ্চতর অর্ডার সুরেলা বাছাই করতে চাই না যা স্পিচ প্রক্রিয়া করার জন্য প্রয়োজনীয় হতে পারে (যদিও আমি জানি না যে এটি ঘটনাটি কিনা না। তবে আমি জানি না।) আমি কোন চান্স নিতে চাই না)।

  2. আমি বুঝতে পারি যে কয়েকটি ব্যঞ্জনবর্ণের উত্তেজনা (যেমন চ, এইচ এবং এস) প্রায় পুরোপুরি সাদা শব্দ। আমি এমন কোনও শব্দ ফিল্টার বাস্তবায়ন করতে চাই না যা ভাল আওয়াজকে দূর করবে , তাই কথা বলতে।

আদর্শভাবে, আমি কেবল মাইক্রোফোনে কথা বলার ব্যক্তির বক্তব্য রেখেই যেতে চাই। আপনার যদি কোনও ধারণা থাকে বা আমি এখানে কিছু মিস করছি যা অনুগ্রহ করে আমাকে জানান। অনেক প্রশংসিত!


আমি ধরে নিচ্ছি. আমি যদিও এটি উন্মুক্ত রেখে দেব, কেবলমাত্র কারণ আমি এখানে অনুরূপ প্রশ্নগুলি (ফিল্টার এবং শাবল প্রসেসিং) দেখেছি যেগুলির উত্তরের উত্তর দেওয়া হয়েছে।
জেটা সুরো


থাম্বের বিধি: আপনি যদি কোনও প্রদত্ত ডিএসপি অ্যালগরিদম যেমন কোনও নির্দিষ্ট ভাষায় বা একটি নির্দিষ্ট প্ল্যাটফর্মে প্রয়োগ করতে চান তা জানতে চান, তবে এটি এসও-এর পক্ষে বিষয়। যদি কোনও ডিএসপি অ্যালগরিদম / কৌশল সম্পর্কে কোনও নির্দিষ্ট প্রোগ্রামিং এঙ্গেল না থাকে তবে এটি অবশ্যই ডিএসপি.এসই-র অন্তর্গত (যেখানে এটি আরও ভাল মানের উত্তর পেতে ঝোঁক করবে)।
পল আর

Gotcha। আপনি কি এখানে এটি স্থানান্তরিত করেছেন? যদি তাই ধন্যবাদ। আমি কীভাবে এটি স্থানান্তর করতে পারি তা বুঝতে পারি না, তাই আমি এখানে এটি পুনরায় জিজ্ঞাসা করে শেষ করেছি।
জিটা সুরো

আমি নই - আমি এটি পতাকাঙ্কিত করেছি এবং জিজ্ঞাসা করেছি যে কোনও মডারেটর এটি সরিয়ে ফেলতে পারে কিনা তাই আমি অনুমান করি যে টিপিটিবি এর একজন এটি করেছে (যা সে ছিল তার জন্য ধন্যবাদ!)
পল আর

উত্তর:


8

টেলিফোনে ব্যবহৃত একটি স্পিচ যোগাযোগের চ্যানেলের সাধারণত ফ্রিকোয়েন্সি প্রতিক্রিয়া থাকে 300 হার্জ থেকে 3 কেজি হার্জ। যদিও এটি সাধারণ বক্তৃতায় প্রচুর শক্তি প্রত্যাখ্যান করে, বোধগম্যতা এখনও বেশ ভাল - প্রধান সমস্যাটি মনে হয় যে উচ্চতর ফ্রিকোয়েন্সি উপাদানগুলি ছাড়াই কিছু নির্দিষ্ট ধর্ষণকারী ব্যঞ্জন , যেমন "পি" এবং "টি" সামান্য বৈষম্যমূলক হতে পারে ।

সুতরাং আপনি সম্ভবত পুরো 20 হার্জেড - 20 কেএইচজেড ব্যান্ডউইদথ সাধারণত ভোক্তা অডিওতে পাওয়া এবং ভয়েস কমস জন্য ব্যবহৃত সবচেয়ে আক্রমণাত্মক ফিল্টারিং (উপরে দেখুন) এর মধ্যে কোথাও একটি "মিষ্টি স্পট" সন্ধান করছেন। আমি 50 বর্গফুট থেকে 8 কেএইচজেড থেকে ব্যান্ডপাস ফিল্টারটি শুরু করার পরামর্শ দেব। এটি সম্ভবত কয়েকটি ডিবি দ্বারা কেবলমাত্র এসএনআরকে উন্নত করবে, তবে এটি সাহায্য করতে পারে, বিশেষত যদি আপনার উচ্চ উচ্চ ফ্রিকোয়েন্সি ব্যাকগ্রাউন্ডের শব্দ থাকে।


ধন্যবাদ! আমার এক বন্ধু আসলে ভয়েস চ্যানেলের পরামর্শ দিয়েছিল, তবে আমার সন্দেহ হয়েছিল যে এটি কিছু ব্যঞ্জনবর্ণের শক্তি খুব বেশি পরিমাণে কমিয়ে দেবে। আমি 50 Hz থেকে 8 kHz চেষ্টা করে দেখব কীভাবে এটি কাজ করে!
জিটা সুরো

2
কেবলমাত্র এই উত্তরটি নির্বাচন করা কারণ এটি "দ্রুত" সমাধান যা আমি সন্ধান করছিলাম। বাকী উত্তরের জন্য আরও অনেক গবেষণা প্রয়োজন যা আমি অবশ্যই লক্ষ্য করব, কারণ তারা দীর্ঘমেয়াদে সহায়ক হবে, তবে এটি একটি সাধারণ ফিল্টার সমাধান যা আমি মূলত সন্ধান করছিলাম।
জেটা সুরো

5

স্পিচের ব্যান্ডউইথের সাথে মেলে পাস ব্যান্ড ফিল্টার ব্যবহার করা সাহায্য করবে।

আপনার যদি বেশ কয়েকটি মাইক্রোফোন থাকে (যেমন সেলফোনগুলির ক্ষেত্রে এখন রয়েছে), আইসিএ-এর মতো পদ্ধতি রয়েছে যা এর সুবিধা নিতে পারে - তবে আপনার প্রশ্ন আমাকে ইঙ্গিত দেয় যে আপনার কেবল একটি ইনপুট রয়েছে।

আপনি যা করতে চান তা হ'ল "ওয়ান-মাইক্রোফোন উত্স পৃথকীকরণ" (রোয়েসের গ্রাউন্ডব্রেকিং পেপার থেকে নেওয়া নাম), যাকে "একক সেন্সর" বলা হয়। সতর্কতা: এটি একটি সমাধান হওয়া সমস্যা হওয়া থেকে অনেক দূরে, এবং এই ক্ষেত্রে সমস্ত গবেষণা খুব সাম্প্রতিক, কোনও অ্যালগরিদম বা পদ্ধতির "স্পষ্ট বিজয়ী" হিসাবে নেই (গাউসিয়ান মিশ্রণের মডেলগুলির বিপরীতে + এফএসটি বক্তৃতা স্বীকৃতির জন্য হয়েছে)।

এটি করার জন্য একটি ভাল কাঠামো হ'ল উইনার ফিল্টারিংয়ের মাধ্যমে। বেনারোয়া এবং অন্যান্য দেখুন। "উইনার ফিল্টারিং এবং একাধিক উইন্ডো এসটিএফটির উপর ভিত্তি করে একক সেন্সর উত্স বিচ্ছেদ" (বিভাগ 1 এবং 2 পড়ুন, মাল্টি-রোলিউশন জিনিসটি নিয়ে বিরক্ত করবেন না যদি না আপনার সত্যিকার প্রয়োজন হয়)। সংক্ষেপে, আপনি আপনার সিগন্যালের এসটিএফটি গণনা করুন এবং প্রতিটি এসটিএফটি ফ্রেমের জন্য আপনি ভয়েস স্পেকট্রাম এবং শব্দের বর্ণালী সম্পর্কে অনুমান করার চেষ্টা করেন এবং সেই থেকে ভয়েস বর্ণালীটির সর্বোত্তম অনুমানটি পুনরুদ্ধার করতে আপনি উইনার ফিল্টারিং ব্যবহার করেন (এটি বর্ণালী "সফট-মাস্কিং" এর অনুরূপ)।

আপনার সমস্যা এখন নীচে: একটি এসটিএফটি ফ্রেম দেওয়া হয়েছে, এটি থেকে বক্তৃতা এবং গোলমালের উপাদানটি অনুমান করুন। বেনারোয়া দ্বারা কাগজে বর্ণিত সহজ পদ্ধতির বিষয়টি ভেক্টর-কোয়ান্টাইজেশনের মাধ্যমে হয় - অনেক স্পিকারের দ্বারা কয়েক ঘন্টা বক্তৃতা নিন, এসটিএফটি গণনা করুন, 512 বা 1024 টিপিক্যাল স্পিচ ফ্রেমের কোডবুক পেতে এটিতে এলবিজি চালান; গোলমাল জন্য একই জিনিস। এখন, আপনার ইনপুট সিগন্যালের একটি ফ্রেম দেওয়া, এটিকে বক্তৃতা এবং শব্দের ঘাঁটিতে অ-নেতিবাচকভাবে (একটি গুণিতীয় গ্রেডিয়েন্ট আপডেট পদ্ধতিটি কাগজে বর্ণিত হয়েছে) প্রজেক্ট করুন এবং আপনি আপনার বক্তৃতা এবং গোলমাল অনুমানটি পাবেন। যদি আপনি অ-নেতিবাচক প্রক্ষেপণ জিনিসটি মোকাবেলা করতে না চান তবে কেবল নিকটবর্তী প্রতিবেশী ব্যবহার করুন। এটি সম্ভবত সবচেয়ে সহজ জিনিস যা সম্ভবত "একক সেন্সর উত্স বিভাজন" বিভাগে কাজ করতে পারে।

মনে রাখবেন যে একটি স্পিচ সনাক্তকরণ সিস্টেমটি পৃথকীকরণ ব্যবস্থার জন্য কিছু ইনপুট সরবরাহ করতে পারে। আপনার স্পিচ সনাক্তকরণ সিস্টেমটি ব্যবহার করে ডিকোডিংয়ের প্রথম পাস করুন। প্রতিটি ফ্রেমের জন্য, গড় স্কোরটি পাওয়া গাউসি থেকে গড় এমএফসিসি ভেক্টরটি নিন। পিছনে একটি বর্ণালী পরিবর্তন করুন। বুম, আপনার কাছে একটি মুখোশ রয়েছে যা আপনাকে স্পিচ-জাতীয় বিটগুলির সর্বাধিক সম্ভাব্য বর্ণালী অবস্থান দেয় এবং আপনি এটি ভিয়েনার ফিল্টারিংয়ের জন্য একটি ইনপুট হিসাবে ব্যবহার করতে পারেন। এটি হাত-তরঙ্গের মতো কিছুটা শোনার মতো, তবে গিস্টটি হ'ল কোনও উত্সকে আলাদা করতে আপনার জন্য এটির জন্য একটি ভাল মডেল প্রয়োজন, এবং পিছনের দিকে নেওয়া একটি বক্তৃতা স্বীকৃতি ব্যবস্থা স্পিচ সিগন্যালের জন্য একটি ভাল জেনারেটরি মডেলের নরক।


1

আপনার সম্ভবত ইন্ডিপেন্ডেন্ট কম্পোনেন্ট অ্যানালাইসিস (আইসিএ) করার দিকে নজর দেওয়া উচিত কারণ আপনার সমস্যাটি "ককটেল পার্টি" সমস্যার সাথে অনেকটা মিলে যায় যা প্রায়শই আইসিএ বর্ণনা করতে ব্যবহৃত হয়। সংক্ষেপে আইসিএ আপনার সংকেতগুলির উপাদানগুলি একে অপরের থেকে স্বতন্ত্র। এটি অনুমান করে যে পরিবেশের অন্যান্য শব্দ (ডিশওয়াশার, সাদা শব্দ, ফ্যান হুইসার) ভয়েসের সংকেত উত্স থেকে স্বতন্ত্র হবে এবং পৃথক হতে পারে।

আইসিএ পিসিএ (নীতি উপাদান উপাদান বিশ্লেষণ) এর অনুরূপ তবে নীতি অক্ষের পরিবর্তনে সর্বাধিক পরিবর্তনের পরিবর্তে এটি স্বাধীনতা সর্বাধিক করে তোলে। আইসিএর অনেকগুলি বাস্তবায়ন রয়েছে যা আপনি যে কোনও কোডিং পরিবেশ ব্যবহার করছেন তা প্লাগ করতে হবে।


4
আইসিএ যতগুলি ইনপুট সংকেত পৃথক করার জন্য উত্স আছে প্রয়োজন। বক্তৃতাকে নিন্দিত করে, আমরা কেবল একটি সিগন্যাল রেখেছি এবং আইসিএ তেমন কোনও সহায়তা দেয় না।
পিকনেটস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.