WO2025258476A1 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法

Info

Publication number
WO2025258476A1
WO2025258476A1 PCT/JP2025/020201 JP2025020201W WO2025258476A1 WO 2025258476 A1 WO2025258476 A1 WO 2025258476A1 JP 2025020201 W JP2025020201 W JP 2025020201W WO 2025258476 A1 WO2025258476 A1 WO 2025258476A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
region
image data
image
value
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
Application number
PCT/JP2025/020201
Other languages
English (en)
French (fr)
Inventor
智己 湯野
尚 米山
泰輝 佐藤
邦彦 江平
勝俊 安藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Semiconductor Solutions Corp
Original Assignee
Sony Semiconductor Solutions Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Semiconductor Solutions Corp filed Critical Sony Semiconductor Solutions Corp
Publication of WO2025258476A1 publication Critical patent/WO2025258476A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/94Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement

Definitions

  • This disclosure relates to an image processing device and an image processing method.
  • HDR High Dynamic Range
  • Patent Document 1 Local tone mapping processing has been proposed, which adjusts the compression rate according to the contrast of each pixel, improving the reproducibility of contrast in light and dark areas (see Patent Document 1).
  • Patent Document 1 a gamma curve calculated based on the histogram of each local area is used to correct the image data to the optimal contrast for shape measurement, and bit compression is also performed.
  • Patent Document 1 requires a circuit to generate a histogram, and generating the histogram also requires a large amount of memory. For this reason, it is difficult to implement the method described in Patent Document 1 in a solid-state imaging device such as an image sensor.
  • This disclosure therefore provides an image processing device and image processing method that can reduce circuit size and improve measurement accuracy.
  • an image pickup apparatus comprising: a plurality of pixels each outputting a pixel signal including luminance information corresponding to the amount of incident light; an image generating unit that generates image data having uniform brightness regardless of local brightness differences between pixels based on the brightness information of the plurality of pixels, An image processing device is provided.
  • a method for detecting an image of an object comprising: detecting an image of an object to be detected by the image sensor based on an image of the object to be detected; an image generating unit that generates at least two types of image data from two or more types of image data that are generated by performing different image processing based on the luminance information of the plurality of pixels, and image data that is generated without performing the image processing; an image selection unit that selects and outputs some or all of the image data from the at least two image data generated by the image generation unit, An image processing device is provided.
  • the semiconductor device includes: an average luminance calculation unit that calculates an average luminance value for each first region including two or more of the pixels that are arranged adjacent to each other; a correction value calculation unit that calculates a correction value according to the average luminance value of the first region based on the average luminance value of the first region and luminance information about the periphery of the first region,
  • the image generating section may generate the image data based on a plurality of the correction values corresponding to a plurality of the first regions.
  • the correction value calculation unit may calculate the correction value for the specific first region based on the average luminance value of the specific first region for which the correction value is to be calculated and the average luminance values of first regions other than the specific first region that are included in a second region that includes the specific first region and is larger than the specific first region.
  • the correction value calculation unit a first processing unit that corrects the average luminance value of the specific first region by performing a convolution process on the average luminance value of the specific first region using average luminance values of first regions other than the specific first region that are included in the second region located around the specific first region;
  • the image processing device may further include a second processing unit that calculates the correction value for the specific first region based on the average luminance value of the specific first region corrected by the first processing unit.
  • the second processing unit may calculate the correction value by dividing a predetermined target signal value by the average luminance value of the specific first region corrected by the first processing unit.
  • the correction value calculation unit repeatedly performs a process of calculating the correction value while changing the specific first region;
  • the image generating section may generate the binarized image data based on a plurality of the correction values corresponding to a plurality of the first regions.
  • the binarized image data may be generated based on the comparison result between a threshold value set based on the target signal value and the correction value.
  • the correction value calculation unit repeatedly performs a process of calculating the correction value while changing the specific first region;
  • the image generating section may perform an interpolation process on luminance information of each of the plurality of pixels based on the plurality of correction values corresponding to the plurality of first regions, to generate pixel data having uniform luminance.
  • the image generation unit may include a compression unit that generates image data in which the luminance information of the plurality of pixels is compressed.
  • the semiconductor device includes: a pixel array unit including the plurality of pixels; an average luminance calculation unit that calculates an average luminance value of the entire area of the pixel array unit;
  • the correction value calculation unit a first processing unit that corrects the average luminance value of the specific first region by performing a convolution process on the average luminance value of the specific first region using average luminance values of first regions other than the specific first region that are included in the second region located around the specific first region; a second processing unit that calculates a first correction value for the specific first region by dividing a predetermined target signal value by the average luminance value of the specific first region corrected by the first processing unit; a third processing unit that calculates a second correction value by dividing the target signal value by the average luminance value calculated by the average luminance calculation unit;
  • the image forming apparatus may further include a fourth processing unit that calculates the correction value based on the first correction value and the second correction value.
  • the semiconductor device includes: an input unit for inputting the size of the first region and the size of the second region;
  • the image forming apparatus may include at least one of a storage unit that stores the size of the first region and a storage unit that stores the size of the second region.
  • the semiconductor device includes: an input unit for inputting the size of the first region, the size of the second region, and the target signal value;
  • the image processing device may include at least one of a storage unit that stores the size of the first region, the size of the second region, and the target signal value.
  • the semiconductor device includes: a pixel array unit including the plurality of pixels; an attention area extraction unit that extracts an attention area including two or more of the pixels in the pixel array unit,
  • the image generating section, the average luminance calculating section, and the correction value calculating section may perform processing on the two or more pixels included in the region of interest.
  • the semiconductor device includes: an area extraction unit that extracts a partial pixel area included in the image data generated by the image generation unit;
  • the image processing device may further include a region image generating section that generates image data of the partial pixel region based on the partial pixel region extracted by the region extracting section and luminance information of the plurality of pixels.
  • the semiconductor device includes a luminance information extraction unit that extracts luminance information for each pixel from a plurality of pixel signals including color information and luminance information output from each of the plurality of pixels;
  • the image generating section may generate the image data based on the luminance information for each pixel extracted by the luminance information extracting section.
  • the device may further include an image processing unit that performs predetermined image processing based on the image data output from the semiconductor device.
  • an average luminance value is calculated for each first region including two or more adjacently arranged pixels, calculating the correction value for a specific first region based on an average luminance value of the specific first region among the plurality of first regions and an average luminance value of a first region other than the specific first region that is included in a second region that includes the specific first region and is larger than the specific first region; generating image data based on the plurality of correction values corresponding to the plurality of first regions; An image processing method is provided.
  • FIG. 1 is a block diagram showing a configuration of an image processing apparatus according to a first embodiment of the present disclosure.
  • FIG. 2 is a block diagram showing the configuration of an image generating unit according to the first embodiment of the present disclosure.
  • 3 is a flowchart illustrating the operation of the image generating unit in FIG. 2 .
  • FIG. FIG. 10 is a diagram showing calculation results of an average brightness value of a local area.
  • FIG. 10 is a diagram illustrating the operation of a filter process.
  • FIG. 2 is a diagram showing a filter block.
  • FIG. 4 is a diagram showing an example of a filter set in a filter processing unit.
  • FIG. 10 is a diagram showing the calculation results of a first correction value for a local area.
  • 4A and 4B are diagrams showing binary image data generated by a binary image generating unit;
  • FIG. 10 is a diagram showing image data indicating a feature extraction result.
  • FIG. 10 is a block diagram showing the configuration of an image generation unit according to a first modified example of the first embodiment of the present disclosure.
  • 6 is a flowchart illustrating the operation of the image generating unit in FIG. 5 .
  • FIG. 10 is a diagram illustrating bilinear interpolation.
  • FIG. 5A and 5B are diagrams showing corrected image data generated by a corrected image generating unit; 4B is a histogram showing luminance information of the captured image data of FIG. 4A; 7C is a histogram showing luminance information of the corrected image data of FIG. 7B.
  • FIG. 10 is a block diagram showing the configuration of an image generation unit according to a second modified example of the first embodiment of the present disclosure.
  • FIG. 10 is a block diagram showing the configuration of an image generating unit according to a comparative example.
  • 11 is a diagram showing corrected image data generated by the corrected image generating unit in FIG. 10 .
  • 11B is a histogram showing luminance information of the corrected image data of FIG.
  • FIG. 10 is a block diagram showing the configuration of an image generating unit according to a second embodiment of the present disclosure. 10 is an image showing a corrected image generated by an image generating unit according to a second embodiment of the present disclosure. Image captured without correction. 10 is an extracted image generated by an image generating unit according to a second embodiment of the present disclosure. An extracted image based on a captured image.
  • FIG. 10 is a block diagram showing the configuration of an image generating unit according to a second embodiment of the present disclosure. 10 is an image showing a corrected image generated by an image generating unit according to a second embodiment of the present disclosure. Image captured without correction. 10 is an extracted image generated by an image generating unit according to a second embodiment of the present disclosure. An extracted image based on a captured image.
  • FIG. 10 is an illustration of a corrected image generated by an image generating section according to a comparative example. 1 is an extracted image generated by an image generating unit according to the first embodiment of the present disclosure. 10 is an extracted image generated by an image generating unit according to
  • FIG. 10 is a block diagram showing the configuration of an image generating unit according to a third embodiment of the present disclosure.
  • FIG. 2 is a block diagram showing the configuration of a luminance information extraction unit.
  • 10 is a flowchart showing the operation of a luminance information extraction unit.
  • FIG. 10 is a block diagram showing the configuration of an image generating unit according to a fourth embodiment of the present disclosure.
  • FIG. 13 is a block diagram showing the configuration of an image generating unit according to a fifth embodiment of the present disclosure.
  • FIG. 4 is a diagram showing image data generated by an area selection unit.
  • FIG. 13 is a block diagram showing the configuration of an image generating unit according to a sixth embodiment of the present disclosure.
  • FIG. 10 is a block diagram showing the configuration of a semiconductor device according to a seventh embodiment of the present disclosure.
  • FIG. 1 is a block diagram showing an example of a schematic configuration of a vehicle control system.
  • FIG. 4 is an explanatory diagram showing an example of the installation positions of an outside-vehicle information detection unit and an imaging unit.
  • Embodiments of an image processing device and an image processing method will be described below with reference to the drawings.
  • the following description will focus on the main components of the image processing device and the image processing method, but the image processing device and the image processing method may include components and functions that are not shown or described.
  • the following description does not exclude components and functions that are not shown or described.
  • the image processing device 1 includes a semiconductor device 10.
  • the semiconductor device 10 is, for example, an image sensor.
  • the semiconductor device 10 may be configured from one or more semiconductor chips.
  • the semiconductor device 10 includes a pixel array unit 2 and an image generation unit 3. In this specification, the semiconductor device 10 may be referred to as the image processing device 1.
  • the pixel array section 2 has a plurality of pixels.
  • the plurality of pixels are, for example, arranged in a two-dimensional array.
  • Each pixel has a photoelectric conversion element (e.g., a photodiode) that generates an electric charge according to the amount of incident light, and outputs a pixel signal based on the charge of the photoelectric conversion element via a pixel circuit (not shown) or the like.
  • the plurality of pixel signals output from the plurality of pixels contain brightness information according to the amount of incident light.
  • the image generation unit 3 acquires multiple pixel signals from the pixel array unit 2.
  • the image generation unit 3 acquires brightness information for multiple pixels from the multiple pixel signals.
  • the image generation unit 3 generates image data by performing predetermined image processing based on the luminance information.
  • the predetermined image processing includes local tone mapping processing that compresses the dynamic range of the luminance information.
  • the predetermined image processing also includes compression of the image data, binarization of the image data, etc.
  • the image generation unit 3 may be configured to generate a single image data set from luminance information using a single type of image processing.
  • the image generation unit 3 may also be configured to generate multiple image data sets from the same luminance information using multiple types of image processing.
  • the image generation unit 3 may generate one or multiple image data sets using image processing, or may generate image data without compressing the dynamic range, without performing any image processing.
  • the image generation unit 3 may have a function to extract features of the subject, for example.
  • the image generation unit 3 may output image data that can improve the accuracy of feature extraction when feature extraction is performed by a downstream information processing device (for example, a SoC: System on a Chip).
  • a downstream information processing device for example, a SoC: System on a Chip.
  • the semiconductor device 10 may have a configuration including a transfer unit 4.
  • the transfer unit 4 may be, for example, a mobile industry processor interface (MIPI) scalable low voltage signaling (SVLS) or SLVS-EC (SLVS with embedded clock signaling).
  • MIPI mobile industry processor interface
  • SVLS scalable low voltage signaling
  • SLVS-EC SLVS with embedded clock signaling
  • the semiconductor device 10 may be configured to have at least one of a setting input unit (input unit) 5 or a register block (storage unit) 6.
  • the setting input unit 5 inputs the settings required for local tone mapping processing to the image generation unit 3.
  • the register block 6 stores the settings required for local tone mapping processing and provides them to the image generation unit 3.
  • a user or the like can input the settings required for local tone mapping processing through the setting input unit 5.
  • the register block 6 may save the settings input from the setting input unit 5, or may store predetermined settings when the semiconductor device 10 is shipped.
  • the settings input unit 5 or register block 6 may receive settings required for local tone mapping processing from a subsequent SoC or the like, for example, via SPI (Serial Peripheral Interface) or I2C (Inter-Integrated Circuit).
  • SPI Serial Peripheral Interface
  • I2C Inter-Integrated Circuit
  • the semiconductor device 10 may be configured to include a row selection unit 7.
  • the row selection unit 7 is composed of, for example, a shift register, an address decoder, etc.
  • the pixel array unit 2 has, for example, multiple pixel rows, each of which has multiple pixels arranged in a row.
  • the row selection unit 7 sequentially selects one row from the multiple pixel rows in the pixel array unit 2 and instructs the selected row to output a pixel signal.
  • the image generation unit 3 can acquire luminance information for each pixel row.
  • the image generation unit 3 according to the first embodiment of the present disclosure can generate image data for one or more pixel rows, without waiting for all pixels in the pixel array unit 2 to output pixel signals.
  • the process of generating image data corresponding to one pixel row may be performed in parallel with the process of acquiring pixel signals from other pixel rows. This allows the image generation unit 3 to generate image data at high speed.
  • the process of generating image data for one or more pixel rows is also referred to as line-based processing.
  • the semiconductor device 10 may be provided with a line memory or the like that temporarily stores luminance information for one or more rows required for generating image data.
  • the line memory may overwrite old luminance information with new luminance information each time luminance information is acquired from a pixel row. This allows the semiconductor device 10 to reduce its memory capacity, which in turn reduces its circuit scale.
  • the image generation unit 3 does not necessarily need to perform line-based processing, and may instead be configured to generate image data for each pixel in the pixel array unit 2.
  • This specification describes an example in which local tone mapping processing is performed within a semiconductor device 10 having a pixel array section 2. However, this is not limited to this, and local tone mapping processing may also be performed by a downstream information processing device, etc.
  • the image processing device 1 may be configured to include an image processing unit (image output unit) 8.
  • the image processing unit 8 may perform image processing such as feature extraction on the image data obtained from the transfer unit 4.
  • the image processing unit 8 may display the image data obtained from the transfer unit 4 on a display or the like.
  • the image processing device 1 may be configured to include a control unit 9.
  • the control unit 9 can input predetermined settings to the setting input unit 5 and control the imaging operation and image data generation operation of the semiconductor device 10.
  • FIG. 2 is a block diagram showing the configuration of an image generation unit according to the first embodiment of the present disclosure.
  • the image generation unit 3 in FIG. 2 includes a captured image generation unit 11, a local area average calculation unit (average brightness calculation unit) 12, a filter processing unit (first processing unit) 13, a division processing unit (second processing unit) 14, and a binary image generation unit 15.
  • the division processing unit 14 is also referred to as a threshold generation unit.
  • the image generation unit 3 in Figure 2 can generate binary image data.
  • Binary image data expresses the subject in either black or white (e.g., black), and parts other than the subject in the other color (e.g., white). This clarifies the shape of the subject, making it easier to extract features later.
  • FIG. 3 is a flowchart illustrating the operation of the image generation unit 3 according to the first embodiment of the present disclosure. Below, the function of each component of the image generation unit 3 in FIG. 2 will be explained using the flowchart in FIG. 3.
  • the captured image generation unit 11 acquires luminance information (step S1).
  • the captured image generation unit 11 acquires pixel signals from the pixel array unit 2, acquires luminance information from the pixel signals, and generates captured image data (first image data) based on the luminance information.
  • Figure 4A shows the captured image data generated by the captured image generation unit 11.
  • Captured image data generated by the captured image generation unit 11 may have localized differences in brightness.
  • the upper part of the image is dark and the lower part is light.
  • the dark upper part of the image makes it difficult to distinguish the boundary between the upper part of the subject 21 (the screw in the example of Figure 4A) and the part other than the subject (hereinafter also referred to as the background).
  • binarization or feature extraction
  • the contour of the subject 21 may not be sufficiently detected. Note that in this specification, the part of the image data that is the subject of feature extraction, shape extraction, or contour extraction is also referred to as the subject.
  • local tone mapping processing is performed to equalize the local brightness differences in the captured image data and emphasize the brightness difference between the subject 21 and the background, correcting the captured image so that it becomes image data suitable for binarization (or feature extraction).
  • the local area average calculation unit 12 calculates the average brightness value of the local area (step S2 in Figure 3).
  • the local area average calculation unit 12 divides the pixel array unit 2 into multiple local areas (first regions) 22. Each of the multiple local areas 22 has two or more pixels arranged adjacently.
  • the captured image data generated by the image generation unit 3 can also be divided into regions (hereinafter simply referred to as local areas 22) corresponding to the multiple local areas 22.
  • FIG. 4B is a diagram showing captured image data divided into multiple local areas 22 by the local area average calculation unit 12.
  • the horizontal direction in FIG. 4B is also referred to as the first direction X (x coordinate)
  • the vertical direction is also referred to as the second direction Y (y coordinate).
  • the position of an arbitrary pixel (pixel position) is [x(i), y(j)], and the luminance value (pixel value) of that position is p[x(i), y(j)].
  • the block position of the local area 22 is [kx, ky]
  • the size of the local area 22 in the first direction X is Nx
  • the size in the second direction Y is Ny.
  • the size (block size) of the local area 22 is, for example, the number of pixels included in the local area 22.
  • the average luminance value q[kx, ky] of the local area 22 at the position [kx, ky] is expressed by the following equation (1).
  • Figure 4C is a diagram showing the calculation results of the average brightness value of the local area 22.
  • the local area average calculation unit 12 can generate mosaic image data based on the average brightness values of each of the multiple local areas 22.
  • the filter processing unit 13 performs filtering based on the average brightness value calculated by the local area average calculation unit 12 (step S3 in Figure 3).
  • Figure 4D is a diagram explaining the operation of the filtering process.
  • the filter processing unit 13 sets a filter block (second region) 23 having multiple local areas 22.
  • FIG. 4E is a diagram showing a filter block 23.
  • the filter processing unit 13 performs a convolution operation using multiple local areas 22 included in the filter block 23 to calculate a filter correction value for a specific local area 22.
  • the filter block 23 in FIG. 4E has a specific local area 24 for which a filter correction value is to be calculated.
  • the specific local area 24 is located, for example, at the center of the filter block 23 or in its vicinity.
  • the filter correction value r a [k x , ky] of a specific local area 24 is calculated by the following formula (2) using the size B x of the filter block 23 in the first direction X, the size By of the filter block 23 in the second direction Y, the average luminance value q [k x (i), ky (j)] of the local area 22, and a predetermined filter coefficient F [f x (i), f y (j)].
  • the size of the filter block 23 (filter size) is, for example, the number of local areas 22 included in the filter block 23. The filter coefficient will be described later.
  • the average luminance value q [kx(i), ky(j)] indicates the average luminance value of each of the local areas 22 and 24 contained in the filter block 23.
  • the filter correction value r a [k x , ky] calculated by the above formula (2) is a value obtained by incorporating information about the average brightness value of the surrounding local areas 22 (i.e., those located in the filter block 23) into a specific local area 24.
  • the filter coefficient F[fx(i), fy(j)] is a value that weights the average brightness value of each local area 22 that is incorporated into the filter correction value ra[kx, ky].
  • a filter having information on multiple filter coefficients is set in the filter processing unit 13.
  • FIG. 4F is a diagram showing an example of a filter 25 set in the filter processing unit 13.
  • the filter 25 has a plurality of filter elements 26, each having information on a filter coefficient.
  • the plurality of filter elements 26 are arranged corresponding to the local areas 22 and 24 in the filter block 23.
  • the position [fx(i), fy(j)] of the filter element 26 is expressed, for example, by the following equations (3) and (4) using the position [kx, ky] of a specific local area 24 and the position [kx(i), ky(j)] of the corresponding local area 22.
  • the filter coefficients of the multiple filter elements 26 are set highest, for example, for the filter element 27 corresponding to a specific local area 24. Furthermore, filter elements 26 positioned closer to the filter element 27 are set to have higher filter coefficients, and filter elements 26 positioned further away are set to have lower filter coefficients. This allows a specific local area 24 to preferentially capture the average brightness value of a local area 22 positioned closer to it.
  • the sum of the filter coefficients in the filter 25 be adjusted to be the same as the block size, for example, as shown in equation (5).
  • the filter processing unit 13 sequentially designates multiple local areas 22 as specific local areas 24, performs the convolution operation shown in equation (2), and calculates the filter correction value.
  • the filter processing by the filter processing unit 13 performs the convolution operation while changing the position of the filter block 23 in units of local areas 22, as shown in Figure 4D.
  • the filter processing unit 13 generates a plurality of filter correction values by respectively correcting the average brightness values of a plurality of local areas 22.
  • the characteristic of the plurality of filter correction values is that the corresponding local area 22 incorporates the brightness values of the surrounding area. If the brightness value around the local area 22 is low, the filter correction value will also be low, and if the brightness value around the local area 22 is high, the filter correction value will also be high.
  • the filter correction value is characterized by its tendency to reflect local brightness differences in the captured image data of Figure 4A (for example, the brightness difference between the top and bottom of Figure 4A).
  • the filter correction value is characterized by the fact that it is difficult to reflect brightness differences between multiple local areas 22 arranged nearby.
  • the division processing unit 14 performs a process of dividing a predetermined target signal value M by the filter correction value (step S4 in FIG. 3).
  • the first correction value rb[kx, ky] generated by the division processing unit 14 is expressed by the following equation (6).
  • FIG. 4G is a diagram showing the calculation results of the first correction value for the local area 22.
  • the division processing unit 14 can generate image data (second image data) based on multiple first correction values for multiple local areas 22.
  • the image data in Figure 4G is generated by a division process using the filter correction value, and is image data in which the brightness values of the captured image data in Figure 4A are inverted and the brightness of a specific local area is corrected based on the brightness of the surrounding local area.
  • the image data in Figure 4G reflects the characteristics of the filter correction value described above. Specifically, the corrected image data is likely to reflect the local brightness differences of the captured image data in Figure 4A (inverted state). On the other hand, the corrected image data is an image in which the brightness difference between the brightness of the specific local area 24 and the brightness of the surrounding local area 22 is suppressed. As a result, the corrected image data is an image in which the contours of the subject 21 are blurred compared to Figure 4A.
  • the filter processing unit 13 and division processing unit 14 in Figure 2 calculate correction values for multiple local areas 22, and therefore are collectively referred to in this specification as the correction value calculation unit 16.
  • the binary image generation unit 15 generates a binary image based on the first correction value (step S5 in Figure 3).
  • the binary image generation unit 15 compares the first correction value with a predetermined binary threshold value.
  • Figure 4H is a diagram showing binary image data (third image data) generated by the binary image generation unit 15.
  • the binary image data in Figure 4H shows an example in which white is output when the first correction value exceeds a predetermined binary threshold, and black is output when the first correction value is below a predetermined binary threshold.
  • the image generation unit 3 in Figure 2 may be configured to include a feature extraction unit 17.
  • the feature extraction unit 17 extracts the contour of the subject 21 from the binarized image data in Figure 4H.
  • Figure 4I shows image data (fourth image data) indicating the feature extraction results.
  • the image generation unit 3 in Figure 2 can correct the captured image data in Figure 4A and generate the binarized image data in Figure 4H. This enables the feature extraction unit 17 (or a downstream SoC, etc.) to extract features with high accuracy.
  • the block sizes Nx and Ny used by the local area average calculation unit 12, the filter sizes Bx and By used by the filter processing unit 13, the target signal value M used by the division processing unit 14, and some or all of the binarization threshold values used by the binarized image generation unit 15 can be acquired from the setting input unit 5 or the register block 6.
  • Figure 2 shows an example in which the above input parameters are input from the setting input unit 5.
  • the input parameters may include a filter type.
  • the filter type is input to the filter processing unit 13 and is used to set the filter coefficients of the filter 25.
  • a weighted average filter with different filter coefficients for a specific local area 24 and other local areas 22 can be specified as the filter 25.
  • a moving average filter with the same filter coefficients for the local area 24 and other local areas 22 may also be used as the filter 25.
  • a smoothing filter, sharpening filter, bilateral filter, or the like may also be used depending on the application of the corrected image data.
  • the binarization threshold may be set based on the target signal value M.
  • the binarization rate C may be input as an input parameter from the setting input unit 5, etc.
  • the processing of the local area average calculation unit 12 includes division by the block size Nx ⁇ Ny, as shown in equation (1).
  • This division can be achieved by placing a division circuit within the local area average calculation unit 12.
  • the division can be achieved by, for example, shifting the number of bits according to the block size, and the division circuit can be omitted. This allows for a reduction in circuit size.
  • the processing of the filter processing unit 13 includes a division process by the size Bx ⁇ By of the filter block 23, as shown in equation (2).
  • the division circuit can be omitted from the filter processing unit 13, thereby reducing the circuit size.
  • FIG. 5 is a block diagram showing the configuration of an image generation unit according to a first modified example of the first embodiment of the present disclosure.
  • the image generation unit 3a in FIG. 5 differs from the image generation unit 3 in FIG. 2 in that it does not have a binary image generation unit 15 but has a corrected image generation unit 31.
  • the image generation unit 3a in Figure 5 can generate corrected image data with uniform brightness regardless of local brightness differences between pixels.
  • Corrected image data with uniform brightness is image data in which the difference between the maximum and minimum brightness values is small compared to the captured image data, and in which halos, described below, are suppressed.
  • FIG. 6 is a flowchart illustrating the operation of the image generation unit 3a according to the first embodiment of the present disclosure. Below, the function of the image generation unit 3a in FIG. 5 will be explained using the flowchart in FIG. 6.
  • the operations in steps S1 to S4 are the same as those in FIG. 3.
  • step S4 a first correction value for the local area 22 is generated.
  • the image generation unit 3a in FIG. 5 may be configured to include an interpolation calculation unit 32.
  • the interpolation calculation unit 32 performs an interpolation calculation to convert the first correction value rb[kx,ky] for each local area 22 into an interpolated value rc[x,y] for each pixel (step S21 in FIG. 6).
  • bilinear interpolation can be used for the interpolation calculation.
  • FIG. 7A is a diagram illustrating bilinear interpolation. As described above, one local area 22 includes multiple pixels 41. FIG. 7A illustrates an example of generating an interpolated value rc[x, y] for a specific pixel 42 among the multiple pixels 41.
  • local area 22a in which pixel 42 is located is obtained from the multiple local areas 22 arranged in the pixel array unit 2.
  • local area 22b closest to pixel 42 is obtained.
  • local area 22c closest to pixel 42 is obtained.
  • local area 22d is obtained, which is adjacent to local area 22b in the second direction Y and adjacent to local area 22c in the first direction X.
  • Calculation points 43a, 43b, 43c, and 43d are located at the centers of gravity of local areas 22a, 22b, 22c, and 22d.
  • Calculation points 43a to 43d have information on the first correction values rb[kx, ky] of local areas 22a to 22d, respectively.
  • calculation point 44a is placed at the same x coordinate as the center of gravity of pixel 42.
  • calculation point 44b is placed at the same x coordinate as the center of gravity of pixel 42.
  • the correction values Si and Sj of calculation points 44a and 44b are expressed by the following equations (7) and (8) using first correction values Ta, Tb, Tc, and Td of calculation points 43a, 43, 43c, and 43d, distance Lx from calculation point 43a to calculation point 43b, distance Lxi from calculation point 43a to calculation point 44a, and distance Lxj from calculation point 43b to calculation point 44a.
  • the interpolated value r[x, y] of the pixel 42 is expressed by the following equation (9) using the distance Ly from the calculation point 44a to the calculation point 44b, the distance Lyi from the center of gravity of the pixel 42 to the calculation point 44a, and the distance Lyj from the center of gravity of the pixel 42 to the calculation point 44a.
  • Fig. 7B is a diagram showing corrected image data (fifth image data) generated by the corrected image generation unit 31.
  • the luminance values g[x, y] of multiple pixels 42 in the corrected image data can be expressed by the following equation (10) using the luminance values p[x, y] of the captured image data.
  • the image generation unit 3a in Figure 5 can output corrected image data that enables highly accurate shape measurement, as shown in Figure 7B. Comparing the captured image data in Figure 4A with the corrected image data in Figure 7B, the corrected image data in Figure 7B has corrected the local brightness differences as in Figure 4A. Furthermore, the corrected image data has a clearer outline of the subject 21 than the captured image data. Therefore, the corrected image data enables more accurate feature extraction and more accurate shape measurement of the subject 21 than the captured image data.
  • the luminance values g[x, y] of the multiple pixels 42 in the corrected image data of FIG. 7B are expressed by the following equation (11) using the first correction values r[kx, ky] of the local area 22 in which the pixels 42 are located.
  • the corrected image data in Figure 7B has a luminance value obtained by multiplying the captured image data by the target signal value and dividing it by the filter correction value, as shown in equation (11).
  • the average luminance value of the corrected image data is adjusted to approximately match the target signal value M.
  • the filter correction value by dividing it by the filter correction value, local brightness differences in the captured image data are corrected.
  • the filter correction value does not readily reflect differences in brightness between nearby local areas 22, dividing the filter correction value does not lose information about the boundaries between high-brightness and low-brightness areas of the captured image data (specifically, information about the contours of the subject 21). Furthermore, by correcting the local differences in brightness, the contours of the subject 21 are relatively emphasized in the corrected image data.
  • the image generation unit 3a in FIG. 5 can generate corrected image data that satisfies the following conditions.
  • the conditions are expressed by the following equations (12) and (13) using the maximum luminance value Vmax of the captured image data, the minimum luminance value Vmin of the captured image data, the average luminance value AVE(V) of the captured image data, the maximum luminance value Rmax of the corrected image data, the minimum luminance value Rmin of the corrected image data, the average luminance value AVE(R) of the corrected image data, the average luminance values Ri and Rj (where Ri ⁇ Rj) of the corrected image data of any two local areas 22 belonging to the same filter block, and the average luminance values Vi and Vj (where Vi ⁇ Vj) of the captured image data of the two local areas 22.
  • the corrected image data can narrow the gap between the maximum and minimum luminance values and equalize the overall luminance difference.
  • Ri and Rj in equation (13) are the luminances of the subject and background, respectively, the luminance difference between the two can be emphasized.
  • the corrected image data generated by the image generation unit 3a is not limited to image data that satisfies these conditions.
  • the image generation unit 3a in Figure 5 can correct captured image data and output corrected image data that enables highly accurate shape measurement of the subject 21.
  • the image generation unit 3a may be configured to include a compression unit 33 that compresses brightness information after the corrected image generation unit 31.
  • the corrected image data shown in Figure 7B has the advantage that it is easier to compress than the captured image data shown in Figure 4A.
  • Fig. 8A is a histogram showing the luminance information of the captured image data of Fig. 4A.
  • Fig. 8B is a histogram showing the luminance information of the corrected image data of Fig. 7B.
  • the horizontal axes of Figs. 8A and 8B represent luminance values, and the vertical axes of Figs. 8A and 8B represent the number of pixels.
  • the shape of the histogram in Figure 8B is compressed in the horizontal axis (brightness difference) direction.
  • the corrected image data is adjusted so that the average brightness value roughly matches the target signal value, so the center of gravity of the histogram in Figure 8B is located near the target signal value.
  • the histogram of the corrected image data is compressed compared to the histogram of the captured image data, it is possible to generate an area with almost no bin data in the horizontal axis (brightness difference) direction.
  • the histogram in Figure 8B has almost no bin data with high brightness values. Therefore, even if the compression unit 33 deletes data with high brightness values, the data volume of the corrected image data can be reduced without losing much information from the corrected image data.
  • the image processing device 1 can generate, for example, 20-bit HDR image data per pixel as captured image data.
  • downstream SoCs and the like may only support a maximum of 12-bit image data per pixel as a transmission interface (IF).
  • IF transmission interface
  • image data compression is required.
  • the compression unit 33 in Figure 5 can compress a 20-bit HDR image to, for example, 8 bits while minimizing information loss, making it possible to transfer highly accurate compressed data to downstream SoCs and the like.
  • the image generation unit 3 in Figure 2 can compress the image data to be output through binarization processing by the binary image generation unit 15. This makes it possible to omit the compression unit 33 in Figure 5.
  • the transfer unit 4 in Figure 1 can output image data with a smaller data volume than the captured image data, which has undergone at least one of data compression processing by the compression unit 33 and binarization processing by the binarized image generation unit 15.
  • the image generation unit 3a in Figure 5 may be configured to have a binary image generation unit 15 (and feature extraction unit 17) after the corrected image generation unit 31.
  • the binary image generation unit 15 may perform binarization processing on the corrected image data in Figure 7B.
  • the binary image generation unit 15 may be located after the compression unit 33.
  • FIG. 9 is a block diagram showing the configuration of an image generation unit according to a second modified example of the first embodiment of the present disclosure.
  • the image generation unit 3b in FIG. 9 differs from the image generation unit 3a in FIG. 5 in that it has a feature extraction unit 17 subsequent to the compression unit 33.
  • the feature extraction unit 17 in Figure 9 receives corrected image data whose data volume has been compressed by the compression unit 33. This reduces the amount of calculation required by the feature extraction unit 17 compared to when corrected image data is input directly from the corrected image generation unit 31 to the feature extraction unit 17. In this case, features can be extracted with a low calculation load, even without performing binarization processing on the corrected image data.
  • the binary image generating unit 15 in FIG. 2 may use the reciprocal of the first correction value (1/rb[kx, ky]) as the binary threshold.
  • the binary image data may be generated using the captured image data in FIG. 4A and the reciprocal of the first correction value (binarization threshold).
  • black may be output when the condition of the following formula (14) is satisfied, and white may be output otherwise.
  • Formula (14) can be modified as shown in formula (15).
  • equation (15) when determining whether to perform binarization, a process equivalent to division of the filter correction value is performed, which makes it possible to remove the effects of local brightness differences in the captured image data, as with equation (11).
  • the reciprocal of the first correction value can be calculated, for example, in the division processing unit 14 by dividing the filter correction value generated by the filter processing unit 13 by the target signal value M.
  • the target signal value M may be set to a value that is a power of 2. This makes it possible to omit the division circuit.
  • the above method is characterized by the fact that it directly corrects the binarization threshold rather than the captured image data.
  • This specification also refers to the above method as the direct threshold correction method (first method).
  • first method the direct threshold correction method
  • the binarized image generation unit 15 may be configured to use the interpolated value generated by the interpolation calculation unit 32 in Figure 5 as the binarization threshold.
  • the image generation units 3, 3a, and 3b (hereinafter simply referred to as image generation unit 3) in Figures 2, 5, and 9 are capable of line-based processing. More specifically, the captured image generation unit 11 can generate captured image data for each pixel row, for example.
  • the local area average calculation unit 12 can calculate the average brightness for each of the multiple pixel rows that make up a single local area.
  • the filter processing unit 13 can perform convolution operations for each of the multiple pixel rows that make up a single filter.
  • the captured image generation unit 11, local area average calculation unit 12, filter processing unit (first processing unit) 13, division processing unit 14, binary image generation unit 15, corrected image generation unit 31, and interpolation calculation unit 32 do not need to wait for pixel signals to be output from all pixel rows in the pixel array unit 2. Furthermore, the generation of corrected image data corresponding to a certain pixel 41 can be performed in parallel with the acquisition of pixel signals from other pixels 41. This allows the image generation unit 3 to generate corrected image data at high speed.
  • the image processing device 1 is also characterized by its input parameters. For example, two area sizes, the block size and the filter size, can be specified as input parameters.
  • the image processing device 1 can adjust the average luminance value of the corrected image data using a single target signal value M. This allows the image processing device 1 to omit the AE (Auto Exposure) function.
  • AE Auto Exposure
  • the binarized image generation unit 15 in Figure 2 is characterized by receiving as input a correction value or corrected image data in which the average luminance value has been adjusted to be close to the target signal value M. As a result, the image processing device 1 does not need to adjust the binarization threshold value depending on the brightness of the imaging environment.
  • multiple target signal values M may be input as input parameters, and the division processing unit 14 may be configured to be able to input multiple target signal values.
  • FIG. 10 is a block diagram showing the configuration of an image generation unit according to a comparative example.
  • the image generation unit 100 shown in FIG. 10 differs from the image generation unit 3 in FIG. 2 in that it does not have a filter processing unit 13.
  • the division processing unit 14 in Fig. 10 performs processing to divide a predetermined target signal value M by the average luminance value q[kx, ky] calculated by the local area average calculation unit 12.
  • the correction value rd[kx, ky] generated by the division processing unit 14 can be expressed by the following equation (16).
  • the corrected image generation unit 31 in Fig. 10 generates corrected image data based on the correction value generated by the division processing unit 14 and the captured image data generated by the captured image generation unit 11.
  • the luminance values gb[x, y] of multiple pixels 42 in the corrected image data can be expressed by the following equation (17) using the luminance values p[x, y] of the captured image data.
  • FIG. 11A is a diagram showing corrected image data generated by the corrected image generation unit 31 of FIG. 10. As shown in FIG. 11A, the corrected image generation unit 31 of FIG. 10 can also correct local differences in brightness in the captured image data of FIG. 4A and equalize the overall brightness values.
  • FIG. 11B is a histogram showing brightness information for the corrected image data of FIG. 11A.
  • the image generation unit 100 in Figure 10 can output binary image data and extract features using the binary image generation unit 15 and feature extraction unit 17.
  • the binary image generation unit 15 in Figure 10 compares and determines the luminance value of the corrected image data in Figure 11A with a predetermined binary threshold.
  • the method in Figure 10 is also referred to as the division method for each local area (second method).
  • the corrected image data in FIG. 7B is corrected using a correction value generated by a convolution operation.
  • the correction value of the corrected image data in FIG. 7B includes information on the nearby local area 22.
  • the corrected image data in FIG. 7B has improved halo compared to the corrected image data in FIG. 11A, and can further improve feature extraction accuracy.
  • the histogram in Figure 11B has been extremely compressed in the horizontal axis (brightness difference) direction from the histogram of the captured image data in Figure 8A.
  • the brightness difference (contrast) between the subject 21 and the background has been reduced, making it difficult for the feature extraction unit 17 to distinguish the subject 21 and reducing the accuracy of feature extraction.
  • the histogram in Figure 11B has lost the shape of the histogram in Figure 8A, resulting in a significant loss of information.
  • the histogram in Figure 8B has a sufficiently wide width along the horizontal axis (brightness difference). This means there is a sufficient brightness difference (contrast) between the subject 21 and the background, making feature extraction easy. Furthermore, the histogram in Figure 8B retains the shape of the histogram in Figure 8A, resulting in little loss of information.
  • feature extraction also includes a histogram measurement method for each local area (third method).
  • the third method generates a histogram of brightness values for each local area and flattens the histogram using gamma processing.
  • One example is CLAHE (Contrast Limited Adaptive Histogram Equalization).
  • Table 1 below shows an example of the circuit scale and memory capacity for methods 1 to 3.
  • SRAM Static Random Access Memory
  • the resolution of the captured image data is 2472 x 2064.
  • the data capacity per pixel is 8 bits.
  • the size of the local area is 16 x 16 pixels.
  • the number of bins in the histogram used in method 3 is 256.
  • the first method does not require complex processing such as histogram measurement, which allows for significant reductions in circuit size and memory capacity.
  • the first method has faster processing speeds than the third method.
  • the third method does not allow line-based processing.
  • the speed of generating corrected image data and extracting features is approximately several tens of fps.
  • the first method allows line-based processing, so for example, for 5MB of captured image data, it is possible to generate corrected image data and extract features at 1000 fps or 500 fps.
  • the first method does not require the process of multiplying the brightness value and correction value for each pixel, as shown in equation (17).
  • the first method can be achieved by simply comparing the brightness value with a predetermined binarization threshold, as shown in equation (14), so it does not require a product-sum circuit, etc. As a result, the circuit scale of the first method can be reduced to about one-quarter of that of the second method.
  • the inventor conducted an experiment using the image generation unit 3a in Figure 5 and the image generation unit 100 in Figure 10 to capture an image of a subject containing a barcode and extract the barcode.
  • FIG. 12A shows a corrected image generated by image generation unit 3a
  • FIG. 12B shows a corrected image generated by image generation unit 100
  • FIG. 13A shows an extracted image of the barcode generated by image generation unit 3a
  • FIG. 13B shows an extracted image of the barcode generated by image generation unit 100.
  • a luminance correction value is calculated based on the luminance of multiple surrounding local areas.
  • the corrected image data generated using the correction value for each local area has uniform luminance regardless of local brightness differences, making it possible to suppress halos.
  • a binarized image can be easily generated.
  • By extracting feature amounts based on the binarized image it is possible to improve measurement accuracy with a small circuit scale.
  • a first feature of the image processing device 1 according to the first embodiment is that it can output corrected image data such as that shown in Figure 7B.
  • the corrected image data output by the image processing device 1 has a generally uniform brightness value overall.
  • the corrected image data does not lose brightness differences at the boundary between the subject and background, and is therefore characterized by relatively large brightness differences at the boundary. This makes it possible to improve the accuracy of extracting edges of subjects, etc. during feature extraction.
  • the corrected image data has reduced halos, resulting in less noise during feature extraction.
  • corrected image data has the advantage that the range of brightness values is compressed while maintaining, for example, the contrast between the subject and the background. Therefore, even when corrected image data is compressed, there is little loss of information such as the subject's contours.
  • a second feature of the image processing device 1 is its high robustness to brightness differences in the surrounding environment. For example, even when capturing an image of a subject under varying lighting conditions, the image processing device 1 can generate corrected image data with an approximately constant average brightness value near a predetermined target signal value, and is capable of highly accurate feature extraction. Furthermore, the image processing device 1 can generate corrected image data with approximately uniform brightness values even when brightness differences are present in the imaging range. Furthermore, there is no need to adjust binarization thresholds or the like depending on the imaging environment.
  • a third feature of the image processing device 1 is that it is capable of processing on a pixel row basis.
  • the image processing device 1 can convert output pixel signals into corrected image data in sequence, without waiting for all pixel rows in the pixel array unit 2 to output pixel signals. This allows the image processing device 1 to output corrected image data at high speed. Furthermore, the pixel signals used to convert the corrected image data do not need to be stored in the storage unit, which reduces memory capacity.
  • a fourth feature of the image processing device 1 is that it can be implemented with a small circuit scale. Compared to methods such as creating a histogram for each local area, the image processing device 1 can be implemented with a small circuit scale because its processing content is simpler. In addition, by adjusting the size of the local area to a power of two, it is possible to omit the division circuit and further reduce the circuit scale.
  • the binary threshold can be directly corrected. This eliminates the need for multiply-and-accumulate operations between the brightness value and correction value for each pixel, further reducing the circuit size.
  • the image generation unit 3 according to the first embodiment of the present disclosure can be implemented with a sufficiently small circuit scale, allowing it to be mounted on an image sensor, etc. This makes it possible to directly perform highly accurate correction or highly accurate compression on the captured image data created within the image sensor.
  • a fifth feature of the image processing device 1 is that the block size and filter size are adjustable. By adjusting the block size, it is possible to adjust whether the captured image data is corrected with high precision or output at high speed. By appropriately adjusting the filter size, it is possible to correct differences in brightness due to lighting conditions, etc., while preventing the loss of brightness differences used for feature extraction.
  • the image generation unit 3 according to the first embodiment performs local tone mapping processing to correct the luminance of each local area using a plurality of local areas surrounding the local area, whereas the image generation unit 3 according to the second embodiment performs global tone mapping processing to correct the luminance of each pixel using the average luminance value across the entire area of the pixel array unit 2.
  • FIG. 14 is a block diagram showing the configuration of an image generation unit according to a second embodiment of the present disclosure.
  • the image generation unit 50 shown in FIG. 14 differs from the image generation unit 100 in FIG. 10 in that it has a screen average calculation unit 51 instead of the local area average calculation unit 12.
  • the screen average calculation unit 51 in Fig. 14 calculates the average luminance value AVE(p) of the entire area of the pixel array unit 2.
  • the division processing unit 14 in Fig. 14 divides the target signal value M by the average luminance value AVE(p).
  • the corrected image generation unit 31 in Fig. 14 generates corrected image data based on the correction value generated by the division processing unit 14 and the captured image data.
  • the luminance values gb[x, y] of the multiple pixels 42 of the corrected image data can be expressed by the following equation (18).
  • the image generation unit 50 shown in Figure 14 performs the same correction processing on the entire pixel array unit 2. This processing is also called global tone mapping processing.
  • the inventor conducted an experiment to compare the extraction of a barcode using a captured image of a subject containing a barcode as is, with the extraction of a barcode from a corrected image generated by inputting the captured image into the image generation unit 50 shown in Figure 14.
  • Fig. 15A shows a corrected image generated by the image generation unit 50
  • Fig. 15B shows a captured image without correction
  • Fig. 16A shows an extracted image of the barcode generated by the image generation unit 50
  • Fig. 16B shows an extracted image of the barcode generated from the captured image.
  • the second embodiment global tone mapping processing is performed instead of local tone mapping processing, so a corrected image can be generated using simpler processing than local tone mapping processing, and circuit scale can be reduced.
  • the first embodiment is superior.
  • the captured image generation unit 11 in Figure 17 acquires multiple pixel signals containing color information and luminance information from the pixel array unit 2.
  • the luminance information extraction unit 61 extracts luminance information for each pixel from the multiple pixel signals.
  • the local area average calculation unit 12 calculates the average luminance value of the local area from the luminance information extracted for each pixel, as in Figure 2.
  • the processing details of the correction value calculation unit 16 and the interpolation calculation unit 32 are the same as in Figure 2.
  • FIG 18 is a block diagram showing the configuration of the luminance information extraction unit 61.
  • the luminance information extraction unit 61 has a temporary storage unit 62 and a luminance value extraction unit 63.
  • the luminance information extraction unit 61 extracts one luminance value from the pixel group 65 and transfers it to the local area average calculation unit 12.
  • One luminance value is, for example, the maximum luminance value of the four pixels 41 in the pixel group 65.
  • the luminance information extraction unit 61 may also obtain the average luminance value of the four pixels 41 in the pixel group 65 as one luminance value. An example in which the luminance information extraction unit 61 obtains the maximum luminance value in the pixel group 65 will be described below.
  • FIG 19 is a flowchart showing the operation of the luminance information extraction unit 61.
  • the pixel array unit 2 outputs pixel signals for each pixel row.
  • the pixel array unit 2 outputs the pixel signal for one pixel row 64a, for example.
  • the luminance information extraction unit 61 can obtain the luminance information and color information (i.e., R and G1 color information) of pixels 41a and 41b via the captured image generation unit 11 (step S31).
  • the larger the blending coefficient D the larger the component of the first correction value rb[kx,ky] in the blending value rf[kx,ky]. Also, the smaller the blending coefficient D, the larger the component of the second correction value re in the blending value rf[kx,ky].
  • the first division processing unit 71a, second division processing unit 71b, and blending processing unit 72 according to the fourth embodiment of the present disclosure can be applied to any of the image generation units 3 to 3c (and 50) according to the first to third embodiments.
  • the image generation unit 3e of Fig. 21 differs from the image generation unit 3a of Fig. 5 in that it includes a region of interest extraction unit 81 and a region selection unit 82.
  • the region of interest extraction unit 81 extracts a region of interest (ROI) from image data generated by the binarized image generation unit 15.
  • ROI region of interest
  • the extracted region of interest is fed back to the region selection unit 82.
  • the region selection unit 82 is disposed between the captured image generation unit 11 and the local area average calculation unit 12.
  • the region selection unit 82 generates image data by extracting image data of the region of interest from the captured image data generated by the image generation unit.
  • FIG. 22 is a diagram showing image data generated by the region selection unit 82.
  • the local area average calculation unit 12 and correction value calculation unit 16, etc. process two or more pixels included in the ROI (region of interest, or pixel region) in FIG. 22. This reduces the region to be processed, allowing the image generation unit 3e to generate image data more efficiently and at even higher speeds.
  • the increased efficiency of image data generation using this method is particularly effective when the subject 21 is small compared to the overall captured image data.
  • the compression unit 33 can be omitted when outputting corrected image data such as that shown in FIG. 7B.
  • the region-of-interest extraction unit 81 may also be configured to control the pixel array unit 2 in FIG. 1 so that it does not output pixel signals from pixels that are not located in the region of interest.
  • FIG. 23 is a block diagram showing the configuration of an image generation unit 3f according to a sixth embodiment of the present disclosure.
  • the image generation unit 3f in Fig. 23 differs from the image generation unit 3a in Fig. 5 in that it includes a region extraction unit 83 and a region image generation unit 84.
  • the image data generated by the area image generation unit 84 is output to a downstream SoC, for example, via the transfer unit 4 in Figure 1. This allows the data volume of the image data to be transferred to be reduced compared to captured image data.
  • the reduced data volume of the image data reduces the amount of calculations required on the downstream SoC, thereby easing the processing burden on the SoC.
  • the region extraction unit 83 and region image generation unit 84 according to the sixth embodiment of the present disclosure can be applied to any of the image generation units 3 to 3e (and 50) according to the first to fifth embodiments.
  • Seventh Embodiment Fig. 24 is a block diagram showing the configuration of a semiconductor device 10a according to a seventh embodiment of the present disclosure.
  • the semiconductor device 10a in Fig. 24 differs from the semiconductor device 10 in Fig. 1 in that it includes an image selection unit 91.
  • the image selection unit 91 selects and outputs some or all of the image data from among two or more pieces of image data generated by the image generation unit 3g.
  • the image selection unit 91 may select an image to output in response to a user request, or may select an image to output in response to a request from a downstream device such as an SoC.
  • the image selection unit 91 may also select an image to output based on information input from the setting input unit 5 or information stored in the register block 6.
  • the image generation unit 3g can generate the captured image data (e.g., FIG. 4A or FIG. 13A) generated by the captured image generation unit 11 in FIG. 2 as image data that has not undergone image processing.
  • the captured image data e.g., FIG. 4A or FIG. 13A
  • the image generation unit 3g can output two or more of the image data generated by performing local tone mapping processing including filtering (e.g., FIG. 7B or FIG. 16A), image data generated by performing local tone mapping processing not including filtering (e.g., FIG. 11A or FIG. 15A), or image data generated by performing global tone mapping processing (e.g., FIG. 14A), as two or more types of image data generated by performing different image processing.
  • local tone mapping processing including filtering (e.g., FIG. 7B or FIG. 16A)
  • image data generated by performing local tone mapping processing not including filtering e.g., FIG. 11A or FIG. 15A
  • image data generated by performing global tone mapping processing e.g., FIG. 14A
  • the image generation unit 3g may output image data compressed by the compression unit 33, image data generated by the binary image generation unit 15 (e.g., Figure 4H), image data generated by the feature extraction unit 17 (e.g., Figure 4I), image data generated by the local area average calculation unit 12 (e.g., Figure 4C), or image data generated by the division processing unit 14 (e.g., Figure 4G).
  • image data generated by the binary image generation unit 15 e.g., Figure 4H
  • image data generated by the feature extraction unit 17 e.g., Figure 4I
  • image data generated by the local area average calculation unit 12 e.g., Figure 4C
  • image data generated by the division processing unit 14 e.g., Figure 4G
  • the image generation unit 3g may output color image data having color information, image data that has been blended by the blend processing unit 72, or image data of the region of interest extracted by the region of interest extraction unit 81 (e.g., Figure 22).
  • Image generation unit 3g has a configuration similar to any of image generation units 3 to 3f (and 50).
  • Image generation unit 3g may have a configuration that has the functions of two or more of image generation units 3 to 3f (and 50).
  • image generation unit 3g may have, in parallel, the binary image generation unit 15 and feature extraction unit 17 of FIG. 2, and the interpolation calculation unit 32 and corrected image generation unit 31 of FIG. 5.
  • Image generation unit 3g may output at least one of the corrected image data of FIG. 7B or the feature extraction data of FIG. 4I, based on the selection made by image selection unit 91.
  • the image selection unit 91 can output any one of the following (1) to (5): Note that the image selection unit 91 is not limited to (1) to (5) and can output any of a plurality of types of image data.
  • Captured image data (FIG. 4A) and image data of feature extraction results (FIG. 4I) (2) Captured image data (FIG. 4A) and corrected image data (FIG. 7B) (3) Corrected image data (FIG. 7B) and image data of feature extraction results (FIG. 4I)
  • the semiconductor device 10a By switching the image data it outputs, the semiconductor device 10a can accommodate a variety of image processing tasks in downstream SoCs, etc.
  • the technology according to the present disclosure can be applied to various products.
  • the technology according to the present disclosure may be realized as a device mounted on any type of moving body, such as an automobile, an electric vehicle, a hybrid electric vehicle, a motorcycle, a bicycle, personal mobility, an airplane, a drone, a ship, a robot, construction machinery, or agricultural machinery (tractor).
  • FIG. 25 is a block diagram showing a schematic configuration example of a vehicle control system 7000, which is an example of a mobile object control system to which the technology disclosed herein can be applied.
  • the vehicle control system 7000 includes multiple electronic control units connected via a communication network 7010.
  • the vehicle control system 7000 includes a drive system control unit 7100, a body system control unit 7200, a battery control unit 7300, an outside-vehicle information detection unit 7400, an inside-vehicle information detection unit 7500, and an integrated control unit 7600.
  • the communication network 7010 connecting these multiple control units may be an in-vehicle communication network conforming to any standard, such as CAN (Controller Area Network), LIN (Local Interconnect Network), LAN (Local Area Network), or FlexRay (registered trademark).
  • CAN Controller Area Network
  • LIN Local Interconnect Network
  • LAN Local Area Network
  • FlexRay registered trademark
  • Each control unit includes a microcomputer that performs arithmetic processing in accordance with various programs, a memory unit that stores the programs executed by the microcomputer or parameters used in various calculations, and a drive circuit that drives various controlled devices.
  • Each control unit includes a network I/F for communicating with other control units via the communication network 7010, as well as a communication I/F for communicating with devices or sensors inside and outside the vehicle via wired or wireless communication.
  • Figure 25 illustrates the functional configuration of the integrated control unit 7600, including a microcomputer 7610, a general-purpose communication I/F 7620, a dedicated communication I/F 7630, a positioning unit 7640, a beacon receiving unit 7650, an in-vehicle device I/F 7660, an audio/video output unit 7670, an in-vehicle network I/F 7680, and a memory unit 7690.
  • Other control units similarly include microcomputers, communication I/Fs, memory units, etc.
  • the drivetrain control unit 7100 controls the operation of devices related to the vehicle's drivetrain in accordance with various programs.
  • the drivetrain control unit 7100 functions as a control device for a driveforce generating device for generating vehicle driveforce, such as an internal combustion engine or drive motor, a driveforce transmission mechanism for transmitting driveforce to the wheels, a steering mechanism for adjusting the steering angle of the vehicle, and a braking device for generating vehicle braking force.
  • the drivetrain control unit 7100 may also function as a control device for an ABS (Antilock Brake System) or ESC (Electronic Stability Control), etc.
  • a vehicle state detection unit 7110 is connected to the drivetrain control unit 7100.
  • the vehicle state detection unit 7110 includes at least one of the following: a gyro sensor that detects the angular velocity of the axial rotational movement of the vehicle body; an acceleration sensor that detects the acceleration of the vehicle; or a sensor for detecting the amount of accelerator pedal operation, the amount of brake pedal operation, the steering angle of the steering wheel, engine rotation speed, or wheel rotation speed.
  • the drivetrain control unit 7100 performs arithmetic processing using signals input from the vehicle state detection unit 7110, and controls the internal combustion engine, drive motor, electric power steering device, brake device, etc.
  • the body system control unit 7200 controls the operation of various devices installed in the vehicle body according to various programs.
  • the body system control unit 7200 functions as a control device for a keyless entry system, a smart key system, a power window device, or various lamps such as headlamps, backup lamps, brake lamps, turn signals, and fog lamps.
  • radio waves transmitted from a portable device that serves as a key or signals from various switches can be input to the body system control unit 7200.
  • the body system control unit 7200 accepts these radio waves or signal inputs and controls the vehicle's door lock device, power window device, lamps, etc.
  • the battery control unit 7300 controls the secondary battery 7310, which is the power supply source for the drive motor, in accordance with various programs. For example, information such as battery temperature, battery output voltage, or remaining battery capacity is input to the battery control unit 7300 from a battery device equipped with the secondary battery 7310. The battery control unit 7300 performs calculations using these signals, and controls the temperature regulation of the secondary battery 7310 or the cooling device or other components equipped in the battery device.
  • the outside vehicle information detection unit 7400 detects information outside the vehicle equipped with the vehicle control system 7000.
  • an imaging unit 7410 and an outside vehicle information detection unit 7420 is connected to the outside vehicle information detection unit 7400.
  • the imaging unit 7410 includes at least one of a ToF (Time Of Flight) camera, a stereo camera, a monocular camera, an infrared camera, and other cameras.
  • the outside vehicle information detection unit 7420 includes at least one of, for example, an environmental sensor for detecting the current weather or climate, or a surrounding information detection sensor for detecting other vehicles, obstacles, pedestrians, etc. around the vehicle equipped with the vehicle control system 7000.
  • the environmental sensor may be, for example, at least one of a raindrop sensor that detects rain, a fog sensor that detects fog, a sunshine sensor that detects the level of sunlight, and a snow sensor that detects snowfall.
  • the surrounding information detection sensor may be at least one of an ultrasonic sensor, a radar device, and a LIDAR (Light Detection and Ranging, Laser Imaging Detection and Ranging) device.
  • the imaging unit 7410 and the outside vehicle information detection unit 7420 may each be provided as an independent sensor or device, or may be provided as a device that integrates multiple sensors or devices.
  • Figure 26 shows an example of the installation locations of the imaging unit 7410 and the vehicle exterior information detection unit 7420.
  • the imaging units 7910, 7912, 7914, 7916, and 7918 are installed, for example, at least one of the front nose, side mirrors, rear bumper, back door, and the top of the windshield inside the vehicle cabin of the vehicle 7900.
  • the imaging unit 7910 installed on the front nose and the imaging unit 7918 installed on the top of the windshield inside the vehicle cabin mainly capture images of the front of the vehicle 7900.
  • the imaging units 7912 and 7914 installed on the side mirrors mainly capture images of the sides of the vehicle 7900.
  • the imaging unit 7916 installed on the rear bumper or back door mainly captures images of the rear of the vehicle 7900.
  • the imaging unit 7918 which is mounted above the windshield inside the vehicle, is primarily used to detect preceding vehicles, pedestrians, obstacles, traffic lights, traffic signs, lane marks, etc.
  • Imaging range a indicates the imaging range of the imaging unit 7910 provided on the front nose
  • imaging ranges b and c indicate the imaging ranges of the imaging units 7912 and 7914 provided on the side mirrors, respectively
  • imaging range d indicates the imaging range of the imaging unit 7916 provided on the rear bumper or back door.
  • External vehicle information detection units 7920, 7922, 7924, 7926, 7928, and 7930 installed on the front, rear, sides, corners, and above the windshield inside the vehicle cabin of vehicle 7900 may be, for example, ultrasonic sensors or radar devices.
  • External vehicle information detection units 7920, 7926, and 7930 installed on the front nose, rear bumper, back door, and above the windshield inside the vehicle cabin of vehicle 7900 may be, for example, LIDAR devices.
  • These external vehicle information detection units 7920 to 7930 are primarily used to detect preceding vehicles, pedestrians, obstacles, etc.
  • the outside vehicle information detection unit 7400 causes the imaging unit 7410 to capture images outside the vehicle and receives the captured image data.
  • the outside vehicle information detection unit 7400 also receives detection information from the connected outside vehicle information detection unit 7420. If the outside vehicle information detection unit 7420 is an ultrasonic sensor, radar device, or LIDAR device, the outside vehicle information detection unit 7400 emits ultrasonic waves or electromagnetic waves, and receives information on the received reflected waves. Based on the received information, the outside vehicle information detection unit 7400 may perform object detection processing or distance detection processing for people, vehicles, obstacles, signs, text on the road, etc. Based on the received information, the outside vehicle information detection unit 7400 may also perform environmental recognition processing to recognize rainfall, fog, road conditions, etc. Based on the received information, the outside vehicle information detection unit 7400 may also calculate the distance to objects outside the vehicle.
  • the outside vehicle information detection unit 7400 may also perform image recognition processing or distance detection processing to recognize people, cars, obstacles, signs, or text on the road surface based on the received image data.
  • the outside vehicle information detection unit 7400 may also perform processing such as distortion correction or alignment on the received image data, and may also generate an overhead image or panoramic image by combining image data captured by different image capture units 7410.
  • the outside vehicle information detection unit 7400 may also perform viewpoint conversion processing using image data captured by different image capture units 7410.
  • the in-vehicle information detection unit 7500 detects information inside the vehicle.
  • a driver state detection unit 7510 that detects the driver's state.
  • the driver state detection unit 7510 may include a camera that captures an image of the driver, a biosensor that detects the driver's biometric information, or a microphone that collects audio from within the vehicle cabin.
  • the biosensor is provided, for example, on the seat or steering wheel, and detects the biometric information of a passenger sitting in the seat or the driver gripping the steering wheel.
  • the in-vehicle information detection unit 7500 may calculate the driver's level of fatigue or concentration based on the detection information input from the driver state detection unit 7510, or may determine whether the driver is dozing off.
  • the in-vehicle information detection unit 7500 may perform processing such as noise canceling on the collected audio signal.
  • the integrated control unit 7600 controls the overall operation of the vehicle control system 7000 in accordance with various programs.
  • An input unit 7800 is connected to the integrated control unit 7600.
  • the input unit 7800 is realized by a device that can be operated by the occupant for input, such as a touch panel, button, microphone, switch, or lever. Data obtained by voice recognition of voice input through a microphone may be input to the integrated control unit 7600.
  • the input unit 7800 may be, for example, a remote control device that uses infrared or other radio waves, or an externally connected device such as a mobile phone or PDA (Personal Digital Assistant) that is compatible with the operation of the vehicle control system 7000.
  • the input unit 7800 may be, for example, a camera, in which case the occupant can input information using gestures.
  • the input unit 7800 may include, for example, an input control circuit that generates an input signal based on information input by a passenger or the like using the input unit 7800 and outputs the signal to the integrated control unit 7600.
  • the passenger or the like inputs various data to the vehicle control system 7000 and instructs it to perform processing operations.
  • the memory unit 7690 may include a ROM (Read Only Memory) that stores various programs executed by the microcomputer, and a RAM (Random Access Memory) that stores various parameters, calculation results, sensor values, etc.
  • the memory unit 7690 may also be realized by a magnetic memory device such as an HDD (Hard Disc Drive), a semiconductor memory device, an optical memory device, or a magneto-optical memory device.
  • the general-purpose communication I/F 7620 is a general-purpose communication I/F that mediates communication between various devices present in the external environment 7750.
  • the general-purpose communication I/F 7620 may implement cellular communication protocols such as GSM (registered trademark) (Global System of Mobile communications), WiMAX (registered trademark), LTE (registered trademark) (Long Term Evolution) or LTE-Advanced (LTE-A), or other wireless communication protocols such as wireless LAN (also known as Wi-Fi (registered trademark)) and Bluetooth (registered trademark).
  • GSM Global System of Mobile communications
  • WiMAX registered trademark
  • LTE registered trademark
  • LTE-Advanced LTE-Advanced
  • wireless LAN also known as Wi-Fi (registered trademark)
  • Bluetooth registered trademark
  • the general-purpose communication I/F 7620 may connect to devices (e.g., application servers or control servers) present on an external network (e.g., the Internet, a cloud network, or an operator-specific network) via, for example, a base station or access point. Additionally, the general-purpose communication I/F 7620 may connect to a terminal located near the vehicle (for example, a terminal of a driver, pedestrian, or store, or an MTC (Machine Type Communication) terminal) using, for example, P2P (Peer To Peer) technology.
  • P2P Peer To Peer
  • the dedicated communication I/F 7630 is a communication I/F that supports communication protocols designed for use in vehicles.
  • the dedicated communication I/F 7630 may implement standard protocols such as WAVE (Wireless Access in Vehicle Environment), which is a combination of the lower layer IEEE 802.11p and the upper layer IEEE 1609, DSRC (Dedicated Short Range Communications), or a cellular communication protocol.
  • WAVE Wireless Access in Vehicle Environment
  • DSRC Dedicated Short Range Communications
  • the dedicated communication I/F 7630 typically performs V2X communication, a concept that includes one or more of vehicle-to-vehicle communication, vehicle-to-infrastructure communication, vehicle-to-home communication, and vehicle-to-pedestrian communication.
  • the positioning unit 7640 performs positioning by receiving, for example, GNSS signals from GNSS (Global Navigation Satellite System) satellites (e.g., GPS signals from GPS (Global Positioning System) satellites), and generates location information including the vehicle's latitude, longitude, and altitude.
  • GNSS Global Navigation Satellite System
  • GPS Global Positioning System
  • the positioning unit 7640 may determine the current location by exchanging signals with a wireless access point, or may obtain location information from a terminal with positioning capabilities, such as a mobile phone, PHS, or smartphone.
  • the beacon receiver 7650 receives, for example, radio waves or electromagnetic waves transmitted from radio stations installed on the road, and acquires information such as the current location, congestion, road closures, and travel time.
  • the functions of the beacon receiver 7650 may be included in the dedicated communication I/F 7630 described above.
  • the in-vehicle device I/F 7660 is a communication interface that mediates connections between the microcomputer 7610 and various in-vehicle devices 7760 present in the vehicle.
  • the in-vehicle device I/F 7660 may establish wireless connections using wireless communication protocols such as wireless LAN, Bluetooth (registered trademark), NFC (Near Field Communication), or WUSB (Wireless USB).
  • the in-vehicle device I/F 7660 may also establish a wired connection such as USB (Universal Serial Bus), HDMI (High-Definition Multimedia Interface), or MHL (Mobile High-Definition Link) via a connection terminal (and a cable, if necessary) not shown.
  • USB Universal Serial Bus
  • HDMI High-Definition Multimedia Interface
  • MHL Mobile High-Definition Link
  • the in-vehicle device 7760 may include, for example, at least one of a mobile device or wearable device owned by the passenger, or an information device carried into or attached to the vehicle.
  • the in-vehicle device 7760 may also include a navigation device that searches for a route to an arbitrary destination.
  • the in-vehicle device I/F 7660 exchanges control signals or data signals with these in-vehicle devices 7760.
  • the in-vehicle network I/F 7680 is an interface that mediates communication between the microcomputer 7610 and the communication network 7010.
  • the in-vehicle network I/F 7680 sends and receives signals in accordance with a specific protocol supported by the communication network 7010.
  • the microcomputer 7610 of the integrated control unit 7600 controls the vehicle control system 7000 in accordance with various programs based on information acquired via at least one of the general-purpose communication I/F 7620, dedicated communication I/F 7630, positioning unit 7640, beacon receiving unit 7650, in-vehicle device I/F 7660, and in-vehicle network I/F 7680.
  • the microcomputer 7610 may calculate control target values for the driving force generating device, steering mechanism, or braking device based on acquired information from inside and outside the vehicle, and output control commands to the drivetrain control unit 7100.
  • the microcomputer 7610 may perform cooperative control aimed at realizing the functions of an Advanced Driver Assistance System (ADAS), including vehicle collision avoidance or impact mitigation, following driving based on inter-vehicle distance, vehicle speed maintenance driving, vehicle collision warning, and vehicle lane departure warning.
  • ADAS Advanced Driver Assistance System
  • the microcomputer 7610 may perform cooperative control for the purpose of autonomous driving, which allows the vehicle to travel autonomously without relying on driver operation, by controlling the driving force generation device, steering mechanism, braking device, etc. based on the acquired information about the vehicle's surroundings.
  • the microcomputer 7610 may generate three-dimensional distance information between the vehicle and surrounding objects such as structures and people based on information acquired via at least one of the general-purpose communication I/F 7620, dedicated communication I/F 7630, positioning unit 7640, beacon receiving unit 7650, in-vehicle equipment I/F 7660, and in-vehicle network I/F 7680, and may create local map information including information about the area around the vehicle's current location. Furthermore, the microcomputer 7610 may predict dangers such as a vehicle collision, approaching pedestrians, or entering a closed road based on the acquired information, and generate a warning signal.
  • the warning signal may be, for example, a signal to generate a warning sound or turn on a warning lamp.
  • the audio/video output unit 7670 transmits at least one audio and/or image output signal to an output device capable of visually or audibly notifying vehicle occupants or the outside of the vehicle of information.
  • an audio speaker 7710, a display unit 7720, and an instrument panel 7730 are exemplified as output devices.
  • the display unit 7720 may include, for example, at least one of an on-board display and a head-up display.
  • the display unit 7720 may have an AR (Augmented Reality) display function.
  • the output device may also be other devices such as headphones, wearable devices such as eyeglass-type displays worn by the occupants, projectors, or lamps.
  • the output device When the output device is a display device, the display device visually displays the results obtained by various processes performed by the microcomputer 7610 or information received from other control units in various formats such as text, images, tables, and graphs.
  • the output device is an audio output device, the audio output device converts audio signals consisting of reproduced audio data or acoustic data into analog signals and outputs them audibly.
  • At least two control units connected via the communication network 7010 may be integrated into a single control unit.
  • each control unit may be made up of multiple control units.
  • the vehicle control system 7000 may include another control unit not shown.
  • some or all of the functions performed by one of the control units may be carried out by another control unit. In other words, as long as information is sent and received via the communication network 7010, predetermined calculation processing may be performed by one of the control units.
  • a sensor or device connected to one of the control units may be connected to another control unit, and multiple control units may send and receive detection information to each other via the communication network 7010.
  • a computer program for realizing each function of the image processing device 1 according to this embodiment described with reference to FIG. 1 can be implemented in any control unit, etc.
  • a computer-readable recording medium on which such a computer program is stored can be provided. Examples of recording media include magnetic disks, optical disks, magneto-optical disks, and flash memory.
  • the above-mentioned computer program may be distributed, for example, via a network, without using a recording medium.
  • the image processing device 1 described using FIG. 1 can be applied to the imaging unit 7410 of the application example shown in FIG. 25.
  • the image processing device 1 of FIG. 1 can be applied to a camera or the like of the imaging unit 7410. This makes it possible to measure shapes with high precision and speed even in image processing devices with limited circuit scale, such as cameras, and enables faster and more accurate detection of vehicles or people.
  • the components of the image processing device 1 described using FIG. 1 may be implemented in a module (e.g., an integrated circuit module configured on a single die) for the integrated control unit 7600 shown in FIG. 25.
  • the image processing device 1 described using FIG. 1 may be implemented by multiple control units of the vehicle control system 7000 shown in FIG. 25.
  • the present technology can be configured as follows: (1) a plurality of pixels each outputting a pixel signal including luminance information corresponding to the amount of incident light; an image generating unit that generates image data having uniform brightness regardless of local brightness differences between pixels based on the brightness information of the plurality of pixels, Image processing device.
  • the semiconductor device is an average luminance calculation unit that calculates an average luminance value for each first region including two or more of the pixels that are arranged adjacent to each other; a correction value calculation unit that calculates a correction value according to the average luminance value of the first region based on the average luminance value of the first region and luminance information about the periphery of the first region, the image generation unit generates the image data based on a plurality of the correction values corresponding to a plurality of the first regions.
  • An image processing device according to (1) or (2).
  • the correction value calculation unit calculates the correction value of the specific first region based on an average luminance value of the specific first region that is the calculation target of the correction value and an average luminance value of a first region other than the specific first region that is included in a second region that includes the specific first region and is larger than the specific first region.
  • the correction value calculation unit a first processing unit that corrects the average luminance value of the specific first region by performing a convolution process on the average luminance value of the specific first region using average luminance values of first regions other than the specific first region that are included in the second region located around the specific first region; a second processing unit that calculates the correction value for the specific first region based on the average luminance value of the specific first region corrected by the first processing unit, (4) An image processing device according to (4).
  • the second processing unit calculates the correction value by dividing a predetermined target signal value by the average luminance value of the specific first region corrected by the first processing unit.
  • An image processing device according to (5).
  • the correction value calculation unit repeatedly performs a process of calculating the correction value while changing the specific first region; the image generation unit generates the binarized image data based on a plurality of the correction values corresponding to a plurality of the first regions.
  • An image processing device (6)
  • (8) generating the binarized image data based on a comparison result between a threshold value set based on the target signal value and the correction value; (7)
  • An image processing device according to (7).
  • the correction value calculation unit repeatedly performs a process of calculating the correction value while changing the specific first region; the image generation unit performs an interpolation process on luminance information of each of the plurality of pixels based on the plurality of correction values corresponding to the plurality of first regions, to generate pixel data having uniform luminance.
  • An image processing device according to (6).
  • the image generation unit includes a compression unit that generates image data in which luminance information of the plurality of pixels is compressed.
  • the semiconductor device is a pixel array unit including the plurality of pixels; an average luminance calculation unit that calculates an average luminance value of the entire area of the pixel array unit;
  • the correction value calculation unit a first processing unit that corrects the average luminance value of the specific first region by performing a convolution process on the average luminance value of the specific first region using average luminance values of first regions other than the specific first region that are included in the second region located around the specific first region; a second processing unit that calculates a first correction value for the specific first region by dividing a predetermined target signal value by the average luminance value of the specific first region corrected by the first processing unit; a third processing unit that calculates a second correction value by dividing the target signal value by the average luminance value calculated by the average luminance calculation unit; a fourth processing unit that calculates the correction value based on the first correction value and the second correction value, (4) An image processing device according to (4).
  • the semiconductor device is an input unit for inputting the size of the first region and the size of the second region; Alternatively, the device may have at least one of a storage unit that stores the size of the first region and the size of the second region.
  • the image processing device according to any one of (4) to (11).
  • the semiconductor device is an input unit for inputting the size of the first region, the size of the second region, and the target signal value; Alternatively, the device may include at least one of a storage unit that stores the size of the first region, the size of the second region, and the target signal value.
  • the image processing device according to any one of (6) to (11).
  • the semiconductor device is a pixel array unit including the plurality of pixels; an attention area extraction unit that extracts an attention area including two or more of the pixels in the pixel array unit, the image generation unit, the average luminance calculation unit, and the correction value calculation unit perform processing on the two or more pixels included in the region of interest.
  • the image processing device according to any one of (3) to (13).
  • the semiconductor device is an area extraction unit that extracts a partial pixel area included in the image data generated by the image generation unit; a region image generating unit that generates image data of the partial pixel region based on the partial pixel region extracted by the region extracting unit and luminance information of the plurality of pixels, The image processing device according to any one of (1) to (13).
  • the semiconductor device includes a luminance information extraction unit that extracts luminance information for each pixel from a plurality of pixel signals including color information and luminance information output from each of the plurality of pixels, the image generation unit generates the image data based on the luminance information for each pixel extracted by the luminance information extraction unit.
  • the image processing device according to any one of (1) to (15).
  • the image processing unit may further include an image processing unit that performs predetermined image processing based on the image data output from the semiconductor device.
  • the image processing device according to any one of (1) to (16).
  • Image processing device 2. Pixel array unit, 3, 3a, 3b, 3c, 3d, 3e, 3f, 3g, 50, 100.
  • Image generation unit 4. Transfer unit, 5. Setting input unit, 6. Register block, 7. Row selection unit, 8. Image processing unit, 9. Control unit, 10, 10a.
  • Semiconductor device 11. Captured image generation unit, 12. Local area average calculation unit, 13. Filter processing unit, 14. Division processing unit, 15. Binarized image generation unit, 16. Correction value calculation unit, 17. Feature extraction unit, 21. Subject, 22, 22a, 22b, 22c, 22d, 24. Local area, 23. Filter block, 25.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

