طريقة التداخل والإضافة

في معالجة الإشارات ، تُعد طريقة التداخل والجمع طريقة فعالة لتقييم الالتفاف المنفصل لإشارة طويلة جدًاx[ن]{\displaystyle x[n]}باستخدام مرشح استجابة نبضية محدودة (FIR)ح[ن]{\displaystyle h[n]}:

أينح[م]=0{\displaystyle h[m]=0}لم{\displaystyle m}خارج المنطقة[1،م].{\displaystyle [1,M].} 

تستخدم هذه المقالة رموزًا تجريدية شائعة، مثل:y(ت)=x(ت)*ح(ت)،{\textstyle y(t)=x(t)*h(t),}أوy(ت)=ح{x(ت)}،{\textstyle y(t)={\mathcal {H}}\{x(t)\},}حيث يُفهم أنه ينبغي التفكير في الوظائف ككل، بدلاً من التفكير فيها في لحظات محددة.ت{\textstyle t}(انظر Convolution#Notation ).

الخوارزمية

الشكل 1: يوضح تسلسل من خمسة رسومات بيانية دورة واحدة من خوارزمية الالتفاف التراكبي الجمعي. الرسم البياني الأول عبارة عن سلسلة طويلة من البيانات المراد معالجتها باستخدام مرشح FIR منخفض التمرير. الرسم البياني الثاني عبارة عن جزء من البيانات المراد معالجتها على مراحل. الرسم البياني الثالث هو الجزء المُرشَّح، بما في ذلك تقلبات ارتفاع وانخفاض المرشح. الرسم البياني الرابع يُشير إلى موضع إضافة البيانات الجديدة إلى نتيجة الأجزاء السابقة. الرسم البياني الخامس هو دفق الإخراج المُحدَّث. مرشح FIR هو مرشح تمرير منخفض من نوع "صندوق العربة" (boxcar lowpass).م=16{\displaystyle M=16}العينات، طول المقاطع هول=100{\displaystyle L=100}العينات والتداخل هو 15 عينة.

تتمثل الفكرة في تقسيم المشكلة إلى عدة عمليات التفاف منح[ن]{\displaystyle h[n]}مع مقاطع قصيرة منx[ن]{\displaystyle x[n]}:

xك[ن]  {x[ن+كل]،ن=1،2،...،ل0،خلاف ذلك،{\displaystyle x_{k}[n]\ \triangleq \ {\begin{cases}x[n+kL],&n=1,2,\ldots ,L\\0,&{\text{otherwise}},\end{cases}}}

أينل{\displaystyle L}طول القطعة عشوائي. إذن :

x[ن]=كxك[ن-كل]،{\displaystyle x[n]=\sum _{k}x_{k}[n-kL],\,}

وy[ن]{\displaystyle y[n]}يمكن كتابتها كمجموع عمليات التفاف قصيرة : [ 1 ]

y[ن]=(كxك[ن-كل])*ح[ن]=ك(xك[ن-كل]*ح[ن])=كyك[ن-كل]،{\displaystyle {\begin{aligned}y[n]=\left(\sum _{k}x_{k}[n-kL]\right)*h[n]&=\sum _{k}\left(x_{k}[n-kL]*h[n]\right)\\&=\sum _{k}y_{k}[n-kL],\end{aligned}}}

حيث الالتفاف الخطيyك[ن]  xك[ن]*ح[ن]{\displaystyle y_{k}[n]\ \triangleq \ x_{k}[n]*h[n]\,}يساوي صفرًا خارج المنطقة[1،ل+م-1].{\displaystyle [1,L+M-1].}وبالنسبة لأي معلمةشمالل+م-1،{\displaystyle N\geq L+M-1,\,}[ أ ] إنه يعادلشمال{\displaystyle N}الالتفاف الدائري ذو النقاط لـxك[ن]{\displaystyle x_{k}[n]\,}معح[ن]{\displaystyle h[n]\,}في المنطقة[1،شمال].{\displaystyle [1,N].} وتكمن الميزة في أن عملية الالتفاف الدائري يمكن حسابها بكفاءة أكبر من عملية الالتفاف الخطي، وفقًا لنظرية الالتفاف الدائري :

أين :

  • يشير كل من DFT N و IDFT N إلى تحويل فورييه المنفصل ومعكوسه، ويتم تقييمهما علىشمال{\displaystyle N}نقاط منفصلة، ​​و
  • ل{\displaystyle L}يتم اختيارها عادة بحيثشمال=ل+م-1{\displaystyle N=L+M-1}هو عدد صحيح من قوى العدد 2، ويتم تنفيذ التحويلات باستخدام خوارزمية FFT ، من أجل الكفاءة.

الشفرة الزائفة

فيما يلي تمثيل برمجي زائف للخوارزمية :

( خوارزمية التداخل والجمع للالتفاف الخطي ) h = مرشح FIR M = طول(h) Nx = طول(x) N = 8 × 2^ceiling( log2(M) ) (ثمانية أضعاف أصغر قوة للعدد اثنين أكبر من طول المرشح M. انظر القسم التالي لاختيار أفضل قليلاً.) step_size = N - (M-1) (L في النص أعلاه) H = DFT(h, N) الموضع = 0 y(1 : Nx + M-1) = 0 بينما يكون الموضع + حجم_الخطوة ≤ Nx نفّذ y(position+(1:N)) = y(position+(1:N)) + IDFT(DFT(x(position+(1:step_size)), N) × H) الموضع = الموضع + حجم_الخطوة نهاية

اعتبارات الكفاءة

الشكل 2: رسم بياني لقيم N (قوة صحيحة للعدد 2) التي تقلل دالة التكلفةشمال(سجل2شمال+1)شمال-م+1{\displaystyle {\tfrac {N\left(\log _{2}N+1\right)}{N-M+1}}}

عند تطبيق تحويل فورييه المنفصل (DFT) وتحويل فورييه العكسي المنفصل (IDFT) باستخدام خوارزمية تحويل فورييه السريع (FFT)، يتطلب الكود الزائف أعلاه حوالي N (log 2 (N) + 1) عملية ضرب معقدة لتحويل فورييه السريع، وضرب المصفوفات، وتحويل فورييه العكسي المنفصل (IFFT). [ ب ] تنتج كل تكرار N-M+1 عينة إخراج، لذا فإن عدد عمليات الضرب المعقدة لكل عينة إخراج هو حوالي :

على سبيل المثال، عندمام=201{\displaystyle M=201}وشمال=1024،{\displaystyle N=1024,}المعادلة 3 تساوي13.67،{\displaystyle 13.67,}بينما يتطلب التقييم المباشر للمعادلة 1 ما يصل إلى201{\displaystyle 201}عمليات الضرب المعقدة لكل عينة إخراج، وأسوأ حالة هي عندما يكون كلاهماx{\displaystyle x}وح{\displaystyle h}هي ذات قيم مركبة. لاحظ أيضًا أنه لأي قيمة معطاةم،{\displaystyle M,}للمعادلة 3 قيمة دنيا بالنسبة إلىشمال.{\displaystyle N.} الشكل 2 هو رسم بياني لقيمشمال{\displaystyle N}التي تقلل من قيمة المعادلة 3 لمجموعة من أطوال المرشحات (م{\displaystyle M}).

بدلاً من المعادلة 1 ، يمكننا أيضاً النظر في تطبيق المعادلة 2 على سلسلة طويلة من الطولشمالx{\displaystyle N_{x}}العينات. سيكون العدد الإجمالي لعمليات الضرب المركبة كما يلي:

شمالx(سجل2(شمالx)+1).{\displaystyle N_{x}\cdot (\log _{2}(N_{x})+1).}

وبالمقارنة، فإن عدد عمليات الضرب المعقدة المطلوبة بواسطة خوارزمية الشفرة الزائفة هو:

شمالx(سجل2(شمال)+1)شمالشمال-م+1.{\displaystyle N_{x}\cdot (\log _{2}(N)+1)\cdot {\frac {N}{N-M+1}}.}

وبالتالي، تتناسب تكلفة طريقة التداخل والإضافة تقريبًا معيا(شمالxسجل2شمال){\displaystyle O\left(N_{x}\log _{2}N\right)}بينما تبلغ تكلفة عملية الالتفاف الدائري الكبير الواحد تقريبًايا(شمالxسجل2شمالx){\displaystyle O\left(N_{x}\log _{2}N_{x}\right)}تُقارن الطريقتان أيضًا في الشكل 3، الذي تم إنشاؤه بواسطة محاكاة MATLAB . تمثل الخطوط الكنتورية نسبة ثابتة بين الوقت اللازم لتنفيذ كلتا الطريقتين. عندما تكون طريقة التداخل والجمع أسرع، تتجاوز النسبة 1، وتُلاحظ نسب تصل إلى 3.

الشكل 3: كسب طريقة التداخل والجمع مقارنةً بعملية التفاف دائري كبير واحد. تُظهر المحاور قيم طول الإشارة N x وطول المرشح N h .

انظر أيضاً

ملحوظات

  1. هذا الشرط يعني أنxك{\displaystyle x_{k}}يحتوي هذا القطاع على الأقلم-1{\displaystyle M-1}تمت إضافة أصفار، مما يمنع التداخل الدائري بين الارتفاع والانخفاض العابرين للإخراج.
  2. خوارزمية كولي-توكي لتحويل فورييه السريع (FFT) لـ N=2 k تحتاج إلى (N/2) log 2 (N) – انظر FFT – التعريف والسرعة

مراجع

  1. رابينر، لورانس ر.؛ جولد، برنارد (1975). "2.25" . نظرية وتطبيق معالجة الإشارات الرقمية . إنجلوود كليفس، نيوجيرسي: برنتيس هول. ص 63-65 . ISBN  0-13-914101-4.

للمزيد من القراءة