कन्वोल्यूशन कैलकुलेटर क्या करता है
यह कन्वोल्यूशन कैलकुलेटर संख्याओं के दो सीमित (finite) अनुक्रमों का डिस्क्रीट कन्वोल्यूशन निकालता है। कन्वोल्यूशन सिग्नल प्रोसेसिंग, इमेज फ़िल्टरिंग, प्रायिकता (probability) और बहुपद गुणन (polynomial multiplication) जैसी कई जगहों पर एक बुनियादी संक्रिया है। हाथ से लंबे-लंबे योग करने के बजाय आप बस दो अनुक्रम दर्ज करते हैं और यह टूल तुरंत संयुक्त आउटपुट अनुक्रम लौटा देता है।
इसका उपयोग कैसे करें
इसमें केवल दो इनपुट फ़ील्ड हैं:
- पहला अनुक्रम — आपका इनपुट सिग्नल या संख्याओं का पहला सेट, कॉमा से अलग करके दर्ज करें (उदाहरण के लिए
1, 2, 3)। - दूसरा अनुक्रम — आपका दूसरा सिग्नल, कर्नेल या फ़िल्टर, इसे भी कॉमा से अलग करके लिखें (उदाहरण के लिए
0, 1, 0.5)।
दशमलव और ऋणात्मक संख्याएँ भी स्वीकार की जाती हैं। कैलकुलेटर हर प्रविष्टि को कॉमा पर अलग करता है, अतिरिक्त खाली जगह हटाता है, और परिणाम निकालने से पहले हर मान को संख्या में बदल देता है।
सूत्र को समझें
डिस्क्रीट कन्वोल्यूशन को इस तरह परिभाषित किया जाता है:
$$(\text{Seq}_1 * \text{Seq}_2)[i] = \sum_{j=\max(0,\,i-m+1)}^{\min(i,\,n-1)} \text{Seq}_1[j]\cdot \text{Seq}_2[i-j]$$लंबाई n और m वाले दो सीमित अनुक्रमों के लिए, परिणाम में ठीक n + m − 1 मान होते हैं। हर आउटपुट मान \(y[i]\) उन सभी गुणनफलों \(x[j] \cdot h[i-j]\) का योग होता है जहाँ इंडेक्स दोनों अनुक्रमों के भीतर ही रहते हैं। सरल शब्दों में कहें तो यह टूल एक अनुक्रम को दूसरे के ऊपर सरकाता है, ओवरलैप होने वाले पदों को गुणा करता है, और हर शिफ़्ट पर उनका योग कर देता है।
हल किया हुआ उदाहरण
मान लीजिए पहला अनुक्रम = 1, 2, 3 और दूसरा अनुक्रम = 0, 1, 0.5। यहाँ n = 3 और m = 3, इसलिए परिणाम में 3 + 3 − 1 = 5 मान होंगे:
- \(y[0] = 1\cdot 0 = 0\)
- \(y[1] = 1\cdot 1 + 2\cdot 0 = 1\)
- \(y[2] = 1\cdot 0.5 + 2\cdot 1 + 3\cdot 0 = 2.5\)
- \(y[3] = 2\cdot 0.5 + 3\cdot 1 = 4\)
- \(y[4] = 3\cdot 0.5 = 1.5\)
तो आउटपुट होगा 0, 1, 2.5, 4, 1.5।
अक्सर पूछे जाने वाले प्रश्न
आउटपुट अनुक्रम कितना लंबा होता है? हमेशा पहले अनुक्रम की लंबाई जमा दूसरे अनुक्रम की लंबाई, माइनस एक (n + m − 1)।
क्या दोनों अनुक्रमों का क्रम मायने रखता है? नहीं। कन्वोल्यूशन क्रमविनिमेय (commutative) होता है, इसलिए दोनों इनपुट आपस में बदल देने पर भी वही परिणाम अनुक्रम मिलता है।
क्या मैं इसे बहुपद गुणन के लिए इस्तेमाल कर सकता हूँ? हाँ। अगर आप हर अनुक्रम को किसी बहुपद के गुणांक (coefficients) मानें, तो कन्वोल्यूशन का आउटपुट उनके गुणनफल के गुणांक होते हैं — यह सिग्नल के साथ-साथ बीजगणित के लिए भी एक काम का शॉर्टकट है।