[課題]回路規模を削減可能で、かつ計測精度を向上できる。 [解決手段]画像処理装置は、入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、前記複数の画素の前記輝度情報に基づいて、画素ごとの局所的な明暗差に関わらず均一な輝度を有する画像データを生成する画像生成部と、を有する半導体装置を備える。

Description

画像処理装置及び画像処理方法
 本開示は、画像処理装置及び画像処理方法に関する。
 感度を変化させて撮像した画像を合成させるHDR(High Dynamic Range:ハイダイナミックレンジ)技術が普及している。HDR技術では、演算量及びメモリ量が莫大なものとなることに加え、画面内明暗差が顕著になるため、輝度差を忠実に検出するのが困難であり、特徴量等の計測精度が悪化するという課題がある。
 画素ごとのコントラストに応じて圧縮率を調整し、明部及び暗部のコントラストの再現性を向上させるローカルトーンマッピング処理が提案されている(特許文献1参照)。特許文献1では、局所エリア毎のヒストグラムに基づいて算出したガンマカーブを用いて、画像データを形状計測に最適なコントラストへ補正するとともにbit圧縮を行う。
特開2021-117748号公報
 しかしながら、特許文献1の手法では、ヒストグラムを生成する回路が必要であり、また、ヒストグラムの生成には大容量のメモリが必要になる。このため、特許文献1の手法をイメージセンサ等の固体撮像装置に実装するのは困難である。
 そこで、本開示では、回路規模を削減可能で、かつ計測精度を向上できる画像処理装置及び画像処理方法を提供するものである。
 上記の課題を解決するために、本開示によれば、入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、
 前記複数の画素の前記輝度情報に基づいて、画素ごとの局所的な明暗差に関わらず均一な輝度を有する画像データを生成する画像生成部と、を有する半導体装置を備える、
 画像処理装置が提供される。
 また、本開示によれば、入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、
 前記複数の画素の前記輝度情報に基づいて、それぞれ異なる画像処理を行って生成される2種類以上の画像データと、前記画像処理を行わずに生成される画像データとのうち、少なくとも2つの画像データを生成する画像生成部と、
 前記画像生成部で生成された少なくとも2つの画像データのうち、一部又はすべての画像データを選択して出力する画像選択部と、を有する半導体装置を備える、
 画像処理装置が提供される。
 前記半導体装置は、
 隣接して配置される2以上の前記画素を含む第1領域ごとに平均輝度値を算出する平均輝度算出部と、
 前記第1領域の平均輝度値と前記第1領域の周囲の輝度情報とに基づいて、前記第1領域の平均輝度値に応じた補正値を算出する補正値算出部と、を有し、
 前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、前記画像データを生成してもよい。
 前記補正値算出部は、前記補正値の算出対象となる特定の前記第1領域の平均輝度値と、前記特定の第1領域を含み前記特定の第1領域よりも広い第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値と、に基づいて、前記特定の第1領域の前記補正値を算出してもよい。
 前記補正値算出部は、
 前記特定の第1領域の平均輝度値に対して、前記特定の第1領域の周囲に位置する前記第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値を用いた畳み込み処理を行うことにより、前記特定の第1領域の平均輝度値を補正する第1処理部と、
 前記第1処理部で補正された前記特定の第1領域の平均輝度値に基づいて、前記特定の第1領域の前記補正値を算出する第2処理部と、を有してもよい。
 前記第2処理部は、予め定めた目標信号値を前記第1処理部で補正された前記特定の第1領域の平均輝度値で割ることにより、前記補正値を算出してもよい。
 前記補正値算出部は、前記特定の第1領域を変えながら前記補正値を算出する処理を繰り返し行い、
 前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、二値化された前記画像データを生成してもよい。
 前記目標信号値に基づいて設定される閾値と前記補正値との比較結果に基づいて、前記二値化された画像データを生成してもよい。
 前記補正値算出部は、前記特定の第1領域を変えながら前記補正値を算出する処理を繰り返し行い、
 前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、前記複数の画素のそれぞれの輝度情報の補間処理を行って、均一な輝度を有する画素データを生成してもよい。
 前記画像生成部は、前記複数の画素の輝度情報が圧縮された画像データを生成する圧縮部を備えてもよい。
 前記半導体装置は、
 前記複数の画素を含む画素アレイ部と、
 前記画素アレイ部の全域の平均輝度値を算出する平均輝度算出部を有し、
 前記補正値算出部は、
 前記特定の第1領域の平均輝度値に対して、前記特定の第1領域の周囲に位置する前記第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値を用いた畳み込み処理を行うことにより、前記特定の第1領域の平均輝度値を補正する第1処理部と、
 予め定めた目標信号値を前記第1処理部で補正された前記特定の第1領域の平均輝度値で割ることにより、前記特定の第1領域の第1補正値を算出する第2処理部と、
 前記目標信号値を前記平均輝度算出部で算出された平均輝度値で割ることにより、第2補正値を算出する第3処理部と、
 前記第1補正値及び前記第2補正値に基づいて、前記補正値を算出する第4処理部と、を有してもよい。
 前記半導体装置は、
 前記第1領域のサイズと前記第2領域のサイズとを入力する入力部、
 又は、前記第1領域のサイズ及び前記第2領域のサイズを記憶する記憶部の、少なくとも一方を有してもよい。
 前記半導体装置は、
 前記第1領域のサイズと前記第2領域のサイズと前記目標信号値とを入力する入力部、
 又は、前記第1領域のサイズと前記第2領域のサイズと前記目標信号値とを記憶する記憶部の、少なくとも一方を有してもよい。
 前記半導体装置は、
 前記複数の画素を含む画素アレイ部と、
 前記画素アレイ部における2以上の前記画素を含む注目領域を抽出する注目領域抽出部と、を有し、
 前記画像生成部、前記平均輝度算出部、及び前記補正値算出部は、前記注目領域に含まれる前記2以上の画素に対して処理を行ってもよい。
 前記半導体装置は、
 前記画像生成部で生成された前記画像データに含まれる一部の画素領域を抽出する領域抽出部と、
 前記領域抽出部で抽出された前記一部の画素領域と、前記複数の画素の輝度情報とに基づいて、前記一部の画素領域の画像データを生成する領域画像生成部と、を有してもよい。
 前記半導体装置は、前記複数の画素のそれぞれから出力された色情報及び輝度情報を含む複数の画素信号から、画素ごとに輝度情報を抽出する輝度情報抽出部を有し、
 前記画像生成部は、前記輝度情報抽出部で抽出された画素ごとの輝度情報に基づいて前記画像データを生成してもよい。
 前記半導体装置から出力された前記画像データに基づいて、所定の画像処理を行う画像処理部をさらに備えてもよい。
 また、本開示によれば、隣接して配置される2以上の画素を含む第1領域ごとに平均輝度値を算出し、
 複数の前記第1領域のうち特定の前記第1領域の平均輝度値と、前記特定の第1領域を含み前記特定の第1領域よりも広い第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値とに基づいて、前記特定の第1領域の前記補正値を算出し、
 前記複数の第1領域に対応する複数の前記補正値に基づいて画像データを生成する、
 画像処理方法が提供される。
