EP3841495A1 - Convolution-based processing - Google Patents
Convolution-based processingInfo
- Publication number
- EP3841495A1 EP3841495A1 EP18762784.9A EP18762784A EP3841495A1 EP 3841495 A1 EP3841495 A1 EP 3841495A1 EP 18762784 A EP18762784 A EP 18762784A EP 3841495 A1 EP3841495 A1 EP 3841495A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- data
- convolution
- memory controller
- channels
- lines
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
- G06F17/153—Multidimensional correlation or convolution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/06—Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
- G06F7/08—Sorting, i.e. grouping record carriers in numerical or other ordered sequence according to the classification of at least some of the information they carry
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4818—Threshold devices
- G06F2207/4824—Neural networks
Definitions
- the present invention relates to convolution-based processing particularly, but not exclusively, for convolution neural networks.
- CNNs convolutional neural networks
- the dimensions (or“size”) of the filter are usually odd numbers and there is trend of using small filters, such as 3 x 3 or 1 x 1.
- Specially-designed hardware can be used to execute an already-trained neural network.
- the hardware is normally designed to operate with a filter having particular dimensions, and so this can place limits on the CNN architecture which can be executed efficiently by the hardware. For example, if the hardware is intended to use filters of a particular size but it is desirable to use smaller filters, then there may be no
- apparatus comprising a hardware processing module (such as a hardware convolution neural network module) and an external memory controller (such as a direct memory access module) coupled to the hardware processing module.
- the data is divided or divisible into k channels, where k is an integer greater than or equal to two, for example, 2, 3 or 4.
- the apparatus is configured to provide interleaved lines of the data, sequentially interleaved from the k channels, to the input memory controller.
- the input memory controller is configured to provide successive windows of data to a respective convolution unit, the window taken across a set of k lines, in line- wise increments of k lines.
- the convolution unit is arranged to convolve a series of windows forming a tile with a filter having a size k x Y, where Y is equal to or less than u.
- the value of u may be equal to the value of v.
- the value of u may be 5.
- the apparatus may further comprise scratchpad memory, and the external memory controller may be interposed between the external memory controller and input memory controller.
- the scratchpad memory may take the form of static random-access memory (SRAM).
- the apparatus may further comprise memory, and the external memory controller may be coupled to the memory.
- the memory may take the form of dynamic random-access memory (DRAM), such as double data rate synchronous random-access memory (DDR SDRAM).
- DRAM dynamic random-access memory
- DDR SDRAM double data rate synchronous random-access memory
- the external memory controller may be configured to receive data divided or divisible into k channels and to interleave the data from the k channels to provide the
- the output memory controller may be configured to receive output data and to interleave the output data to provide the interleaved lines of the data.
- the apparatus may be further configured to write out the interleaved lines with stride k.
- the value of k may be equal to or greater than two.
- the value of k may be two, three or four.
- the value of k may be equal to or greater than five.
- the hardware processing module may be a hardware convolutional neural network module.
- an integrated circuit comprising the apparatus of the first aspect of the present invention.
- the integrated circuit may be a system-on-chip (SoC) or microcontroller.
- SoC system-on-chip
- the integrated circuit may further comprise a CPU subsystem in communication with the convolutional neural network module.
- the integrated circuit may further comprise memory.
- a head unit comprising the integrated circuit of the second aspect of the present invention.
- the head unit may be operable to receive images from a digital camera and to pass the images to the hardware circuit.
- a system comprising the head unit of the third aspect of the present invention and a digital camera configured to transmit images to the head unit for processing by the hardware circuit.
- the system may further comprise a communications bus for transmitting images from the digital camera to the head unit.
- the system may be a driver or operator assistance system.
- vehicle or plant comprising the driver or operator assistance system.
- the motor vehicle comprising the driver assistance system.
- the motor vehicle may be a motorcycle, an automobile (sometimes referred to as a“car”), a minibus, a bus, a truck or lorry.
- the motor vehicle may be powered by an internal combustion engine and/or one or more electric motors.
- a method of convolution-based processing comprises receiving data, divided or divisible into k channels, where k is an integer equal to or greater than one, using a set of convolution units, each convolution unit capable of performing a convolution on a respective portion of the data using a filter having size u x v, wherein u and v are each a positive integer equal to or greater than one, providing interleaved lines of the data, sequentially interleaved from the k channels, providing successive windows of interleaved lines of data a respective convolution unit, the window taken across a set of k lines, in increments of k lines, convolving a series of windows forming a tile with a filter having a size k x Y, where Y is equal to or less than v to provide convolution data, and outputting data in dependence upon convolutions performed by the convolution units.
- the value of u may be equal to the value of u.
- the value of u may be 5.
- the method is preferably a hardware-implemented method.
- FIG. 1 is a schematic block diagram of a hardware-based convolutional neural network (CNN) module intended to perform 5 x 5 convolutions;
- CNN convolutional neural network
- Figure 2 shows a 5 x 5 filter typically used in the CNN module shown in Figure 1;
- Figure 3 shows a 1 x 1 filter usable in the CNN module shown in Figure 1;
- Figure 4 illustrates typical handling of an activation map whereby each channel is supplied to a respective input channel
- Figure 5a shows a 1 x 3 filter usable in the CNN module shown in Figure 1;
- Figure 5b shows a 5 x 3 filter usable in the CNN module shown in Figure 1;
- Figure 6 illustrates re-shaping an activation map whereby lines from three channels are interleaved and supplied to one input channel
- Figure 7 illustrates re-organising of memory and loading of data into convolution unit
- Figure 8 illustrates 1 x 3 convolution and readout, followed by 3-line pixel shift
- Figure 9 illustrates striding and interleaving of input data
- Figure 10 illustrates re-shaping an activation map whereby lines from three channels are written out with stride and interleaved
- Figure 11 is a schematic block diagram of system memoiy, a direct memory access module, scratchpad memory and a CNN input a direct memory access module;
- Figure 12 is a schematic block diagram of a CNN output a direct memory access module and system memory
- Figure 13 is a schematic block diagram of the hardware-based CNN module shown in Figure 1 performing 1 x 3 convolutions;
- Figure 14 illustrates re-ordering of data by a direct memory access module
- Figure 15 illustrates re-ordering of data by a CNN output direct memory access module
- Figure 16 illustrates implementing a first linear CNN using a CNN module
- Figure 17 illustrates implementing a second linear CNN using a CNN module
- Figure 18 illustrates implementing a branch CNN using a CNN module
- FIG. 19 illustrates a motor vehicle which comprises a system which includes a hardware CNN module.
- CNN convolutional neural network
- the CNN module 1 is coupled to a memory system 2 which includes system memory 3 typically in the form of dynamic RAM (herein referred to as“DDR memory” or simply “DDR”), a direct memory access (DMA) module 4 (herein referred to as“IMP-DMA”) and relatively small, but fast (compared to system memory 3) scratchpad memory 5 (which is herein referred to as“cache memory”,‘TMPC memory” or simply“IMPC”).
- system memory 3 may take the form of external off-chip memory (i.e., not on the same chip as the CNN modulei) or on-chip, peripheral memory.
- the scratchpad memory 5 may take the form of SRAM, e.g. 2 MB of SRAM.
- the memory system 2 feeds data arranged in k input/feature map channels to the CNN module 1 for processing.
- k 4.
- the input/feature map channel is referred to as“an input channel” when arrange to provide input data to the first CNN layer and is referred to as “a feature map channel” when used to supply data to the second and each subsequent CNN layer.
- an input/feature map channel may be hereinafter referred to as“an input channel”.
- the CNN module 1 includes an input DMA and input register module 8 (herein simply referred to as“CNN input DMA module” or“input DMA module”) which feeds data via a set of line memories 9 (or“buffers”) to corresponding multiplexers 10 which in turn feeds the data to a set of convolution units 11 (or“processing nodes” or simply“nodes”) which are fed with convolution weights 12 from weights register 13.
- the convolution weights 12 may be transferred to the weights register 13 from non-volatile memory 27, for example in the form of flash memory, outside the module 1.
- the outputs of the convolution units 11 are fed into a set of m adder trees 14, wherein bitwise bias and carry bit shifts are carried out using bias 15 and carry data 16 from respective registers 17, 18.
- the output from each adder tree 14 is fed into a respective saturation bit-shifter module 19.
- the output of each bit-shifter module 19 is fed into respective rectified linear units 20 (herein also referred to as“Relu”) which perform an activation function.
- the outputs of the rectified linear units 19 are fed into a ranking module 21 which can perform labelling.
- the outputs of the ranking module 20 are fed into a down-sampling module 22 (herein also referred to as an“X/Y pool”) and the output of the down- sampling module 21 is fed into an output register and output DMA module 23.
- the output register and output DMA module 23 provides output data which is arranged in m output channels 25 to the memory system 2 and which may be fed back as input date to the CNN module 1, to another, different CNN module 1, and/or be stored in system memory 4.
- There may be one or more output channels 25 (z ' .e., m > 1), preferably 4, 5, 6, 7 or 8 channels (z ' .e., m 4, 5, 6, 7 or 8).
- m 8.
- a CNN performs feature extraction using a series of computational layers which include one or more convolutional layers, each convolutional layer employing a set of filters (or “kernels”) to extract features and produce corresponding activation map (or“feature map”), and one or more pooling/sub-sampling layers for down-sampling images or feature maps.
- the output of one computational layer may be used as the input activation map for a subsequent computational layer.
- the output of the CNN module 1 may be fed back into the CNN module 1 or into another CNN module 1 as an input and, thus, execute a multiple-level CNN.
- the convolutional layer can process ri m input/feature map channels in one run, where ri m is a fixed, positive, non-zero integer number.
- the activation map is convolved with sets of weights, for example, previously-determined weights.
- Pixel or other form of data
- Pixel may have a size of 2 bytes. A smaller pixel (or other data unit) of 1 byte (8 bits), half a byte (4 bits) or smaller pixels having few bits may be used.
- the CNN module 1 may not be able process a whole h x w x i activation map (z ' .e., an activation map for one input/feature map channel) in one go. Instead, however, it can process a tile that can fit into the line memory Im having a size lm_max_w and lm_mox_h.
- a CNN module is intended to process a certain size of a filter, for example a 5 x 5 filter 12 A , then it is also possible to process a smaller filter, such as a 1 x 1 filter 12B, by filing unused elements (or“entries”) of the 5 x 5 with zeros.
- the execution times using the two filters 12A, 12B are about the same.
- a 1 x 1 filter 12B is employed most hardware resources are left unused.
- in_ch hardware input channels from an activation map 32 can be processed.
- single-channel activation maps 32 0 , 32 1 , 32 2 , 32 3 are arranged into groups of four and each single-channel activation map 32 0 , 32 1 , 32 2 , 32 3 is passed to a respective input channel.
- a 1 x 1 convolution can be done more efficiently by performing three 1 x 1 convolutions in one go, thereby increasing the bandwidth by a factor of three.
- this approach involves using a modified filter 12c and reshaping the input activation map in memory.
- the modified filter 12c filter which includes five rows and five columns comprising twenty-five entries and includes seventh, twelfth and seventeenth entries, herein labelled w 0 _ cho? Wo chi Wo-ch2 respectively, lying in the second, third and fourth rows in the third column whose values can be set accordingly, i.e., may take non-zero, real value.
- the other entries in the filter are set to zero.
- activation maps 32 0 , 32 1 , 32 2 for three channels are grouped together and reordered to form a re-ordered activation map 32 R for an input channel.
- the height of the re-shaped activation map 32 R is three times bigger ⁇ i.e., 3 h) than a normal single- channel activation map, while its width remains the same.
- the reshaped activation map 32 R consists of interleaved lines 33* , , 33ch , , 33LI, 2 , 33L 0>2 , 33LI, 2 , 33A 2 , 2 from the three channels.
- the reshaped activation map 32 R starts with the first line 33* 0,1 from the first channel ch o and then is followed by the first line 33* 1,1 from the second channel ch 1, the first line 33* 2 , I from the third channel ch 2, the second line 33* 0, 2 from the first channel ch o, the second line 33* 1, 2 from the second channel ch 1, the second line 33* 2,2 from the third channel ch 2, the third line (not shown) from the first channel ch o and so on.
- a 1 x 5 filter 12 D may be used.
- the window 36 moves down (z ' .e., in the y-direction) by 3 lines (as opposed to along the lines, z ' .e., in the x-direction) and the next convolution is performed and so on.
- the process can be used to increase bandwidth by a fact of three.
- the CNN module 1 ( Figure 1) has the ability to write out each line with a stride, then more 1 x 1 filters can be processed in one step.
- nine 1 x 1 filter operations can be done in one step, after which pixels are written out and re-ordered, as hereinbefore described. Reordering can be done in the preceding convolutional layer, in particular, in the output DMA module 23.
- up to twenty-five 1 x 1 filter operations can be done in one step since.
- the input data is re-ordered by interleaving lines of data from different channels into one input channel.
- re-ordering can be carried out by a re-ordering function 41 (or“re-ordering block”) in the DMA module 4 (z ' .e., IMP DMA 4).
- the DMA module 4 may also perform a striding function 42.
- the input DMA 8 includes a pixel skipping function 43 for incrementing which data is read out in steps of three lines in the y- direction.
- the output DMA module 23 may perform re-ordering 44 and/or striding 45 on output data.
- the DMA module 4 can re-organise input data in, for example, 12 channels into four input channels.
- the CNN module 1 may process input data in standard way, but then re-organise the output data, ready for the next layer.
- non-interleaved data 6 (e.g. image data) can be received and re-ordered by DMA module 4 into interleaved data 6’.
- the interleaved data 6’ is then supplied to the CNN module 1 which performs a convolution using a first modified filter 12C, 12D, such as a 1 x 3 filter.
- the output is still interleaved and the interleaved data 6’ can be fed back into the CNN module 1 or another CNN module 1, without further re-ordering by the DMA module 4, and the CNN module 1 performs a convolution with a second, different modified kernel 12C, 12D.
- non-interleaved data 6 (e.g. image data) can be received by DMA module 4 and supplied to the CNN module 1, without reordering, which performs a convolution using a kernel 12A, 12B, e.g. a s x s or i x i filters.
- the output DMA module 23 re-orders the output data.
- the interleaved data 6’ can be fed into the CNN module 1 or another CNN module 1, without further reordering by the DMA module 4, and the CNN module 1 performs a convolution with a second, different modified kernel 12C, 12D.
- Interleaving and de-interleaving, and convolutions using different forms of filters, together branches, can be used to implement a branched CNN employing efficient filters can be used.
- first and second sets of non-interleaved data 6 can be re-ordered by DMA module 4 into first and second sets of interleaved data 6’.
- the CNN module 1 can process the first set of interleaved data 6 first to produce interleaved output data and then process the interleaved output data and the second set of interleaved input data.
- the motor vehicle 101 includes an advanced driver assistance system (ADAS) 102 or autonomous car system (not shown) which performs, for example, semantic segmentation to classify objects (such as the road, cars, pedestrians, trees etc.) in images 103 captured by an on-board digital camera 104.
- ADAS advanced driver assistance system
- autonomous car system not shown
- semantic segmentation to classify objects (such as the road, cars, pedestrians, trees etc.) in images 103 captured by an on-board digital camera 104.
- the system 102 includes a head unit 105 connected to an in-vehicle communications bus 106.
- the system 102 may include a display 107 connected to the head unit 105.
- the display 107 can take the form of a flat-panel display located, for example, in a centre console (not shown) or dashboard (not shown).
- the digital camera 104 is capable of capturing images in a sequence of image frames 103 (or“pictures”) for example, at a rate of 60 fps.
- the image frame 103 is transmitted in one or more data frames 109 via the in-vehicle communications bus 106 to the head unit 105.
- the head unit 105 includes a processor-based system 110 which may take the form of a system-on-a-chip (SoC), microcontroller or other similar microprocessor-based system, and system memory 3.
- SoC 110 includes a central processing unit (CPU) sub- system 112 which includes at least one processing core (not shown), scratchpad memory 5 and the CNN module 1 in the form of a hardware-implemented peripheral module.
- the SoC 110 includes other peripheral modules, such as other
- the head unit 105 also includes flash memory 27 which can be used to store weights 12 ( Figure 1) for convolutions.
- the processor-based system 110 may house the flash memory 27.
- An advanced driver assistance system (ADAS) 102 or autonomous car system can perform, for example, semantic segmentation to classify objects (such as the road, cars, pedestrians, trees etc.) in images 103 captured by an on-board digital camera 104 and, based on an output of the CNN module 1, generate control signals for automatically controlling the motor vehicle 101 and/or providing data to the driver of the motor vehicle 101 for assisting the driver.
- ADAS advanced driver assistance system
- autonomous car system can perform, for example, semantic segmentation to classify objects (such as the road, cars, pedestrians, trees etc.) in images 103 captured by an on-board digital camera 104 and, based on an output of the CNN module 1, generate control signals for automatically controlling the motor vehicle 101 and/or providing data to the driver of the motor vehicle 101 for assisting the driver.
- the camera 104 may capture images which are classified using the CNN module 101, which, using the approach herein before described, can be performed more efficiently and, thus, for example, more quickly and/ or process more images.
- Classification data can be output by the CNN module 1 to the processor-based system no which can generate control signals which can be provided to motors (not shown) in dependence upon the classification data. This can be used to help steer the motor vehicle 101 and so help to avoid a collision.
- the camera 104 may capture images which are classified using the CNN module 101, which, using the approach herein before described, can be performed more efficiently and, thus, for example, more quickly and/or process more images.
- Classification data can be output by the CNN module 1 to the processor-based system 110 which can generate control signals which can be provided to motors (not shown) and actuators (no shown) in dependence upon the classification data. This can be used to cause the motor vehicle 101 to break and/or steer.
- the CNN module 1 can be used in an industrial system (not shown) which employs cameras (not shown) to monitor a process and, for example, to provide data for identifying an object or part of an object (such as a product being manufactured or processed).
- the CNN module 1 can be used, for example, correct positioning of the object, completion of a process or performing quality control. If the CNN module 1 has, by classifying or performing some other form of image recognition, an expected or learnt condition, then it may trigger the processor-based system 110 to perform a predetermined step, such as release the object for a subsequent processing step.
- the hardware processing module may take the form of a recurrent neural network (RNN) module or autoencoder module.
- RNN recurrent neural network
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Molecular Biology (AREA)
- Pure & Applied Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Algebra (AREA)
- Medical Informatics (AREA)
- Biodiversity & Conservation Biology (AREA)
- Neurology (AREA)
- Image Processing (AREA)
Abstract
Description
Claims
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/EP2018/072455 WO2020038551A1 (en) | 2018-08-20 | 2018-08-20 | Convolution-based processing |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP3841495A1 true EP3841495A1 (en) | 2021-06-30 |
Family
ID=63452611
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP18762784.9A Pending EP3841495A1 (en) | 2018-08-20 | 2018-08-20 | Convolution-based processing |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP3841495A1 (en) |
| WO (1) | WO2020038551A1 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112488296B (en) * | 2020-11-25 | 2022-12-02 | 苏州浪潮智能科技有限公司 | Data operation method, device, equipment and storage medium based on hardware environment |
| CN114357369B (en) * | 2021-12-08 | 2025-09-09 | 中山大学 | Sensing calculation system based on resistor array and control method thereof |
-
2018
- 2018-08-20 EP EP18762784.9A patent/EP3841495A1/en active Pending
- 2018-08-20 WO PCT/EP2018/072455 patent/WO2020038551A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2020038551A1 (en) | 2020-02-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109389078B (en) | Image segmentation method, corresponding device and electronic equipment | |
| US11157764B2 (en) | Semantic image segmentation using gated dense pyramid blocks | |
| CN110781923B (en) | Feature extraction method and device | |
| CN111008973B (en) | Method, artificial neural network and device for semantic segmentation of image data | |
| US20180137407A1 (en) | Convolution operation device and convolution operation method | |
| CN110705687A (en) | Convolution neural network hardware computing device and method | |
| WO2019029785A1 (en) | Hardware circuit | |
| US12198053B2 (en) | Integrated circuit that extracts data, neural network processor including the integrated circuit, and neural network device | |
| CN116524379B (en) | Aerial Target Detection Method Based on Attention Mechanism and Adaptive Feature Fusion | |
| US11699064B2 (en) | Data processing using a neural network system | |
| US10162799B2 (en) | Buffer device and convolution operation device and method | |
| KR102811042B1 (en) | Apparatus for accelerating neural network using weight with dyadic matrix form and operation method thereof | |
| WO2020038551A1 (en) | Convolution-based processing | |
| US20170078670A1 (en) | Analytics Assisted Encoding | |
| US11741349B2 (en) | Performing matrix-vector multiply operations for neural networks on electronic devices | |
| CN110826687A (en) | Data processing method, apparatus, medium, and system thereof | |
| US11664818B2 (en) | Neural network processor for compressing featuremap data and computing system including the same | |
| CN114821086B (en) | A video prediction method and system | |
| CN110322389B (en) | Pooling method, apparatus and system, computer readable storage medium | |
| TWI634436B (en) | Buffer device and convolution operation device and method | |
| CN119672052A (en) | A low-redundancy image segmentation method and system based on FPGA | |
| US11106935B2 (en) | Pooling method and device, pooling system, computer-readable storage medium | |
| EP4336410A1 (en) | Method and system for feature extraction using reconfigurable convolutional cluster engine in image sensor pipeline | |
| CN112257859A (en) | Characteristic data processing method and device, equipment and storage medium | |
| US20190370309A1 (en) | Processor, electronics apparatus and control method thereof |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20201218 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40056565 Country of ref document: HK |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20241115 |