تحويل والش-هادامارد السريع


في الرياضيات الحسابية، يُعد تحويل والش-هادامارد السريع المرتب حسب هادامارد ( FWHT h ) خوارزمية فعالة لحساب تحويل والش-هادامارد (WHT). ويُمكن تطبيق WHT من الرتبة 1 بشكل مبسط.سيكون لها تعقيد حسابي من O() . يتطلب FWHT h فقطعمليات الجمع أو الطرح.
خوارزمية FWHT h هي خوارزمية فرق تسد تقوم بتقسيم WHT بشكل متكرر إلى حجمإلى اثنين من أجهزة WHT الأصغر حجمًا[ 1 ] يتبع هذا التنفيذ التعريف التكراري لـمصفوفة هادامارد:
اليمكن تجميع عوامل التطبيع لكل مرحلة معًا أو حتى حذفها.
يتم الحصول على التحويل المرتب بالتسلسل ، والمعروف أيضًا باسم تحويل والش-هادامارد السريع المرتب بـ Walsh، FWHT w ، عن طريق حساب FWHT h كما هو مذكور أعلاه، ثم إعادة ترتيب المخرجات.
يُمكن الحصول على تطبيق بسيط وسريع وغير تكراري لتحويل والش-هادامارد من خلال تحليل مصفوفة تحويل هادامارد كما يلي:، حيث A هو الجذر m لـ[ 2 ]
مثال على كود بايثون
import math def fwht ( a ) -> None : " ""تحويل والش-هادامارد السريع في مكانه للمصفوفة a.""" assert math.log2 ( len ( a ) ) . is_integer (), "طول a هو قوة للعدد 2" h = 1 while h < len ( a ): # تنفيذ تحويل والش-هادامارد السريع for i in range ( 0 , len ( a ), h * 2 ): for j in range ( i , i + h ): x = a [ j ] y = a [ j + h ] a [ j ] = x + y a [ j + h ] = x - y # تطبيع وزيادة a /= math.sqrt ( 2 ) h * = 2انظر أيضاً
مراجع
- ↑ فينو، بي جيه؛ ألغازي، في آر (1976). "معالجة مصفوفية موحدة لتحويل والش-هادامارد السريع". معاملات IEEE في الحوسبة . 25 (11): 1142-1146 . doi : 10.1109/TC.1976.1674569 . S2CID 13252360 .
- ↑ يارلاجادا وهيرشي، "تحليل وتوليف مصفوفة هادامارد"، 1997 (سبرينغر)
روابط خارجية
- تشارلز قسطنطين غوماس، تحويل هادامارد السريع الذي يعود تاريخه إلى قرن من الزمان، يثبت فائدته في الاتصالات الرقمية
- معالجة الإشارات الرقمية
- نماذج أولية لمعالجة الإشارات
- نماذج أولية للخوارزميات وهياكل البيانات