本開示の第1の実施形態に係る画像処理装置の構成を示すブロック図。 本開示の第1の実施形態に係る画像生成部の構成を示すブロック図。 図2の画像生成部の動作を説明するフローチャート。 画像データ生成部が生成した撮像画像データを示す図。 局所エリア平均算出部に複数の局所エリアに分割された撮像画像データを示す図。 局所エリアの平均輝度値の算出結果を示す図。 フィルタ処理の動作を説明する図。 フィルタブロックを示す図。 フィルタ処理部に設定されるフィルタの一例を示す図。 局所エリアの第1補正値の算出結果を示す図。 二値化画像生成部が生成する二値化画像データを示す図。 特徴抽出結果を示す画像データを示す図。 本開示の第1の実施形態の第1変形例に係る画像生成部の構成を示すブロック図。 図5の画像生成部の動作を説明するフローチャート。 バイリニア補間を説明する図。 補正画像生成部が生成する補正画像データを示す図。 図4Aの撮像画像データの輝度情報を示すヒストグラム。 図7Bの補正画像データの輝度情報を示すヒストグラム。 本開示の第1の実施形態の第2変形例に係る画像生成部の構成を示すブロック図。 一比較例に係る画像生成部の構成を示すブロック図。 図10の補正画像生成部が生成する補正画像データを示す図。 図11Aの補正画像データの輝度情報を示すヒストグラム。 本開示の第1の実施形態に係る画像生成部により生成される補正画像。 一比較例に係る画像生成部により生成される補正画像。 本開示の第1の実施形態に係る画像生成部により生成される抽出画像。 一比較例に係る画像生成部により生成される抽出画像。 本開示の第2の実施形態に係る画像生成部の構成を示すブロック図。 本開示の第2の実施形態に係る画像生成部により生成される補正画像。 補正なしの撮像画像。 本開示の第2の実施形態に係る画像生成部により生成される抽出画像。 撮像画像に基づく抽出画像。 本開示の第3の実施形態に係る画像生成部の構成を示すブロック図。 輝度情報抽出部の構成を示すブロック図。 輝度情報抽出部の動作を示すフローチャート。 本開示の第4の実施形態に係る画像生成部の構成を示すブロック図。 本開示の第5の実施形態に係る画像生成部の構成を示すブロック図。 領域選択部が生成した画像データを示す図。 本開示の第6の実施形態に係る画像生成部の構成を示すブロック図。 本開示の第7の実施形態に係る半導体装置の構成を示すブロック図。 車両制御システムの概略的な構成の一例を示すブロック図。 車外情報検出部及び撮像部の設置位置の一例を示す説明図。
 以下、図面を参照して、画像処理装置及び画像処理方法の実施形態について説明する。以下では、画像処理装置及び画像処理方法の主要な構成部分を中心に説明するが、画像処理装置及び画像処理方法には、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
 (第1の実施形態)
 図1は、本開示の第1の実施形態に係る画像処理装置1の構成を示すブロック図である。画像処理装置1は、半導体装置10を有する。半導体装置10は、例えばイメージセンサである。半導体装置10は、1つ又は複数の半導体チップから構成されてもよい。半導体装置10は、画素アレイ部2及び画像生成部3を有する。本明細書では、半導体装置10のことを、画像処理装置1と呼ぶことがある。
 画素アレイ部2は、複数の画素を有する。複数の画素は、例えば、二次元方向に複数配列される。画素は、それぞれ入射光の光量に応じた電荷を生成する光電変換素子(例えば、フォトダイオード)を有し、不図示の画素回路等を介して、光電変換素子の電荷に基づく画素信号をそれぞれ出力する。複数の画素から出力される複数の画素信号は、入射光の光量に応じた輝度情報を含む。
 画像生成部3は、画素アレイ部2から複数の画素信号を取得する。画像生成部3は、複数の画素信号から複数の画素の輝度情報を取得する。
 画像生成部3は、輝度情報に基づいて所定の画像処理を行うことで、画像データを生成する。所定の画像処理には、輝度情報のダイナミックレンジを圧縮するローカルトーンマッピング処理が含まれる。また、所定の画像処理には、画像データの圧縮、又は画像データの二値化処理等が含まれる。
 画像生成部3は、単一の画像処理により、輝度情報から単一の画像データを生成する構成であってもよい。また、画像生成部3は、複数種類の画像処理により、同じ輝度情報から複数の画像データを生成する構成であってもよい。また、画像生成部3は画像処理によって1つ又は複数の画像データを生成するとともに、画像処理を行わないで、ダイナミックレンジを圧縮しない画像データを生成してもよい。
 画像生成部3は、例えば、被写体の特徴抽出等を行う機能を有してもよい。または、画像生成部3は、後段の情報処理装置(例えば、SoC:System on a Chip)等が特徴抽出を行う場合に、特徴抽出の精度を向上できる画像データを出力してもよい。
 半導体装置10は、転送部4を有する構成であってもよい。転送部4は、例えば、MIPI(Mobile Industry Processor Interface)SVLS(Scalable Low Voltage Signaling:スケーラブル低電圧信号伝送)、又はSLVS-EC(SLVS with Embedded Clock
)等のインタフェースを有する。転送部4は、画像生成部3が出力した画像データを、後段のSoC等に転送する。
 半導体装置10は、設定入力部(入力部)5又はレジスタブロック(記憶部)6のうち少なくとも一方を有する構成であってもよい。設定入力部5は、画像生成部3に対して、ローカルトーンマッピング処理に必要な設定を入力する。レジスタブロック6は、ローカルトーンマッピング処理に必要な設定を記憶し、画像生成部3に提供する。ユーザ等は、設定入力部5を通じて、ローカルトーンマッピング処理に必要な設定を入力できる。レジスタブロック6には、設定入力部5から入力された設定を保存してもよいし、半導体装置10の出荷時に、所定の設定が記憶されてもよい。
 設定入力部5又はレジスタブロック6は、後段のSoC等から、例えば、SPI(Serial Peripheral Interface)又はI2C(Inter-Integrated Circuit)等を介して、ローカルトーンマッピング処理に必要な設定が入力されてもよい。
 半導体装置10は、行選択部7を有する構成であってもよい。行選択部7は、例えば、シフトレジスタ及びアドレスデコーダ等から構成される。画素アレイ部2は、例えば、複数の画素が一行に配列された画素行を複数有する。行選択部7は、画素アレイ部2内の複数の画素行のうち、一行を順に選択し、選択した一行に画素信号の出力を指示する。
 すなわち、画像生成部3には画素行ごとに輝度情報を取得することができる。本開示の第1の実施形態に係る画像生成部3は、画素アレイ部2内の全ての画素が画素信号を出力するのを待つことなく、1行又は複数行の画素行ごとに画像データを生成できる。1つの画素行に対応する画像データの生成処理は、他の画素行からの画素信号の取得処理と並行して行われてもよい。これにより、画像生成部3は、高速に画像データを生成することができる。本明細書では、1行又は複数行の画素行ごとの画像データの生成処理を、ラインベースの処理とも呼ぶ。
 また、ラインベースの処理では、画像データが生成されるまでの間に、全ての画素の輝度情報を記憶しておく必要がない。例えば、半導体装置10には、画像データの生成に必要な1つ又な複数行の輝度情報を一時的に記憶するラインメモリ等が配置されてもよい。ラインメモリは、1つの画素行から輝度情報を取得するたびに、新しい輝度情報が古い輝度情報に上書き保存されてもよい。これにより、半導体装置10はメモリ容量を削減でき、すなわち回路規模を削減することができる。
 なお、画像生成部3は必ずしもラインベースの処理をする必要はなく、画素アレイ部2内の全画素ごとに画像データを生成する構成であってもよい。
 本明細書では、画素アレイ部2を有する半導体装置10内でローカルトーンマッピング処理を行う例を説明する。なお、これに限らずローカルトーンマッピング処理は後段の情報処理装置等が行ってもよい。
 画像処理装置1は、画像処理部(画像出力部)8を有する構成であってもよい。画像処理部8は、転送部4から取得した画像データに対して特徴抽出等の画像処理を行うことができる。または、画像処理部8は、転送部4から取得した画像データをディスプレイ等に表示してもよい。
 画像処理装置1は、制御部9を有する構成であってもよい。制御部9は、設定入力部5に所定の設定を入力し、半導体装置10の撮像動作及び画像データ生成動作を制御することができる。
 図2は、本開示の第1の実施形態に係る画像生成部の構成を示すブロック図である。図2の画像生成部3は、撮像画像生成部11、局所エリア平均算出部(平均輝度算出部)12、フィルタ処理部(第1処理部)13、除算処理部(第2処理部)14、及び二値化画像生成部15を有する。図2の画像生成部3では、除算処理部14を、閾値生成部とも呼ぶ。
 図2の画像生成部3は、二値化画像データを生成できる。二値化画像データは、例えば、被写体を黒又は白の一方(例えば、黒)、被写体以外の部分を黒又は白の他方(例えば、白)で表現する。これにより、被写体の形状が明確になり、後段における特徴抽出が容易になる。
 図3は、本開示の第1の実施形態に係る画像生成部3の動作を説明するフローチャートである。以下では、図3のフローチャートを用いて、図2の画像生成部3の各構成要素の機能を説明する。
 まず、撮像画像生成部11が輝度情報を取得する(ステップS1)。撮像画像生成部11は、画素アレイ部2から画素信号を取得し、画素信号から輝度情報を取得し、輝度情報に基づいて撮像画像データ(第1画像データ)を生成する。図4Aは、撮像画像生成部11が生成した撮像画像データを示す図である。
 撮像画像生成部11が生成する撮像画像データには、局所的な明暗差がある場合がある。図4Aの例では、図の上部が暗く、図の下部は明るい。特に図4Aでは、図の上部が暗いため、被写体21(図4Aの例では、ネジ)の上部と、被写体以外の部分(以下、背景とも呼ぶ)との境界の判別が困難になっている。図4Aの画像を用いて二値化(又は、特徴抽出)を行った場合、被写体21の輪郭を十分に検出できない場合がある。なお、本明細書では、画像データのうち、特に特徴抽出、形状抽出、又は輪郭抽出の対象となる部分のことを、被写体とも呼ぶ。
 そこで、撮像画像生成部11の後段では、ローカルトーンマッピング処理により、撮像画像データの局所的な明暗差を均一化するとともに、被写体21と背景の輝度差を強調し、二値化(又は、特徴抽出)に適切な画像データとなるように、撮像画像を補正する。
 続いて、局所エリア平均算出部12が局所エリアの平均輝度値を算出する(図3のステップS2)。局所エリア平均算出部12は、画素アレイ部2を複数の局所エリア(第1領域)22に分割する。複数の局所エリア22は、隣接して配置される2以上の画素をそれぞれ有する。また、画像生成部3が生成した撮像画像データも、複数の局所エリア22に対応した領域(以下、単に局所エリア22とも呼ぶ)に分割できる。
 図4Bは、局所エリア平均算出部12による複数の局所エリア22に分割された撮像画像データを示す図である。本明細書では、図4Bの横方向を第1方向X(x座標)とも呼び、縦方向を第2方向Y(y座標)とも呼ぶ。また、任意の画素の位置(pixel位置)を[x(i),y(j)]とし、当該位置の輝度値(画素値)をp[x(i),y(j)]とする。局所エリア22のブロック位置を[kx,ky]、局所エリア22の第1方向XのサイズをNx、第2方向YのサイズをNyとする。局所エリア22のサイズ(ブロックサイズ)とは、例えば、局所エリア22内に含まれる画素の数である。
 上記のパラメータを用いて、位置[kx,ky]の局所エリア22の平均輝度値q[kx,ky]は、下記の式(1)で表される。
 図4Cは、局所エリア22の平均輝度値の算出結果を示す図である。図4Cに示すように、局所エリア平均算出部12は、複数の局所エリア22のそれぞれの平均輝度値に基づくモザイク状の画像データを生成できる。
 続いて、局所エリア平均算出部12が算出した平均輝度値に基づいて、フィルタ処理部13がフィルタ処理を行う(図3のステップS3)。図4Dは、フィルタ処理の動作を説明する図である。フィルタ処理部13は、複数の局所エリア22を有するフィルタブロック(第2領域)23を設定する。
 図4Eは、フィルタブロック23を示す図である。フィルタ処理部13は、フィルタブロック23内に含まれる複数の局所エリア22を用いて、畳み込み演算を行い、特定の局所エリア22のフィルタ補正値を算出する。図4Eのフィルタブロック23は、フィルタ補正値の算出対象となる特定の局所エリア24を有する。特定の局所エリア24は、例えば、フィルタブロック23の中心又はその近傍に配置される。
 特定の局所エリア24のフィルタ補正値ra[kx,ky]は、フィルタブロック23の第1方向XのサイズBx、第2方向YのサイズBy、局所エリア22の平均輝度値q[kx(i),ky(j)]、及び所定のフィルタ係数F[fx(i),fy(j)]を用いて、下記の式(2)で算出される。フィルタブロック23のサイズ(フィルタサイズ)とは、例えば、フィルタブロック23内に含まれる局所エリア22の数である。フィルタ係数については、後述する。
 なお、i=kx―Bx/2~kx+Bx/2、j=ky―By/2~ky+By/2のとき、平均輝度値q[kx(i),ky(j)]は、フィルタブロック23内に含まれる局所エリア22及び24のそれぞれの平均輝度値を示す。
 上記の式(2)で算出されるフィルタ補正値ra[kx,ky]は、特定の局所エリア24が、周囲の(すなわち、フィルタブロック23に配置された)局所エリア22の平均輝度値の情報を取り込んだ値である。
 フィルタ係数F[fx(i),fy(j)]とは、フィルタ補正値ra[kx,ky]に取り込まれる局所エリア22のそれぞれの平均輝度値を重み付けする値である。フィルタ処理部13には、複数のフィルタ係数の情報を有するフィルタが設定される。
 図4Fは、フィルタ処理部13に設定されるフィルタ25の一例を示す図である。フィルタ25は、それぞれがフィルタ係数の情報を有する複数のフィルタ要素26を有する。複数のフィルタ要素26は、フィルタブロック23内の局所エリア22及び24に対応して配置される。フィルタ要素26の位置[fx(i),fy(j)]は、特定の局所エリア24の位置[kx,ky]と、対応する局所エリア22の位置[kx(i),ky(j)]と、を用いて、例えば、下記の式(3)及び(4)で表される。
 複数のフィルタ要素26のフィルタ係数は、例えば、特定の局所エリア24に対応するフィルタ要素27が最も高く設定される。また、フィルタ要素27の近くに配置されるフィルタ要素26はフィルタ係数がより高く設定され、遠くに配置されるフィルタ要素26はフィルタ係数がより低く設定される。これにより、特定の局所エリア24は、より近くに配置される局所エリア22の平均輝度値を優先的に取り込むことができる。
 なお、後段の補正処理において、画像データの平均輝度値を目標信号値の近傍に合わせこむためには、フィルタ25内のフィルタ係数の総和は、例えば、式(5)で示すようにブロックサイズと同じになるように調整されることが望ましい。
 フィルタ処理部13は、複数の局所エリア22を順に特定の局所エリア24に指定して、式(2)に示す畳み込み演算を行い、フィルタ補正値を算出する。フィルタ処理部13のフィルタ処理は、図4Dに示すように、フィルタブロック23の位置を局所エリア22の単位で変更しながら,畳み込み演算を行うような動作となる。
 フィルタ処理部13によって、複数の局所エリア22の平均輝度値をそれぞれ補正した、複数のフィルタ補正値が生成される。複数のフィルタ補正値は、それぞれ対応する局所エリア22が、近傍の輝度値を取り込んでいるという特徴がある。局所エリア22の周囲の輝度値が低ければフィルタ補正値も低くなり、局所エリア22の周囲の輝度値が高ければフィルタ補正値も高くなる。すなわち、フィルタ補正値には、図4Aの撮像画像データの局所的な明暗差(例えば、図4Aの上下の明暗差)が反映されやすいという特徴がある。
 一方、近傍に配置される複数の局所エリア22同士(例えば、隣接する局所エリア22同士)は、互いの平均輝度値を取り込んでしまう。このため、フィルタ補正値には、近傍に配置される複数の局所エリア22の間の輝度差は反映されにくいという特徴がある。
 続いて、除算処理部14は、所定の目標信号値Mを、フィルタ補正値で除算する処理を行う(図3のステップS4)。除算処理部14が生成する第1補正値rb[kx,ky]は、下記の式(6)で表される。
 図4Gは、局所エリア22の第1補正値の算出結果を示す図である。図4Gに示すように、除算処理部14は、複数の局所エリア22の複数の第1補正値に基づく画像データ(第2画像データ)を生成できる。
 図4Gの画像データは、フィルタ補正値を用いた除算処理によって生成されるため、図4Aの撮像画像データの輝度値を反転し、かつ周囲の局所エリアの輝度に基づいて特定の局所エリアの輝度を補正した画像データとなる。図4Gの画像データには、上記のフィルタ補正値の特徴が反映される。具体的には、補正画像データには、図4Aの撮像画像データの局所的な明暗差が(反転された状態で)反映されやすい。一方、補正画像データは、特定の局所エリア24の輝度とその周囲の局所エリア22の輝度との明暗差が抑制された画像となる。これにより、補正画像データは、図4Aと比較して、被写体21の輪郭がぼやけた画像となる。
 図2のフィルタ処理部13及び除算処理部14は、複数の局所エリア22の補正値を算出することから、本明細書では、両者を合わせて補正値算出部16とも呼ぶ。
 続いて、二値化画像生成部15は、第1補正値に基づいて、二値化画像を生成する(図3のステップS5)。二値化画像生成部15は、所定の二値化閾値で、第1補正値を比較判定する。
 図4Hは二値化画像生成部15が生成する二値化画像データ(第3画像データ)を示す図である。図4Hの二値化画像データは、第1補正値が所定の二値化閾値を上回る場合は白を出力し、下回る場合は黒を出力する例を示している。
 図2の画像生成部3は、特徴抽出部17を有する構成であってもよい。特徴抽出部17は、図4Hの二値化画像データから、被写体21の輪郭を抽出する。図4Iは、特徴抽出結果を示す画像データ(第4画像データ)を示す図である。
 図2の画像生成部3は、図4Aの撮像画像データを補正し、図4Hの二値化画像データを生成できる。これにより、特徴抽出部17(又は、後段のSoC等)で、高精度な特徴抽出が可能である。
 局所エリア平均算出部12が用いるブロックサイズNx、Ny、フィルタ処理部13が用いるフィルタサイズBx、By、除算処理部14が用いる目標信号値M、及び二値化画像生成部15が用いる二値化閾値の一部又は全て(以下、入力パラメータ)は、設定入力部5又はレジスタブロック6から取得することができる。図2では、上記の入力パラメータが設定入力部5から入力される例を示す。
 入力パラメータには、フィルタタイプが含まれてもよい。フィルタタイプは、フィルタ処理部13に入力され、フィルタ25のフィルタ係数を設定するために用いられる。
 フィルタ25としては、例えば、図4Fに示すような、特定の局所エリア24と他の局所エリア22とでフィルタ係数が異なる加重平均フィルタが指定できる。これに限定されず、フィルタ25には、局所エリア24と他の局所エリア22とでフィルタ係数が同一となる移動平均フィルタが用いられてもよい。また、補正画像データの用途に応じて、平滑化フィルタ、鮮鋭化フィルタ、又はバイラテラルフィルタ等が用いられてもよい。
 二値化閾値は、目標信号値Mに基づいて設定されてもよい。例えば、二値化閾値Tは、目標信号値M及び所定の二値化率Cを用いて、T=M×C/100で算出されてもよい。この場合、二値化率Cは、入力パラメータとして設定入力部5等から入力されてもよい。
 局所エリア平均算出部12の処理には、式(1)に示すように、ブロックサイズNx×Nyによる除算処理が含まれる。この除算処理は、局所エリア平均算出部12内に割り算回路を配置することにより実現することができる。ここで、ブロックサイズNx×Nyを2のべき乗に設定すると、例えば、ブロックサイズに応じた数のビットシフトによって除算処理が実現でき、割り算回路を省略できる。これにより、回路規模を削減できる。
 フィルタ処理部13の処理には、式(2)に示すように、フィルタブロック23のサイズBx×Byによる除算処理が含まれる。フィルタブロック23のサイズBx×Byを2のべき乗に設定することにより、上記と同様、フィルタ処理部13から割り算回路を省略でき、回路規模を削減できる。
 図5は、本開示の第1の実施形態の第1変形例に係る画像生成部の構成を示すブロック図である。図5の画像生成部3aは、二値化画像生成部15を持たず、補正画像生成部31を有するという点で、図2の画像生成部3とは異なる。
 図5の画像生成部3aは,画素ごとの局所的な明暗差に関わらず均一な輝度を有する補正画像データを生成できる。均一な輝度を有する補正画像データとは、撮像画像データと比較して、最大の輝度値と最小の輝度値の差が小さく、かつ、後述のハローが抑制された画像データである。
 図6は、本開示の第1の実施形態に係る画像生成部3aの動作を説明するフローチャートである。以下では、図6のフローチャートを用いて、図5の画像生成部3aの機能を説明する。ステップS1~S4の動作は、図3と同様である。ステップS4で、局所エリア22の第1補正値が生成される。
 図5の画像生成部3aは、補間演算部32を有する構成であってもよい。補間演算部32は、局所エリア22ごとの第1補正値rb[kx,ky]を、画素ごとの補間値rc[x,y]に変換する補間演算を行う(図6のステップS21)。補間演算には、例えば、バイリニア補間を用いることができる。
 図7Aは、バイリニア補間を説明する図である。上述したように、1つの局所エリア22には、複数の画素41が含まれる。図7Aでは、複数の画素41のうち、特定の画素42の補間値rc[x,y]を生成する例を説明する。
 まず、画素アレイ部2に配置された複数の局所エリア22から、画素42が配置される局所エリア22aを取得する。また、局所エリア22aに第1方向Xに隣接する局所エリア22のうち、より画素42に近い局所エリア22bを取得する。また、局所エリア22aに第2方向Yに隣接する局所エリア22のうち、より画素42に近い局所エリア22cを取得する。また、局所エリア22bと第2方向Yに隣接するとともに、局所エリア22cと第1方向Xに隣接する、局所エリア22dを取得する。局所エリア22a、22b、22c及び22dの重心には、計算点43a、43b、43c、及び43dを配置する。計算点43a~43dは、それぞれ局所エリア22a~22dの第1補正値rb[kx,ky]の情報を有する。
 計算点43a及び43bのつなぐ直線のうち、画素42の重心と同じx座標に、計算点44aを配置する。計算点43c及び43dのつなぐ直線のうち、画素42の重心と同じx座標に、計算点44bを配置する。計算点44a及び44bの補正値Si及びSjは、計算点43a、43、43c、及び43dの第1補正値Ta、Tb、Tc、及びTd、計算点43aから計算点43bまでの距離Lx、計算点43aから計算点44aまでの距離Lxi、計算点43bから計算点44aまでの距離Lxjを用いて、下記の式(7)及び(8)で表される。また、画素42の補間値rc[x,y]は、計算点44aから計算点44bまでの距離Ly、画素42の重心から計算点44aまでの距離Lyi、画素42の重心から計算点44aまでの距離Lyjを用いて、下記の式(9)で表される。
 続いて、補正画像生成部31が、補間値と、撮像画像生成部11が生成した撮像画像データに基づいて、補正画像データを生成する(図6のステップS11)。図7Bは、補正画像生成部31が生成する補正画像データ(第5画像データ)を示す図である。補正画像データの複数の画素42の輝度値g[x,y]は、撮像画像データの輝度値p[x,y]を用いて、下記の式(10)で表すことができる。
 図5の画像生成部3aは、図7Bに示すように、高精度な形状計測が可能な補正画像データを出力できる。図4Aの撮像画像データと、図7Bの補正画像データと、を比較すると、図7Bの補正画像データは、図4Aのような局所的な明暗差が補正されている。また、補正画像データでは、撮像画像データよりも被写体21の輪郭が明確である。このため、補正画像データは撮像画像データより、より高精度な特徴抽出、及びより高精度な被写体21の形状計測が可能である。
 なお、ステップS21の補間演算を省略する場合、図7Bの補正画像データの複数の画素42の輝度値ga[x,y]は、その画素42が配置される局所エリア22の第1補正値rb[kx,ky]を用いて、下記の式(11)で表される。
 以下では、図7Bの補正画像データが生成できる原理について説明する。簡単のため、補間演算を省略した場合を考える。この場合、図7Bの補正画像データは、式(11)に示すように、撮像画像データに目標信号値が掛け合わされ、フィルタ補正値が除算された輝度値を有する。すなわち、補正画像データの平均輝度値は目標信号値Mと略一致するように調整される。また、フィルタ補正値が除算されることで、撮像画像データの局所的な明暗差が補正される。
 一方、フィルタ補正値には、近傍に配置される局所エリア22間の輝度差が反映されにくいため、フィルタ補正値を除算しても、撮像画像データの輝度値の高い部分と輝度値の低い部分との境界の情報(具体的には、被写体21の輪郭の情報)は失われない。さらに、局所的な明暗差が補正されることにより、補正画像データでは、被写体21の輪郭が相対的に強調されることになる。
 図5の画像生成部3aは、一例として、下記の条件を満たす補正画像データを生成することができる。条件は、撮像画像データの最大輝度値Vmax、撮像画像データの最小輝度値Vmin、撮像画像データの平均輝度値AVE(V)、補正画像データの最大輝度値Rmax、補正画像データの最小輝度値Rmin、補正画像データの平均輝度値AVE(R)、同じフィルタブロックに属する任意の2つの局所エリア22の補正画像データにおける平均輝度値Ri, Rj(ただし、Ri≧Rjとする)、当該2つの局所エリア22の撮像画像データにおける平均輝度値Vi, Vj(ただし、Vi≧Vjとする)を用いて、下記の式(12)及び(13)で表される。式(12)に示す通り、補正画像データは最大輝度値と最小輝度値の間隔を狭め、全体の輝度差を均一化できる。式(13)のRi及びRjが、それぞれ被写体及び背景の輝度である場合、両者の輝度差を強調できる。なお、画像生成部3aが生成する補正画像データは、この条件を満たす画像データに限定されるものではない。
 上記の通り、図5の画像生成部3aは、撮像画像データを補正し、高精度な被写体21の形状計測が可能な補正画像データを出力できる。
 画像生成部3aは、補正画像生成部31の後段に、輝度情報を圧縮する圧縮部33を有する構成であってもよい。図7Bに示す補正画像データは、図4Aに示す撮像画像データよりも、データ圧縮が容易であるという特徴を有する。
 図8Aは、図4Aの撮像画像データの輝度情報を示すヒストグラムである。図8Bは、図7Bの補正画像データの輝度情報を示すヒストグラムである。図8A及び図8Bの横軸は輝度値を示し、図8A及び図8Bの縦軸は画素数を示す。
 図8Bのヒストグラムの形状は、図8Aと比較して、横軸(輝度差)方向に圧縮された形状を有する。補正画像データは、上述のように平均輝度値が目標信号値と略一致するように調整されるため、図8Bのヒストグラムの重心は、目標信号値の近傍に配置される。
 補正画像データのヒストグラムは、撮像画像データのヒストグラムに比べて圧縮されているため、横軸(輝度差)方向にビンデータがほとんどない領域を生成できる。例えば、図8Bのヒストグラムは、高輝度値のビンデータをほとんど持たない。このため、圧縮部33において高輝度値のデータを削除しても、補正画像データの情報をほとんど欠落させることなく、補正画像データのデータ容量を削減できる。
 画像処理装置1では、撮像画像データとして、例えば、1画素につき20bitのHDR画像データを生成できる。一方、後段のSoC等では、伝送用IF(interface)として、1画素につき最大でも12bitの画像データしか対応していない場合がある。この場合、画像データの圧縮が必要となる。これに対し、図5の圧縮部33は、情報の欠落を抑制しながら、20bitのHDR画像を、例えば、8bitに圧縮することができるため、後段のSoC等に、高精度な圧縮データを転送することが可能である。
 一方、図2の画像生成部3は、二値化画像生成部15の二値化処理によって、出力する画像データを圧縮できる。このため、図5の圧縮部33を省略することできる。
 すなわち、図1の転送部4からは、圧縮部33によるデータ圧縮処理か、二値化画像生成部15による二値化処理の少なくとも一方が行われた、撮像画像データよりもデータ容量の小さい画像データを出力できる。
 図5の画像生成部3aは、補正画像生成部31の後段に、二値化画像生成部15(及び、特徴抽出部17)を有する構成であってもよい。すなわち、二値化画像生成部15は、図7Bの補正画像データに対し、二値化処理をしてもよい。二値化画像生成部15は、圧縮部33の後段に配置されてもよい。
 図9は、本開示の第1の実施形態の第2変形例に係る画像生成部の構成を示すブロック図である。図9の画像生成部3bは、圧縮部33の後段に特徴抽出部17を有するという点で、図5の画像生成部3aとは異なる。
 図9の特徴抽出部17には、圧縮部33によりデータ容量が圧縮された補正画像データが入力される。これにより、補正画像生成部31から直接、特徴抽出部17に補正画像データを入力する場合よりも、特徴抽出部17の計算量を低減できる。この場合、補正画像データに二値化処理を行わなくても、低い計算負荷で特徴抽出が可能になる。
 図2の二値化画像生成部15は、第1補正値の逆数(1/rb[kx,ky])を二値化閾値として用いてもよい。詳細には、図4Aの撮像画像データと第1補正値の逆数(二値化閾値)とを用いて、二値化画像データを生成してもよい。二値化画像データにおいて、例えば、下記の式(14)の条件を満たすときは黒を出力し、それ以外は白を出力するとしてもよい。式(14)は、式(15)のように変形できる。
 式(15)に示すように、二値化の判定においては、フィルタ補正値の除算と等価の処理がされることで、式(11)と同様に、撮像画像データの局所的な明暗差の影響を除去できる。上記の第1補正値の逆数(二値化閾値)は、例えば除算処理部14において、フィルタ処理部13が生成するフィルタ補正値から目標信号値Mを除算することで算出できる。なお、目標信号値Mは、2のべき乗の値に設定されてもよい。これにより、割り算回路を省略できる。
 上記の手法では、撮像画像データではなく二値化閾値を直接に補正しているという特徴がある。本明細書は、上記の手法を、閾値のダイレクト補正方式(第1方式)とも呼ぶ。上記の手法では、補正画像生成部31の後段に二値化画像生成部15を配置する場合よりも、補間演算部32及び補正画像生成部31を省略することができる。これにより、高速に二値化画像データを生成できるとともに、画像生成部3の回路規模を縮小できる。
 なお、二値化画像生成部15は、図5の補間演算部32が生成する補間値を、二値化閾値として用いる構成であってもよい。
 図2、図5及び図9の画像生成部3、3a及び3b(以下、単に画像生成部3)は、ラインベースの処理が可能である。より具体的には、撮像画像生成部11は、例えば、1行の画素行ごとに撮像画像データを生成できる。局所エリア平均算出部12は、1つの局所エリアを構成する複数の画素行ごとに、平均輝度を算出できる。フィルタ処理部13は、1つのフィルタを構成する複数の画素行ごとに、畳み込み演算ができる。
 上記のように、撮像画像生成部11、局所エリア平均算出部12、フィルタ処理部(第1処理部)13、除算処理部14、二値化画像生成部15、補正画像生成部31、及び補間演算部32は、いずれも画素アレイ部2内の全ての画素行から画素信号を出力されるのを待つ必要がない。また、ある画素41に対応する補正画像データの生成は、他の画素41からの画素信号を取得と並行して行うこともできる。これにより、画像生成部3は、高速に補正画像データを生成できる。
 本開示の第1の実施形態に係る画像処理装置1は、入力パラメータにも特徴がある。例えば、入力パラメータとして、ブロックサイズ及びフィルタサイズという2つの領域のサイズが指定可能である。
 ブロックサイズを小さくすれば、より高精度な補正が可能であり、ハローを低減できる。ブロックサイズを大きくすれば、計算量を抑えることができ、画像出力がより高速化できる。フィルタサイズを小さくすれば、照明環境等による明暗差を細かく補正できる。フィルタサイズを大きくすれば、被写体21と背景との輝度差等の、特徴抽出に用いる輝度差が補正により失われることを防ぐことができる。
 また、本開示の第1の実施形態に係る画像処理装置1は、単一の目標信号値Mによって補正画像データの平均輝度値を調整できる。これにより、画像処理装置1はAE(Auto Exposure)機能を省略することができる。
 図2の二値化画像生成部15には、平均輝度値が目標信号値M近傍などに調整された補正値又は補正画像データが入力されるという特徴がある。このため、画像処理装置1は撮像環境の明暗に応じて、二値化閾値を調整する必要がない。
 なお、入力パラメータには複数の目標信号値Mが入力されてもよく、除算処理部14には、複数の目標信号値が入力可能な構成であってもよい。
 図10は、一比較例に係る画像生成部の構成を示すブロック図である。図10に示す画像生成部100は、フィルタ処理部13を持たないという点で、図2の画像生成部3とは異なる。
 図10の除算処理部14は、所定の目標信号値Mを、局所エリア平均算出部12で算出された平均輝度値q[kx,ky]で除算する処理を行う。除算処理部14が生成する補正値rd[kx,ky]は、下記の式(16)で表すことができる。また、図10の補正画像生成部31は、除算処理部14が生成する補正値と、撮像画像生成部11が生成した撮像画像データに基づいて、補正画像データを生成する。補正画像データの複数の画素42の輝度値gb[x,y]は、撮像画像データの輝度値p[x,y]を用いて、下記の式(17)で表すことができる。
 図11Aは、図10の補正画像生成部31が生成する補正画像データを示す図である。図11Aに示すように、図10の補正画像生成部31によっても、図4Aの撮像画像データの局所的な明暗差を補正し、全体の輝度値を均一化することができる。図11Bは、図11Aの補正画像データの輝度情報を示すヒストグラムである。
 図10の画像生成部100は、二値化画像生成部15及び特徴抽出部17によって、二値化画像データの出力及び特徴抽出ができる。図10の二値化画像生成部15は、所定の二値化閾値で、図11Aの補正画像データの輝度値を比較判定する。本明細書は、図10の手法を、局所エリアごとの除算方式(第2方式)とも呼ぶ。
 ここで、図10の画像生成部100が生成する図11Aの補正画像データと、図5の画像生成部3aが生成する図7Bの補正画像データとを比較する。図11Aの補正画像データには、ハロー(境界上の偽色)が発生している。ハローは、特徴抽出処理におけるノイズとなり、特徴抽出精度を低下させてしまう。
 式(16)及び(17)に示すように、図11Aの補正画像データは、局所エリア22内の複数の画素は同一の補正値rd[kx,ky]で補正される。一方、異なる局所エリア22に属する画素は、異なる補正値で補正される場合がある。また、補正値rd[kx,ky]には、近傍の局所エリア22の輝度値の情報が含まれない。このため、隣接する2つの局所エリア22の境界付近などで、補正値に差が生じることに起因して、ハローが発生することがある。
 これに対して、図7Bの補正画像データは、畳み込み演算により生成された補正値で補正される。すなわち、図7Bの補正画像データの補正値は、近傍の局所エリア22の情報を含む。これにより、図7Bの補正画像データは、図11Aの補正画像データと比較してハローが改善され、より特徴抽出精度を向上できる。
 また、図11Bのヒストグラムは、図8Aの撮像画像データのヒストグラムから横軸(輝度差)方向に極端に圧縮されてしまっている。このため、図11Aに示すように、被写体21と背景の輝度差(コントラスト)が縮小されてしまっているため、特徴抽出部17における被写体21の判別が困難になり、特徴抽出精度が低下する。また、図11Bのヒストグラムは、図8Aのヒストグラムの形状が失われており、情報の損失が大きい。
 これに対して、図8Bのヒストグラムは、横軸(輝度差)方向に十分に広い幅を有する。このため、被写体21と背景には十分な輝度差(コントラスト)があり、特徴抽出が容易である。また、図8Bのヒストグラムは、図8Aのヒストグラム形状を残しており、情報の損失が少ない。
 続いて、発明者は、画像処理装置における特徴抽出に必要な回路規模及びメモリ容量を比較した。特徴抽出は、上記の第1方式、第2方式のほか、局所エリアごとのヒストグラム計測方式(第3方式)がある。
 第3方式では、局所エリアごとに輝度値のヒストグラムを生成し、ガンマ処理によってヒストグラムを平坦化する。一例としては、CLAHE(Contrast Limited Adaptive Histogram Equalization:適用的ヒストグラム平坦化)である。
 下記、表1に、第1~3方式による回路規模とメモリ容量の一例を示す。表1の例では、メモリとしては、SRAM(Static Random Access Memory)を用いている。撮像画像データの解像度は2472×2064とする。画素単位のデータ容量は、8bitとする。局所エリアのサイズは16×16pixelとする。第3方式で利用するヒストグラムのBin数は256とする。
 表1に示す通り、第1方式と第3方式とを比較すると、第1方式ではヒストグラム計測などの複雑な処理が不要なことから、回路規模及びメモリ容量を大きく削減することができる。
 また、第1方式は、第3方式に比べて処理が高速である。第3方式では、ラインベースの処理が不可能である。このため第3方式では、例えば5MByteの撮像画像データに対しては、補正画像データの生成及び特徴抽出の速度は数十fps程度となる。一方、第1方式はラインベースの処理が可能であるので、例えば5MByteの撮像画像データに対して、1000fps、又は500fpsで補正画像データの生成及び特徴抽出が可能である。
 第1方式と第2方式とを比較すると、第1方式では、式(17)に示すような、画素ごとに輝度値と補正値を乗算する処理が不要である。第1方式は、式(14)に示すように、単に輝度値と所定の二値化閾値とを比較する処理で実現できるため、積和回路等が不要となる。このため第1方式では、第2方式から回路規模を1/4程度に縮小できる。
 本発明者は、図5の画像生成部3aと図10の画像生成部100を用いて、バーコードを含む被写体を撮像してバーコードを抽出する実験を行った。
 図12Aは画像生成部3aにより生成される補正画像、図12Bは画像生成部100により生成される補正画像を示す図である。図13Aは画像生成部3aによるバーコードの抽出画像、図13Bは画像生成部100によるバーコードの抽出画像を示す図である。
 第1の実施形態に係る画像生成部3aでは、図12Aに示すように、局所的な明暗差による輝度のばらつきが抑制されてハローが目立たなくなる。よって、図13Aに示すように、バーコードのエッジを正しく検出できる。
 一方、一比較例に係る画像生成部100では、図12Bに示すように、明暗差は抑制されるものの、ハローが視認される。よって、図13Bに示すように、バーコードのエッジを検出できなくなる。
 このように、本開示の第1の実施形態では、隣接する2以上の画素を含む局所エリアごとに、その周囲の複数の局所エリアの輝度に基づいて輝度の補正値を算出する。局所エリアごとの補正値で生成される補正画像データは、局所的な明暗差に関わらず、均一な輝度を有するため、ハローを抑制できる。補正画像データと閾値を比較することで、容易に二値化画像を生成できる。二値化画像に基づいて特徴量を抽出することで、小さい回路規模で計測精度を向上できる。以下、本実施形態に係る画像処理装置1の効果をより詳細に説明する。
 第1の実施形態に係る画像処理装置1の第1の特徴として、図7Bに示すような補正画像データを出力できるという点がある。画像処理装置1の出力する補正画像データは、撮像画像データと比較して、全体としては略均一な輝度値を有する。一方、補正画像データからは、被写体と背景の境界などの輝度差は失われないため、境界部分の輝度差が相対的に大きいという特徴がある。このため、特徴抽出において、被写体等のエッジの抽出の精度を向上できる。
 また、補正画像データはハローが抑制されているため、特徴抽出におけるノイズが少ないという特徴がある。
 さらに、補正画像データは、撮像画像データと比較して、例えば被写体と背景のコントラストを維持しながら、輝度値の範囲が圧縮されているという特徴がある。このため、補正画像データを圧縮しても、被写体の輪郭等の情報の損失が少ない。
 画像処理装置1の第2の特徴として、周囲の環境の明暗差へのロバスト性が高いという点がある。画像処理装置1は、例えば、照明変動をさせながら被写体を撮像しても、平均輝度値が所定の目標信号値の近傍で略一定の補正画像データを生成できるとともに、高精度な特徴抽出が可能である。また、画像処理装置1は、撮像範囲に明暗差を設けても、略均一な輝度値の補正画像データを生成できる。さらに、撮像環境に応じて二値化閾値等の調整が不要となる。
 画像処理装置1の第3の特徴として、画素行単位での処理が可能であるという点がある。画像処理装置1は、画素アレイ部2内の全ての画素行が画素信号を出力するのを待つことなく、出力された画素信号を順に補正画像データに変換できる。このため、画像処理装置1は高速に補正画像データを出力できる。また、補正画像データの変換に用いられた画素信号は、記憶部に保持しておく必要がないため、メモリ容量を削減できる。
 画像処理装置1の第4の特徴として、小さい回路規模で実現可能であるという点がある。画像処理装置1は、局所エリアごとにヒストグラムを作成する手法等に比べて、処理内容が単純であるため、小さな回路規模で実現できる。また、局所エリアのサイズ等を2のべき乗に調整することなどで、割り算回路を省略し、さらに回路規模を縮小できる。
 また、二値化画像データを出力する際には、二値化閾値をダイレクトに補正する構成とすることもできる。これにより、画素ごとの輝度値と補正値との積和演算が不要となり、さらに回路規模を縮小できる。
 本開示の第1の実施形態に係る画像生成部3は、十分に小さな回路規模で実現できるため、イメージセンサ等に搭載できる。これにより、イメージセンサ内で作成された撮像画像データに対し、直接的に高精度な補正、又は高精度な圧縮が可能である。
 画像処理装置1の第5の特徴として、ブロックサイズ及びフィルタサイズが調整可能であるという点がある。ブロックサイズを調整することにより、撮像画像データを高精度に補正するか、又は撮像画像データを高速に出力するかを、調整することができる。フィルタサイズを適切に調整することにより、照明環境等による明暗差を補正しつつ、特徴抽出に用いる輝度差が失われることを防ぐことができる。
 (第2の実施形態)
 第1の実施形態に係る画像生成部3は、局所エリアごとにその周辺の複数の局所エリアを用いて輝度を補正するローカルトーンマッピング処理を行う。これに対し、第2の実施形態では、画素アレイ部2の全域の輝度の平均値を用いて各画素の輝度を補正するグローバルトーンマッピング処理を行う。
 図14は、本開示の第2の実施形態に係る画像生成部の構成を示すブロック図である。図14に示す画像生成部50は、局所エリア平均算出部12の代わりに、画面平均算出部51を有するという点で、図10の画像生成部100と異なる。
 図14の画面平均算出部51は、画素アレイ部2の全域の平均輝度値AVE(p)を算出する。図14の除算処理部14は、目標信号値Mを平均輝度値AVE(p)で除算する。図14の補正画像生成部31は、除算処理部14が生成する補正値と、撮像画像データとに基づいて、補正画像データを生成する。補正画像データの複数の画素42の輝度値gb[x,y]は、下記の式(18)で表すことができる。
 図14に示す画像生成部50は、画素アレイ部2の全域に、同じ補正処理を行う。この処理は、グローバルトーンマッピング処理とも呼ばれる。
 本発明者は、バーコードを含む被写体の撮像画像をそのまま用いてバーコードを抽出する場合と、撮像画像を図14の画像生成部50に入力して生成された補正画像からバーコードを抽出する場合とを比較する実験を行った。
 図15Aは画像生成部50により生成される補正画像、図15Bは補正なしの撮像画像を示す図である。図16Aは画像生成部50によるバーコードの抽出画像、図16Bは撮像画像によるバーコードの抽出画像である。
 撮像画像を補正しない場合には、図15Bに示すように、局所的な明暗差が大きくなる。この場合、図16Bに示すように、バーコードのエッジを正しく検出できない。画像生成部50は、グローバルトーンマッピング処理を行うため、図15Aに示すように局所的な明暗差が軽減されるが、図12Aに示すローカルトーンマッピング処理を行う場合と比べると、局所的な明暗差が大きくなる。よって、図16Bよりは改善するものの、図16Aに示すように、バーコードのエッジを正しく検出できない場合がありうる。
 このように、第2の実施形態では、ローカルトーンマッピング処理の代わりに、グローバルトーンマッピング処理を行うため、ローカルトーンマッピング処理よりも簡易な処理で補正画像を生成でき、回路規模の縮小化を実現できる。ただし、計測精度の観点では、第1の実施形態の方が優れる。
 (第3の実施形態)
 上述した第1及び第2の実施形態では、撮像画像データが輝度画像データ(モノクロ画像データ)である場合の例を説明した。第3の実施形態では、撮像画像データが色情報を含むカラー画像データである場合の例を説明する。ここで、色情報とは、複数の色のそれぞれごとに設けられる階調情報を指す。
 図17は、本開示の第3の実施形態に係る画像生成部3cの構成を示すブロック図である。画像生成部3cは、撮像画像生成部11の後段に輝度情報抽出部61を有する。
 図17の撮像画像生成部11は、画素アレイ部2から色情報及び輝度情報を含む複数の画素信号を取得する。輝度情報抽出部61は、複数の画素信号から、画素ごとに輝度情報を抽出する。局所エリア平均算出部12は、画素ごとに抽出された輝度情報から、図2と同様に局所エリアの平均輝度値を算出する。補正値算出部16及び補間演算部32の処理内容は、図2と同様である。
 図18は、輝度情報抽出部61の構成を示すブロック図である。輝度情報抽出部61は、一時記憶部62と、輝度値抽出部63と、を有する。
 画素アレイ部2には、複数の色情報を有する複数の画素41が配置される。画素41ごとの色情報は、例えば、画素内に配置されたカラーフィルタ等によって決定される。
 画素アレイ部2は、例えば、赤色(R)の光を受光する画素41a及び緑色(G1)の光を受光する画素41bが交互に配列された画素行64aを有する。画素アレイ部2は、例えば、緑色(G2)の光を受光する画素41c及び青色(B)の光を受光する画素41dが交互に配列された画素行64bを有する。画素アレイ部2には、画素行64a及び64bが交互に配列される。本明細書では、互いに隣接して配置される、画素41a、41b、41c、及び41dの組み合わせを、画素グループ(Bayer配列)65とも呼ぶ。画素グループ65は、画素アレイ部2内に配置される、複数の色情報を有する画素41の、繰り返しの単位である。
 輝度情報抽出部61は、画素グループ65から1つの輝度値を抽出し、局所エリア平均算出部12に転送する。1つの輝度値とは、例えば、画素グループ65内の4つの画素41の最大輝度値である。なお、輝度情報抽出部61は、1つの輝度値として、画素グループ65内の4つの画素41の平均輝度値を取得してもよい。以下では、輝度情報抽出部61が画素グループ65における最大輝度値を取得する例を説明する。
 図17の局所エリア平均算出部12は、1つの画素グループ65を1つの局所エリア22として扱ってもよく、画素グループ65から抽出された1つの輝度値を、局所エリア22の輝度値q[kx,ky]として抽出してもよい。これに限らず、1つの局所エリア22は、複数の画素グループ65を含む構成であってもよい。
 図19は、輝度情報抽出部61の動作を示すフローチャートである。画素アレイ部2は、画素行ごとに、画素信号を出力する。まず、画素アレイ部2は、例えば、1つの画素行64aの画素信号を出力する。輝度情報抽出部61は、撮像画像生成部11を介して、画素41a及び41bの輝度情報及び色情報(すなわち、R及びG1の色情報)を取得できる(ステップS31)。
 輝度情報抽出部61は、ステップS31の時点では、画素41c及び41dの輝度情報が取得できない。このため、輝度情報抽出部61は画素グループ65から1つの輝度値を抽出できない。輝度情報抽出部61は、画素41a及び41bの輝度情報を、一時記憶部62に記憶する(ステップS32)。
 続いて、画素アレイ部2は、画素行64bの画素信号を出力する。輝度情報抽出部61は、撮像画像生成部11を介して、画素41c及び41dの輝度情報及び色情報(すなわち、G2及びBの色情報)を取得できる(ステップS33)。
 輝度情報抽出部61は、ステップS33の時点で、画素グループ65内の画素41a~41dの輝度値を取得できる。輝度値抽出部63は、一時記憶部62に記憶された画素41a及び41bの輝度情報と、ステップS33で取得された画素41c及び41dの輝度情報と、に基づいて、画素グループ65の最大輝度値を取得する(ステップS34)。
 輝度情報抽出部61は、ステップS31~S34により、画素グループ65から、輝度情報(V)を抽出できる。輝度情報抽出部61は、画素アレイ部2内に配置された他の画素グループ65についても、同様に輝度情報を取得する。
 図17の補正画像生成部31は、補間演算部32から補間値rc[x,y]を取得できるとともに、撮像画像生成部11の撮像画像データから、複数の画素41の輝度値p[x,y]及び色情報を取得できる。補正画像生成部31は、例えば、式(10)で輝度値を補正する。補正画像生成部31は、補正された輝度値及び対応する色情報を組み合わせて、カラーの画像データを出力できる。なお、補正画像生成部31は、輝度情報抽出部61から撮像画像データの輝度値を取得し、モノクロの画像データを出力してもよい。
 上述した第3の実施形態は、第2の実施形態と同様のグローバルトーンマッピング処理を行う場合にも適用可能である。この場合、例えば、図14の撮像画像生成部11と画面平均算出部51の間に、輝度情報抽出部61を設ければよい。
 このように、本開示の第3の実施形態に係る画像生成部3cは、カラーの撮像画像データに対しても、図3のフローチャートと同様に輝度の補正ができる。本開示の第3の実施形態に係る輝度情報抽出部61は、第1及び第2の実施形態に係る画像生成部3、3a、及び50のいずれにも適用できる。
 (第4の実施形態)
 図20は、本開示の第4の実施形態に係る画像生成部3dの構成を示すブロック図である。図20の画像生成部3dは、ローカルトーンマッピング処理で生成した画像データと、グローバルトーンマッピング処理で生成した画像データとを、ブレンドできるという特徴がある。
 図20の画像生成部3dは、撮像画像生成部11、局所エリア平均算出部12、画面平均算出部(平均輝度算出部)51、フィルタ処理部(第1処理部)13、第1除算処理部(第2処理部)71a、第2除算処理部(第3処理部)71b、ブレンド処理部(第4処理部)72、二値化画像生成部15、及び特徴抽出部17を有する。
 第1除算処理部71aは、図2の除算処理部14と同様に、所定の目標信号値Mを、フィルタ処理部13で生成したフィルタ補正値ra[kx,ky]で除算する。第2除算処理部71bは、図14の除算処理部14と同様に、所定の目標信号値Mを、画面平均算出部51が生成した平均輝度値AVE(p)で除算する。ブレンド処理部72は、第1除算処理部71aの第1補正値rb[kx,ky]と、第2除算処理部71bの第2補正値reとを、所定のブレンド係数Dに基づいてブレンドし、ブレンド値(補正値)rf[kx,ky]を出力する。ブレンド係数Dは、例えば設定入力部5(又は、レジスタブロック6)から入力可能である。ブレンド値rf[kx,ky]は、例えば、下記の式(19)で表される。
 上記の例では、ブレンド係数Dが大きいほど、ブレンド値rf[kx,ky]における第1補正値rb[kx,ky]の成分が大きくなる。また、ブレンド係数Dが小さいほど、ブレンド値rf[kx,ky]における第2補正値reの成分が大きくなる。
 第1補正値rb[kx,ky]に、画素アレイ部2の全域の平均輝度値に基づく第2補正値reがブレンドされることにより、全画面の輝度値をより強力に均一化できる。これにより、特徴抽出部17では、環境光によりロバストな特徴抽出が可能である。本開示の第4の実施形態に係る第1除算処理部71a、第2除算処理部71b、及びブレンド処理部72は、第1~第3の実施形態の画像生成部3~3c(及び、50)のいずれにも適用できる。
 (第5の実施形態)
 図21は、本開示の第5の実施形態に係る画像生成部3eの構成を示すブロック図である。図21の画像生成部3eは、注目領域抽出部81及び領域選択部82を有するという点で、図5の画像生成部3aとは異なる。注目領域抽出部81は、二値化画像生成部15が生成した画像データから、注目領域(ROI:Region of Interest)を抽出する。
 抽出された注目領域は、領域選択部82にフィードバックされる。領域選択部82は、撮像画像生成部11と局所エリア平均算出部12との間に配置される。領域選択部82は、画像生成部が生成した撮像画像データから、注目領域の画像データを抽出した画像データを生成する。
 図22は、領域選択部82が生成した画像データを示す図である。局所エリア平均算出部12、及び補正値算出部16等は図22のROI(注目領域、又は画素領域)に含まれる2以上の画素に対して処理を行う。これにより、処理対象の領域が小さくなるので、画像生成部3eは画像データの生成をさらに効率化でき、さらに高速に画像データを生成できる。本手法による画像データ生成の効率化は、撮像画像データの全体に対して被写体21が小さいときに、特に有効である。また、画像生成部3eが生成する画像データのデータ容量を削減できるので、図7Bのような補正画像データを出力する場合に、圧縮部33が省略できる。
 なお、注目領域抽出部81は、図1の画素アレイ部2が、注目領域に配置されない画素の画素信号を出力しないよう制御する構成であってもよい。
 本開示の第5の実施形態に係る注目領域抽出部81及び領域選択部82は、第1~第4の実施形態の画像生成部3~3d(及び、50)のいずれにも適用できる。
 (第6の実施形態)
 図23は、本開示の第6の実施形態に係る画像生成部3fの構成を示すブロック図である。図23の画像生成部3fは、領域抽出部83及び領域画像生成部84を有するという点で、図5の画像生成部3aとは異なる。
 領域抽出部83は、二値化画像生成部15が生成した画像データから、注目領域を抽出する。領域画像生成部84は、領域抽出部83が抽出した注目領域を取得するとともに、例えば撮像画像生成部11から複数の画素の輝度情報を取得する。領域画像生成部84は、複数の画素の輝度情報のうち、注目領域に含まれる複数の画素の輝度情報から、注目領域の画像データを生成する。
 領域画像生成部84が生成した画像データは、例えば図1の転送部4を介して、後段のSoC等に出力される。これにより、撮像画像データに比べて転送する画像データのデータ容量を削減できる。
 また、後段のSoC等で物体検出、又は高精度画像処理等を行う場合、画像データのデータ容量が小さくなったことで後段のSoCの計算量が削減でき、SoC側の処理負担を軽減することができる。
 本開示の第6の実施形態に係る領域抽出部83及び領域画像生成部84は、第1~第5の実施形態の画像生成部3~3e(及び、50)のいずれにも適用できる。
 (第7の実施形態)
 図24は、本開示の第7の実施形態に係る半導体装置10aの構成を示すブロック図である。図24の半導体装置10aは、画像選択部91を有するという点で、図1の半導体装置10とは異なる。画像選択部91は、画像生成部3gで生成された二以上の画像データのうち、一部又は全ての画像データを選択して出力する。
 画像選択部91は、ユーザの要求に応じて出力する画像を選択してもよいし、後段に配置されるSoC等の要求に応じて出力する画像を選択してもよい。また、画像選択部91は、設定入力部5から入力された情報、又はレジスタブロック6に記憶された情報に基づいて、出力する画像を選択してもよい。
 図24の画像生成部3gは、画像処理を行わずに生成される画像データと、それぞれ異なる画像処理を行って生成される2種類以上の画像データと、のうち、少なくとも2つの画像データを生成する。
 具体的には、画像生成部3gは、図2の撮像画像生成部11が生成する撮像画像データ(例えば、図4A又は図13A)を、画像処理を行わなかった画像データとして生成できる。
 また、画像生成部3gは、フィルタ処理を含むローカルトーンマッピング処理を行って生成された画像データ(例えば、図7B又は図16A)、フィルタ処理を含まないローカルトーンマッピング処理を行って生成された画像データ(例えば、図11A又は図15A)、又はグローバルトーンマッピング処理を行って生成された画像データ(例えば、図14A)、のうちいずれか2つ以上を、それぞれ異なる画像処理を行って生成される2種類以上の画像データとして出力できる。
 画像生成部3gは、圧縮部33により圧縮された画像データ、二値化画像生成部15により生成された画像データ(例えば、図4H)、特徴抽出部17により生成された画像データ(例えば、図4I)、局所エリア平均算出部12により生成された画像データ(例えば、図4C)、又は除算処理部14により生成された画像データ(例えば、図4G)を出力してもよい。
 画像生成部3gは、色情報を有するカラー画像データ、ブレンド処理部72によるブレンド処理がされた画像データ、又は注目領域抽出部81により抽出された注目領域の画像データ(例えば、図22)を出力してもよい。
 画像生成部3gは、画像生成部3~3f(及び、50)のいずれかと同様の構成を有する。画像生成部3gは、画像生成部3~3f(及び、50)のうち2つ以上の機能を有する構成であってもよい。例えば、画像生成部3gは、図2の二値化画像生成部15及び特徴抽出部17、図5の補間演算部32及び補正画像生成部31を並列に有してもよい。画像生成部3gは、画像選択部91の選択により、図7Bの補正画像データ又は図4Iの特徴抽出データのいずれか少なくとも1つを出力してもよい。
 画像選択部91は、一例として、下記(1)~(5)のいずれかを出力できる。なお、画像選択部91は、(1)~(5)に限定されず、複数種類の任意の画像データを出力できる。
 (1)撮像画像データ(図4A)及び特徴抽出結果の画像データ(図4I)
 (2)撮像画像データ(図4A)及び補正画像データ(図7B)
 (3)補正画像データ(図7B)及び特徴抽出結果の画像データ(図4I)
 (4)撮像画像データ(図4A)及び注目領域の画像データ(図22)
 (5)撮像画像データ(図4A)及び注目領域の特徴抽出結果の画像データ
 半導体装置10aは、出力する画像データを切り替えることで、後段のSoC等における様々な画像処理に対応できる。
 (応用例)
 本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
 図25は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図25に示した例では、車両制御システム7000は、駆動系制御ユニット7100、ボディ系制御ユニット7200、バッテリ制御ユニット7300、車外情報検出ユニット7400、車内情報検出ユニット7500、及び統合制御ユニット7600を備える。これらの複数の制御ユニットを接続する通信ネットワーク7010は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)又はFlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークであってよい。
 各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク7010を介して他の制御ユニットとの間で通信を行うためのネットワークI/Fを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信I/Fを備える。図25では、統合制御ユニット7600の機能構成として、マイクロコンピュータ7610、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660、音声画像出力部7670、車載ネットワークI/F7680及び記憶部7690が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信I/F及び記憶部等を備える。
 駆動系制御ユニット7100は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット7100は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット7100は、ABS(Antilock Brake System)又はESC(Electronic Stability Control)等の制御装置としての機能を有してもよい。
 駆動系制御ユニット7100には、車両状態検出部7110が接続される。車両状態検出部7110には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット7100は、車両状態検出部7110から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
 ボディ系制御ユニット7200は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット7200は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット7200には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット7200は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
 バッテリ制御ユニット7300は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池7310を制御する。例えば、バッテリ制御ユニット7300には、二次電池7310を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット7300は、これらの信号を用いて演算処理を行い、二次電池7310の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
 車外情報検出ユニット7400は、車両制御システム7000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット7400には、撮像部7410及び車外情報検出部7420のうちの少なくとも一方が接続される。撮像部7410には、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部7420には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム7000を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
 環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びLIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)装置のうちの少なくとも一つであってよい。これらの撮像部7410及び車外情報検出部7420は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
 ここで、図26は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
 なお、図26には、それぞれの撮像部7910,7912,7914,7916の撮影範囲の一例が示されている。撮像範囲aは、フロントノーズに設けられた撮像部7910の撮像範囲を示し、撮像範囲b,cは、それぞれサイドミラーに設けられた撮像部7912,7914の撮像範囲を示し、撮像範囲dは、リアバンパ又はバックドアに設けられた撮像部7916の撮像範囲を示す。例えば、撮像部7910,7912,7914,7916で撮像された画像データが重ね合わせられることにより、車両7900を上方から見た俯瞰画像が得られる。
 車両7900のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7922,7924,7926,7928,7930は、例えば超音波センサ又はレーダ装置であってよい。車両7900のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7926,7930は、例えばLIDAR装置であってよい。これらの車外情報検出部7920~7930は、主として先行車両、歩行者又は障害物等の検出に用いられる。
 図25に戻って説明を続ける。車外情報検出ユニット7400は、撮像部7410に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット7400は、接続されている車外情報検出部7420から検出情報を受信する。車外情報検出部7420が超音波センサ、レーダ装置又はLIDAR装置である場合には、車外情報検出ユニット7400は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット7400は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
 また、車外情報検出ユニット7400は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部7410により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット7400は、異なる撮像部7410により撮像された画像データを用いて、視点変換処理を行ってもよい。
 車内情報検出ユニット7500は、車内の情報を検出する。車内情報検出ユニット7500には、例えば、運転者の状態を検出する運転者状態検出部7510が接続される。運転者状態検出部7510は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット7500は、運転者状態検出部7510から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット7500は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
 統合制御ユニット7600は、各種プログラムにしたがって車両制御システム7000内の動作全般を制御する。統合制御ユニット7600には、入力部7800が接続されている。入力部7800は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット7600には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部7800は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム7000の操作に対応した携帯電話又はPDA(Personal Digital Assistant)等の外部接続機器であってもよい。入力部7800は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部7800は、例えば、上記の入力部7800を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット7600に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部7800を操作することにより、車両制御システム7000に対して各種のデータを入力したり処理動作を指示したりする。
 記憶部7690は、マイクロコンピュータにより実行される各種プログラムを記憶するROM(Read Only Memory)、及び各種パラメータ、演算結果又はセンサ値等を記憶するRAM(Random Access Memory)を含んでいてもよい。また、記憶部7690は、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
 汎用通信I/F7620は、外部環境7750に存在する様々な機器との間の通信を仲介する汎用的な通信I/Fである。汎用通信I/F7620は、GSM(登録商標)(Global System of Mobile communications)、WiMAX(登録商標)、LTE(登録商標)(Long Term Evolution)若しくはLTE-A(LTE-Advanced)などのセルラー通信プロトコル、又は無線LAN(Wi-Fi(登録商標)ともいう)、Bluetooth(登録商標)などのその他の無線通信プロトコルを実装してよい。汎用通信I/F7620は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)へ接続してもよい。また、汎用通信I/F7620は、例えばP2P(Peer To Peer)技術を用いて、車両の近傍に存在する端末(例えば、運転者、歩行者若しくは店舗の端末、又はMTC(Machine Type Communication)端末)と接続してもよい。
 専用通信I/F7630は、車両における使用を目的として策定された通信プロトコルをサポートする通信I/Fである。専用通信I/F7630は、例えば、下位レイヤのIEEE802.11pと上位レイヤのIEEE1609との組合せであるWAVE(Wireless Access in Vehicle Environment)、DSRC(Dedicated Short Range Communications)、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信I/F7630は、典型的には、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、車両と家との間(Vehicle to Home)の通信及び歩車間(Vehicle to Pedestrian)通信のうちの1つ以上を含む概念であるV2X通信を遂行する。
 測位部7640は、例えば、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部7640は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、PHS若しくはスマートフォンといった端末から位置情報を取得してもよい。
 ビーコン受信部7650は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部7650の機能は、上述した専用通信I/F7630に含まれてもよい。
 車内機器I/F7660は、マイクロコンピュータ7610と車内に存在する様々な車内機器7760との間の接続を仲介する通信インタフェースである。車内機器I/F7660は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)又はWUSB(Wireless USB)といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器I/F7660は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface、又はMHL(Mobile High-definition Link)等の有線接続を確立してもよい。車内機器7760は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも1つを含んでいてもよい。また、車内機器7760は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器I/F7660は、これらの車内機器7760との間で、制御信号又はデータ信号を交換する。
 車載ネットワークI/F7680は、マイクロコンピュータ7610と通信ネットワーク7010との間の通信を仲介するインタフェースである。車載ネットワークI/F7680は、通信ネットワーク7010によりサポートされる所定のプロトコルに則して、信号等を送受信する。
 統合制御ユニット7600のマイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム7000を制御する。例えば、マイクロコンピュータ7610は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット7100に対して制御指令を出力してもよい。例えば、マイクロコンピュータ7610は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ7610は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
 マイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の3次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ7610は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
 音声画像出力部7670は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図25の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
 なお、図25に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
 なお、図1を用いて説明した本実施形態に係る画像処理装置1の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
 以上説明した車両制御システム7000において、図1を用いて説明した画像処理装置1は、図25に示した応用例の撮像部7410に適用することができる。例えば、図1の画像処理装置1は、撮像部7410のカメラ等に適用できる。これにより、カメラ等の回路規模が制限される画像処理装置であっても、高精度かつ高速に形状計測が可能になり、車両又は人の検出等がより高速かつ高精度に実現できる。
 また、図1を用いて説明した画像処理装置1の少なくとも一部の構成要素は、図25に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、図1を用いて説明した画像処理装置1が、図25に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。
 なお、本技術は以下のような構成を取ることができる。
