Questions tagged [deconvolution]

An algorithmic process to reverse the effects of a convolution, which is a linear form of signal or image filtering.

Deconvolution is the process of estimating an original signal (or image) from recorded data. Usually, the process of recording the signal involves a transfer function (in imaging, a point spread function), which is convolved with the original signal and blurs it. Deconvolution can then be applied to improve the signal quality. For example, in fluorescence microscopy deconvolution can be used together with special illumination configurations to obtain super-resolved images. If the transfer function cannot be measured, bind deconvolution can be used to estimate both the original signal and the transfer function simultaneously.

Deconvolution typically involves regularization and iterative optimization methods.


Related tags

203 questions
1
vote
1 answer

Can 2D transpose convolution be represented as a Toeplitz matrix multiplication?

Can a 2D transpose convolution operation be represented as a matrix multiplication with the Toeplitz matrix, as can be done for a normal convolution? I want to generalise some ideas from a dense network to a convolutional network. For normal…
AuSch
  • 39
  • 3
1
vote
1 answer

Wiener filter failed for blurry image by same size convolution

I'm testing Wiener filter in MATLAB to restore a blurred image. I was using conv2() to blur the original image. If I use the 'full' option for conv2(), everything works well. But when I change to 'same' or 'valid', suddenly a lot of artifacts…
Akahs
  • 333
  • 2
  • 10
1
vote
1 answer

Tensorflow: Get the same tensor after a series of convolution and deconvolution

I am wondering whether it is possible to end up with the same tensor after propagating it through a convolutional and then deconvolutional filter. For example: random_image = np.random.rand(1, 6, 6, 3) input_image = tf.placeholder(shape=[1, 6, 6,…
gorjan
  • 5,405
  • 2
  • 20
  • 40
1
vote
1 answer

Kernel estimation given original and convoluted 1D data

I can't figure out how to find kernel used for convolution given original data and convoluted data. For example, If I have 1D data X and I apply convolution with some kernel phi I will get output convoluted_x like this. import numpy as np X =…
JaySparkexel
  • 165
  • 4
  • 16
1
vote
1 answer

expected conv2d_7 to have shape (220, 220, 1) but got array with shape (224, 224, 1)

I am following the tutorial from keras blog (https://blog.keras.io/building-autoencoders-in-keras.html) to build an autoencoder. I used my own dataset and I am using the following code on my 224*224 size image. input_img = Input(shape=(224,224,1)) #…
nzy
  • 854
  • 2
  • 15
  • 28
1
vote
0 answers

Wiener filter for out-of-focus image in Python

I'm trying to use Wiener filtering to unblur an out-of-focus image. My application is purely academic, so I don't need a perfect result. However, I'm running into some odd problems and am unsure if I am doing things correctly. To begin, I set up a…
DJElectric
  • 349
  • 1
  • 4
  • 18
1
vote
0 answers

image segmentation can't generate result

Building an Encoder-Decoder sequence for image segmentation,That’s to say,I use black background and white foreground to train the whole network.and in test process, it generate nothing but black]1 []2 I check the softmax output, find that it does…
1
vote
1 answer

How to use conv1d_transpose in TensorFlow for single-channel images?

New to TensorFlow. I have a single-channel image of size W x H. I would like to do a 1D deconvolution on this image with a kernel that only calculates the deconvoluted output row-wise, and 3 by 3 pixels. Meaning that it uses each group of 3 pixels…
user20112015
  • 307
  • 1
  • 3
  • 9
1
vote
1 answer

Upscaling in a CNN: Conv Transpose or Tile(Nearest neighbor)?

So far I've seen upscaling in a net using conv transpose (for example in the DCGAN paper). Now I'm reading a new article by Nvidia (growing GANs- see https://arxiv.org/abs/1710.10196) where they are using tf.tile to "upscale",after which they are…
1
vote
1 answer

What defines the output tensor shape of tf.layers.conv2d_transpose?

When using tf.layers.conv2d_transpose what defines the output tensor shape? For example: if the input was 4x4x512, for the output to be 8x8x256 the filters can be given, but how are is the height and width defined? Or else is it always two times…
1
vote
1 answer

C++ - Eigen FFT use for Deconvolution of 2 dimensional image

I am trying to perform deconvolution on an image, I which is n x m. The kernel used to do the convolution on it is K which is also n x m. Now I want to find the original image, O, by performing a deconvolution. I know that I can retrieve the image O…
Saleem
  • 92
  • 2
  • 12
1
vote
1 answer

Richardson-Lucy deconvolution for one dimensional array

I am looking for an implementation of Richardson-Lucy deconvolution algorithm that works for one dimensional arrays, like spectroscopic data. I tried scikit-image, but apparently it only works for images.
1
vote
1 answer

Deconvolution in Tensorflow vs. Caffe

What are the differences between the Deconvolution layer in Caffe and Tensorflow? In Tensoroflow, there are two padding modes: "SAME" and "VALID", which one is equal to padding mode that was used in Caffe? For example, in Tensorflow, the…
trminh89
  • 877
  • 2
  • 10
  • 17
1
vote
1 answer

PSF (point spread function) for an image (2D)

I'm new in image analysis (with Python) and I would like to apply the richardson_lucy deconvolution (from skimage) on my data (CT scans). For this reason, I estimated the PSF in "number of voxels" by means of a specific software. Its value is…
Sav
  • 142
  • 1
  • 17
1
vote
1 answer

Transpose convolution (deconvolution) arithmetic

I am using tensorflow to construct a convolution neural network. Given a tensor of the shape (none, 16, 16, 4, 192) I want to perform a transpose convolution that results in the shape (none, 32, 32, 7, 192). Would a filter size of [2,2,4,192,192]…