ডিএফটি / এফএফটি গণনার আউটপুট বুঝতে আমার কিছুটা সহায়তা দরকার।
আমি একজন অভিজ্ঞ সফটওয়্যার ইঞ্জিনিয়ার এবং কিছু স্মার্টফোন অ্যাক্সিলোমিটার রিডিং যেমন প্রধান ফ্রিকোয়েন্সিগুলি সন্ধানের অর্থ ব্যাখ্যা করা দরকার। দুর্ভাগ্যক্রমে, আমি আমার কলেজের বেশিরভাগ EE ক্লাসে পনের বছর আগে ঘুমিয়েছি, তবে আমি ডিএফটি এবং এফএফটি নিয়ে গত বেশ কয়েকদিন ধরে পড়ছি (সামান্য উপকারে, স্পষ্টতই)।
দয়া করে, "একটি EE ক্লাস নিন" এর কোনও প্রতিক্রিয়া নেই। আমি যদি আমার নিয়োগকর্তা আমাকে বেতন দেয় তবে তা করার পরিকল্পনা করছি। :)
সুতরাং এখানে আমার সমস্যা:
আমি 32 Hz এ একটি সংকেত ক্যাপচার করেছি। এখানে 32 পয়েন্টের 1 সেকেন্ডের নমুনা দেওয়া হয়েছে, যা আমি এক্সেলের মাধ্যমে চার্ট করেছি।
আমি তখন কলম্বিয়া বিশ্ববিদ্যালয় থেকে জাভাতে কিছু এফএফটি কোড পেয়েছি (" জাভায় নির্ভরযোগ্য এবং দ্রুত এফএফটি " সম্পর্কিত একটি পোস্টে পরামর্শগুলি অনুসরণ করার পরে) )।
এই প্রোগ্রামটির ফলাফল নিম্নরূপ as আমি বিশ্বাস করি এটি একটি স্থান এফএফটি চলছে, সুতরাং এটি ইনপুট এবং আউটপুট উভয়ের জন্য একই বাফারটিকে পুনরায় ব্যবহার করে।
Before:
Re: [0.887 1.645 2.005 1.069 1.069 0.69 1.046 1.847 0.808 0.617 0.792 1.384 1.782 0.925 0.751 0.858 0.915 1.006 0.985 0.97 1.075 1.183 1.408 1.575 1.556 1.282 1.06 1.061 1.283 1.701 1.101 0.702 ]
Im: [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ]
After:
Re: [37.054 1.774 -1.075 1.451 -0.653 -0.253 -1.686 -3.602 0.226 0.374 -0.194 -0.312 -1.432 0.429 0.709 -0.085 0.0090 -0.085 0.709 0.429 -1.432 -0.312 -0.194 0.374 0.226 -3.602 -1.686 -0.253 -0.653 1.451 -1.075 1.774 ]
Im: [0.0 1.474 -0.238 -2.026 -0.22 -0.24 -5.009 -1.398 0.416 -1.251 -0.708 -0.713 0.851 1.882 0.379 0.021 0.0 -0.021 -0.379 -1.882 -0.851 0.713 0.708 1.251 -0.416 1.398 5.009 0.24 0.22 2.026 0.238 -1.474 ]
সুতরাং, এই মুহুর্তে, আমি আউটপুটটির মাথা বা লেজগুলি তৈরি করতে পারি না। আমি ডিএফটি ধারণাগুলি বুঝতে পারি, যেমন আসল অংশটি উপাদান কোসাইন ওয়েভের প্রশস্ততা এবং কল্পিত অংশটি উপাদান সাইন ওয়েভের প্রশস্ততা। আমি এই চিত্রটিও দ্য সায়েন্টিস্ট অ্যান্ড ইঞ্জিনিয়ার গাইড টু ডিজিটাল সিগন্যাল প্রসেসিংয়ের দুর্দান্ত বই থেকে অনুসরণ করতে পারি " :
সুতরাং আমার নির্দিষ্ট প্রশ্নগুলি হ'ল:
এফএফটির আউটপুট থেকে, আমি কীভাবে "সর্বাধিক সংঘটিত ফ্রিকোয়েন্সি" খুঁজে পাব? এটি আমার অ্যাক্সিলোমিটার ডেটা বিশ্লেষণের অংশ। আমি কি আসল (কোসাইন) বা কল্পিত (সাইন) অ্যারেগুলি পড়তে পারি?
আমার কাছে সময় ডোমেনে একটি 32-পয়েন্ট ইনপুট রয়েছে। এফএফটিটির আউটপুট বাস্তবের জন্য 16-উপাদান অ্যারে এবং কাল্পনিক জন্য 16-উপাদান অ্যারে হওয়া উচিত নয়? প্রোগ্রামটি কেন আমাকে আসল এবং কাল্পনিক অ্যারে 32 আকারের উভয় আউটপুট দেয়?
পূর্ববর্তী প্রশ্নের সাথে সম্পর্কিত, আমি কীভাবে আউটপুট অ্যারে সূচিগুলি পার্স করব? 32 হার্জে নমুনাযুক্ত 32 টি নমুনাগুলির আমার ইনপুট দেওয়া, আমার বোধগম্যতা হল যে 16-এলিমেন্টের অ্যারে আউটপুটে তার সূচকটি সমানভাবে 1/2 নমুনা হার (32 হার্জ এর) পর্যন্ত ছড়িয়ে দেওয়া উচিত, তাই আমি বুঝতে পেরেছি যে প্রতিটি উপাদান অ্যারের প্রতিনিধিত্ব করে (32 হার্জ * 1/2) / 16 = 1 হার্জ?
কেন এফএফটি আউটপুট নেতিবাচক মান আছে? আমি ভেবেছিলাম মানগুলি সিনোসয়েডের প্রশস্ততা উপস্থাপন করে। উদাহরণস্বরূপ, রিয়েল [3] = -1.075 এর আউটপুটটির বোঝা উচিত ফ্রিকোয়েনির কোসাইন ওয়েভের জন্য -1.075 এর প্রশস্ততা 3.. এটি কি ঠিক? প্রশস্ততা কীভাবে নেতিবাচক হতে পারে?