(1)入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、
 前記複数の画素の前記輝度情報に基づいて、画素ごとの局所的な明暗差に関わらず均一な輝度を有する画像データを生成する画像生成部と、を有する半導体装置を備える、
 画像処理装置。
(2)入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、
 前記複数の画素の前記輝度情報に基づいて、それぞれ異なる画像処理を行って生成される2種類以上の画像データと、前記画像処理を行わずに生成される画像データとのうち、少なくとも2つの画像データを生成する画像生成部と、
 前記画像生成部で生成された少なくとも2つの画像データのうち、一部又はすべての画像データを選択して出力する画像選択部と、を有する半導体装置を備える、
 画像処理装置。
(3)前記半導体装置は、
 隣接して配置される2以上の前記画素を含む第1領域ごとに平均輝度値を算出する平均輝度算出部と、
 前記第1領域の平均輝度値と前記第1領域の周囲の輝度情報とに基づいて、前記第1領域の平均輝度値に応じた補正値を算出する補正値算出部と、を有し、
 前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、前記画像データを生成する、
 (1)又は(2)に記載の画像処理装置。
(4)前記補正値算出部は、前記補正値の算出対象となる特定の前記第1領域の平均輝度値と、前記特定の第1領域を含み前記特定の第1領域よりも広い第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値と、に基づいて、前記特定の第1領域の前記補正値を算出する、
 (3)に記載の画像処理装置。
