تقسيم الـ signals وإعادة تجميعها
في الدروس اللي فاتت من الوحدة 11، اتعاملنا مع الـ upsampling والـ downsampling كأدوات لتغيير الـ sampling rate بتاع signal واحدة. والـ filter banks بتوسّع الفكرة دي بإنها بتقسم signal عريضة النطاق لـ subbands ضيقة كتير، وتعالج كل واحد لوحده، وبعدين تجمّعهم تاني في signal متعاد بناؤها. والبنية دي موجودة في كل برنامج ضغط صوت حديث (MP3 وAAC وOpus) وفي أنظمة الاتصالات اللاسلكية OFDM وضغط الصور بالـ wavelets.
الـ filter bank بيتكوّن من جزئين: الـ analysis bank اللي بيفكّك الـ signal الداخلة لـ subbands، والـ synthesis bank اللي بيجمّع الـ subbands دي تاني في الـ signal الخارجة. ولما التصميم يبقى صح، الـ synthesis bank بيلغي شغل الـ analysis bank بالكامل، فبيرجّع الـ signal الأصلية من غير تشويه — والخاصية دي اسمها الـ perfect reconstruction.
الـ filter bank اللي فيه M channel بيطبّق M band-pass filter على الـ signal الداخلة، وبيعمل downsampling لكل خرج بمعامل M، وبعدين الـ synthesis bank بيعمل upsampling لكل subband بمعامل M وبيجمع النتايج عشان يعيد بناء الـ signal.
x[n] → الـ analysis bank → M subband → الـ synthesis bank → x̂[n]الـ analysis filter bank
الـ analysis filter bank اللي فيه M channel بيتكوّن من M band-pass filter H0، H1، …، HM−1، كل واحد بيغطّي نطاق frequency مختلف. وفي أبسط الحالات — الـ DFT-modulated filter bank — الـ filters بتبقى نسخ متزحزحة في الـ frequency من low-pass filter H0:
بعد الـ filtering، كل فرع بيتعمله downsampling بمعامل M (critical sampling). وده بيخلّي معدل البيانات الكلي بيساوي معدل الدخل: مجموع M subband signal، كل واحدة بمعدل fs/M، بيساوي المعدل الأصلي fs.
الـ synthesis filter bank
الـ synthesis bank بيعكس عملية الـ analysis. كل subband signal vk[n] بيتعمله upsampling بمعامل M (إدخال M−1 صفر بين الـ samples)، وبعدين بيترشّح بالـ synthesis filter Gk. والـ M فرع المترشّحين بيتجمعوا عشان يطلّعوا الـ signal المتعاد بناؤها x̂[n].
جودة إعادة البناء بتعتمد على الـ filter bank محقّق شروط الـ perfect reconstruction (PR) لحد فين: مفيش aliasing جاي من مراحل الـ downsampling/الـ upsampling، وfrequency response مفرود، وlinear phase. وإنك تحقق التلاتة مع بعض محتاج تصميم مشترك دقيق لـ Hk وGk.
الـ polyphase decomposition: محرّك الكفاءة
التنفيذ الساذج للـ filter bank محتاج يشغّل M FIR filter طويل بمعدل الدخل الكامل fs قبل الـ downsampling، وده ضياع حسابي: أغلب خرج الـ filter بيترمي على طول بعد الـ downsampling. والـ polyphase decomposition (التحليل متعدد الأوجه) بيعيد تنظيم الحساب بحيث كل عمليات الـ filtering تحصل على معدل الـ subband الأقل fs/M.
أي FIR filter H(z) طوله N ممكن يتكتب كـ M filter أقصر — اسمها الـ polyphase components Ek(z) — طول كل واحد ⌈N/M⌉:
في التنفيذ الـ polyphase للـ analysis bank، الـ signal الداخلة بتعدّي الأول على commutator (محوّل serial-to-parallel بيوزّع samples الدخل اللي ورا بعض على الـ M فرع)، وبعدين كل فرع بيترشّح بالـ polyphase component بتاعه، وفي الآخر خرج الـ M فرع بيتعمله DFT بـ M نقطة عشان يطلّع الـ subband signals. والنتيجة: كل العمليات الحسابية بتحصل بمعدل fs/M، والـ DFT ممكن يتحسب بكفاءة بالـ FFT.
الـ quadrature mirror filters
أبسط الـ filter banks وأكترها استخدامًا هو الـ QMF filter bank اللي فيه channelين (M = 2). بيقسم الـ signal لـ subband واطي (تحت π/2) وsubband عالي (فوق π/2). والـ low-pass analysis filter H0(z) والـ high-pass H1(z) مرتبطين بالعلاقة:
تحدّي تصميم الـ QMF إنك تخلّي H0 low-pass filter كويس (cutoff حاد قريب من π/2، وattenuation عالي في الـ stopband) وفي نفس الوقت يحقق شروط الـ PR. وJohnston filters — وهي تصميمات FIR linear phase متحسّنة — حل عملي: بتلغي الـ aliasing تمامًا بس بتقرّب من شرط الـ pure delay بس، فبتسيب ripple صغير في الـ amplitude (near-perfect reconstruction). أما الـ perfect reconstruction فبتحققها الـ conjugate quadrature filters (CQF) — واسمها كمان الـ orthogonal filter banks — بس من غير linear phase، ما عدا زوج Haar البسيط؛ والـ biorthogonal filter banks بتتنازل عن الـ orthogonality عشان تجمع الـ perfect reconstruction والـ linear phase مع بعض، وعشان كده بتستخدمها codecs الصور زي JPEG 2000.
عشان تحقق الـ perfect reconstruction في QMF bank فيه channelين: (1) حد الـ aliasing لازم يتلغي: H0(z)G0(z) + H1(z)G1(z) = 0؛ (2) حد الـ distortion لازم يساوي pure delay: H0(−z)G0(z) + H1(−z)G1(z) = 2z−k. والاتنين مع بعض بيضمنوا x̂[n] = x[n−k]، يعني إعادة بناء مثالية مع تأخير.
تطبيقات الـ filter banks
ضغط الصوت (MP3 وAAC وOpus): الـ psychoacoustic model بتاع MPEG بيشتغل في الـ frequency domain. والـ MP3 بيستخدم polyphase filter bank فيه 32 channel عشان يقسم الصوت لـ 32 subband، وبعدين بيطبّق الـ modified discrete cosine transform (MDCT) جوه كل subband. وفي كل الحالات، الـ filter bank بيخلّيك تدّي bits أكتر للـ subbands اللي محتواها مهم للسمع وbits أقل للـ subbands المحجوبة أو الأقل سماعًا.
ضغط الصور (JPEG 2000 والـ wavelets): الـ discrete wavelet transform (DWT) هو QMF filter bank فيه channelين متطبّق بشكل متكرّر. والـ subband الواطي بيتقسم تاني وتالت لـ subbands أوطى، فبيعمل multiresolution representation. والـ JPEG 2000 بيستخدم الـ biorthogonal wavelet 9/7 للـ lossy coding، والـ LeGall wavelet 5/3 للـ lossless coding.
اتصالات OFDM: ممكن تبص للـ transmitter بتاع OFDM على إنه synthesis filter bank، لأن كل subcarrier بيمثّل channel مستقلة. والـ IFFT هو بنية الـ synthesis الـ polyphase بعينها: بيجمع M stream بيانات مستقلين في signal زمنية عريضة النطاق. والـ receiver اللي بالـ FFT هو الـ analysis bank الـ polyphase.
سماعات الأذن ومعالجة الكلام: الـ filter banks بتسمح بمعالجة مستقلة لنطاقات frequency مختلفة، وبتقلّد تحليل الـ frequency اللي بتعمله القوقعة. وسماعة الأذن تقدر تطبّق تكبير مختلف للـ frequencies الواطية والمتوسطة والعالية حسب الـ audiogram بتاع المريض، جوه polyphase filter bank واحد على chip DSP قليلة الطاقة.
- الـ filter bank بيقسم الـ signal لـ M subband (الـ analysis bank) وبيجمّعهم تاني (الـ synthesis bank)؛ والـ signal الأصلية بترجع من غير تشويه عند الـ perfect reconstruction.
- الـ uniform DFT filter banks بتستخدم نسخ modulated من low-pass filter واحد؛ وكل الـ M filter بيغطّوا الـ spectrum كله بـ bandwidth π/M لكل واحد.
- الـ polyphase decomposition بيقلّل تكلفة الـ filter bank بمعامل M: كل فرع polyphase بيشتغل على المعدل الأقل fs/M، والفروع بتتجمع عن طريق FFT/IFFT سريع.
- الـ QMF filter bank اللي فيه channelين بيستخدم زوج low-pass وhigh-pass متصمّم يلغي الـ aliasing في مرحلة الـ synthesis، وده بيسمح بـ perfect reconstruction أو near-perfect.
- الـ filter banks هي الأساس البنيوي لترميز الصوت MP3/AAC، وضغط الصور JPEG 2000، وأنظمة OFDM اللاسلكية، وسماعات الأذن والـ wavelets.
- الـ discrete wavelet transform هو QMF filter bank متكرّر: الـ subband الواطي بيتقسم تاني وتالت، فبيعمل multiresolution representation بيتستخدم في ضغط الصور والفيديو.