# Search Results

Results tagged with Search options answers only user 128
40 results

Convolution is a mathematical operation on two functions f and g, producing a third function that is typically viewed as a modified version of one of the original functions.

I think this post gives a lot of intuition about Convolution: https://mathoverflow.net/questions/5892/what-is-convolution-intuitively In the Signal Processing world, an LTI (Linear and Time … Invariant) system basically scales and sums delayed versions of the input signal. This can be mathematically described using the integral known as convolution. …
answered Jul 17 '15 by Royi
Many Recommender Systems are based on Matrix Factorization. There is a technique called Convolutional Matrix Factorization which is might what your teacher implied. You may have a look here Tutorial …
answered Feb 3 '17 by Royi
Convolution Matrix and there you have it... A practical example is given in my answer to 1D Deconvolution with Gaussian Kernel (MATLAB). …
answered Aug 2 '14 by Royi
Question - When Are the Convolution Operator (Kernel) and the Deconvolution Operator (Kernel) the Same? Discrete Convolution (Cyclic) is described by Circulant Matrix. Circulant Matrices are … diagonalized by the DFT Matrix (Will be denoted as $F$). So given a convolution kernel $g$ with its matrix form given by $G$ one could have its diagonalization by: $$G = {F}^{H} \operatorname{diag … answered Sep 27 '17 by Royi I created a function to create a Matrix for Image Filtering (Similar ideas to MATLAB's imfilter()): function [ mK ] = CreateImageFilterMtx( mH, numRows, numCols, operationMode, boundaryMode ) %UNTI … answered Jan 15 by Royi Few notes: Pay attention to the "Factors" in the DFT. Some use  \frac{1}{2 \pi}  some use others, pay attention you normalize accordingly. Multiplication of the DFT is equivalent of Circular Convolution. You should pad the signals accordingly to get the "Classic Convolution". … answered Aug 12 '14 by Royi I think it should be:$$ \boldsymbol{y}_{i} = {H}_{i} \boldsymbol{x} + \boldsymbol{n}_{i} $$For the  i  -th antenna and  {H}_{i}  being the convolution matrix of this specific channel. You … answered Aug 14 '18 by Royi Pixels outside the image borders must be extrapolated. Now, you need to chose the model of your extrapolation. For instance, if you're working within the Discrete Fourier model a periodic extrapolati … answered Sep 17 '15 by Royi In your case, since you have multiple images while you have a given set of kernels the DFT based Correlation would be the best fit. Pay attention that the DFT Based Convolution / Correlation is … equivalent to Convolution / Correlation with Periodic / Circular boundary conditions. It means that if you need different boundary conditions (Like padding with Nearest Neighbor) then it means you need to … answered Mar 24 by Royi It seems your needs matches the Dynamic Time Warping algorithm. You should try it as a metric to compare them. The idea of changing the size is trickier as you may loose / change data which is import … answered Aug 2 '17 by Royi better to do FFT on the Rows and Spatial Convolution on the Columns. This is all true when "Counting" FLOPS. Real life timing is more than that. for instance, if you're using highly tuned Convolution answered Jan 12 '15 by Royi Another approach (Though the same). Let's assume we're in Finite Dimension Space and the convolution operator is the Circular Convolution (Namely, the same we would do using the DFT). Then  y …  h  filter). The above implies  {H}^{-1}  is also a circulant matrix and since:$$ x = {H}^{-1} y  The operation can be carried out as a convolution. Pay attention, we assumed the there are …
answered Sep 27 '17 by Royi
The answer boils down to 2 issues with the practical approximations of the Gaussian Kernel: Though the Gaussian Kernel is radially symmetric its discrete approximation has a rectangle support. Unl …
answered Jun 13 '14 by Royi
To answer your question: Can easily be done. One must remember that the short signal (The Kernel) must be padded (With zeros) to have the same size as the image before the DFT conversion. Once they …
answered Aug 24 '16 by Royi
I wrote a function which solves this in my StackOverflow Q2080835 GitHub Repository (Have a look at CreateImageConvMtx()). Actually the function can support any convolution shape you'd like - full …