IP Library Granted Patent US 12,619,862
Granted Patent B2
US 12,619,862 · App. 18/604,740 · Granted May 5, 2026

Deconvolution by convolutions

Inventors: Tom Michiels (Leuven, BE); Thomas Julian Pennello (Mountain View, CA)
Assignee: Synopsys, Inc.
G06N3/063G06N3/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,619,862
App. No.
18/604,740
Granted
May 5, 2026
Kind
B2
Abstract

Disclosed herein are apparatus, method, and computer-readable storage device embodiments for implementing deconvolution via a set of convolutions. For example, an apparatus includes a memory and at least one processor, communicatively coupled with the memory, to perform operations including obtaining a tensor representing image data, generating a deconvolution segment of a plurality of deconvolution segments by performing a convolution to transform the tensor based at least in part on a convolution filter and a stride value, and generating a complete deconvolution for image processing by assembling each deconvolution segment of the plurality of deconvolution segments.

Claims (46)

1 . An apparatus comprising:

a memory; and

at least one processor, communicatively coupled with the memory, to perform operations comprising:

obtaining a representation of image data;

identifying a set of deconvolution parameters of a complete deconvolution having a set of deconvolution parameters comprising a deconvolution stride value and a deconvolution kernel size of a deconvolution kernel;

dividing the complete deconvolution into a plurality of convolutions, each convolution of the plurality of convolutions having a set of convolution parameters comprising:

a respective convolution kernel size determined based on the deconvolution kernel size, the deconvolution stride value and a respective convolution index value of the convolution; and

a respective convolution kernel coefficient determined based on the deconvolution kernel;

for each convolution of the plurality of convolutions, performing the convolution to transform the representation of image data and generate a convolution output of a plurality of convolution outputs, wherein each convolution output of the plurality of convolution outputs corresponds to a respective position determined based on the deconvolution stride value and the respective convolution index value;

generating the complete deconvolution by interleaving each convolution output of the plurality of convolution outputs; and

causing at least one of an image processing operation or a computer vision operation to be performed using the complete deconvolution.

2 . The apparatus of claim 1 , wherein causing at least one of the image processing operation or a computer vision operation to be performed using the complete deconvolution comprises outputting the complete deconvolution via at least one of: an output file or an output device.

3 . The apparatus of claim 1 , wherein the representation of image data comprises a tensor, and wherein performing the convolution further comprises expanding the tensor by at least one layer of padding elements.

4 . The apparatus of claim 3 , wherein the operations further comprise truncating each convolution of the plurality of convolutions by a truncation value corresponding to the at least one layer of padding elements.

5 . The apparatus of claim 1 , wherein the representation of image data is an output of a separate convolution.

6 . The apparatus of claim 1 , wherein each convolution is performed using a respective convolution filter that comprises a respective subset of a deconvolution filter.

7 . A method comprising:

obtaining, by at least one processing device, a representation of image data;

identifying, by at least one processing device, a set of deconvolution parameters of a complete deconvolution having a set of deconvolution parameters comprising a deconvolution stride value and a deconvolution kernel size;

dividing, by the at least one processing device, the complete deconvolution into a plurality of convolutions, each convolution of the plurality of convolutions having a set of convolution parameters comprising:

a respective convolution kernel size determined based on the deconvolution kernel size, the deconvolution stride value and a respective convolution index value of the convolution; and

a respective convolution kernel coefficient determined from a deconvolution kernel;

for each convolution of the plurality of convolutions, performing the convolution of a plurality of convolutions to transform the representation of image data based at least in part on a kernel size of the complete deconvolution and a stride value of the complete deconvolution, wherein each convolution of the plurality of convolutions corresponds to a respective deconvolution segment of the plurality of deconvolution segments, and wherein the stride value of the complete deconvolution is equal to a number of convolutions of the plurality of convolutions and generate a convolution output of a plurality of convolution outputs, wherein each convolution output of the plurality of convolution outputs corresponds to a respective position determined based on the deconvolution stride value and the respective convolution index value;

generating, by the at least one processing device, the complete deconvolution by interleaving each convolution output of the plurality of convolution outputs; and

causing, by the at least one processing device, at least one of an image processing operation or a computer vision operation to be performed using the complete deconvolution.

8 . The method of claim 7 , wherein causing at least one of the image processing operation or a computer vision operation to be performed using the complete deconvolution comprises outputting, by the at least one processing device, the complete deconvolution via at least one of: an output file or an output device.

9 . The method of claim 7 , wherein the representation of image data comprises a tensor, and wherein performing the convolution further comprises expanding the tensor by at least one layer of padding elements.

10 . The method of claim 9 , further comprising truncating, by the at least one processing device, each convolution of the plurality of convolutions by a truncation value corresponding to the at least one layer of padding elements.

11 . The method of claim 7 , wherein the representation of image data is an output of a separate convolution.

