দুটি এক-মাত্রিক সিকোয়েন্সের বিচ্ছিন্ন রৈখিক আবর্তন ফিরিয়ে আনতে, পাইথন নম্পিতে thenumpy.convolve() পদ্ধতি ব্যবহার করুন। কনভোলিউশন অপারেটরকে প্রায়শই সিগন্যাল প্রসেসিংয়ে দেখা যায়, যেখানে এটি একটি সিগন্যালে একটি লিনিয়ার টাইম-ইনভেরিয়েন্ট সিস্টেমের প্রভাবকে মডেল করে। সম্ভাব্যতা তত্ত্বে, দুটি স্বাধীন র্যান্ডম ভেরিয়েবলের যোগফল তাদের পৃথক বণ্টনের পরিবর্তন অনুসারে বিতরণ করা হয়। যদি v a এর থেকে দীর্ঘ হয়, তাহলে গণনার আগে অ্যারেগুলি অদলবদল করা হয়।
পদ্ধতিটি a এবং v এর বিচ্ছিন্ন, রৈখিক আবর্তন প্রদান করে। ১ম প্যারামিটার, a (N,) হল প্রথম এক-মাত্রিক ইনপুট অ্যারে। 2য় প্যারামিটার, v (M,) হল দ্বিতীয় এক-মাত্রিক ইনপুট অ্যারে৷ 3য় প্যারামিটার, মোড ঐচ্ছিক, মান পূর্ণ', 'বৈধ', 'একই'। দৈর্ঘ্য সর্বাধিক (M, N) - min(M, N) + 1 এর মোড 'বৈধ' রিটার্ন আউটপুট। কনভোল্যুশন প্রোডাক্ট শুধুমাত্র সেই পয়েন্টগুলির জন্য দেওয়া হয় যেখানে সিগন্যালগুলি সম্পূর্ণভাবে ওভারল্যাপ হয়। সংকেত সীমানার বাইরের মানগুলির কোন প্রভাব নেই৷
ডিফল্ট মোড 'পূর্ণ'। এটি ওভারল্যাপের প্রতিটি বিন্দুতে একটি আউটপুট শেপ (N+M-1,) সহ কনভল্যুশন প্রদান করে। আবর্তনের শেষ বিন্দুতে, সংকেতগুলি সম্পূর্ণরূপে ওভারল্যাপ করে না, এবং সীমানা প্রভাব দেখা যেতে পারে৷
পদক্ষেপ
প্রথমে, প্রয়োজনীয় লাইব্রেরিগুলি আমদানি করুন -
import numpy as np
array() মেথড −
ব্যবহার করে দুটি নম্পি ওয়ান-ডাইমেনশনাল অ্যারে তৈরি করা হচ্ছে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)
দুটি এক-মাত্রিক অনুক্রমের বিচ্ছিন্ন রৈখিক আবর্তন ফিরিয়ে আনতে, পাইথন নম্পিতে 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]