(5)前記補正値算出部は、
 前記特定の第1領域の平均輝度値に対して、前記特定の第1領域の周囲に位置する前記第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値を用いた畳み込み処理を行うことにより、前記特定の第1領域の平均輝度値を補正する第1処理部と、
 前記第1処理部で補正された前記特定の第1領域の平均輝度値に基づいて、前記特定の第1領域の前記補正値を算出する第2処理部と、を有する、
 (4)に記載の画像処理装置。
(6)前記第2処理部は、予め定めた目標信号値を前記第1処理部で補正された前記特定の第1領域の平均輝度値で割ることにより、前記補正値を算出する、
 (5)に記載の画像処理装置。
(7)前記補正値算出部は、前記特定の第1領域を変えながら前記補正値を算出する処理を繰り返し行い、
 前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、二値化された前記画像データを生成する、
 (6)に記載の画像処理装置。
(8)前記目標信号値に基づいて設定される閾値と前記補正値との比較結果に基づいて、前記二値化された画像データを生成する、
 (7)に記載の画像処理装置。
(9)前記補正値算出部は、前記特定の第1領域を変えながら前記補正値を算出する処理を繰り返し行い、
 前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、前記複数の画素のそれぞれの輝度情報の補間処理を行って、均一な輝度を有する画素データを生成する、
 (6)に記載の画像処理装置。
