حين يلتقي FFT بالزمن
في الوحدات السابقة من الوحدة 6، تعاملنا مع FFT بوصفه أداةً تُحوّل كتلة إشارة كاملة إلى محتواها الترددي. يصلح ذلك بشكل جيد للإشارات الثابتة — الإشارات التي لا يتغير محتواها الترددي عبر الزمن. غير أن معظم الإشارات الواقعية غير ثابتة: الكلام يرتفع وينخفض في الطبقة، نغمة الغيتار تتلاشى، عودة الرادار تجتاز نطاقات ترددية، واهتزاز المحرك يتحول مع تغير سرعة الدوران.
لرصد كيفية تطور المحتوى الترددي مع الزمن، نحتاج إلى تطبيق FFT بشكل متكرر على مقاطع قصيرة ومتداخلة من الإشارة. تُسمى هذه التقنية تحويل فورييه قصير المدى (STFT)، وهي المحرك الأساسي لكل محلل طيف، وعرض طيف زمني، وشاشة صوتية آنية صادفتها في حياتك.
تحويل فورييه قصير المدى
الفكرة خلف STFT بسيطة: نُمرّر نافذة بطول N عبر الإشارة، ونضرب كل مقطع منافذ في دالة نافذة (للحد من تسرب الطيف)، ثم نحسب FFT، ونخزّن النتيجة. يُولّد تكديس هذه الأطياف عبر الزمن تمثيلاً ثنائي الأبعاد: التردد على محور، والزمن على آخر.
مربع القيمة المطلقة |X[m, k]|² هو الطيف الزمني — خريطة قدرة تُظهر الترددات النشطة في كل لحظة زمنية. يُستخدم المقياس اللوغاريتمي (بالديسيبل) دائمًا تقريبًا لضغط النطاق الديناميكي الواسع للإشارات الواقعية.
ثلاثة معاملات تتحكم بكل شيء
لكل STFT ثلاثة خيارات تصميمية، وفهم المقايضات بينها هو جوهر تحليل الطيف الآني:
| المعامل | الرمز | يتحكم في | النطاق المعتاد |
|---|---|---|---|
| حجم الإطار | N | الدقة الترددية: Δf = f_s / N | 256 – 8192 |
| حجم القفز | R | الدقة الزمنية: Δt = R / f_s | N/4 – N/2 |
| دالة النافذة | w[n] | مقايضة التسرب مقابل الدقة | Hann، Hamming، Blackman |
لا يمكنك الحصول على دقة زمنية مثالية ودقة ترددية مثالية في آن واحد — هذا هو مبدأ عدم اليقين الزمني-الترددي. الإطار القصير (N صغير) يمنحك دقة زمنية جيدة لكن حزمًا ترددية خشنة. الإطار الطويل (N كبير) يمنح دقة ترددية عالية لكن دقة زمنية ضعيفة. يتحكم حجم القفز R في معدل تحديث العرض — يمكن ضبطه باستقلالية عن N، لكن طول الإطار يحدد محاور الدقة في نهاية المطاف.
إطار قصير ← دقة زمنية جيدة، دقة ترددية خشنة. إطار طويل ← دقة ترددية عالية، دقة زمنية ضعيفة.التداخل ونافذة هان
عمليًا، تتداخل الإطارات عادةً بنسبة 50–75%. مع حجم قفز R = N/2، تتشارك الإطارات المتتالية نصف عيناتها. يخدم التداخل غرضَين: يزيد الدقة الزمنية لعرض الطيف الزمني، ويُمكّن — مع نوافذ معينة — إعادة البناء التامة للإشارة الأصلية (مفيد لمعالجة الصوت لا التحليل فقط).
نافذة هان (الجيب تمام المرفوع) هي الاختيار الأكثر شيوعًا لتحليل الطيف الآني. تتلاشى بسلاسة إلى الصفر عند الطرفين، مما يُزيل الحافة المفاجئة التي تُسبب تسربًا حادًا مع النافذة المستطيلة. مع تداخل 50%، تجمع الإطارات المنافذة بنافذة هان المتتالية إلى ثابت — وهو شرط إضافة التداخل الثابتة (COLA) الذي يضمن إعادة البناء التامة.
بناء محلل طيف آني
يعالج محلل الطيف الآني تيارًا صوتيًا أو ترددي لاسلكيًا مستمرًا ويُحدّث عرض الترددات بسرعة كافية ليبدو حيًا. البنية القياسية في البرمجيات هي:
في المتصفح، تُنفّذ واجهة Web Audio API عبر AnalyserNode هذه الخطوات الأربع داخليًا — تحتفظ بمخزن حلقي، وتطبق نافذة بلاكمان، وتحسب FFT، وتوفر getByteFrequencyData() التي تُعيد حزم اللوغاريتم جاهزة للرسم على canvas.
التوسيط وتثبيت الذروة
مخرج FFT الخام مضطرب — الإطارات الفردية تتذبذب حتى لإشارة جيبية ثابتة، بسبب الضوضاء وطول الإطار المحدود. ثمة تقنيتان للعرض تعالجان ذلك:
عروض شلال الماء
يُمرّر عرض شلال الماء (أو الطيف الزمني) الزمنَ على أحد المحاور بينما يشغل التردد المحور الآخر، مع ترميز القدرة باللون أو الكثافة. يُضيف كل إطار STFT جديد صفًا (أو عمودًا) للعرض. تُكوّن النتيجة "فيلمًا" ثنائي الأبعاد للطيف يكشف هياكل غير مرئية في عرض إطار واحد: تظهر إشارات التشيرب كخطوط مائلة، والتوافقيات كحزم أفقية متوازية، والتداخل كخطوط عمودية.
عروض شلال الماء قياسية في:
- الراديو المُعرَّف برمجيًا (SDR) — مراقبة طيف RF واسع النطاق للإشارات والمتداخلات والإشغال
- هندسة الصوت — تحديد أوضاع الغرفة، وذيول الصدى، والمحتوى التوافقي في التسجيلات
- تحليل الاهتزاز — تتبع الترددات الرنانة في الآلات الدوارة مع تغير الحمل
- الصوتيات الطبية — تصوير أنماط الكلام، وأصوات التنفس، وبيانات دوبلر للموجات فوق الصوتية
كلام صوتي: N = 512–1024، قفز = N/2، نافذة هان. الصوتيات تستمر ~50–100 مللي ثانية لذا دقة زمنية ~10 مللي ثانية (N=512 عند 48 كيلوهرتز) تلتقط الانتقالات جيدًا.
الموسيقى/التحليل التوني: N = 2048–4096، قفز = N/4. الدقة الترددية العالية تكشف الجزئيات؛ التداخل 75% يمنح حركة بصرية سلسة.
المسح العريض لـ SDR: N = 1024–4096، قفز = N (بدون تداخل). معدل الإنتاجية أهم من إعادة البناء؛ معدل التحديث = f_s / N.
مراقبة الاهتزاز: N = 4096–8192، قفز = N/2. الإطارات الطويلة تحل التوافقيات الميكانيكية المتقاربة (التي تفصل بينها أحيانًا بضعة هرتز فقط).
الميزانية الحسابية
يجب على المحلل الآني إتمام إطار FFT واحد قبل وصول القفز التالي. الميزانية الحسابية لكل إطار (بالثواني) هي R / f_s ببساطة. للصوت عند 48 كيلوهرتز مع N = 1024 وR = 512، الميزانية هي 512 / 48000 ≈ 10.7 مللي ثانية. يستغرق FFT حقيقي بحجم 1024 نقطة أقل من 0.1 مللي ثانية على المعالج الحديث — لذا يوجد هامش ضخم للتوسيط وعرض التصوير ومنطق تثبيت الذروة.
لتطبيقات SDR العريضة النطاق التي تعالج عشرات أو مئات من ميغاهرتز، تتضاءل الميزانية بشكل حاد وتصبح FFT المسرّعة بالمعالج الرسومي (cuFFT) ضرورية. يستطيع المعالج الرسومي تشغيل آلاف من FFT بحجم 1024 نقطة بالتوازي، مما يُمكّن من عروض طيف زمني آنية للإشارات التي ستُرهق أي معالج مركزي.
- تحويل فورييه قصير المدى (STFT) يُطبّق FFT على إطارات منافذة متداخلة، مُنتجًا خريطة زمنية-ترددية لكيفية تطور المحتوى الطيفي.
- حجم الإطار N يتحكم في الدقة الترددية (Δf = f_s / N)؛ حجم القفز R يتحكم في الدقة الزمنية (Δt = R / f_s). تحسين أحدهما يُضعف الآخر — مبدأ عدم اليقين الزمني-الترددي.
- نافذة هان هي الاختيار القياسي للتحليل الآني: فصوص جانبية منخفضة، تلاشٍ سلس، وتُحقق شرط COLA عند تداخل 50% لإعادة البناء التامة.
- محلل الطيف الآني يلتقط العينات في مخزن حلقي، يُطبّق النافذة كل R عينة، يحسب FFT، ويعرض طيف القدرة بالديسيبل — يتكرر بمعدل القفز.
- التنعيم الأسي يُقلل ضوضاء العرض؛ تثبيت الذروة يكشف الذرى العابرة. كلاهما يُطبَّق بعد FFT لا قبله.
- عروض شلال الماء تُمرّر الزمن على محور والتردد على آخر، كاشفةً البنية المتغيرة زمنيًا (إشارات التشيرب، التوافقيات، التداخل) التي لا يستطيع الطيف أحادي الإطار إظهارها.
- المعالجات الحديثة لديها هامش حسابي ضخم لـ STFT بمعدلات الصوت؛ FFT المسرّعة بالمعالج الرسومي (cuFFT) ضرورية لتطبيقات SDR العريضة التي تعالج مئات الميغاهرتز.