दो एक-आयामी अनुक्रमों के असतत रैखिक कनवल्शन को वापस करने के लिए, Python Numpy में thenumpy.convolve() विधि का उपयोग करें। कनवल्शन ऑपरेटर को अक्सर सिग्नल प्रोसेसिंग में देखा जाता है, जहां यह सिग्नल पर लीनियर टाइम-इनवेरिएंट सिस्टम के प्रभाव को मॉडल करता है। संभाव्यता सिद्धांत में, दो स्वतंत्र यादृच्छिक चर का योग उनके व्यक्तिगत वितरण के दृढ़ संकल्प के अनुसार वितरित किया जाता है। यदि v, a से अधिक लंबा है, तो गणना से पहले सरणियों की अदला-बदली की जाती है।
विधि a और v का असतत, रैखिक कनवल्शन लौटाती है। पहला पैरामीटर, a (N,) पहला एक-आयामी इनपुट सरणी है। दूसरा पैरामीटर, वी (एम,) दूसरा एक-आयामी इनपुट सरणी है। तीसरा पैरामीटर, मोड वैकल्पिक है, जिसमें पूर्ण मान ',' मान्य ',' समान 'है। मोड 'वैध' लंबाई अधिकतम (एम, एन) - मिनट (एम, एन) + 1 का आउटपुट देता है। कनवल्शन उत्पाद केवल उन बिंदुओं के लिए दिया जाता है जहां सिग्नल पूरी तरह से ओवरलैप होते हैं। सिग्नल सीमा के बाहर के मानों का कोई प्रभाव नहीं पड़ता है।
डिफ़ॉल्ट मोड 'पूर्ण' है। यह ओवरलैप के प्रत्येक बिंदु पर एक आउटपुट आकार (एन + एम -1,) के साथ कनवल्शन लौटाता है। कनवल्शन के अंतिम बिंदुओं पर, सिग्नल पूरी तरह से ओवरलैप नहीं होते हैं, और सीमा प्रभाव देखा जा सकता है।
कदम
सबसे पहले, आवश्यक पुस्तकालयों को आयात करें -
import numpy as np
सरणी () विधि का उपयोग करके दो सुस्पष्ट एक-आयामी सरणी बनाना -
arr1 = np.array([1, 2, 3]) arr2 = np.array([0, 1, 0.5])
सरणियों को प्रदर्शित करें -
print("Array1...\n",arr1) print("\nArray2...\n",arr2)
दोनों सरणियों के आयामों की जाँच करें -
print("\nDimensions of Array1...\n",arr1.ndim) print("\nDimensions of Array2...\n",arr2.ndim)
दोनों सरणियों के आकार की जाँच करें -
print("\nShape of Array1...\n",arr1.shape) print("\nShape of Array2...\n",arr2.shape)
दो एक-आयामी अनुक्रमों के असतत रैखिक कनवल्शन को वापस करने के लिए, Python Numpy में thenumpy.convolve() विधि का उपयोग करें -
print("\nResult....\n",np.convolve(arr1, arr2, mode = 'full' ))
उदाहरण
import numpy as np # Creating two numpy One-Dimensional array using the array() method arr1 = np.array([1, 2, 3]) arr2 = np.array([0, 1, 0.5]) # Display the arrays print("Array1...\n",arr1) print("\nArray2...\n",arr2) # Check the Dimensions of both the arrays print("\nDimensions of Array1...\n",arr1.ndim) print("\nDimensions of Array2...\n",arr2.ndim) # Check the Shape of both the arrays print("\nShape of Array1...\n",arr1.shape) print("\nShape of Array2...\n",arr2.shape) # To return the discrete linear convolution of two one-dimensional sequences, use the numpy.convolve() method in Python Numpy print("\nResult....\n",np.convolve(arr1, arr2, mode = 'full' ))
आउटपुट
Array1... [1 2 3] Array2... [0. 1. 0.5] Dimensions of Array1... 1 Dimensions of Array2... 1 Shape of Array1... (3,) Shape of Array2... (3,) Result.... [0. 1. 2.5 4. 1.5]