নমুনাগুলির মাঝে-মধ্যে স্থানীয় শিখর সন্ধান করা


10

আমি একটি সিসমিক সংকেত বিযুক্ত নমুনা : এনY[এন]এখানে চিত্র বর্ণনা লিখুন

আমি সিগন্যালে স্থানীয় ম্যাক্সিমা খুঁজে পেতে চাই।

Y[এন] সর্বাধিক হলে এর জন্য নির্দোষ পরীক্ষা হবে:

Y[এন]:মিএকটিএক্সআমিমিএকটি যদি Y[এন]>Y[এন-1] এবং Y[এন]>Y[এন+ +1]

তবে ম্যাক্সিমা সম্ভবত নমুনাগুলির মধ্যে অবস্থিত, যেমন i = 4.25 এ সর্বোচ্চ থাকতে পারে আমি=4.25

নমুনাগুলির মধ্যে ম্যাক্সিমার সন্ধানের জন্য আমি বিশ্বাস করি যে আমার y [n] বিভক্ত করা দরকার Y[এন]

  • ইন্টারপোলেশন ব্যবহার করে আমি কীভাবে ম্যাক্সিমাকে খুঁজে পাব?
  • আমার কোন প্রকারের বিরক্তি ব্যবহার করা উচিত?

আপনি দেখতে পাচ্ছেন যে আমার সংকেতটি খুব কোলাহলপূর্ণ নয়, তবে পদ্ধতিটি যদি ফিল্টারিংও কিছুটা করে থাকে যাতে ম্যাক্সিমার একটি প্রস্থকে ছাড়িয়ে যায় এবং একটি নির্দিষ্ট প্রস্থ থাকে (কোনও স্পাইক থাকে না) তবে এটি ভাল হবে।

আমার সবচেয়ে বড় সমস্যাটি কেবলমাত্র নমুনাগুলির মধ্যে শৃঙ্গগুলি খুঁজে পাওয়া। এটি করার জন্য কোনও ভাল উপায়ের জন্য কোনও পরামর্শ?

কোনও উত্তরের জন্য অগ্রিম ধন্যবাদ!


1
হয়তো তাকান প্রশ্ন 1 এবং 2 প্রশ্নে
জের্টেন

ফ্রিকোয়েন্সি বর্ণালী জন্য বিভিন্ন পদ্ধতি: dspguru.com/dsp/howtos/how-to-interplate-fft-peak
এন্ডোলিথ

এই দ্বিতীয়টির কোনও উত্তর নেই জের্টেন ;-)
আইভো ফ্লিপস

1
ওহ..হাহা, ভাল কথা। ঠিক আছে আমি সেই প্রশ্নের এই প্রশ্নের জবাব আবার দেব;)
জের্তেন

উত্তর:


7

একটি সাব-নমুনা রেজোলিউশন পাওয়া

একটি খুব সস্তা (কোড আকারের নিরিখে) সমাধানটি কেবল আপনার সিগন্যালকে উপস্থাপন করতে পারে। মতলবটিতে এটি করা যেতে পারে interp(y ,ratio)। কিছুটা আরও জটিল সমাধান নির্লজ্জভাবে শিখর সনাক্তকরণ নিয়ে গঠিত; এবং প্রতিটি শিখরের জন্য, y [শিখর - 1], y [শীর্ষ], y [শিখর + 1] এর মাধ্যমে একটি প্যারোবোলার উপযুক্তকরণ; তারপরে এই প্যারাবোলাটি সত্য পিক অবস্থান হিসাবে সর্বোচ্চ পয়েন্টটি ব্যবহার করে।

শীর্ষ সনাক্তকরণ সম্পর্কিত

একগুচ্ছ কৌশল যা সাহায্য করে:

  • যেমন হিলমার পরামর্শ দিয়েছিলেন, গাউসিয়ান বা হান উইন্ডো দ্বারা সংকেতটি বিশুদ্ধ করে দেওয়া হয়েছে, এর প্রস্থ আপনি সনাক্ত করা শৃঙ্গগুলির মধ্যে দেখতে চান সর্বনিম্ন অন্তরালের প্রায় অর্ধেকের সমান। যেহেতু অস্থায়ী নির্ভুলতা আপনার আবেদনের পক্ষে অপরিহার্য বলে মনে হচ্ছে, তবে নিশ্চিত হয়ে নিন যে আপনি ফিল্টারিং দ্বারা প্রবর্তিত সময় বিলম্বকে বিবেচনায় রেখেছেন!
  • আপনার সিগন্যালের বিয়োগ করে নিজেই একটি মাঝারি ফিল্টার্ড সংস্করণ (মোটামুটি বড় পর্যবেক্ষণ উইন্ডো সহ); এবং ফলাফলটিকে নিজেই একটি স্ট্যান্ডার্ড-বিচ্যুতি ফিল্টার করা সংস্করণ দ্বারা ভাগ করুন। এটি প্রবণতা থেকে মুক্তি পায় এবং প্রান্তিক বিচ্যুতির ইউনিটে থ্রেশহোল্ডগুলি প্রকাশ করার অনুমতি দেয়।
  • শিখর-বাছাইয়ের জন্য, আমি প্রস্তুত করি যে "শীর্ষ-টুপি" ফিল্টার ব্যবহার করে। আপনার সিগন্যালের শীর্ষ-টুপি ফিল্টার্ড সংস্করণটিকে yt [n] = সর্বোচ্চ (y [n - W], y [n - W + 1], ..., y [n + W - 1], y [n হিসাবে নির্ধারণ করুন + ডাব্লু]); এবং পয়েন্ট হিসাবে পয়েন্ট হিসাবে ব্যবহার করুন যেখানে y [n] == yt [n] এবং y [n]> থ্রেশহোল্ড।

এই সমস্ত কিছু খুব দক্ষতার সাথে মাতলাবতে কয়েক ঘন্টা এনএলফিল্টার দিয়ে প্রয়োগ করা যেতে পারে।


আপসাম্পলিং প্লাস প্যারাবোলিক ইন্টারপোলেশনের সংমিশ্রণটি একা একা থেকে ভাল কাজ করতে পারে।
হটপাউ 2

3

একটি ক্ষতির পিক ডিটেক্টর ব্যবহার করে দেখুন:

y[n] = max(abs(x[n]),a*y[n-1]);

যেখানে "এ" 1 এর চেয়ে ছোট একটি সংখ্যা যা ডিটেক্টর কত দ্রুত ক্ষয় করে তা নিয়ন্ত্রণ করে। এটি নির্ধারণ করে যে প্রতিবেশী শিখরগুলি একক মধ্যে ধোঁয়া ছাড়াই কত নিকটবর্তী হতে পারে। তারপরে একটি থ্রেশহোল্ড সনাক্তকরণ করুন।


আপনার সমীকরণে আপনার উভয় কুঠুরি [n] এবং y [n] রয়েছে। এটি সঠিক বা এটি কেবল y [n] হওয়া উচিত?
অ্যান্ডি

x [n] হ'ল ইনপুট, y [n] হ'ল আউটপুট। খারাপ উত্তর সামগ্রিকভাবে, একটি টাইপো রয়েছে (এখনই স্থির) এবং আমি প্রশ্নটি ভুল বুঝেছি। ক্ষমা প্রার্থনা
হিলমার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.