BACKGROUND
1. TECHNICAL FIELD
[0001] The present invention relates to a feature extracting element, a feature extracting
system, and a judging apparatus.
2. RELATED ART
[0002] There are some methods for accelerating feature extraction processing by performing
it per each of blocks which are obtained by dividing an image into blocks (refer to
Patent Document 1, for example).
Patent Document 1:
Japanese Patent Application Publication No. 2008-148298
Document
Rodriguez-Vazquez A et al.: "A 3D chip architecture for optical sensing and concurrent
processing", Proceedings of the SPIE, vol. 7726, page 772613, XP055626072 relates to an architecture for the implementation of vision chips in 3-D integration
technologies. This architecture employs the multi-functional pixel concept. The top
layer includes an array of optical sensors which are parallel-connected to the second
layer, consisting of an array of mixed-signal read-out and pre-processing cells. The
two remaining layers a respectively a memory and an array of digital processors.
Document
US 2013/236 048 A1 relates to an image processor for feature detection comprising a single non-planar
chip containing a plurality of integrated sensing and processing resources across
two or more layers adapted to capture image frames and extract image features. The
non-planar chip is a three dimensional CMOS integrated circuit (3D CMOS IC) with vertical
distribution of sensing and processing resources across two or more vertical integrated
circuit layers. The 3D CMOS IC implements two or more feature detectors in a single
chip by reusing a plurality of circuits employed for gradient and keypoint detection.
Feature detectors include a scale invariant feature transform detector (SIFT), a Harris-based
feature detector, and a Hessian-based feature detector.
The patent application
US 2015/0178246 A1 describes systems and methods for performing convolution operations. A processing
system comprises: a processing core; and a convolver unit to apply a convolution filter
to a plurality of input data elements represented by a two-dimensional array, the
convolver unit comprising a plurality of multipliers coupled to two or more sets of
latches, wherein each set of latches is to store a plurality of data elements of a
respective one-dimensional section of the two-dimensional array.
[0003] Since the feature extraction is performed by processing data that is captured as
an image, it takes much time for processing for generating the image, processing for
transferring the generated image and the like, and thus the feature extraction processing
has not been regarded accelerated enough.
[General Disclosure]
[0004] The present invention is defined with the appended independent claim. Advantageous
embodiments are defined with the appended dependent claims.
[0005] The first aspect of the present invention provides a feature extracting element including:
a light-receiving substrate where a plurality of light-receiving elements for photoelectrically
converting received light are two-dimensionally arrayed; and one or more other substrates
that are laminated on the light-receiving substrate, wherein the other substrate has:
a convolution processing unit which has
a plurality of multiplying circuits that are correspondingly provided per the light-receiving
element or per a block that is configured of a plurality of the light-receiving elements,
and performs convolution operation on signals that are output from the plurality of
light-receiving elements using the plurality of multiplying circuits; a pooling processing
unit to sample a signal that is output from the convolution processing unit, based
on a predetermined condition; and a connection wiring to pass the sampled signal to
the plurality of multiplying circuits.
[0006] The second aspect of the present invention provides a feature extracting system including:
the feature extracting element described above; and a controlling unit to control
such that convolution operation of the convolution processing unit and sampling of
the pooling processing unit are repeated, wherein the controlling unit controls, when
the convolution operation is repeated, the convolution processing unit such that predetermined
filter coefficients are respectively used.
[0007] The third aspect of the present invention provides a judging apparatus including:
the feature extracting element described above; and a judging unit to judge an image-capturing
target by feature quantity that is extracted based on an output from the pooling processing
unit.
[0008] The summary clause does not necessarily describe all necessary features of the embodiments
of the present invention. The present invention may also be a sub-combination of the
features described above.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009]
Fig. 1 is a schematic cross-sectional view of a feature extracting apparatus 100.
Fig. 2 is a flow chart of processing to be performed in the feature extracting apparatus
100.
Fig. 3 is a schematic cross-sectional view of the feature extracting apparatus 100.
Fig. 4 is a schematic cross-sectional view of the feature extracting apparatus 100.
Fig. 5 is a timing chart of the feature extracting apparatus 100.
Fig. 6 is a block diagram of an imaging device 500.
Fig. 7 is a schematic cross-sectional view of another feature extracting apparatus
101.
Fig. 8 is a schematic cross-sectional view of the feature extracting apparatus 101.
Fig. 9 is a partial timing chart of the feature extracting apparatus 101.
DESCRIPTION OF EXEMPLARY EMBODIMENTS
[0010] Hereinafter, (some) embodiment(s) of the present invention will be described.
[0011] Fig. 1 is a schematic cross-sectional view of the feature extracting apparatus 100.
The feature extracting apparatus 100 is a single element including: microlenses 110,
a pixel substrate 120, an AD conversion circuit substrate 130, a multiplying circuit
substrate 140, an adding circuit substrate 150, a convolution operation result adding
substrate 160, an activation function calculating circuit substrate 170, a pooling
circuit substrate 180, and a coupling circuit substrate 190, which are laminated sequentially.
[0012] Note that the feature extracting apparatus 100 extracts feature quantity to use for
judging an object from received an object luminous flux. The judging an object includes,
for an example, identifying what the object is, identifying what category the object
falls in, and judging what degree the object is in (e.g. sunset degree, etc.), but
not limited to these. The feature quantity extracted here corresponds to features
extracted by multi-layer neural networks that are referred to as deep learning. In
other words, the feature extracting apparatus 100 can be used for learning processing
to extract features by deep learning.
[0013] The substrates in the feature extracting apparatus 100 each have wiring layers 12
respectively which are formed on base substrates 11 by photolithography. Each wiring
layer 12 includes circuits that are configured of wirings, elements, etc. That is,
a pixel substrate 120, an AD conversion circuit substrate 130, a multiplying circuit
substrate 140, an adding circuit substrate 150, a convolution operation result adding
substrate 160, an activation function calculating circuit substrate 170, a pooling
circuit substrate 180, a coupling circuit substrate 190 have pixels 121, AD conversion
circuits 131, multiplying circuits 141, an adding circuit 151, latch B-added adding
circuits 161, an activation function calculating circuit 171, a pooling circuit 181,
a coupling circuit 191, respectively.
[0014] Also, the substrates described above are electrically connected to other substrates
that are laminated adjacent to each other via through-electrodes 13 penetrating each
base substrate 11. Furthermore, a part of the substrates are electrically connected
directly to substrates that are not adjacent to the substrates by through-electrodes
14 that are formed penetrating a plurality of substrates. The detail of this will
be described referring to Fig. 3 and Fig. 4.
[0015] In the feature extracting apparatus 100, the pixel substrate 120 has a plurality
of pixels 121 that are arranged two-dimensionally and periodically. Each pixel 121
has a light-receiving element such as a photodiode for photoelectrically converting
entered light. Note that, in this example shown in the figure, the pixel substrate
120 is of backside irradiation-type, where the entering light is received from the
base substrate side, by removing or making thin a substrate having been a base when
the pixels 121 are formed.
[0016] Also, the pixel substrate 120 may have, in its respective light-receiving elements,
transistors to instruct reset, transfer, and selection, and elements to amplify output
signals. The microlenses 110 that are laminated on the pixel substrate 120 improve
incident efficiency by condensing the entering light into the respective pixels 121.
[0017] The AD conversion circuit substrate 130 has a plurality of AD conversion circuits
131, latches 132, and change-over switches 133 which correspond to the respective
pixels 121 of the pixel substrate 120. Thereby, the AD conversion circuit substrate
130 outputs, to the other substrates, either a value obtained by discretizing respective
pixel values acquired from the pixels 121 of the pixel substrate 120 or a value held
by the latch 132. The AD conversion circuits 131, the latches 132, and the change-over
switches 133 operate upon a timing when receiving a timing trigger 210 received from
outside.
[0018] The multiplying circuit substrate 140 has multiplying circuits 141 that correspond
to the respective pixels 121 of the pixel substrate 120. In other words, the multiplying
circuit substrate 140 has the same number of multiplying circuits 141 as that of pixels
121 provided in the pixel substrate 120. The multiplying circuit 141 is a digital
multiplier, and may be configured of shift registers, for example. The multiplying
circuit 141 acquires, from outside, a filter coefficient for performing the multiplication
processing to be held.
[0019] In other words, the multiplying circuit 141 can perform different multiplication
processing according to values of the filter coefficient read out from outside. Fig.
1 shows a case where a filter coefficient a is acquired, as an example. The multiplying
circuits 141 in the multiplying circuit substrate 140 also operate upon the timing
when receiving a timing trigger 210 received from outside.
[0020] Note that the multiplying circuit substrate 140 may have one of the multiplying circuits
141 per block that is configured of the plurality of pixels 121 of the pixel substrate
120. For example, if four pixels of the pixel 121 adjacent to each other in two-dimensional
direction are regarded as one block, the multiplying circuit substrate 140 may have
one multiplying circuit 141 that is connected to any of the four pixels 121 in the
block. In this case, the multiplying circuit 141 performs multiplication processing
sequentially upon an output from the respective four pixels 121 in the block.
[0021] The adding circuit 151 of the adding circuit substrate 150 sums up values acquired
from the plurality of multiplying circuits 141 in the multiplying circuit substrate
140 and outputs the resultant value. The output of the adding circuit 151 can be output
to the convolution operation result adding substrate 160 therebelow in the figure.
The adding circuit 151 in the adding circuit substrate 150 operates upon the timing
when receiving a timing trigger 210 received from outside.
[0022] The convolution operation result adding substrate 160 has latch B-added adding circuits
161, latches A 162, and multiplexers 163. The latch B-added adding circuits 161, the
latches A 162, and the multiplexers 163 are connected to each other, and also, through
the through-electrodes 13, the latch B-added adding circuits 161 are connected to
the activation function calculating circuit substrate 170 whereas the multiplexers
163 are connected to the adding circuit substrate 150. The convolution operation result
adding substrate 160 sums up a plurality of signals that are output from the adding
circuit substrate 150, and then outputs the resultant to the activation function calculating
circuit substrate 170.
[0023] The activation function calculating circuit substrate 170 has a corresponding number
of activation function calculating circuit 171 to the number of the adding circuits
151 of the adding circuit substrate 150. The activation function calculating circuit
substrate 170 performs, upon receiving an output of the adding circuit substrate 150,
activation function operation, and then outputs the resultant to the pooling circuit
substrate 180. The activation function calculating circuit 171 in the activation function
calculating circuit substrate 170 operates upon the timing when receiving a timing
trigger 210 received from outside.
[0024] The pooling circuit 181 of the pooling circuit substrate 180 and the coupling circuit
191 of the coupling circuit substrate 190 sequentially perform processing on the input
from the previous step. The output value of the coupling circuit 191 in the coupling
circuit substrate 190 can be output, as the feature quantity, to outside of the feature
extracting apparatus 100. The pooling circuit 181 and the coupling circuit 191 also
operate upon the timing when receiving a timing trigger 210 received from outside.
[0025] Note that, in the feature extracting apparatus 100 described above, the pixels 121,
the AD conversion circuits 131, the latches 132, the change-over switches 133, the
multiplying circuits 141, the adding circuit 151, the latch B-added adding circuits
161, the activation function calculating circuit 171, the pooling circuit 181, the
coupling circuit 191, and the like are each controlled in their operation timing by
a controlling unit not shown by the supplied timing trigger 210. This controlling
unit may be included in the feature extracting apparatus 100, or a controlling unit
of another apparatus including the feature extracting apparatus 100 therein, e.g.
an imaging device, may be also used for this controlling unit. The feature extracting
apparatus 100 that is a single element and the controlling unit configure a feature
extracting system.
[0026] As described above, the feature extracting apparatus 100 has a structure where the
multiplying circuit substrate 140, the adding circuit substrate 150, the convolution
operation result adding substrate 160, the activation function calculating circuit
substrate 170, the pooling circuit substrate 180, and the coupling circuit substrate
190 that are involved with feature extraction processing of images, are laminated
on the pixel substrate 120 including the light-receiving element. Thereby, the feature
extraction can be performed by directly processing pixel values, and thus the processing
time can be shorten, thanks to elimination of processing for turning an image into
data to be stored and processing for transferring the stored image data.
[0027] Also, hardware resources such as storage apparatuses, transfer apparatuses for image
data can be eliminated, which contributes to miniaturization of a device including
the feature extracting apparatus 100. Furthermore, processing substrates are laminated
corresponding to the pixels of the pixel substrate 120, and thus the processing speed
is prevented from decreasing while the number of pixels of the pixel substrate 120
increases.
[0028] Note that the feature extracting apparatus 100 described above receives entering
light by the plurality of pixels 121 arrayed two-dimensionally, and thus can acquire,
from the pixel substrate 120, two-dimensional luminance distribution information that
is used for generating of the image data. Accordingly, the feature extracting apparatus
100 can be used as an image sensor.
[0029] Fig. 2 is a flow chart of feature extraction processing to be performed in the feature
extracting apparatus 100. As shown in the figure, in the feature extraction processing
on a pixel value generated by pixel value generation processing S101 convolution processing
S102, activation function calculation processing S103, pooling processing S104, and
coupling processing S105 are performed, and the extracted feature quantity is output
to outside (step S106).
[0030] Here, in the feature extraction processing corresponding to deep learning, the pixel
value generation processing S101 and the feature quantity output S106 are each performed
once per one feature extraction. However, reading out filter function in convolution
processing S102, the multiplication processing, and the adding processing are repeatedly
performed many times repeatedly, with the filter coefficients to read out changing.
Furthermore, the processing results of the activation function calculation processing
S103 and the pooling processing S104 after the convolution processing are served again
to the convolution processing S102, and processings from the convolution processing
S102 to the pooling processing S104 are repeated more. Note that, in some cases, only
the activation function calculation processing S103 is repeated, or the convolution
processing S102 and the activation function calculation processing S103 are repeated;
and in other cases, after the pixel value generation processing S101, the pooling
processing S104 is performed, omitting either one or both of the convolution processing
S102 and the activation function calculation processing S103.
[0031] Fig. 3 is a view illustrating operations in the feature extracting apparatus 100
shown in Fig. 1. In the feature extracting apparatus 100 shown in the figure, a function
of the through-electrodes 13 connecting the substrates adjacent to each other is indicated
emphasized with a hatched bold line.
[0032] As indicated with the bold line in the figure, in the feature extracting apparatus
100, the pixel 1, the pixel 2 and the pixel 3 in the pixel substrate 120 are each
connected to the corresponding AD conversion circuits 131 in the AD conversion circuit
substrate 130, and to the corresponding multiplying circuits 141 in the multiplying
circuit substrate 140 via the change-over switches 133.
[0033] On the other hand, the multiplying circuit substrate 140 acquires respective filter
coefficients a, b, c of the multiplying circuits 141 corresponding to the pixels 1
to 3, respectively. The pixel value output by the pixel 1 in the pixel substrate 120
is, after multiplied using the filter coefficient a by the multiplying circuit 141
corresponding to the pixel 1 in the multiplying circuit substrate 140, input to the
adding circuit substrate 150 through the through-electrode 13.
[0034] Similarly, the pixel value output by the pixel 2 in the pixel substrate 120 is, after
multiplied using the filter coefficient b by the multiplying circuit 141 corresponding
to the pixel 2 in the multiplying circuit substrate 140, input to the adding circuit
substrate 150 through the through-electrode 13. Furthermore, the pixel value output
by the pixel 3 in the pixel substrate 120 is, after multiplied using the filter coefficient
c by the multiplying circuit 141 corresponding to the pixel 3 in the multiplying circuit
substrate 140, input to the adding circuit substrate 150 through the through-electrode
13.
[0035] The adding circuit 151 in the adding circuit substrate 150 sums up the plurality
of multiplied results that are input, and outputs the resultant to the convolution
operation result adding substrate 160. In this manner, processing similar to filtering
such as smoothing is performed. However, by filter coefficients in the multiplying
circuits 141 being predetermined by pre-learning, the series of processings are performed
as convolution processing.
[0036] The latches A 162 in the convolution operation result adding substrate 160 hold signals
output from the adding circuit 151 via the multiplexers 163. Thereafter, upon multiplied
by the multiplying circuits 141 with the filter coefficients set differently from
the last time and the multiplied results are summed up in the adding circuit 151,
the latch B-added adding circuits 161 hold the adding processing result of the adding
circuit 151 via the multiplexers 163.
[0037] The latch B-added adding circuits 161 read out the last adding processing results
that are held in the latches A 162 to add to new adding processing results, and the
added results are again held by the latches A 162. By repeating this processing predetermined
prescribed times, a plurality of processing results obtained by performing convolution
operation on the pixels in the same group (the pixels 1 to 3) with different filter
coefficients can be summed up. In other words, this corresponds to the repeated convolution
processing S102 shown in Fig. 2. Such convolution operation is performed on all the
pixels in the pixel substrate 120, that is, on the whole input image.
[0038] In the feature extracting apparatus 100, the processing result by the convolution
operation result adding substrate 160 is input to the activation function calculating
circuit 171 of the activation function calculating circuit substrate 170 through the
through-electrode 13. The activation function calculating circuit 171 converts information
that is passed from the convolution processing to the pooling processing. Such functions
include, for example, a ReL U (Rectified Linear Unit) function as shown in Equation
1 below, where input values smaller than 0 are all turned into 0 whereas input values
greater than 0 are returned as they are.

