রিয়েল-টাইম হিউম্যান পিচ সনাক্তকরণ


11

আমি এমন একটি গাওয়ার গেমটি বাস্তবায়নের চেষ্টা করছি যা কাঁচা মাইক ইনপুট বিশ্লেষণ করবে এবং খেলোয়াড়কে বলবে যে সে কতটা ভাল গাইছে। রিয়েল-টাইমে এটি করা দরকার।

আমি একই প্রশ্ন জিজ্ঞাসা করে অনেকগুলি থ্রেড জুড়ে এসেছি তবে আমি এখনও এটি নিয়ে পুরোটা করি না, সম্ভবত ক্ষেত্রের অভিজ্ঞতা এবং অগভীর গণিতের পটভূমির আমার অভাবের কারণে। আমি ডিএসপিডিমেন্স ওয়েবসাইট পিচ শিফ্টের নিবন্ধের উপর ভিত্তি করে একটি অ্যালগরিদম প্রয়োগ করেছি: http://www.dspdimesion.com/admin/pitch-shift-using-t/-f/

নিবন্ধটি যেমন ব্যাখ্যা করে ঠিক তেমনই আমি সত্যিকারের ফ্রিকোয়েন্সি এবং প্রবণতাও বের করি, তবে আমি এটির সাথে মৌলিক ফ্রিকোয়েন্সি খুঁজে পাই না। আমি সর্বকেন্দ্রিকতার সাথে বিনটি পাওয়ার চেষ্টা করেছি তবে এটি কেবল উচ্চতর পিচ সিগন্যালের জন্য আমাকে সঠিক ফলাফল দেয়, এটি কোন বিষয় নয় যে আমি কোন ওভারস্যাম্পলিং ফ্যাক্টরটি ব্যবহার করি আমি কম ফ্রিকিক সিগন্যালের জন্য খারাপ ডেটা পেয়েছি। এই পদ্ধতিরটি কি পুরোপুরি ভুল বা আমি সঠিক ট্র্যাকের মধ্যে আছি তবে কিছু হারিয়ে গেছে?

আগাম ধন্যবাদ,

সম্পাদনা: আমি উল্লেখ করতে ভুলে গেছি যে আমি কেবল পিচ ক্লাসে আগ্রহী, সুতরাং এটি মৌলিক অনুপস্থিত তবে ঠিক আছে তবে আমার নমুনায় একটি শক্ত ওভারটোন আছে।

সম্পাদনা 2: প্রত্যেককে ধন্যবাদ, আমি সবেমাত্র অ্যালগরিদমের একটি সংস্করণ শেষ করেছি যা একটি কবজির মতো কাজ করছে working লো পিচ অনুমানের সমস্যাটি আমার ইনপুট পরীক্ষার কারণে হয়েছিল। আমি যখন নোটটি গাইলাম এটি সঠিকভাবে মেলে। এছাড়াও, আমি এখন সমস্ত উচ্চারণকেই বিবেচনা করছি, কেবলমাত্র সর্বোচ্চ শিখর নয়।


উইকিপিডিয়ায় কিছু তথ্য রয়েছে।
এমরে

উত্তর:


9

আমি সর্বকেন্দ্রিকতার সাথে বিনটি পাওয়ার চেষ্টা করেছি তবে এটি কেবল উচ্চতর পিচ সিগন্যালের জন্য আমাকে সঠিক ফলাফল দেয়, এটি কোন বিষয় নয় যে আমি কোন ওভারস্যাম্পলিং ফ্যাক্টরটি ব্যবহার করি আমি কম ফ্রিকিক সিগন্যালের জন্য খারাপ ডেটা পেয়েছি।

এটা এ কারণে যে সুরবিজ্ঞান এর দ্বারা মৌলিক চেয়ে বড়। আপনার বর্ণালী প্লট করুন এবং আপনি দেখতে পাবেন। আসল মৌলিক সন্ধানের জন্য একটি আরও ভাল পদ্ধতি হ'ল স্বশাসন। তারপরে আপনি তরঙ্গরূপটি নিজেই অতীতকে "স্লাইডিং" করছেন এবং তরঙ্গ আকারটি নিজেই লাইন করে এমন বিলম্ব সন্ধান করছেন।

http://www.phon.ucl.ac.uk/courses/spsci/matlab/lect10.html

আপনি কি সত্যই তাদের সঠিক নোটটি গাইতে চান, বা তাদের ভয়েস রেজিস্ট্রারের উপর নির্ভর করে তারা যদি উপরে বা নীচে একটি অষ্টকটি গান করে তবে তা ঠিক?