12 . The method of claim 7 , wherein each convolution is performed using a respective convolution filter that comprises a respective subset of a deconvolution filter.

13 . A non-transitory computer-readable medium having instructions stored thereon, wherein the instructions, when executed by at least one computer processor, cause the at least one computer processor to perform operations comprising:

obtaining a representation of image data;

identifying a set of deconvolution parameters of a complete deconvolution having a set of deconvolution parameters comprising a deconvolution stride value and a deconvolution kernel size;

dividing the complete deconvolution into a plurality of convolutions, each convolution of the plurality of convolutions having a set of convolution parameters comprising:

a respective convolution kernel size determined based on the deconvolution kernel size, the deconvolution stride value and a respective convolution index value of the convolution; and

a respective convolution kernel coefficient determined from a deconvolution kernel;

for each convolution of the plurality of convolutions, performing the convolution to transform the representation of image data and generate a convolution output of a plurality of convolution outputs, wherein each convolution output of the plurality of convolution outputs corresponds to a respective position determined based on the deconvolution stride value and the respective convolution index value;

generating the complete deconvolution by interleaving each convolution output of the plurality of convolution outputs; and

causing at least one of an image processing operation or a computer vision operation to be performed using the complete deconvolution.

14 . The non-transitory computer-readable medium of claim 13 , wherein causing at least one of image processing operation or a computer vision operation to be performed using the complete deconvolution comprises outputting the complete deconvolution via at least one of: an output file or an output device.

15 . The non-transitory computer-readable medium of claim 13 , wherein the representation of image data comprises a tensor, wherein performing the convolution further comprises expanding the tensor by at least one layer of padding elements, and wherein the operations further comprise truncating each convolution of the plurality of convolutions by a truncation value corresponding to the at least one layer of padding elements.

16 . The non-transitory computer-readable medium of claim 13 , wherein the representation of image data is an output of a separate convolution.

17 . The non-transitory computer-readable medium of claim 13 , wherein each convolution is performed using a respective convolution filter that comprises a respective subset of a deconvolution filter, and wherein the stride value further defines a number of convolution results of a set of convolution results generated by performing the convolution.

18 . The apparatus of claim 1 , wherein the set of convolution parameters further comprises a convolution stride value of 1.

19 . The method of claim 7 , wherein the set of convolution parameters further comprises a convolution stride value of 1.

20 . The non-transitory computer-readable medium of claim 13 , wherein the set of convolution parameters further comprises a convolution stride value of 1.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2026
From: SYNOPSYS, INC.
To: MIPS HOLDING, INC.
Reel/Frame 075801/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2024
From: MICHIELS, TOM; PENNELLO, THOMAS JULIAN
To: SYNOPSYS, INC.
Reel/Frame 066770/0271 →
Priority Claims (1)
EP 18198452 · Oct 3, 2018 · regional
Continuity (2)
Continuation 16592241 · Oct 3, 2019
Related Publication 20240232602A1 · Jul 11, 2024
References Cited (9)
US 11074492B2 · Lele et al. · 2021 [cited by applicant]
Toderici, G., O'Malley, S. M., Hwang, S. J., Vincent, D., Minnen, D., Baluja, S., . . . & Sukthankar, R. (2015). Variable rate image compression with recurrent neural networks. arXiv preprint arXiv: 1511.06085. (Year: 2… [cited by examiner]
Chen J., et al., “Combining Fully Convolutional and Recurrent Neural Networks for 3D Biomedical Image Segmentation,” 30th Conference on Neural Information Processing Systems, 2016, 9 Pages. [cited by applicant]
Dumoulin V., et al., “A Guide to Convolution Arithmetic for Deep Learning,” 2nd Edition, Jan. 12, 2018, 31 Pages. [cited by applicant]
Michailovich O.V., et al., “A Novel Approach to the 2-D Blind Deconvolution Problem in Medical Ultrasound,” IEEE Transactions on Medical Imaging, Jan. 2005, vol. 24, No. 1, pp. 86-104. [cited by applicant]
Noh H., et al., “Learning Deconvolution Network for Semantic Segmentation,” In Proceedings of the IEEE International Conference on Computer Vision, 2015, pp. 1520-1528, 10 Pages. [cited by applicant]
Oh J., et al., “Action-Conditional Video Prediction Using Deep Networks in Atari Games,” Advances in Neural Information Processing Systems 28, 2015, pp. 1-10. [cited by applicant]
Zeng D., et al., “Cerebral Perfusion Computed Tomography Deconvolution via Structure Tensor Total Variation Regularization,” Medical Physics, May 2016, vol. 43, No. 5, pp. 2091-2107. [cited by applicant]
Zhang P., et al., “Learning Uncertain Convolutional Features for Accurate Saliency Detection,” In Proceedings of the IEEE International Conference on Computer Vision, Oct. 2017, pp. 212-221. [cited by applicant]