[0039] The output of the activation function calculating circuit 171 is passed to the pooling
circuit 181 of the pooling circuit substrate 180 through the through-electrode 13.
In the pooling circuit 181, subsampling is performed based on predetermined conditions.
The conditions for the subsampling performed here include a condition, e.g. in Max
Pooling method, where the maximum value at a window size is taken as a representative
value.
[0040] Regarding the predetermined conditions, as long as the processing gathers a plurality
of outputs from the activation function calculating circuit 171, the processing may
be Average Pooling method to output the average value, or the like. In this manner,
the processings from the convolution processing (step S102), the activation function
calculation processing (step S103), to the pooling processing (step S104) are performed,
and the subsampled value that is generated from the pixel values is generated.
[0041] Fig. 4 is a view illustrating other operations in the feature extracting apparatus
100 shown in Fig. 1. In the feature extracting apparatus 100 shown in the figure,
the through-electrode involved with operations described next is indicated emphasized
with a hatched bold line.
[0042] As indicated with the bold line in the figure, in the feature extracting apparatus
100, signals can be transmitted and received also between substrates that are not
adjacent to each other. Accordingly, for example, the output of the pooling circuit
substrate 180 can be stored, through the through-electrode 14, in the latches 132
of the AD conversion circuit substrate 130 to be multiplied again in the multiplying
circuits 141. Thereby, the convolution processing is again performed on the subsampled
values. Such repeating convolution processing is performed predetermined times, e.g.
2000 times or above, with the filter coefficients a, b, c changing.
[0043] Furthermore, the signals processed up to the predetermined times among the AD conversion
circuit substrate 130, the multiplying circuit substrate 140, the adding circuit substrate
150, the convolution operation result adding substrate 160, the activation function
calculating circuit substrate 170, and the pooling circuit substrate 180, are turned
into one-dimensional by the coupling circuit 191 in the coupling circuit substrate
190. Thereby, a value indicating certain feature quantity of the image for each component.
[0044] Fig. 5 is a timing chart illustrating operations in the feature extracting apparatus
100. The pulses in the figure represent signals that are supplied to respective substrates
as the timing triggers 210.
[0045] As shown in Fig. 5, each circuit in the feature extracting apparatus 100 is supplied
with the timing trigger 210 sequentially from the uppermost layer in Fig. 1. Also,
the multiplying circuit substrate 140 has the multiplying circuits 141 corresponding
to the respective pixels 121, and thus, in the feature extracting apparatus 100, the
processings performed in the order shown in Fig.2 can be performed on the respective
pixel values. Thereby, feature quantity of high judging accuracy can be extracted
efficiently.
[0046] Note that a section P represents a section where the convolution processing S102
is repeated. A region surrounded by a dotted line A represents a section where convolution
operation is performed with the same-sized filter on a group of pixels that configured
of a plurality of pixels (e.g. 3 x 3 pixels). Furthermore, a region surrounded by
a dotted line B represents a section where convolution operation is performed with
other filters on the pixels in the same group.
[0047] Also, a section Q represents a section where the processings from the convolution
processing S102 to the pooling processing S104 are repeated. Note that, in reality,
in the operation result adding processing in the convolution processing S102, timing
triggers of the latches A or the latch B-added adding circuits are supplied every
time signals from the adding circuit are input, but, to simplify the description,
a timing trigger of the final adding processing is only shown.
[0048] Note that processing load of the coupling processing in the coupling circuit 191
is smaller than that of the processings in the other substrates. Accordingly, the
coupling circuit substrate 190 for the coupling circuit 191 may not be provided in
the feature extracting apparatus 100. In this case, the feature extracting apparatus
100 outputs, to outside, signals that are repeated up to predetermined times and eventually
pooling-processed in the pooling circuit 181. Then, the coupling processing is performed
in an external substrate.
[0049] Fig. 6 is a block diagram of an imaging device 500 that includes the feature extracting
apparatus 100. The imaging device 500 includes a feature extracting apparatus 100,
a system control unit 501, a driving unit 502, a photometry unit 503, a work memory
504, a recording unit 505, a display unit 506, and a main power supply 507.
[0050] Also, the imaging device 500 includes a main optical system 520 that leads an object
luminous flux to the feature extracting apparatus 100. The main optical system 520
may be exchangeable so as to be attachable and detachable to the imaging device 500.
[0051] The main optical system 520 is configured of a plurality of groups of optical lenses,
and images, near its focal plane, an object luminous flux from the object field. Note
that, in the figure, the main optical system 520 is expressed by a single virtual
representative lens arranged near the pupil.
[0052] The driving unit 502 is a control circuit to perform electrical charge accumulation
control such as timing control, region control or the like of the feature extracting
apparatus 100 according to instructions from the system control unit 501. The driving
unit 502 performs, for example, a series of controls to make the feature extracting
apparatus 100 accumulate electrical charge generated by photoelectrically converting
the entering light to output the pixel value. Also, the driving unit 502 supplies
the timing trigger 210 to the feature extracting apparatus 100.
[0053] Feature quantity of the object output from the feature extracting apparatus 100 is
passed to the judging unit 513 of the system control unit 501. Thereby, in the system
control unit 501, judging processing to judge an object is performed. Note that the
feature extracting apparatus 100 may transmit, from the pixel substrate 120 to the
image processing unit 511 of the system control unit 501, information including a
luminance distribution of the object to generate an image data of the object. The
image processing unit 511 performs processing with the work memory 504 as a workspace.
[0054] The photometry unit 503 detects a luminance distribution of the object, prior to
a series of sequences to generate pixel values, by feature extracting apparatus 100
photoelectrically converting the entering light. The photometry unit 503 includes
an AE sensor of about one million pixels, for example. The calculating unit 512 of
the system control unit 501 calculates, upon receiving an output of the photometry
unit 503, the luminance per region of a scene.
[0055] Furthermore, the calculating unit 512 determines the shutter speed, diaphragm value,
ISO speed according to the calculated luminance distribution. The photometry unit
503 may be also used in common in the feature extracting apparatus 100. Note that
the calculating unit 512 performs various types of necessary operations for making
the imaging device 500 operate.
[0056] In such manner, the imaging device 500 has a judging function to judge an object
by the feature quantity acquired from the feature extracting apparatus 100. Here,
the feature extracting apparatus 100, in itself, transmits the extracted feature quantity
to the system control unit 501. Accordingly, the system control unit 501 can acquire
the feature quantity without taking load of the feature quantity extraction processing
to judge the object. Also, the system control unit 501 receives feature quantity as
the extraction result, and thus increase in the communication quantity between the
feature extracting apparatus 100 and the system control unit 501 is prevented.
[0057] Fig. 7 is a schematic cross-sectional view of another feature extracting apparatus
101. The feature extracting apparatus 101 has the same structure as that of the feature
extracting apparatus 100 shown in Fig. 1, excluding the part described next. The common
elements are given the same reference numerals, and overlapping descriptions thereof
will be omitted.
[0058] The feature extracting apparatus 101 has a different structure from that of the feature
extracting apparatus 100 in a point that a plurality of multiplying circuit substrates
1400, 1401, 1402, ..., 140n are included between the AD conversion circuit substrate
130 and the adding circuit substrate 150. The plurality of multiplying circuit substrates
1400, 1401, 1402, ..., 140n, like the multiplying circuit substrate 1400 of the feature
extracting apparatus 100, has a plurality of multiplying circuits 141 corresponding
to the respective plurality of pixels 121 of the pixel substrate 120, and operates
upon the timing when receiving a timing trigger 210 received from outside.
[0059] The multiplying circuit 141 acquires, from outside, filter coefficients for performing
the multiplication processing to be held. Also, the multiplying circuit 141 can hold
filter coefficients whose values are different for respective substrates and perform
multiplication processing. Accordingly, the multiplying circuit substrates 1400 to
140n can perform multiplication processing under conditions different from each other.
[0060] Fig. 8 is a schematic cross-sectional view illustrating operations in the feature
extracting apparatus 101. As indicated with hatched bold lines in the figure, a pixel
value output by the pixel 1 in the pixel substrate 120 is, after multiplied by the
multiplying circuit 141 formed in the multiplying circuit substrate 1400 in the upper
part in the figure, input to the adding circuit substrate 150 through the through-electrode
13. Also, a pixel value output by the pixel 2 in the pixel substrate 120 is, after
multiplied by the multiplying circuit 141 formed in the multiplying circuit substrate
1401 in the upper part in the figure, input to the adding circuit substrate 150 through
the through-electrode 13. Furthermore, a pixel value output by the pixel 3 in the
pixel substrate 120 is, after multiplied by the multiplying circuit 141 formed in
the multiplying circuit substrate 1402 in the upper part in the figure, input to the
adding circuit substrate 150 through the through-electrode 13.
[0061] Note that respective filter coefficients a1 of the plurality of multiplying circuits
141 provided in the multiplying circuit substrate 1400 take the same value among the
multiplying circuits 141 provided in the same multiplying circuit substrate 1400.
Similarly, in the other multiplying circuit substrates 1401, 1402, ..., 140n, a plurality
of multiplying circuits 141 in each substrate has common filter coefficients b1, c1,
..., n1. Accordingly, if performing the convolution processing, the filter coefficients
a1, b1, c1, ..., n1 can be selected by selecting substrates to perform the multiplication
processing. In other words, in the example shown in Fig. 8, a pixel value output by
the pixel 1 is multiplied by the filter coefficient a1, a pixel value output by the
pixel 2 is multiplied by the filter coefficient b1, and a pixel value output by the
pixel 3 is multiplied by the filter coefficient c1.
[0062] Fig. 9 is a partial timing chart of the feature extracting apparatus 101. In the
feature extracting apparatus 101, pixels 121 are multiplied by different multiplying
circuit substrates 1400 to 140n, respectively. Accordingly, after acquiring all the
filter coefficients first, the multiplication processing that is performed many times
in the convolution processing equivalent to one single filtering for a group of pixels
can be performed in parallel and simultaneously, and sequentially as indicated with
dotted lines A and B in the figure.
[0063] Accordingly, there is no need to acquire and set the filter coefficients every time
when performing the multiplication processing, leading to shorter time to acquire
and set the filter coefficients, and thus throughput of the feature extracting apparatus
101 as a whole can be improved. Such feature extracting apparatus 101 can be used,
for example, as an image sensor with a feature extraction function by incorporating
the feature extracting apparatus 101 into the imaging device 500 as an alternative
to the feature extracting apparatus 100.
[0064] The feature extracting apparatus described in the present disclosure has the multiplying
circuit 141, the adding circuit 151, the activation function calculating circuit 171,
the pooling circuit 181, and the coupling circuit 191 arranged respectively in the
multiplying circuit substrate 140, the adding circuit substrate 150, the activation
function calculating circuit substrate 170, the pooling circuit substrate 180, and
the coupling circuit substrate 190. However, the feature extracting apparatus may
not necessarily have only one single circuit for one single substrate provided. In
other words, one single substrate may have a plurality of circuits arranged therein,
or one single circuit may be arranged over a plurality of substrates.
[0065] Also, the lamination order of the plurality of substrates in the feature extracting
apparatus is not limited to the example described above, as long as they can be arranged
using through-electrodes. Furthermore, the convolution operation result adding substrate
160 is not limited to the example described above, as long as it is configured to
add a plurality of values to be held.
[0066] Also, the feature extracting apparatus described in the present disclosure enables,
with a single sensor of a laminated structure, feature extraction using convolution
neural networks to perform the convolution processing in multi-layer neural networks.
Note that, by using the same value for the filter coefficient of the convolution processing
that is performed a plurality of times, it is also possible to achieve recursive convolution
neural networks. Note that methods are not limited to these, as long as feature extraction
can be performed by the feature extracting apparatus in the present disclosure.
[0067] While the present invention have been described, the technical scope of the invention
is not limited to the above described disclosure. It is apparent to persons skilled
in the art that various alterations and improvements made without departing from the
scope of the appended claims.
[0068] The operations, procedures, steps, and stages of each process performed by an apparatus,
system, program, and method shown in the present disclosure can be performed in any
order as long as the order is not indicated by "prior to," "before," or the like and
as long as the output from a previous process is not used in a later process. Even
if the process flow is described using phrases such as "first" or "next", it does
not necessarily mean that the process must be performed in this order.
[Explanation of Reference Symbols]
[0069] 11: Base substrate; 12: Wiring layer; 13, 14: Through-electrode; 100, 101: Feature
extracting apparatus; 110: Microlens; 120: Pixel substrate; 121: Pixel; 130: AD conversion
circuit substrate; 131: AD conversion circuit; 132: Latch; 133: Change-over switch;
140, 1400, 1401, 1402, 140n: Multiplying circuit substrate; 141: Multiplying circuit;
150: Adding circuit substrate; 151: Adding circuit; 160: Convolution operation result
adding substrate; 161: Latch B-added adding circuit; 162: Latch A; 163: Multiplexer;
170: Activation function calculating circuit substrate; 171: Activation function calculating
circuit; 180: Pooling circuit substrate; 181: Pooling circuit; 190: Coupling circuit
substrate; 191: Coupling circuit; 210: Timing trigger; 500: Imaging device; 501: System
control unit; 502: Driving unit; 503: Photometry unit; 504: Work memory; 505: Recording
unit; 506: Display unit; 507: Main Power supply; 511: Image processing unit; 512:
Calculating unit; 513: Judging unit; 520: Main optical system
1. A feature extracting element comprising:
a plurality of light-receiving elements (121) that are arrayed two-dimensionally and
convert entered light to electrical charges;
a convolution processing unit for performing convolution operation on signals based
on the electrical charges that are converted respectively by the plurality of light-receiving
elements, and
a pooling processing unit to sample a signal that is output from the convolution processing
unit, based on a predetermined condition, and
the signals that are pooling-processed are output to outside,
the feature extracting element further comprising:
a connection wiring to pass the sampled signal to the convolution processing unit,
and further comprising:
a light-receiving substrate including the plurality of light-receiving elements that
are two-dimensionally arrayed; and
at least one other substrate that is laminated on the light-receiving substrate and
includes the convolution processing unit and the pooling processing unit,
the feature extracting element comprising:
a plurality of the other substrates; wherein
the convolution processing unit and the pooling processing unit each are provided
in substrates different from each other among the plurality of other substrates, and
the connection wiring includes a through-electrode to connect the substrates different
from each other.
2. The feature extracting element according to claim 1, comprising:
a plurality of AD conversion circuits (131) for converting the signals based on the
electrical charges that are converted respectively by the plurality of light-receiving
elements into digital signals;
wherein
the convolution processing unit performs the convolution operation on the signals
based on the electrical charges that are converted respectively by the plurality of
light-receiving elements; wherein the signals have been converted into the digital
signals by the plurality of AD conversion circuits.
3. The feature extracting element according to claim 1 or 2, wherein the convolution
processing unit performs filtering processing on the signals that are output from
the plurality of light-receiving elements.
4. The feature extracting element according to claim 1, wherein
the convolution processing unit includes a plurality of multiplying circuits (141)
that are correspondingly provided per the light-receiving element or per a block that
is configured of more than one among the plurality of light-receiving elements, and
performs convolution operation using the plurality of multiplying circuits.
5. The feature extracting element according to claim 1, wherein
the plurality of other substrates includes a plurality of multiplying circuit substrates,
and
the plurality of multiplying circuits are provided in the multiplying circuit substrates
that are different from each other.
6. The feature extracting element according to claim 5, wherein filter coefficients being
different from each other for convolution operation are set for the plurality of multiplying
circuit substrates.
7. The feature extracting element according to any one of claims 1 to 6, wherein
the convolution processing unit has an adding circuit to sum up outputs from the plurality
of multiplying circuits and
the adding circuit is provided in an adding circuit substrate among the at least one
other substrate.
8. The feature extracting element according to any one of claims 1 to 7, comprising:
a latch circuit to hold a signal from the light-receiving element; wherein
the connection wiring connects between the pooling processing unit and the latch circuit.
9. The feature extracting element according to any one of claims 1 to 8, wherein
the other substrate has an activation function calculation processing unit to input,
to an activation function, a signal on which the convolution operation is performed
to output a resultant output signal to the pooling processing unit.
10. The feature extracting element according to any one of claims 1 to 9, comprising:
a controlling unit to control such that convolution operation of the convolution processing
unit and sampling of the pooling processing unit are repeated, wherein
the controlling unit controls, when the convolution operation is repeated, the convolution
processing unit such that predetermined filter coefficients are respectively used.
11. The feature extracting element according to any one of claims 2 to 10, wherein:
the plurality of AD conversion circuits (131) are correspondingly provided per the
light-receiving element or per a block that is configured of a plurality of the light-receiving
elements; and
the plurality of AD conversion circuits are provided in other substrate that is laminated
on a substrate in which the plurality if light-receiving elements are provided.
12. A feature extracting system comprising:
a feature extracting element according to any one of claims 1 to 9; and
a controlling unit to control such that convolution operation of the convolution processing
unit and sampling of the pooling processing unit are repeated, wherein
the controlling unit controls, when the convolution operation is repeated, the convolution
processing unit such that predetermined filter coefficients are respectively used.
13. A judging apparatus comprising:
a feature extracting element according to any one of claims 1 to 11; and
a judging unit to judge the object by feature quantity that is extracted.
1. Merkmalsextraktionselement, umfassend:
eine Vielzahl von Lichtempfangselementen (121), die zweidimensional angeordnet sind
und einfallendes Licht in elektrische Ladungen umwandeln;
eine Faltungsverarbeitungseinheit zum Ausführen von Faltungsoperation an Signalen
basierend auf den elektrischen Ladungen, die jeweils durch die Vielzahl von Lichtempfangselementen
umgewandelt werden, und
eine Pooling-Verarbeitungseinheit, um ein Signal abzutasten, das von der Faltungsverarbeitungseinheit
ausgegeben wird, basierend auf einer vorbestimmten Bedingung, und
wobei die Signale, die Pooling-verarbeitet werden, nach außen ausgegeben werden,
wobei das Merkmalsextraktionselement ferner umfasst:
eine Verbindungsverdrahtung, um das abgetastete Signal an die Faltungsverarbeitungseinheit
weiterzuleiten,
und ferner umfasst:
ein Lichtempfangssubstrat, das die Vielzahl von Lichtempfangselementen enthält, die
zweidimensional angeordnet sind; und
mindestens ein weiteres Substrat, das auf das Lichtempfangssubstrat laminiert ist
und die Faltungsverarbeitungseinheit und die Pooling-Verarbeitungseinheit umfasst,
wobei das Merkmalsextraktionselement umfasst:
eine Vielzahl der anderen Substrate; wobei
die Faltungsverarbeitungseinheit und die Pooling-Verarbeitungseinheit jeweils in Substraten
bereitgestellt sind, die sich voneinander unter der Vielzahl anderer Substrate unterscheiden,
und
die Verbindungsverdrahtung eine Durchgangselektrode enthält, um die unterschiedlichen
Substrate miteinander zu verbinden.
2. Merkmalsextraktionselement nach Anspruch 1, umfassend:
eine Vielzahl von AD-Wandlerschaltungen (131) zum Umwandeln der Signale basierend
auf den elektrischen Ladungen, die jeweils durch die Vielzahl von Lichtempfangselementen
in digitale Signale umgewandelt werden;
wobei
die Faltungsverarbeitungseinheit die Faltungsoperation an den Signalen basierend auf
den elektrischen Ladungen durchführt, die jeweils durch die Vielzahl von Lichtempfangselementen
umgewandelt werden; wobei die Signale durch die Vielzahl von AD-Wandlerschaltungen
in die digitalen Signale umgewandelt wurden.
3. Merkmalsextraktionselement nach Anspruch 1 oder 2, wobei die Faltungsverarbeitungseinheit
eine Filterverarbeitung an den Signalen durchführt, die von der Vielzahl von Lichtempfangselementen
ausgegeben werden.
4. Merkmalsextraktionselement nach Anspruch 1, wobei
die Faltungsverarbeitungseinheit eine Vielzahl von Multiplikationsschaltungen (141)
enthält, die entsprechend pro Lichtempfangselement oder pro Block bereitgestellt sind,
der aus mehr als einem der Vielzahl von Lichtempfangselemente konfiguriert ist, und
eine Faltungsoperation unter Verwendung der Vielzahl von Multiplikationsschaltungen
durchführt.
5. Merkmalsextraktionselement nach Anspruch 1, wobei
die Vielzahl anderer Substrate eine Vielzahl von Multiplikationsschaltungssubstraten
umfasst, und
die Vielzahl von Multiplikationsschaltungen in den Multiplikationsschaltungssubstraten
vorgesehen sind, die sich voneinander unterscheiden.
6. Merkmalsextraktionselement nach Anspruch 5, wobei Filterkoeffizienten, die für die
Faltungsoperation voneinander unterschiedlich sind, für die Vielzahl von Multiplikationsschaltungssubstraten
eingestellt werden.
7. Merkmalsextraktionselement nach einem der Ansprüche 1 bis 6, wobei
die Faltungsverarbeitungseinheit eine Additionsschaltung aufweist, um die Ausgaben
aus der Vielzahl von Multiplikationsschaltungen zu addieren und
die Additionsschaltung in einem Additionsschaltungssubstrat unter dem mindestens einen
anderen Substrat vorgesehen ist.
8. Merkmalsextraktionselement nach einem der Ansprüche 1 bis 7, umfassend:
eine Verriegelungsschaltung zum Halten eines Signals von dem Lichtempfangselement;
wobei
die Verbindungsverdrahtung die Pooling-Verarbeitungseinheit mit dem Verriegelungsschaltung
verbindet.
9. Merkmalsextraktionselement nach einem der Ansprüche 1 bis 8, wobei
das andere Substrat eine Aktivierungsfunktionsberechnungsverarbeitungseinheit aufweist,
um einer Aktivierungsfunktion ein Signal zuzuführen, an dem die Faltungsoperation
durchgeführt wird, um ein resultierendes Ausgangssignal an die Pooling-Verarbeitungseinheit
auszugeben.
10. Merkmalsextraktionselement nach einem der Ansprüche 1 bis 9, umfassend:
eine Steuereinheit, um derart zu steuern, dass die Faltungsoperation der Faltungsverarbeitungseinheit
und die Abtastung der Pooling-Verarbeitungseinheit wiederholt werden, wobei
die Steuereinheit steuert, wenn die Faltungsoperation wiederholt wird, die Faltungsverarbeitungseinheit
derart, dass jeweils vorgegebene Filterkoeffizienten verwendet werden.
11. Merkmalsextraktionselement nach einem der Ansprüche 2 bis 10, wobei:
die Vielzahl von AD-Wandlungsschaltungen (131) entsprechend pro Lichtempfangselement
oder für einen Block vorgesehen sind, der aus einer Vielzahl von Lichtempfangselementen
konfiguriert ist; und
die Vielzahl von AD-Konversionsschaltungen in einem anderen Substrat vorgesehen ist,
das auf ein Substrat laminiert ist, in dem die Vielzahl von Lichtempfangselementen
vorgesehen ist.
12. Merkmalsextraktionssystem, umfassend:
ein Merkmalsextraktionselement nach einem der Ansprüche 1 bis 9; und
eine Steuereinheit, um derart zu steuern, dass die Faltungsoperation der Faltungsverarbeitungseinheit
und die Abtastung der Pooling-Verarbeitungseinheit wiederholt werden, wobei
die Steuereinheit steuert, wenn die Faltungsoperation wiederholt wird, die Faltungsverarbeitungseinheit
derart, dass jeweils vorgegebene Filterkoeffizienten verwendet werden.
13. Merkmalsextraktionselement, umfassend:
ein Merkmalsextracktionselement nach einem der Ansprüche 1 bis 11; und
eine Beurteilungseinheit zum Beurteilen des Objekts nach der extrahierten Merkmalsmenge.
1. Élément d'extraction de caractéristique comprenant :
une pluralité d'éléments récepteurs de lumière (121) qui sont disposés de manière
bidimensionnelle et convertissent une lumière entrée en charges électriques ;
une unité de traitement de convolution pour effectuer une opération de convolution
sur des signaux sur la base des charges électriques qui sont converties respectivement
par la pluralité d'éléments récepteurs de lumière, et
une unité de traitement de mise en commun pour échantillonner un signal qui est délivré
en sortie de l'unité de traitement de convolution, sur la base d'une condition prédéterminée,
et
les signaux qui sont traités par mise en commun sont délivrés en sortie vers l'extérieur,
l'élément d'extraction de caractéristique comprenant en outre :
un câblage de connexion pour transmettre le signal échantillonné à l'unité de traitement
de convolution,
et comprenant en outre :
un substrat récepteur de lumière incluant la pluralité d'éléments récepteurs de lumière
qui sont disposés de manière bidimensionnelle ; et
au moins un autre substrat qui est stratifié sur le substrat récepteur de lumière
et inclut l'unité de traitement de convolution et l'unité de traitement de mise en
commun,
l'élément d'extraction de caractéristique comprenant :
une pluralité des autres substrats ; dans lequel
l'unité de traitement de convolution et l'unité de traitement de mise en commun sont
chacune prévues dans des substrats différents les uns des autres parmi la pluralité
d'autres substrats, et
le câblage de connexion inclut une électrode traversante pour connecter les substrats
différents les uns des autres.
2. Élément d'extraction de caractéristique selon la revendication 1, comprenant :
une pluralité de circuits de conversion A/N (131) pour convertir les signaux sur la
base des charges électriques qui sont converties respectivement par la pluralité d'éléments
récepteurs de lumière en signaux numériques ;
dans lequel
l'unité de traitement de convolution effectue l'opération de convolution sur les signaux
sur la base des charges électriques qui sont converties respectivement par la pluralité
d'éléments récepteurs de lumière ; dans lequel les signaux ont été convertis en signaux
numériques par la pluralité de circuits de conversion A/N.
3. Élément d'extraction de caractéristique selon la revendication 1 ou la revendication
2, dans lequel l'unité de traitement de convolution met en oeuvre un traitement de
filtrage sur les signaux qui sont délivrés en sortie de la pluralité d'éléments récepteurs
de lumière.
4. Élément d'extraction de caractéristique selon la revendication 1, dans lequel
l'unité de traitement de convolution inclut une pluralité de circuits multiplicateurs
(141) qui sont fournis de manière correspondante par l'élément récepteur de lumière
ou par un bloc qui est configuré de plus d'un parmi la pluralité d'éléments récepteurs
de lumière, et effectue une opération de convolution à l'aide de la pluralité de circuits
multiplicateurs.
5. Élément d'extraction de caractéristique selon la revendication 1, dans lequel
la pluralité d'autres substrats inclut une pluralité de substrats de circuits multiplicateurs,
et
la pluralité de circuits multiplicateurs sont prévus dans les substrats de circuits
multiplicateurs qui sont différents les uns des autres.
6. Élément d'extraction de caractéristique selon la revendication 5, dans lequel des
coefficients de filtrage, différents les uns des autres pour l'opération de convolution,
sont définis pour la pluralité de substrats de circuits multiplicateurs.
7. Élément d'extraction de caractéristique selon l'une quelconque des revendications
1 à 6, dans lequel
l'unité de traitement de convolution présente un circuit additionneur pour sommer
des sorties de la pluralité de circuits multiplicateurs, et
le circuit additionneur est prévu dans un substrat de circuit additionneur parmi l'au
moins un autre substrat.
8. Élément d'extraction de caractéristique selon l'une quelconque des revendications
1 à 7, comprenant :
un circuit de verrouillage pour maintenir un signal provenant de l'élément récepteur
de lumière ; dans lequel
le câblage de connexion relie l'unité de traitement de mise en commun et le circuit
de verrouillage.
9. Élément d'extraction de caractéristique selon l'une quelconque des revendications
1 à 8, dans lequel
l'autre substrat présente une unité de traitement de calcul de fonction d'activation
pour entrer, dans une fonction d'activation, un signal sur lequel l'opération de convolution
est effectuée pour délivrer en sortie un signal de sortie résultant à l'unité de traitement
de mise en commun.
10. Élément d'extraction de caractéristique selon l'une quelconque des revendications
1 à 9, comprenant :
une unité de commande pour commander de telle sorte que l'opération de convolution
de l'unité de traitement de convolution et un échantillonnage de l'unité de traitement
de mise en commun soient répétés, dans lequel
l'unité de commande commande, lorsque l'opération de convolution est répétée, l'unité
de traitement de convolution de telle sorte que des coefficients de filtre prédéterminés
soient respectivement utilisés.
11. Élément d'extraction de caractéristique selon l'une quelconque des revendications
2 à 10, dans lequel :
la pluralité de circuits de conversion A/N (131) sont fournis de manière correspondante
par l'élément récepteur de lumière ou par un bloc qui est configuré d'une pluralité
d'éléments récepteurs de lumière ; et
la pluralité de circuits de conversion A-N sont prévus dans un autre substrat qui
est stratifié sur un substrat dans lequel la pluralité d'éléments récepteurs de lumière
sont prévus.
12. Système d'extraction de caractéristique comprenant :
un élément d'extraction de caractéristique selon l'une quelconque des revendications
1 à 9 ; et
une unité de commande pour commander de telle sorte que l'opération de convolution
de l'unité de traitement de convolution et l'échantillonnage de l'unité de traitement
de mise en commun soient répétés, dans lequel
l'unité de commande commande, lorsque l'opération de convolution est répétée, l'unité
de traitement de convolution de telle sorte que des coefficients de filtre prédéterminés
soient respectivement utilisés.
13. Appareil de jugement comprenant :
un élément d'extraction de caractéristique selon l'une quelconque des revendications
1 à 11 ; et
une unité de jugement pour juger l'objet par une quantité de caractéristique qui est
extraite.