আপনি ঠিক বলেছেন, আমি উল্লেখ করতে ভুলে গেছি যে আমি কেবল পিচ ক্লাসে আগ্রহী। আমি আমার সরঞ্জামটি পরীক্ষার জন্য এই ওয়েবসাইটটি ব্যবহার করছি: সপ্তমস্ত্রী / ফুনিংফোরক / ফুনিংফোরকHtml । A (220Hz) এর ইনপুটটির জন্য এটি E (660Hz) পাওয়া পিচ ক্লাস হিসাবে ফেরত দেয়। আমি স্পেকট্রামটি একবার দেখেছিলাম এবং 220Hz আসলেই আছে, তবে 660Hz এর চেয়ে কম মাত্রার সাথে। আমার কাঙ্ক্ষিত ব্যাপ্তিতে ন্যূনতম প্রস্থ এবং ক্যাপ ফ্রিকোয়েন্সি নীচে মানগুলি ফিল্টার করার পরে, আমি এ থেকে স্পেকট্রামটি পেয়েছি 4 টি শিখর। [শিখর, ম্যাগ] = [220, 0.0203], [618, 0.0142], [660, 0.0668], [703, 0.0497]।
ফিলিপ লিরা

আমি কেবল আমাকে ভাবতে পেরেছিলাম যে সম্ভবত প্রকৃত ফ্রিকোয়েন্সি পাওয়ার জন্য আমি যেমন করছি তেমন বিশালতা গণনা করার সময় আমার পর্বটি অফসেটে নেওয়া উচিত। যে জানার জন্য? আমার অর্থটি হ'ল, যদি আমার কাছে বিনের প্রায় 90º পর্বের অফসেট থাকে তবে "শিখর" 0 মাত্রায় থাকবে না?
ফিলিপ লিরা

@ এলিপেডরল: সুতরাং আপনি মূলত একটি গিটার টিউনার লিখছেন। :) যেমন আমি বুঝতে পেরেছি, তরঙ্গ আকারটি পরিষ্কার করতে তারা লো-পাস ফিল্টার করে এবং তারপরে পিচটি পেতে পিকগুলি গণনা করে। ইলেক্ট্রনিক্সডিজাইন / আর্টিক্যাল / আর্টিকেলস / … সম্পর্কেমিকোক্রন্ট্রোলার.ব্লগস্পট / ২০০৮/০৪/২ আরও ভাল উপায় রয়েছে, তবে আপনি যদি সস্তাতার
এন্ডোলিথ

@ এলিপিড্রল: একটি বিনের জন্য পর্বের অফসেটটি পিচের সাথে অপ্রাসঙ্গিক হওয়া উচিত। প্রতিটি বিন একটি জটিল সংখ্যা এবং আপনি সেই সংখ্যার পরম মান বা মাত্রায় আগ্রহী। en.wikedia.org/wiki/Absolve_value#Complex_numbers
এন্ডোলিথ ২

1
এবং যদি আপনার কোনও কারণে 2 টি সংক্ষিপ্ত এফএফটি হয় (বিলম্বিতা, সময় কোয়ান্টা, ইত্যাদি), তবে একটি ফেজ ভোকাডার গণনা আর আরও দীর্ঘ এফএফটি করার চেয়ে কম গননা হয় এবং এটি ইন্টারপোলটিং হয়।
হটপাউ 2

6

হ্যাঁ, পিচের জন্য পিক ফ্রিকোয়েন্সি অনুমানকারী ব্যবহার করা ভুল। পিচ একটি মনোবৈজ্ঞানিক ঘটনা, সুতরাং পিচ সনাক্তকরণ বা অনুমান ফ্রিকোয়েন্সি অনুমানের থেকে পৃথক। এখানে অনুরূপ প্রশ্নের পূর্ববর্তী উত্তরগুলিতে প্রচুর পিচ প্রাক্কলন পদ্ধতি দেওয়া হয়েছে। বেছে নিতে 1 এরও বেশি রয়েছে।

এখানে একটি: /programming/4227420/matlab-missing-fundament-from-an-fft/4231322#4231322 , এবং অন্যটি: পিচ সনাক্তকরণের উন্নতির টিপস

সংযুক্ত # 1: এর সমান প্রশ্নগুলি প্রায়শই জিজ্ঞাসা করা হয় যে আমি এই বিষয়ে একটি দীর্ঘ ব্লগ পোস্ট লিখেছিলাম: http://www.musingpaw.com/2012/04/musical-pitch-is-not-just-fft- frequency.html


আমি সেই তথ্য দিয়ে প্রশ্নটি আপডেট করেছি যে আমি কেবল পিচ ক্লাসে আগ্রহী। আমি সত্যিই আশা করি যে একটি পোস্ট প্রসেসিং সহ এফএফটি এর পক্ষে যথেষ্ট, আমি আমার সময়সূচির পিছনে আছি এবং পদ্ধতির পরিবর্তন আমার পক্ষে ভয়াবহ হবে।
ফিলিপ লিরা

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

বাদ্যযন্ত্রের পিচ ফ্রিকোয়েন্সিতে কোনও ফ্রিকোয়েন্সি শিখর না আসার জন্য এটি সম্ভাব্য, যদিও সম্ভবত অসম্ভব is কিছু পুরুষ স্বর এটির কাছাকাছি হতে পারে, স্বরচরিত দ্বারা ফিল্টার করার পরে কেবল উচ্চ ওভারটোনগুলি অবশিষ্ট থাকে।
হটপাউ 2

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