(10)前記画像生成部は、前記複数の画素の輝度情報が圧縮された画像データを生成する圧縮部を備える、
 (6)又は(9)に記載の画像処理装置。
(11)前記半導体装置は、
 前記複数の画素を含む画素アレイ部と、
 前記画素アレイ部の全域の平均輝度値を算出する平均輝度算出部を有し、
 前記補正値算出部は、
 前記特定の第1領域の平均輝度値に対して、前記特定の第1領域の周囲に位置する前記第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値を用いた畳み込み処理を行うことにより、前記特定の第1領域の平均輝度値を補正する第1処理部と、
 予め定めた目標信号値を前記第1処理部で補正された前記特定の第1領域の平均輝度値で割ることにより、前記特定の第1領域の第1補正値を算出する第2処理部と、
 前記目標信号値を前記平均輝度算出部で算出された平均輝度値で割ることにより、第2補正値を算出する第3処理部と、
 前記第1補正値及び前記第2補正値に基づいて、前記補正値を算出する第4処理部と、を有する、
 (4)に記載の画像処理装置。
(12)前記半導体装置は、
 前記第1領域のサイズと前記第2領域のサイズとを入力する入力部、
 又は、前記第1領域のサイズ及び前記第2領域のサイズを記憶する記憶部の、少なくとも一方を有する、
 (4)乃至(11)のいずれか一項に記載の画像処理装置。
(13)前記半導体装置は、
 前記第1領域のサイズと前記第2領域のサイズと前記目標信号値とを入力する入力部、
 又は、前記第1領域のサイズと前記第2領域のサイズと前記目標信号値とを記憶する記憶部の、少なくとも一方を有する、
 (6)乃至(11)のいずれか一項に記載の画像処理装置。
(14)前記半導体装置は、
 前記複数の画素を含む画素アレイ部と、
 前記画素アレイ部における2以上の前記画素を含む注目領域を抽出する注目領域抽出部と、を有し、
 前記画像生成部、前記平均輝度算出部、及び前記補正値算出部は、前記注目領域に含まれる前記2以上の画素に対して処理を行う、
 (3)乃至(13)のいずれか一項に記載の画像処理装置。
(15)前記半導体装置は、
 前記画像生成部で生成された前記画像データに含まれる一部の画素領域を抽出する領域抽出部と、
 前記領域抽出部で抽出された前記一部の画素領域と、前記複数の画素の輝度情報とに基づいて、前記一部の画素領域の画像データを生成する領域画像生成部と、を有する、
 (1)乃至(13)のいずれか一項に記載の画像処理装置。
(16)前記半導体装置は、前記複数の画素のそれぞれから出力された色情報及び輝度情報を含む複数の画素信号から、画素ごとに輝度情報を抽出する輝度情報抽出部を有し、
 前記画像生成部は、前記輝度情報抽出部で抽出された画素ごとの輝度情報に基づいて前記画像データを生成する、
 (1)乃至(15)のいずれか一項に記載の画像処理装置。
(17)前記半導体装置から出力された前記画像データに基づいて、所定の画像処理を行う画像処理部をさらに備える、
 (1)乃至(16)のいずれか一項に記載の画像処理装置。
(18)隣接して配置される2以上の画素を含む第1領域ごとに平均輝度値を算出し、
 複数の前記第1領域のうち特定の前記第1領域の平均輝度値と、前記特定の第1領域を含み前記特定の第1領域よりも広い第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値とに基づいて、前記特定の第1領域の前記補正値を算出し、
 前記複数の第1領域に対応する複数の前記補正値に基づいて画像データを生成する、
 画像処理方法。
 本開示の態様は、上述した個々の実施形態に限定されるものではなく、当業者が想到しうる種々の変形も含むものであり、本開示の効果も上述した内容に限定されない。すなわち、特許請求の範囲に規定された内容およびその均等物から導き出される本開示の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
 1 画像処理装置、2 画素アレイ部、3、3a、3b、3c、3d、3e、3f、3g、50、100 画像生成部、4 転送部、5 設定入力部、6 レジスタブロック、7 行選択部、8 画像処理部、9 制御部、10、10a 半導体装置、11 撮像画像生成部、12 局所エリア平均算出部、13 フィルタ処理部、14 除算処理部、15 二値化画像生成部、16 補正値算出部、17 特徴抽出部、21 被写体、22、22a、22b、22c、22d、24 局所エリア、23 フィルタブロック、25 フィルタ、26、27 フィルタ要素、31 補正画像生成部、32 補間演算部、33 圧縮部、41、41a、41b、41c、41d、42 画素、43、43a、43b、43c、43d、44a、44b 計算点、51 画面平均算出部、61 輝度情報抽出部、62 一時記憶部、63 輝度値抽出部、64a、64b 画素行、65 画素グループ、71a 第1除算処理部、71b 第2除算処理部、72 ブレンド処理部、81 注目領域抽出部、82 領域選択部、83 領域抽出部、84 領域画像生成部、91 画像選択部

Claims (18)

  1.  入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、
     前記複数の画素の前記輝度情報に基づいて、画素ごとの局所的な明暗差に関わらず均一な輝度を有する画像データを生成する画像生成部と、を有する半導体装置を備える、
     画像処理装置。
  2.  入射光の光量に応じた輝度情報を含む画素信号をそれぞれ出力する複数の画素と、
     前記複数の画素の前記輝度情報に基づいて、それぞれ異なる画像処理を行って生成される2種類以上の画像データと、前記画像処理を行わずに生成される画像データとのうち、少なくとも2つの画像データを生成する画像生成部と、
     前記画像生成部で生成された少なくとも2つの画像データのうち、一部又はすべての画像データを選択して出力する画像選択部と、を有する半導体装置を備える、
     画像処理装置。
  3.  前記半導体装置は、
     隣接して配置される2以上の前記画素を含む第1領域ごとに平均輝度値を算出する平均輝度算出部と、
     前記第1領域の平均輝度値と前記第1領域の周囲の輝度情報とに基づいて、前記第1領域の平均輝度値に応じた補正値を算出する補正値算出部と、を有し、
     前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、前記画像データを生成する、
     請求項1に記載の画像処理装置。
  4.  前記補正値算出部は、前記補正値の算出対象となる特定の前記第1領域の平均輝度値と、前記特定の第1領域を含み前記特定の第1領域よりも広い第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値と、に基づいて、前記特定の第1領域の前記補正値を算出する、
     請求項3に記載の画像処理装置。
  5.  前記補正値算出部は、
     前記特定の第1領域の平均輝度値に対して、前記特定の第1領域の周囲に位置する前記第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値を用いた畳み込み処理を行うことにより、前記特定の第1領域の平均輝度値を補正する第1処理部と、
     前記第1処理部で補正された前記特定の第1領域の平均輝度値に基づいて、前記特定の第1領域の前記補正値を算出する第2処理部と、を有する、
     請求項4に記載の画像処理装置。
  6.  前記第2処理部は、予め定めた目標信号値を前記第1処理部で補正された前記特定の第1領域の平均輝度値で割ることにより、前記補正値を算出する、
     請求項5に記載の画像処理装置。
  7.  前記補正値算出部は、前記特定の第1領域を変えながら前記補正値を算出する処理を繰り返し行い、
     前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、二値化された前記画像データを生成する、
     請求項6に記載の画像処理装置。
  8.  前記目標信号値に基づいて設定される閾値と前記補正値との比較結果に基づいて、前記二値化された画像データを生成する、
     請求項7に記載の画像処理装置。
  9.  前記補正値算出部は、前記特定の第1領域を変えながら前記補正値を算出する処理を繰り返し行い、
     前記画像生成部は、複数の前記第1領域に対応する複数の前記補正値に基づいて、前記複数の画素のそれぞれの輝度情報の補間処理を行って、均一な輝度を有する画素データを生成する、
     請求項6に記載の画像処理装置。
  10.  前記画像生成部は、前記複数の画素の輝度情報が圧縮された画像データを生成する圧縮部を備える、
     請求項6に記載の画像処理装置。
  11.  前記半導体装置は、
     前記複数の画素を含む画素アレイ部と、
     前記画素アレイ部の全域の平均輝度値を算出する平均輝度算出部を有し、
     前記補正値算出部は、
     前記特定の第1領域の平均輝度値に対して、前記特定の第1領域の周囲に位置する前記第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値を用いた畳み込み処理を行うことにより、前記特定の第1領域の平均輝度値を補正する第1処理部と、
     予め定めた目標信号値を前記第1処理部で補正された前記特定の第1領域の平均輝度値で割ることにより、前記特定の第1領域の第1補正値を算出する第2処理部と、
     前記目標信号値を前記平均輝度算出部で算出された平均輝度値で割ることにより、第2補正値を算出する第3処理部と、
     前記第1補正値及び前記第2補正値に基づいて、前記補正値を算出する第4処理部と、を有する、
     請求項4に記載の画像処理装置。
  12.  前記半導体装置は、
     前記第1領域のサイズと前記第2領域のサイズとを入力する入力部、
     又は、前記第1領域のサイズ及び前記第2領域のサイズを記憶する記憶部の、少なくとも一方を有する、
     請求項4に記載の画像処理装置。
  13.  前記半導体装置は、
     前記第1領域のサイズと前記第2領域のサイズと前記目標信号値とを入力する入力部、
     又は、前記第1領域のサイズと前記第2領域のサイズと前記目標信号値とを記憶する記憶部の、少なくとも一方を有する、
     請求項6に記載の画像処理装置。
  14.  前記半導体装置は、
     前記複数の画素を含む画素アレイ部と、
     前記画素アレイ部における2以上の前記画素を含む注目領域を抽出する注目領域抽出部と、を有し、
     前記画像生成部、前記平均輝度算出部、及び前記補正値算出部は、前記注目領域に含まれる前記2以上の画素に対して処理を行う、
     請求項3に記載の画像処理装置。
  15.  前記半導体装置は、
     前記画像生成部で生成された前記画像データに含まれる一部の画素領域を抽出する領域抽出部と、
     前記領域抽出部で抽出された前記一部の画素領域と、前記複数の画素の輝度情報とに基づいて、前記一部の画素領域の画像データを生成する領域画像生成部と、を有する、
     請求項1に記載の画像処理装置。
  16.  前記半導体装置は、前記複数の画素のそれぞれから出力された色情報及び輝度情報を含む複数の画素信号から、画素ごとに輝度情報を抽出する輝度情報抽出部を有し、
     前記画像生成部は、前記輝度情報抽出部で抽出された画素ごとの輝度情報に基づいて前記画像データを生成する、
     請求項1に記載の画像処理装置。
  17.  前記半導体装置から出力された前記画像データに基づいて、所定の画像処理を行う画像処理部をさらに備える、
     請求項1に記載の画像処理装置。
  18.  隣接して配置される2以上の画素を含む第1領域ごとに平均輝度値を算出し、
     複数の前記第1領域のうち特定の前記第1領域の平均輝度値と、前記特定の第1領域を含み前記特定の第1領域よりも広い第2領域に含まれる前記特定の第1領域以外の第1領域の平均輝度値とに基づいて、前記特定の第1領域の前記補正値を算出し、
     前記複数の第1領域に対応する複数の前記補正値に基づいて画像データを生成する、
     画像処理方法。
PCT/JP2025/020201 2024-06-14 2025-06-04 画像処理装置及び画像処理方法 Pending WO2025258476A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2024096728 2024-06-14
JP2024-096728 2024-06-14

Publications (1)

Publication Number Publication Date
WO2025258476A1 true WO2025258476A1 (ja) 2025-12-18

Family

ID=98050694

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2025/020201 Pending WO2025258476A1 (ja) 2024-06-14 2025-06-04 画像処理装置及び画像処理方法

Country Status (1)

Country Link
WO (1) WO2025258476A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009071772A (ja) * 2007-09-18 2009-04-02 Olympus Corp 撮像装置
JP2009089357A (ja) * 2007-09-13 2009-04-23 Panasonic Corp 撮像装置、撮像方法、プログラム、および集積回路
JP2011186678A (ja) * 2010-03-05 2011-09-22 Toshiba Teli Corp 画像処理装置および画像処理プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009089357A (ja) * 2007-09-13 2009-04-23 Panasonic Corp 撮像装置、撮像方法、プログラム、および集積回路
JP2009071772A (ja) * 2007-09-18 2009-04-02 Olympus Corp 撮像装置
JP2011186678A (ja) * 2010-03-05 2011-09-22 Toshiba Teli Corp 画像処理装置および画像処理プログラム

Similar Documents

Publication Publication Date Title
US10904503B2 (en) Image processing device, information generation device, and information generation method
US10704957B2 (en) Imaging device and imaging method
JP7024782B2 (ja) 画像処理装置と画像処理方法および撮像装置
TW202038088A (zh) 感測器裝置、電子機器、感測器系統及控制方法
CN109155824B (zh) 图像处理设备和图像处理方法以及学习设备和学习方法
JPWO2018163725A1 (ja) 画像処理装置、および画像処理方法、並びにプログラム
JP7500798B2 (ja) 固体撮像装置、補正方法、および電子装置
US12136345B2 (en) Motion vector imaging alert system
US11375137B2 (en) Image processor, image processing method, and imaging device
JP6816769B2 (ja) 画像処理装置と画像処理方法
JP6981416B2 (ja) 画像処理装置と画像処理方法
WO2018150683A1 (ja) 情報処理装置と情報処理方法とプログラムおよび撮像装置
JP6816768B2 (ja) 画像処理装置と画像処理方法
CN111868778B (zh) 图像处理装置、图像处理方法以及存储介质
WO2025258476A1 (ja) 画像処理装置及び画像処理方法
WO2022181265A1 (ja) 画像処理装置、画像処理方法及び画像処理システム
WO2024237021A1 (ja) 情報処理装置および情報処理方法、並びにプログラム
WO2024150690A1 (ja) 固体撮像装置
CN120219253A (zh) 图像处理方法、车辆、电子设备及存储介质
WO2019111651A1 (ja) 撮像システム、画像処理装置、及び、画像処理方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 25821823

Country of ref document: EP

Kind code of ref document: A1