WO2023100660A1 - 撮像システムおよび撮像方法 - Google Patents

撮像システムおよび撮像方法 Download PDF

Info

Publication number
WO2023100660A1
WO2023100660A1 PCT/JP2022/042583 JP2022042583W WO2023100660A1 WO 2023100660 A1 WO2023100660 A1 WO 2023100660A1 JP 2022042583 W JP2022042583 W JP 2022042583W WO 2023100660 A1 WO2023100660 A1 WO 2023100660A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
compressed image
compressed
processing device
imaging device
Prior art date
Application number
PCT/JP2022/042583
Other languages
English (en)
French (fr)
Inventor
弓子 加藤
基樹 八子
俊介 安木
Original Assignee
パナソニックIpマネジメント株式会社
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 パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Publication of WO2023100660A1 publication Critical patent/WO2023100660A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/55Optical parts specially adapted for electronic image sensors; Mounting thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations

Definitions

  • the present disclosure relates to imaging systems and imaging methods.
  • a hyperspectral imaging device that acquires image data capable of detailed color expression exceeding the color expression by a combination of RGB (red, green, and blue) is used in various fields.
  • a conventional hyperspectral imaging method for example, there is a method of sequentially acquiring detailed spectral information for each line while scanning a measurement target area in one direction using a prism or a diffraction grating.
  • Patent Document 1 discloses an example of a hyperspectral imaging device using compressed sensing.
  • the imaging device disclosed in Patent Document 1 includes an encoding element, which is an array of a plurality of optical filters having different spectral transmittances, on an optical path connecting an object and an image sensor.
  • the image capturing apparatus can generate images of a plurality of wavelength bands in a single image capturing operation by performing a restoration operation based on a compressed image acquired by image capturing using an encoding element. According to Patent Document 1, it is also possible to generate a moving image using hyperspectral images.
  • Patent Document 2 discloses a method of reducing image data restoration processing by compressed sensing by performing restoration calculations only for areas in which objects have been identified in the image.
  • Patent Literature 3 discloses a method of reducing the load of image data restoration processing by compression sensing by restoring only a region in which the brightness has changed over time in the acquired compressed image.
  • Patent document 4 generates a kernel matrix corresponding to motion according to moving image data acquired by compressed sensing imaging and data indicating the motion of the camera at the time of image acquisition detected by a sensor, and based on the kernel matrix A method for suppressing image blurring due to motion is disclosed.
  • the present disclosure provides a method of reducing the computational load for generating blur-reduced images of multiple wavelength bands.
  • An imaging system includes an imaging device that acquires a compressed image in which information of light in four or more wavelength bands from an object is compressed, and a processing device.
  • the processing device extracts a partial region including a region of the object from the compressed image so as to compensate for relative motion between the object and the imaging device, and extracts the partial region in the compressed image.
  • a plurality of spectral images corresponding to a plurality of wavelength bands are generated based on the data.
  • Computer-readable recording media include, for example, non-volatile recording media such as CD-ROMs (Compact Disc-Read Only Memory).
  • a device may consist of one or more devices. When the device is composed of two or more devices, the two or more devices may be arranged in one device, or may be divided and arranged in two or more separate devices. In the present specification and claims, "device" can mean not only one device, but also a system of multiple devices.
  • FIG. 1A is a diagram schematically showing an example of an imaging system.
  • FIG. 1B is a diagram schematically showing another example of the imaging system.
  • FIG. 1C is a diagram schematically showing still another example of the imaging system.
  • FIG. 1D is a diagram schematically showing still another example of the imaging system.
  • FIG. 2A is a diagram schematically showing an example of a filter array.
  • FIG. 2B is a diagram showing an example of the spatial distribution of the transmittance of the filter array for light in each of multiple wavelength bands.
  • FIG. 2C is a diagram showing an example of spectral transmittance of a region included in the filter array.
  • FIG. 2D is a diagram showing an example of spectral transmittance of other regions included in the filter array.
  • FIG. 1A is a diagram schematically showing an example of an imaging system.
  • FIG. 1B is a diagram schematically showing another example of the imaging system.
  • FIG. 1C is a diagram schematically showing still another example of the imaging
  • FIG. 3A is a diagram for explaining the relationship between a target wavelength band and a plurality of wavelength bands included therein.
  • FIG. 3B is another diagram for explaining the relationship between the target wavelength band and a plurality of wavelength bands included therein.
  • FIG. 4A is a diagram for explaining an example of spectral transmittance characteristics in a certain area of the filter array.
  • FIG. 4B is a diagram showing the result of averaging the spectral transmittance shown in FIG. 4A for each wavelength band.
  • FIG. 5 is a block diagram showing the configuration of the imaging system according to the first embodiment.
  • FIG. 6 is a flow chart showing the operation of the imaging system.
  • FIG. 7A is a first diagram for explaining the correction amount of an image and its calculation method.
  • FIG. 7B is a second diagram for explaining the amount of image correction and the calculation method thereof.
  • FIG. 7C is a third diagram for explaining the amount of image correction and its calculation method.
  • FIG. 8 is a flow chart showing a detailed example of the operation of step S1400.
  • FIG. 9 is a block diagram showing the configuration of an imaging system according to Modification 1 of Embodiment 1. As shown in FIG. 10 is a flowchart showing the operation of the imaging system according to Modification 1 of Embodiment 1.
  • FIG. FIG. 11 is a flow chart showing a more detailed example of the operation of step S2500.
  • FIG. 12 is a flowchart showing a part of the operation of the processing device in Modification 2 of Embodiment 1; 13 is a flowchart illustrating a part of the operation of the processing device in Modification 3 of Embodiment 1.
  • FIG. FIG. 14 is a block diagram showing the configuration of an imaging system according to the second embodiment.
  • FIG. 15 is a flow chart showing the operation of the imaging system according to the second embodiment.
  • FIG. 16 is a diagram showing a configuration example of an imaging system in which an imaging device and a processing device are installed at separate locations.
  • FIG. 17 is a flow chart showing the operation of the imaging system 10 in this modified example.
  • FIG. 18 is a diagram showing the relationship among the first image Ig1, matrix g1', and matrix g1.
  • FIG. 18 is a diagram showing the relationship among the first image Ig1, matrix g1', and matrix g1.
  • FIG. 19 is a diagram showing the relationship between the first image Ig1 and the image I(1k).
  • FIG. 20 is a diagram showing the relationship between the second image Ig2, the matrix g2', and the matrix g2.
  • FIG. 21 is a diagram showing the relationship between the second image Ig2 and the image I(2k).
  • all or part of a circuit, unit, device, member or section, or all or part of a functional block in a block diagram is, for example, a semiconductor device, a semiconductor integrated circuit (IC), or an LSI (large scale integration). ) may be performed by one or more electronic circuits.
  • An LSI or IC may be integrated on one chip, or may be configured by combining a plurality of chips.
  • functional blocks other than memory elements may be integrated on one chip.
  • LSIs or ICs may be called system LSIs, VLSIs (very large scale integrations), or ULSIs (ultra large scale integrations) depending on the degree of integration.
  • FPGAs Field Programmable Gate Arrays
  • RLDs reconfigurable logic devices
  • circuits, units, devices, members or parts can be executed by software processing.
  • the software is recorded on one or more non-transitory storage media, such as ROMs, optical discs, hard disk drives, etc., such that when the software is executed by a processor, the functions specified in the software are performed. Executed by the processor and peripherals.
  • a system or apparatus may comprise one or more non-transitory storage media on which software is recorded, a processing unit, and required hardware devices such as interfaces.
  • FIG. 1A is a diagram schematically showing an exemplary imaging system.
  • This system includes an imaging device 100 and a processing device 200 .
  • the imaging device 100 has a configuration similar to that of the imaging device disclosed in Patent Document 1.
  • the imaging device 100 includes a filter array 110 , an optical system 140 and an image sensor 160 .
  • Filter array 110 has a structure and function similar to the "encoding element" disclosed in US Pat.
  • the optical system 140 and the filter array 110 are arranged on the optical path of light incident from the object 70, which is a subject. Filter array 110 is placed between optical system 140 and image sensor 160 .
  • FIG. 1A illustrates an apple as an example of the object 70 .
  • Object 70 is not limited to an apple, and may be any object.
  • the image sensor 160 generates data of a compressed image 120 in which information of a plurality of wavelength bands is compressed as one two-dimensional monochrome image.
  • the processing device 200 Based on the data of the compressed image 120 generated by the image sensor 160, the processing device 200 generates image data for each of a plurality of wavelength bands included in a predetermined target wavelength range.
  • a plurality of image data corresponding to the plurality of wavelength bands thus generated are referred to herein as "hyperspectral image data".
  • the number of wavelength bands included in the target wavelength band be N (N is an integer equal to or greater than 4).
  • spectral image 220W 1 a plurality of image data corresponding to a plurality of wavelength bands to be generated are referred to as spectral image 220W 1 , spectral image 220W 2 , .
  • image 220 a signal representing an image, that is, a set of signals representing pixel values of pixels may be simply referred to as an "image".
  • the filter array 110 is an array of a plurality of translucent filters arranged in rows and columns.
  • the multiple filters include multiple types of filters having different spectral transmittances, that is, wavelength dependences of light transmittances.
  • the filter array 110 modulates the intensity of incident light for each wavelength and outputs the modulated light. This process by filter array 110 is referred to herein as "encoding.”
  • the filter array 110 is arranged near or directly above the image sensor 160 .
  • “near” means that the image of the light from the optical system 140 is close enough to be formed on the surface of the filter array 110 in a somewhat clear state.
  • “Directly above” means that they are so close to each other that there is almost no gap. Filter array 110 and image sensor 160 may be integrated.
  • the optical system 140 includes at least one lens. Although optical system 140 is shown as a single lens in FIG. 1A, optical system 140 may be a combination of multiple lenses. Optical system 140 forms an image on the imaging surface of image sensor 160 via filter array 110 .
  • FIGS. 1B to 1D are diagrams showing configuration examples of the imaging device 100 in which the filter array 110 is arranged away from the image sensor 160.
  • FIG. 1B filter array 110 is positioned between optical system 140 and image sensor 160 and at a distance from image sensor 160 .
  • filter array 110 is positioned between object 70 and optics 140 .
  • imaging device 100 comprises two optical systems 140A and 140B, with filter array 110 positioned therebetween.
  • an optical system including one or more lenses may be arranged between filter array 110 and image sensor 160 .
  • the image sensor 160 is a monochrome photodetector having a plurality of two-dimensionally arranged photodetection elements (also referred to as "pixels" in this specification).
  • the image sensor 160 can be, for example, a CCD (Charge-Coupled Device), a CMOS (Complementary Metal Oxide Semiconductor) sensor, an infrared array sensor, a terahertz array sensor, or a millimeter wave array sensor.
  • the photodetector includes, for example, a photodiode.
  • Image sensor 160 does not necessarily have to be a monochrome type sensor.
  • R/G/B filters filters that transmit red light, filters that transmit green light, and filters that transmit blue light
  • R/G/B/IR filters filters that transmit red light
  • filters that transmit green light filters that transmit green light
  • Using a color-type sensor can increase the amount of information about the wavelength and improve the accuracy of the generation of the hyperspectral image 220 .
  • the wavelength range to be acquired may be arbitrarily determined, and is not limited to the visible wavelength range, and may be ultraviolet, near-infrared, mid-infrared, far-infrared, and microwave/radio wavelength ranges.
  • the processing device 200 is a computer that includes a processor and a storage medium such as memory. Based on the compressed image 120 acquired by the image sensor 160, the processing device 200 generates data of the spectral image 220W1 including information of the wavelength band W1 , data of 220W2 including information of the wavelength band W2 , . . . , produces 220 W N data containing information for wavelength bands W N .
  • FIG. 2A is a diagram schematically showing an example of the filter array 110.
  • FIG. Filter array 110 has a plurality of regions arranged two-dimensionally. In this specification, each of the plurality of regions may be referred to as a "cell".
  • An optical filter having an individually set spectral transmittance is arranged in each region.
  • the spectral transmittance is represented by a function T( ⁇ ), where ⁇ is the wavelength of incident light.
  • the spectral transmittance T( ⁇ ) can take a value of 0 or more and 1 or less.
  • the filter array 110 has 48 rectangular regions arranged in 6 rows and 8 columns. This is only an example and in actual applications more areas may be provided. The number may be about the same as the number of pixels of the image sensor 160, for example. The number of filters included in the filter array 110 is determined depending on the application, for example, within the range of tens to tens of millions.
  • FIG. 2B is a diagram showing an example of the spatial distribution of the light transmittance of each of the wavelength band W 1 , the wavelength band W 2 , .
  • the difference in shading in each region represents the difference in transmittance.
  • a lighter area has a higher transmittance, and a darker area has a lower transmittance.
  • the spatial distribution of light transmittance differs depending on the wavelength band.
  • FIGS. 2C and 2D are diagrams respectively showing examples of spectral transmittance of area A1 and area A2 included in filter array 110 shown in FIG. 2A.
  • the spectral transmittance of the area A1 and the spectral transmittance of the area A2 are different from each other.
  • the spectral transmittance of filter array 110 differs depending on the region. However, it is not necessary that all regions have different spectral transmittances.
  • Filter array 110 includes two or more filters having different spectral transmittances.
  • the number of spectral transmittance patterns in the plurality of regions included in the filter array 110 can be equal to or greater than the number N of wavelength bands included in the wavelength range of interest.
  • the filter array 110 may be designed such that more than half of the regions have different spectral transmittances.
  • the target wavelength band W can be set in various ranges depending on the application.
  • the target wavelength range W can be, for example, a visible light wavelength range from about 400 nm to about 700 nm, a near-infrared wavelength range from about 700 nm to about 2500 nm, or a near-ultraviolet wavelength range from about 10 nm to about 400 nm.
  • the target wavelength range W may be a radio wave range such as mid-infrared, far-infrared, terahertz waves, or millimeter waves.
  • the wavelength range used is not limited to the visible light range.
  • visible light not only visible light but also non-visible light such as near-ultraviolet light, near-infrared light, and radio waves are referred to as "light" for the sake of convenience.
  • N is an arbitrary integer of 4 or more, and a plurality of wavelength bands obtained by equally dividing the target wavelength band W into N are designated as wavelength band W 1 , wavelength band W 2 , . . . , wavelength band W N.
  • a plurality of wavelength bands included in the target wavelength band W may be set arbitrarily. For example, different wavelength bands may have different bandwidths. There may be gaps or overlaps between adjacent wavelength bands. In the example shown in FIG. 3B, the wavelength bands have different bandwidths and there is a gap between two adjacent wavelength bands. In this way, the plurality of wavelength bands may be different from each other, and the method of determination is arbitrary.
  • FIG. 4A is a diagram for explaining an example of spectral transmittance characteristics in a certain region of the filter array 110.
  • the spectral transmittance has multiple maxima (that is, maxima P1, . . . , maxima P5) and multiple minima for wavelengths within the wavelength range W of interest.
  • maxima P1, . . . , maxima P5 maxima P5
  • minima P5 multiple minima for wavelengths within the wavelength range W of interest.
  • normalization is performed so that the maximum value of the light transmittance within the target wavelength range W is 1 and the minimum value is 0.
  • the spectral transmittance has maximum values in wavelength bands such as the wavelength band W 2 and the wavelength band W N ⁇ 1 .
  • the spectral transmittance of each region may have maximum values in at least two of the wavelength bands W1 to WN .
  • maximum value P1, maximum value P3, maximum value P4, and maximum value P5 are greater than or equal to 0.5.
  • each region of the filter array 110 transmits a large amount of components in a certain wavelength band and transmits less components in other wavelength bands among the incident light. For example, in each region, for light in k wavelength bands out of N wavelength bands, the transmittance is greater than 0.5, and for light in the remaining N ⁇ k wavelength bands, the transmittance is can be less than 0.5.
  • k is an integer that satisfies 2 ⁇ k ⁇ N. If the incident light is white light that evenly includes all wavelength components of visible light, the filter array 110 converts the incident light into light having a plurality of discrete intensity peaks with respect to wavelength. , and superimposes and outputs these multi-wavelength lights.
  • FIG. 4B is a diagram showing, as an example, the result of averaging the spectral transmittance shown in FIG. 4A for each wavelength band W 1 , wavelength band W 2 , . . . , wavelength band WN .
  • the averaged transmittance is obtained by integrating the spectral transmittance T( ⁇ ) for each wavelength band and dividing by the bandwidth of that wavelength band.
  • the transmittance value averaged for each wavelength band is defined as the transmittance in that wavelength band.
  • the transmittance is remarkably high in the three wavelength regions having the maximum values P1, P3 and P5. In particular, the transmittance exceeds 0.8 in the two wavelength regions having the maximum values P3 and P5.
  • a grayscale transmittance distribution is assumed in which the transmittance of each region can take any value between 0 and 1 inclusive.
  • a binary-scale transmittance distribution may be employed in which the transmittance of each region can take either a value of approximately 0 or approximately 1.
  • each region transmits a majority of light in at least two wavelength bands of the plurality of wavelength bands included in the wavelength band of interest and transmits a majority of light in the remaining wavelength bands. don't let Here, "most" refers to approximately 80% or more.
  • Part of the total cells may be replaced with transparent areas.
  • Such a transparent region transmits light in all wavelength bands W1 to WN contained in the wavelength range W of interest with a similarly high transmittance, eg, a transmittance of 80% or more.
  • the plurality of transparent regions may be arranged in a checkerboard, for example. That is, in the two directions in which the plurality of regions in the filter array 110 are arranged, the regions having different light transmittances depending on the wavelength and the transparent regions can be alternately arranged.
  • Such data indicating the spatial distribution of the spectral transmittance of the filter array 110 is obtained in advance based on design data or actual measurement calibration, and stored in a storage medium included in the processing device 200. This data is used for arithmetic processing to be described later.
  • the filter array 110 can be constructed using, for example, a multilayer film, an organic material, a diffraction grating structure, or a microstructure containing metal.
  • a multilayer film for example, a dielectric multilayer film or a multilayer film containing a metal layer can be used.
  • each cell is formed so that at least one of the thickness, material, and stacking order of each multilayer film is different. Thereby, different spectral characteristics can be realized depending on the cell.
  • a multilayer film a sharp rise and fall in spectral transmittance can be realized.
  • a structure using an organic material can be realized by differentiating the pigment or dye contained in each cell or by laminating different materials.
  • a configuration using a diffraction grating structure can be realized by providing diffraction structures with different diffraction pitches or depths for each cell.
  • a microstructure containing metal it can be produced using spectroscopy due to the plasmon effect.
  • the processor 200 generates a multi-wavelength hyperspectral image 220 based on the compressed image 120 output from the image sensor 160 and the spatial distribution characteristics of transmittance for each wavelength of the filter array 110 .
  • multiple wavelengths means a wavelength range greater than the three color wavelength ranges of RGB acquired by a normal color camera, for example.
  • the number of wavelength bands may be on the order of 4 to 100, for example.
  • the number of wavelength regions is called the number of bands. Depending on the application, the number of bands may exceed 100.
  • the data to be obtained is the data of the hyperspectral image 220, and the data is assumed to be f.
  • f is data obtained by integrating image data f 1 corresponding to wavelength band W 1 , f 2 corresponding to wavelength band W 2 , . . . , f N corresponding to wavelength band W N. be.
  • the horizontal direction of the image is the x direction
  • the vertical direction of the image is the y direction. If the number of pixels in the x direction of the image data to be obtained is n and the number of pixels in the y direction is m , each of image data f 1 , image data f 2 , . is two-dimensional data.
  • the data f is three-dimensional data having n ⁇ m ⁇ N elements.
  • This three-dimensional data is called “hyperspectral image data” or “hyperspectral datacube”.
  • the number of elements of the data g of the compressed image 120 encoded and multiplexed by the filter array 110 is n ⁇ m.
  • Data g can be represented by the following equation (1). Included in formula (1) and formula (2)
  • each of f 1 , f 2 , . . . , f N is data having n ⁇ m elements. Therefore, the vector on the right side is a one-dimensional vector of n ⁇ m ⁇ N rows and 1 column.
  • the data g of the compressed image 120 is converted into a one-dimensional vector g of n ⁇ m rows and 1 column, and calculated.
  • the matrix H encodes and intensity-modulates each component f 1 , f 2 , . represents a transformation that adds Therefore, H is a matrix with n ⁇ m rows and n ⁇ m ⁇ N columns.
  • the processing device 200 utilizes the redundancy of the images included in the data f and obtains the solution using the method of compressed sensing. Specifically, the desired data f is estimated by solving the following equation (2).
  • f' represents the estimated data of f.
  • the first term in parentheses in the above formula represents the amount of deviation between the estimation result Hf and the acquired data g, ie, the so-called residual term.
  • the sum of squares is used as the residual term here, the absolute value or the square root of the sum of squares may be used as the residual term.
  • the second term in parentheses is the regularization or stabilization term. Equation (2) means finding f that minimizes the sum of the first and second terms.
  • the processing unit 200 can converge the solution by recursive iterative computation and calculate the final solution f'.
  • the first term in parentheses in formula (2) means an operation for obtaining the sum of squares of the difference between the acquired data g and Hf obtained by transforming f in the estimation process using the matrix H.
  • the second term, ⁇ (f), is a constraint on the regularization of f, and is a function that reflects the sparse information of the estimated data. This function has the effect of smoothing or stabilizing the estimated data.
  • the regularization term may be represented by, for example, the Discrete Cosine Transform (DCT), Wavelet Transform, Fourier Transform, or Total Variation (TV) of f. For example, when the total variation is used, it is possible to acquire stable estimated data that suppresses the influence of noise in the observed data g.
  • the sparsity of the object 70 in the space of each regularization term depends on the texture of the object 70 .
  • a regularization term may be chosen that makes the texture of the object 70 more spars in the space of regularization terms.
  • multiple regularization terms may be included in the operation.
  • is a weighting factor. The larger the weighting factor ⁇ , the larger the reduction amount of redundant data and the higher the compression ratio. The smaller the weighting factor ⁇ , the weaker the convergence to the solution.
  • the weighting factor ⁇ is set to an appropriate value with which f converges to some extent and does not become over-compressed.
  • the hyperspectral image 220 can be generated by storing the blur information in advance and reflecting the blur information on the matrix H described above.
  • blur information is represented by a point spread function (PSF).
  • PSF is a function that defines the degree of spread of a point image to peripheral pixels. For example, when a point image corresponding to one pixel in an image spreads over a region of k ⁇ k pixels around that pixel due to blurring, the PSF is a coefficient group that indicates the effect on the brightness of each pixel in that region. can be defined as a matrix.
  • the hyperspectral image 220 can be generated by reflecting the blurring effect of the PSF-encoded pattern on the matrix H.
  • FIG. The position where the filter array 110 is placed is arbitrary, but a position can be selected where the coding pattern of the filter array 110 is not too diffuse and disappears.
  • Each pixel in the hyperspectral image generated by the method described above contains information on the light intensity or luminance value of each of a plurality of wavelength bands included in the preset target wavelength range.
  • each wavelength band is a partial wavelength band within the wavelength band of interest.
  • Each wavelength band may be a wavelength band with a width (eg, a wavelength band with a width of 50 nm, such as 500 nm to 550 nm).
  • a width e.g, a wavelength band with a width of 50 nm, such as 500 nm to 550 nm.
  • not only one wavelength band with a certain width but also a collection of multiple wavelength bands each with a width may be treated as one "waveband" as well.
  • a set of a wavelength band with a width of 50 nm from 500 nm to 550 nm and a wavelength band with a width of 50 nm from 600 nm to 650 nm, that is, a combination of two wavelength bands with a total of 100 nm is treated as one “wave band”.
  • Each wavelength band may have a narrow width, for example on the order of 1 nm to 20 nm.
  • the wavelength band of interest ranges from 451 nm to 950 nm and each wavelength band is 5 nm wide, the wavelength band of interest includes 100 wavelength bands.
  • the above imaging system can also be used for capturing moving images based on hyperspectral images.
  • the imaging device and the object When a person holds the imaging device in his/her hand when shooting, or when shooting with the imaging device mounted on a moving object, or when shooting a moving object by tracing it, the imaging device and the object must be separated. relative position changes during shooting. As a result, the position of the object in the captured moving image shifts from frame to frame, and an unstable moving image in which the object is blurred is generated.
  • One frame may mean one image or a group of images obtained by one shooting (exposure) in a moving image.
  • One frame may be one compressed image.
  • One frame may be multiple images corresponding to multiple wavelength bands generated based on one compressed image.
  • One frame may be one image included in a plurality of images respectively corresponding to a plurality of wavelength bands generated based on one compressed image.
  • An imaging system includes an imaging device that acquires a compressed image in which information of light in four or more wavelength bands from an object is compressed, and a processing device.
  • the processing device extracts a partial region including a region of the object from the compressed image so as to compensate for relative motion between the object and the imaging device, and extracts the partial region in the compressed image.
  • a plurality of spectral images corresponding to a plurality of wavelength bands are generated based on the data.
  • a compressed image means an image in which information of four or more wavelength bands is compressed as one monochrome image, as described above, and a signal or data representing such an image.
  • the compressed image may be output from the imaging device in the form of image data, or the signal output from the image sensor included in the imaging device may be directly output from the imaging device as data representing the compressed image.
  • the plurality of spectral images generated by the processing device may correspond to the above four or more wavelength bands, a part of the four or more wavelength bands, or any combination thereof. may be
  • a partial area including the object is extracted from the compressed image so as to compensate for the relative motion between the object and the imaging device, and the restoration operation described above is performed on the partial area. Therefore, it is possible to suppress the influence of relative movement (for example, camera shake) between the object and the imaging device, and to generate the necessary spectral images in a short time with a small amount of calculation.
  • relative movement for example, camera shake
  • the imaging device may repeatedly acquire the compressed image.
  • the processing device may detect relative motion between the object and the imaging device based on the temporal change of the compressed image, and determine the partial region based on the relative motion. For example, the processing device may detect relative motion between the object and the imaging device from two consecutive compressed image frames, and determine a partial region according to the motion. With such an operation, a partial region corresponding to the object can be appropriately extracted from the compressed image without using a sensor that detects relative motion between the object and the imaging device.
  • the imaging device may include a filter array including a plurality of filters with different spectral transmittances, and an image sensor that detects light that has passed through the filter array and outputs a signal representing the compressed image.
  • the filter array may, for example, include a plurality of filters arranged in a two-dimensional plane, as described with reference to Figures 2A-2D. Each filter may, for example, have multiple transmission peaks (or maxima) in a given wavelength range of interest. Compressive sensing using such filter arrays can produce good spectral images.
  • the imaging system may further include a storage device that stores matrix data corresponding to the spectral transmittance of the filter array.
  • the processing device may be configured to generate the plurality of spectral images based on a portion of the matrix data that corresponds to the partial region. For example, by applying the calculation based on the above formula (2) to the partial regions extracted from the compressed image, a plurality of spectral images can be restored with high accuracy.
  • the matrix data can be, for example, data representing the matrix H in Equation (2) above.
  • the matrix data can be stored in the storage device, for example, in the form of a table.
  • a table showing such a matrix may be referred to as a "reconstruction table" in the following description.
  • the processing device outputs a signal representing a first compressed image output from the image sensor at a first time and a second compressed image output from the image sensor at a second time after the first time.
  • the partial region may be extracted from the second compressed image by matching processing based on a signal representing the image.
  • the first compressed image may correspond to, for example, one frame of a moving image
  • the second compressed image may correspond to the next frame of the moving image.
  • the processing device generates the plurality of spectral images from data of the partial area based on matrix data corresponding to spectral transmittance in a portion of the filter array corresponding to the partial area of the second compressed image.
  • the imaging system may further include a sensor that detects relative movement between the object and the imaging device.
  • the processing device may determine the partial area based on the signal output from the sensor. According to such a configuration, the relative motion between the object and the imaging device can be detected without using the matching process as described above, so the amount and time of processing can be further reduced.
  • the sensor may include at least one of an acceleration sensor and an angular velocity sensor (eg, gyro sensor).
  • the sensor may include a vibration sensor.
  • the processing device may determine a motion vector of the imaging device based on the signal output from the sensor, and determine the partial region based on the motion vector.
  • the sensor may be an inertial measurement unit (IMU) mounted on the mobile object.
  • IMU inertial measurement unit
  • the processing device may display the compressed image on a display. Further, the processing device may cause the display to display a graphical user interface (GUI) for allowing a user to specify the target object for motion compensation in the compressed image.
  • GUI graphical user interface
  • the user can specify the target object for motion compensation while checking the compressed image. Therefore, for example, when a plurality of objects exist in the compressed image, a specific object can be selected as the target object, improving convenience.
  • the processing device repeats acquisition of a signal indicating the compressed image from the imaging device, extraction of the partial region, and generation of the plurality of spectral images to generate moving image data for each of the plurality of spectral images.
  • a method is a computer-implemented method, comprising: from an imaging device acquiring a compressed image in which light information in four or more wavelength bands from an object is compressed; obtaining a signal indicative of an image; extracting from the compressed image a partial region containing the object so as to compensate for relative motion between the object and the imaging device; and the compressed image. and generating a plurality of spectral images corresponding to a plurality of wavelength bands based on the data of the partial regions in.
  • a computer program is stored in a computer-readable non-transitory recording medium.
  • the computer program acquires a signal representing the compressed image from an imaging device that acquires a compressed image in which information of light in four or more wavelength bands from an object is compressed; extracting a subregion containing the object so as to compensate for relative motion between the object and the imaging device; and corresponding to a plurality of wavelength bands based on data of the subregion in the compressed image.
  • a computer to generate a plurality of spectroscopic images;
  • the imaging system is a system that generates moving images using hyperspectral images.
  • An imaging system includes an imaging device and a processing device that processes image data output from the imaging device.
  • the imaging device performs compressed sensing imaging using a filter array in which a plurality of filters with different spectral transmittances are two-dimensionally arranged, and a compressed image in which information of four or more wavelength bands is compressed.
  • the processing device restores a hyperspectral image (that is, a plurality of spectral images for each wavelength band) from the compressed image using restored data (for example, matrix data) reflecting the spatial distribution of the spectral transmittance of the filter array.
  • the processing device detects the relative motion between the imaging device and the object from multiple frames of compressed images continuously output from the imaging device, and compensates for the effects of the motion to stabilize the moving image.
  • An object (or subject) in a compressed image can be, for example, a figure or region having feature points recognizable by image processing.
  • the object may be a figure with a feature point located in the center of the image.
  • the imaging system is configured to track and photograph a particular object, the object may be a figure or area in the image that corresponds to the tracked object.
  • the area other than the target object in the image is used as the background.
  • the background may have feature points.
  • the processing device performs matching between multiple frames of compressed images captured by the imaging device and detects a motion vector caused by the motion of the imaging device between frames.
  • the processing unit extracts from the compressed image of each frame a subregion containing the object that has been successfully matched with another frame (for example, the immediately preceding frame). Extract. This reduces image blurring caused by the movement of the imaging device.
  • the processing device performs the restoration process described above on the extracted partial area, and generates a hyperspectral image of the extracted partial area.
  • the processing device in this embodiment extracts a partial region including the target object from the compressed image, and performs to perform the restoration process.
  • the processing device does not perform restoration processing on areas other than a partial area including the object included in the compressed image. That is, the processing device performs blur correction processing on one compressed image before restoration, instead of on each image of a large number of wavelength bands, and furthermore, only a partial region cut out for blur correction is subjected to blur correction processing. Perform restore processing. With such processing, it is possible to greatly reduce the amount of computation for blur correction processing and hyperspectral image restoration processing, and to generate a hyperspectral image of an object in a short period of time.
  • FIG. 5 is a block diagram showing the configuration of the imaging system 10 in this embodiment.
  • the imaging system 10 produces moving images based on hyperspectral images. For this reason, the imaging system 10 can also be called a "hyperspectral movie generation system.”
  • the imaging system 10 includes an imaging device 100 , a processing device 200 , a storage device 230 and an output device 250 .
  • the imaging device 100 is, for example, a camera having the same configuration as the imaging device 100 shown in any one of FIGS. 1A to 1D.
  • the imaging device 100 is sometimes called a "compressed hyperspectral camera.”
  • the imaging device 100 includes, for example, a filter array 110 functioning as an encoding element and an image sensor 160, as shown in FIG. 1A.
  • the imaging apparatus 100 can acquire the compressed image described above in a short time and in one exposure.
  • a compressed image is an image in which light components of four or more wavelength bands are compressed as one monochrome image.
  • a hyperspectral image that is, a plurality of spectral images corresponding to a plurality of wavelength bands can be generated by applying the arithmetic processing based on the above formula (2) to the compressed image.
  • the compressed image contains information for producing a hyperspectral image. For this reason, compressed images are sometimes referred to as "compressed hyperspectral images.”
  • the image sensor 160 in the imaging device 100 includes a plurality of photodetection cells arranged two-dimensionally. Each photodetector cell simultaneously receives light in which components of four or more wavelength bands are superimposed, and outputs an electrical signal corresponding to the amount of received light.
  • a compressed image is constructed based on the electrical signals output from the image sensor 160 .
  • a luminance value (also referred to as a pixel value) of each pixel in the compressed image has at least two or more gradations, and may have 256 gradations, for example.
  • information about the brightness of light detected by each photodetector cell of image sensor 160 is reflected in the pixel value of each pixel in the compressed image.
  • the compressed image retains information about the spatial distribution of light intensity detected by image sensor 160 .
  • a filter array 110 including a plurality of filters with different wavelength dependences of transmittance is used to acquire compressed images.
  • a plurality of filters may be randomly arranged in a two-dimensional plane, for example.
  • the compressed image has a gradation corresponding to the average transmittance obtained by averaging the transmittance of light in a plurality of wavelength bands included in the target wavelength range. , resulting in a luminance image with
  • the imaging device 100 generates compressed images at a predetermined frame rate (eg, 60 fps or 30 fps).
  • the imaging device 100 can be configured to generate and output moving images based on those compressed images.
  • the processing device 200 includes one or more processing circuits and one or more storage media (for example, memory).
  • the processing circuit may be a processor such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit).
  • the processor performs operations described below by executing computer programs stored in the memory.
  • the processing device 200 acquires a moving image based on the compressed image output from the imaging device 100, and generates a hyperspectral image of a region corresponding to a specific object based on the compressed image of each frame of the moving image. .
  • the processing device 200 performs matching between compressed images of two or more temporally continuous frames from a moving image based on the compressed image, and captures an object within the field of view of the imaging device 100.
  • a motion vector indicating motion relative to the device 100 is determined.
  • the processing device 200 selects a vector indicating blurring of the imaging device 100 from the obtained motion vectors.
  • the processing device 200 cuts out, from the compressed image of each frame, a region of the object that is matched with other frames so as to reduce the effects of blurring. Further, the processing device 200 refers to a value corresponding to the cut-out region of the frame in the restoration table (for example, data representing the matrix H in the above equation (2)) stored in the storage device 230 in advance, and extracts the A restoration process based on the above equation (2) is performed on the compressed image. This allows the processing device 200 to generate multiple spectral images, ie, hyperspectral images, of a particular object for each frame.
  • the storage device 230 is a device that includes one or more storage media, such as semiconductor storage media, magnetic storage media, or optical storage media.
  • the storage device 230 stores a restoration table according to the light transmission characteristics of the filter array 110 included in the imaging device 100 .
  • the restoration table includes data reflecting the two-dimensional distribution of spectral transmittance of filter array 110 .
  • the reconstruction table may include data indicating the transmittance of each wavelength band in the region of filter array 110 corresponding to each pixel location of image sensor 160 .
  • the storage device 230 also stores compressed images output from the imaging device 100 .
  • the storage device 230 holds the compressed images while the processing device 200 processes the compressed images of a plurality of frames.
  • the storage device 230 further stores various data generated by the processing device 200 in the course of processing, such as restored hyperspectral image data.
  • the output device 250 is a device that outputs the compressed image acquired by the imaging device 100 and/or the hyperspectral image generated by the restoration processing by the processing device 200 .
  • Output device 250 can be, for example, a display that displays compressed and/or hyperspectral images, a printer, or a communication device that transmits compressed and/or hyperspectral image data to an external device.
  • the output device 250 may include a storage medium, such as memory, that stores the generated compressed image and/or hyperspectral image data.
  • the imaging device 100 may output the signal of each frame output from the image sensor 160 as it is, instead of outputting the moving image data including the information of the compressed image of each frame.
  • the processing device 200 may be configured to generate compressed image data for each frame based on the signal output from the image sensor 160, and reconstruct a hyperspectral image from the compressed image data.
  • FIG. 6 is a flow chart showing the operation of the imaging system 10. As shown in FIG. The imaging system 10 starts operating in accordance with a start signal input from input means or communication means (not shown). The imaging system 10 performs the operations from steps S1100 to S1800 shown in FIG. The operation of each step will be described below.
  • Step S1100 The processing device 200 determines whether or not an end signal instructing the end of the operation has been input.
  • the termination signal can be input from input means or communication means (not shown). If an end signal is input in step S1100, imaging system 10 ends the operation. If no end signal is input in step S1100, the process proceeds to step S1200.
  • the processing device 200 sends a signal instructing the imaging device 100 to shoot.
  • the imaging device 100 generates a compressed image in which image information of a plurality of wavelength bands is compressed by capturing a scene including the object in response to the signal. This compressed image corresponds to one frame picture of a moving image.
  • the imaging device 100 stores the generated compressed image in the storage device 230 .
  • Processing device 200 determines whether or not the compressed image of the frame immediately preceding the frame captured in step S1200 is stored in storage device 230 . If storage device 230 does not store the compressed image of the previous frame, the process returns to step S1200. If storage device 230 stores a compressed image of the immediately preceding frame, control proceeds to step S1400.
  • Step S1400 The processing device 200 performs matching between the compressed image of the current frame stored in the storage device 230 and the compressed image of the previous frame, and extracts a motion vector. Details of the operation of step S1400 will be described later.
  • Step S1500 The processing device 200 calculates the amount of image correction based on the motion vector extracted in step S1400.
  • the correction amount indicates, for example, the horizontal and vertical shift amounts of the image for determining the restoration range of the image.
  • FIG. 7A to 7C are schematic diagrams for explaining the amount of correction of an image and the calculation method thereof.
  • FIG. 7A schematically shows an example of compressed images of two consecutive frames taken at times t n ⁇ 1 and t n . These two frames are denoted as frame t n ⁇ 1 and frame t n .
  • the objects in this example are the same stationary apple.
  • the position of the object within the field of view of the imaging device 100 is different between the frame t n ⁇ 1 and the frame t n due to the motion (eg, camera shake) of the imaging device 100 during moving image shooting.
  • FIG. 7B is a diagram showing a state in which the image of frame t n ⁇ 1 and the image of frame t n shown in FIG. 7A are superimposed.
  • the displacement of the object is indicated by arrows. This arrow represents a motion vector caused by relative motion of the imaging device 100 with respect to the object.
  • FIG. 7C is a diagram showing a state in which the image of the frame t n ⁇ 1 and the image of the frame t n are superimposed so that the regions of apples, which are objects, overlap.
  • the dashed line indicates frame t n ⁇ 1
  • the dashed line indicates frame t n
  • the thick line indicates the overlapping region of the two.
  • the processing device 200 calculates the horizontal and vertical components (indicated by the dotted arrows in FIG. 7C) of the motion vector shown in FIG. 7B in the opposite direction as correction amounts.
  • the processing device 200 shifts the image of frame tn in the horizontal direction and the vertical direction by the amount of correction, respectively, so that the object in the image of frame tn becomes the object in the image of frame tn-1. can be stacked.
  • the processing unit 200 can overlap the object in the image of frame t n with the object in the image of frame t n ⁇ 1 by shifting the image of frame t n in the opposite direction of the motion vector. .
  • the lower left corner of the area overlapping the image of frame t n ⁇ 1 in the image of frame t n can be aligned with the lower left corner of the image of frame t n ⁇ 1 .
  • the compressed image of each frame can be corrected according to the motion vector between frames, and the object can be made still in the image.
  • the processing device 200 determines a partial area including the object in the compressed image of the frame, and extracts the partial area from the compressed image. For example, the processing device 200 cuts out from the compressed image a region that overlaps with the compressed image of the previous frame, as indicated by the thick line in FIG. 7C.
  • the partial area to be extracted may be a part of the area that overlaps with the compressed image of the previous frame.
  • Step S1700> Based on the partial region data of the compressed image cut out in step S1600, the processing device 200 performs processing for restoring a plurality of spectral images corresponding to a plurality of wavelength bands, that is, a hyperspectral image. Processing device 200 performs restoration processing using a portion of the restoration table (ie, matrix data) stored in storage device 230 that corresponds to the partial area cut out in step S1600. For example, in the image of frame t n shown in FIG. 7C , when a pixel region that matches the image of frame t n ⁇ 1 is cut out as a partial region, the processing device 200 extracts information on the pixel values of the partial region, Restoration processing is performed using the portion of the restoration table corresponding to the area. The restoration process is the same as the process based on Equation (2) above.
  • the processing device 200 aligns the position of the target object in the current frame with the position of the target object in the previous frame, and performs restoration processing on the partial region that matches the previous frame. In other words, the processing device 200 does not perform restoration processing on areas other than the partial area in the frame. As a result, it is possible to reduce the computational complexity of the restoration process and reduce the movement of the object between frames.
  • Step S1800 Processing device 200 outputs the hyperspectral image restored in step S1700 to output device 250 as the hyperspectral image of the frame, and causes storage device 230 to store the hyperspectral image.
  • the output device 250 for example, displays or transmits the hyperspectral image to an external device. After step S1800, the process returns to step S1100.
  • the processing device 200 can generate a moving image based on the hyperspectral image.
  • a hyperspectral moving image can be generated in which the movement of the object in the image (that is, blurring) caused by the relative movement between the imaging device 100 and the object is reduced.
  • step S1400 is a flow chart showing a detailed example of the operation of step S1400.
  • step S1400 includes steps S1410 through S1450. The operation of each step will be described below.
  • the processing device 200 extracts feature points from the compressed image of the frame acquired in step S1200 and the compressed image of the previous frame stored in the storage device 230 .
  • Feature points can be points on edges or corners, for example.
  • the processing device 200 can extract feature points from each compressed image by performing edge extraction processing using a spatial filter such as a Sobel filter or a Laplacian filter.
  • the processing device 200 may detect corners by a method such as Harris corner detection or FAST (Features from Accelerated segment Test), and extract points on the corners as feature points.
  • Step S1420 the processing device 200 performs matching of the feature points extracted in step S1410 between the image of the current frame and the image of the previous frame.
  • Matching can be performed, for example, by extracting the feature points of the image of the frame as a patch and searching for a region with the highest degree of similarity to the patch based on an index value such as SSD (Sum of Squared Difference). Matching can be performed for multiple feature points.
  • Step S1430> The processing device 200 regards all feature points corresponding to each other between the image of the current frame and the image of the immediately preceding frame as the starting point of the position of the feature point in the image of the immediately preceding frame. Find a vector whose endpoint is the position of the corresponding feature point.
  • Processing device 200 clusters the vectors obtained in step S1430 according to the direction and magnitude. That is, the processing device 200 collects vectors having similar directions and sizes into clusters, and classifies the vectors into one or more clusters.
  • Step S1450 The processing device 200 selects, from among the vectors clustered in step S1440, the cluster in which the start points of the vectors in the cluster are distributed over the widest range in the image, and classifies it as a cluster indicating the blur caused by the movement of the imaging device 100. and The processing unit 200 generates a motion vector by averaging the directions and magnitudes of all vectors included in this cluster.
  • the processing device 200 can determine a motion vector between two consecutive frames. Note that the method of matching between frames and the method of generating vectors are not limited to the above examples, and any method may be used.
  • the imaging system 10 in this embodiment generates moving images by continuously capturing compressed images.
  • the processing device 200 performs matching between temporally adjacent frames to identify a motion vector, and cuts out a partial region from the compressed image of each frame so as to reduce the influence of the motion vector.
  • the processing device 200 performs hyperspectral image restoration processing on the clipped partial region. In other words, the processing device 200 does not perform restoration processing for areas other than the partial area in the compressed image. As a result, it is possible to generate a moving image of hyperspectral images in which the image blurring of each frame caused by the relative movement between the imaging device 100 and the object is reduced.
  • the partial images for blur correction are cut out from the compressed images instead of the images of many bands, the amount of calculation can be greatly reduced. Furthermore, since restoration processing is performed not on the entire compressed image of each frame obtained by shooting, but on a partial area cut out for blur correction, the amount of calculation for restoration processing can also be reduced.
  • step S ⁇ b>1450 the processing device 200 selects, from among the clustered vectors, a cluster in which the start points of the vectors in the cluster are distributed over the widest range in the image, and selects that cluster as the movement of the imaging device 100 . are treated as clusters showing blur caused by This is the operation of adopting a common vector widely distributed in the image as a "motion vector". Such an operation is necessary when handling an imaging device (i.e., a camera) by hand, when mounting a camera on a moving object, or when installing and using a camera in a place subject to large vibrations such as near a machine. Effective for reducing the effects of camera movement.
  • an imaging device i.e., a camera
  • the above method can effectively remove the effects of camera motion from the image.
  • the motion vectors of the object are concentrated in one place, and the motion vectors of the stationary objects spread over a wide area in the image because all the stationary objects in the vicinity have the same motion vector according to the movement of the camera. distributed. Therefore, by selecting a cluster whose motion vectors are distributed over the widest range in the image, it is possible to retain the motion of the object and correct the blurring of the image caused by the motion of the camera.
  • step S1450 clusters whose starting points of the vectors are concentrated in a certain region are selected from the clustered vectors. good too. With such selection, moving objects can be selected and animations can be generated as if the objects were stationary.
  • step S1450 When tracking a moving object by moving the camera's field of view, the object is near the center of the field of view and its motion vector is relatively small, while the background motion vector is relatively large.
  • a cluster whose starting point of the vector is concentrated in a certain area and whose vector size is smaller than the average size of the vectors of the other clusters is selected. may be selected.
  • the object being tracked can be selected by moving the field of view of the camera, and moving images can be generated as if the object were stationary.
  • the camera is stationary, but the background of the object may move.
  • the background of the object may move.
  • a moving object such as a road or a conveyor belt in the background
  • a moving image may be projected in the background by a projector or the like.
  • clusters of clustered vectors may be selected in which the starting points of the vectors are concentrated in a certain region.
  • matching is performed only between images of two temporally adjacent frames. good. If the background changes, the feature points that are matched the most among the frames may be extracted as the feature points indicating the object.
  • correction is performed from a cluster containing vectors formed by feature points matched in the largest number of frames. A motion vector can be selected for Such processing makes it easier to select clusters of objects.
  • the imaging system 10 in Embodiment 1 generates a moving image by continuously capturing compressed images, performs matching processing between compressed images of a plurality of temporally consecutive frames, and identifies a motion vector. Based on the motion vector, the imaging system 10 extracts a partial area including the object from the compressed image of each frame so as to correct the relative motion between the imaging device 100 and the object, and extracts the extracted partial area. Restoration processing is performed for . In other words, the processing device 200 does not perform restoration processing on areas other than partial areas in the compressed image. As a result, it is possible to reduce the amount of calculation required for the restoration processing of the hyperspectral image, and to suppress the influence of blur caused by the relative movement between the imaging device 100 and the object.
  • a user or an external device designates an object in the compressed image of each frame.
  • the imaging system performs matching between frames of feature points included in a region of a specified object in the compressed image, and generates a moving image in which positional deviation of the object is corrected.
  • FIG. 9 is a block diagram showing the configuration of the imaging system 10 in this modified example.
  • This imaging system 10 further includes an input device 240 in addition to the components shown in FIG.
  • the output device 250 in this embodiment comprises a display for displaying the compressed image produced by the imaging device 100 and the hyperspectral image produced by the processing device 200 .
  • the processing device 200 in this embodiment displays a compressed image on the display, and displays on the display a graphical user interface for allowing the user to designate an object for motion compensation in the compressed image.
  • the input device 240 may include a pointing device, for example. The user can use the pointing device to specify the position of a specific object while viewing the compressed image displayed on the display of the output device 250 .
  • input device 240 may include a keyboard or voice input device. In that case, the user can use a keyboard or voice input device to select a region corresponding to a particular object from the compressed image displayed on the display of output device 250 .
  • the processing device 200 may divide the displayed compressed image into a plurality of regions and cause the output device 250 to display the compressed image so that the user can select a region corresponding to the object from the plurality of regions.
  • Input device 240 may include a communication device that receives a signal designating an object from a system external to imaging system 10 .
  • the designation of the object can be done by a method of designating a position or region corresponding to the object in the compressed image.
  • the designation of the object may be done by way of sending data such as an image showing a template of the object to be searched for in the compressed image.
  • FIG. 10 is a flow chart showing the operation of the imaging system 10 in this modified example.
  • steps S2100 to S2400 are added after step S1300 in the flowchart shown in FIG. 6, and step S1400 is replaced with step S2500.
  • steps S2100 to S2400 are added after step S1300 in the flowchart shown in FIG. 6, and step S1400 is replaced with step S2500.
  • points different from the operation shown in FIG. 6 will be described.
  • the operation when the user confirms the compressed image displayed on the display included in the output device 250 and designates an object using the pointing device included in the input device 240 will be described.
  • processing device 200 determines whether or not there is already object designation information.
  • the information specifying the object is, for example, one or more feature points extracted from the area specified using the input device 240 on the compressed image displayed on the output device 250 before obtaining the compressed image of the frame. can be information indicating When the user designates a position or area corresponding to a specific object, the processing device 200 generates one or more feature points in the area including the position corresponding to the specific object or in the area including the specific object. is extracted, and information indicating the feature point is stored in the memory as information specifying the target object.
  • One or more extracted feature points are hereinafter also referred to as "object pattern”. If the object designation information already exists at step S2100, the process proceeds to step S2200. If there is no specified information, the process advances to step S2400.
  • Step S2200> The processing device 200 searches for the pattern of the object on the compressed image of the frame and determines whether there is an area that matches the pattern. If there are regions in the image of the frame that match the pattern, the processing device 200 may display the regions of the matched object on the compressed image of the frame being displayed on the output device 250 .
  • the display can be, for example, a rectangular frame or other shaped frame surrounding the area of the object, or a fill or the like.
  • the representation of the area of the object may be a symbolic or textual representation. After display, the process advances to step S2300. If there is no region in the image of the frame that matches the pattern of the object, flow continues to step S2400.
  • Step S2300 The processing device 200 determines whether or not there is an input to change the designation information of the object.
  • the user can change the designation of the target object while viewing the compressed image displayed during moving image shooting.
  • Whether or not there is a change input can be determined by whether or not an input instructing change of the object has been input from the input device 240 .
  • whether or not there is a change input can be determined based on whether or not an input designating a region or position other than the region of the object displayed on the output device 250 has been input from the input device 240 . If there is a change input, the process advances to step S2400. If there is no change input, the process advances to step S2500.
  • Step S2400 The processing device 200 acquires the information of the position on the compressed image displayed on the output device 250 specified by the pointing device of the input device 240 . For example, the processing device 200 determines a region including the position on the image input from the input device 240 in the closed space surrounded by the edges in the image of the frame as the region of the object, and determines the features included in that region. Information indicating the points (that is, the pattern of the object) is generated as new object designation information. After step S2400, the process proceeds to step S1800.
  • Step S2500 The processing device 200 searches the image of the previous frame for the feature points corresponding to the feature points of the object in the image of the current frame subjected to pattern matching in step S2200.
  • the processing device 200 further generates a vector having the position of the feature point in the image of the previous frame as the starting point and the position of the feature point in the image of the frame as the ending point, as a motion vector.
  • FIG. 11 is a flowchart showing a more detailed example of the operation of step S2500.
  • step S2500 includes steps S2510 and S2520. The operation of each step will be described below.
  • Processing device 200 performs matching between the image of the previous frame and the pattern of the object acquired in step S2100, and identifies feature points that match the pattern.
  • Step S2520 The processing apparatus 200 starts from the position of the feature point indicating the pattern of the object in the image of the previous frame matched in step S2510, and indicates the pattern of the object in the image of the current frame matched in step S2200. A vector ending at the position of the feature point is generated as a motion vector.
  • step S2500 the operations from steps S1500 to S1800 are performed as in the example shown in FIG. After step S1800, the process returns to step S1100.
  • the processing device 200 in this modification performs matching between compressed images of a plurality of temporally consecutive frames based on a pattern including feature points of a specified object, and A motion vector is generated that indicates the displacement of the object. Based on this motion vector, a partial area including the target object is extracted from the compressed image of the frame so as to correct blurring, and restoration processing is performed on the partial area. In other words, the processing device 200 does not perform restoration processing for areas other than the partial area in the compressed image. This makes it possible to stabilize the position of the object in the moving image. The amount of calculation can be reduced by subjecting the partial area to restoration processing. Furthermore, even if the designation of the object to be imaged changes, a hyperspectral image of the designated object can be generated.
  • the processing device 200 does not perform correction processing to match the position of the object up to that point, and uses the position of the newly specified object as the reference position to perform blur correction processing in subsequent frames. I do.
  • the processing device 200 can easily switch objects in response to a change in the designation of the object by the user.
  • it is difficult to perform feature point matching in the entire image and cluster motion vectors of feature points to select vectors to be corrected as in the first embodiment for example, when there are many moving objects in the background
  • the position of the object in the moving image can be stabilized.
  • output device 250 may be configured to output the compressed image of the frame to an external system.
  • the external system may be configured to send to the input device 240 the location information of the feature points of the new object and the information indicating the pattern for matching.
  • the external system may include a recognizer that determines objects from the compressed image.
  • the processing device 200 performs matching between compressed images of a plurality of temporally consecutive frames to identify a motion vector, and converts the motion vector from the compressed images of each frame to the target object so as to correct the motion. Extract the subregion that In Modified Example 1 of Embodiment 1, a user or an external system designates an object within the field of view, and the processing device 200 performs pattern matching on the designated object for each frame to identify its motion vector. A partial region corresponding to the object is extracted from the compressed image of each frame so as to compensate for motion.
  • the processing device 200 performs feature point matching between a plurality of temporally consecutive frames, extracts common components included in a plurality of motion vectors, and performs correction based on the common components. I do.
  • the configuration of the imaging system 10 in this modified example is the same as the configuration in Embodiment 1 shown in FIG. 5, so description thereof will be omitted.
  • FIG. 12 is a flowchart showing part of the operation of the processing device 200 in this modified example.
  • the operation in this modified example is the same as the operation in the first embodiment shown in FIG. 6, but the details of the operation in step S1400 are different from the first embodiment.
  • FIG. 12 shows details of the operation of step S1400 in this modification.
  • the flowchart shown in FIG. 12 is obtained by replacing step S1450 in the flowchart shown in FIG. 8 with steps S3010 and S3020.
  • the operations from steps S1410 to S1440 are the same as those shown in FIG.
  • the operations of steps S3010 and S3020 will be described below.
  • Step S3010> For each cluster obtained by clustering the vectors connecting the position of each feature point in the image of the previous frame generated in step S1440 and the position of the corresponding feature point in the frame image, the processing device 200 is generated as the representative vector of the cluster. Note that instead of the average vector, a representative vector may be generated or selected based on the vector distribution state, or a representative vector may be generated by a method other than this.
  • Step S3020 The processing device 200 generates a vector by averaging all representative vectors for each cluster generated in step S3010.
  • the processing device 200 regards the average vector of the generated representative vectors of all clusters as the common component of the relative motion between the imaging device 100 and the subject within the field of view from the previous frame to the current frame, and determines the motion for correction processing. Treat as a vector.
  • the common component of the motion vectors of several subjects including a specific target within the field of view is used as the motion vector for correction processing, thereby reducing the overall motion between frames. It is possible to perform processing in which the movement of a moving subject remains as it is while suppressing the influence.
  • Modification 3 of Embodiment 1 In Modification 2 of Embodiment 1, a representative vector is generated for each cluster obtained by clustering vectors connecting the positions of feature points in the image of the previous frame and the positions of the feature points in the image of the current frame, The average of the representative vectors is processed as a motion vector representing the motion of the entire image.
  • the processing device 200 in this modified example uses vectors generated by feature points corresponding between the immediately preceding frame and the current frame without clustering to obtain a motion representative of the motion of the entire image. Generate a vector. Differences from Modification 2 will be described below.
  • FIG. 13 is a flowchart showing part of the operation of the processing device 200 in this modified example. Although the operation shown in FIG. 6 is also performed in this modification, the details of the operation in step S1400 are different from those shown in FIGS. In this modification, the process of step S3110 below is performed after step S1430.
  • Step S3110> The processing device 200 generates a motion vector indicating a common motion component of the moving image using all the vectors generated by the corresponding feature points between the immediately preceding frame and the current frame obtained in step S1430. do.
  • a common motion component can be generated, for example, by finding a motion vector that minimizes the sum of absolute values of all vectors when the compressed image shown in FIG. 7C is corrected.
  • the vector obtained in step S1430 may be used as it is in step S3110, but the operation of step S3110 may be performed with weighting according to the starting point position of the vector.
  • the processing in step S3110 may be performed on a weighted vector in which the weight is set to be large at the center of the image and the weight decreases as the distance from the center of the image increases.
  • Such weighting makes it easier to suppress the influence of the motion of the subject (for example, the object to be restored) in the center of the image.
  • the processing in step S3110 may be performed on a weighted vector in which the weight at the center of the image is set small and the weight increases as the distance from the center of the image increases.
  • Such weighting makes it easier to suppress the influence of the movement of the subject (for example, the background) in the peripheral portion of the image.
  • the processing device 200 in Modification 3 corrects the motion of the entire image by using the vectors generated by the corresponding feature points between the previous frame and the current frame without clustering. generate motion vectors for At the time of calculation of the correction vector, weighting according to the position of the vector generated by the corresponding feature points between the previous frame and the current frame makes it possible to give a tendency to suppression of motion. As a result, it is possible to stabilize the object near the center in the moving image, and stabilize the background.
  • temporally continuous images captured by the imaging device 100 are used to detect relative motion between an object (or another subject within the field of view) and the imaging device. Matching is performed between images of multiple frames.
  • one or more sensors are used to detect the movement of the imaging device 100 .
  • the sensors may include, for example, acceleration sensors and/or angular velocity sensors.
  • the sensors may include, for example, inertial measurement units (IMUs).
  • IMUs inertial measurement units
  • An inertial measurement device can be, for example, a package of acceleration sensors, rotational angular acceleration sensors, gyro sensors, geomagnetic sensors, barometric pressure sensors, and humidity sensors. An example in which the sensor is an inertial measurement device will be described below.
  • FIG. 14 is a block diagram showing the configuration of the imaging system 10 according to this embodiment.
  • the configuration is the same as that of the first embodiment shown in FIG. 5 except that an inertial measurement device 260 is added.
  • the inertial measurement device 260 measures the acceleration in three axial directions (x, y, z-axis directions) and rotational angular acceleration of the imaging system 10, and outputs these six measured values.
  • the processing device 200 acquires the compressed image captured by the imaging device 100 for each frame.
  • the processing device 200 also acquires information on the acceleration and rotational angular acceleration associated with the movement of the system 10 measured by the inertial measurement device 260 .
  • the processing device 200 integrates twice the acceleration in the three-axis direction and the angular acceleration in the three-axis direction measured during the time from the time when the immediately preceding frame was captured until the time when the current frame was captured, and calculates the movement distance in the three-axis direction and the rotation angle. Calculate angles. Accordingly, it is possible to determine the movement and attitude change of the imaging device 100 and determine the motion vector for image correction.
  • FIG. 15 is a flow chart showing the operation of the imaging system 10 in this embodiment.
  • steps S1300 and S1400 in the flowchart shown in FIG. 6 are replaced with step S4100
  • step S1500 is replaced with step S4200.
  • the operations of steps S4100 and S4200 will be described below.
  • the processing device 200 acquires information on acceleration in three axial directions and rotational angular acceleration in three axial directions during the frame interval of the imaging device 100 from the inertial measurement device 260 .
  • the processing device 200 acquires information on acceleration in three axial directions and rotational angular acceleration in three axial directions for 16 ms between the previous frame and the current frame. do.
  • Processing device 200 generates a correction vector used in the correction process from the information on the triaxial acceleration and triaxial rotational angular acceleration acquired in step S4100. For example, when the frame interval is 16 ms, the processing device 200 integrates twice the acceleration in the three-axis direction for 16 ms to calculate the amount of movement in the three-axis direction. Furthermore, the rotation angle in the three axial directions is calculated by twice integrating the rotational angular velocities in the three axial directions for 16 ms. The processing device 200 converts the movement amounts in the three-axis directions and the rotation angles in the three-axis directions into vectors starting from the origin of the coordinate system of the inertial measurement device 260 .
  • a vector obtained by projecting a vector in the opposite direction of the vector onto a plane including the light receiving surface of the image sensor 160 in the coordinate system can be generated as a correction vector.
  • This correction vector is used in the process of cutting out a partial image from the compressed image in subsequent step S1600 (see FIG. 7C).
  • the processing after step S1600 is the same as the processing shown in FIG.
  • the imaging system 10 captures moving images by continuously capturing compressed images. Furthermore, the imaging system 10 uses the information about the acceleration in the three-axis direction and the rotational angular acceleration in the three-axis direction measured during shooting to determine whether the imaging device 100 has moved between the previous frame and the current frame. The resulting displacement on the image is obtained as a motion vector. A partial area including the target object is cut out from the compressed image of each frame so as to correct the movement, and restoration processing is performed on the cut-out area. In other words, the imaging system 10 does not perform restoration processing on areas other than partial areas in the compressed image.
  • the imaging system 10 may include a sensor other than the inertial measurement device 260, such as a gyro sensor.
  • a gyro sensor can be used to obtain information about movement or vibration and rotation of the imaging system 10 .
  • the imaging system 10 may include, apart from the imaging device 100 , another imaging device (that is, a camera) having a field of view that includes the entire field of view of the imaging device 100 .
  • Information about movement or vibration and rotation of the imaging system 10 may be obtained using images captured by the other imaging device. Acquisition of information on movement or vibration and rotation using another imaging device may be by frame-to-frame matching or by other methods.
  • the motion of the imaging system 10 may be sensed by a sensor such as a fixed camera that is separate from the imaging system 10, and the imaging system 10 may acquire motion information from the fixed sensor through communication.
  • motion vectors are generated by inter-frame matching of compressed images.
  • a motion vector is generated based on information acquired by an IMU other than the imaging device 100 or a sensor such as another camera.
  • You may combine the structure of Embodiment 1,2.
  • a sensor such as an IMU or a gyro sensor may be used to detect the movement of the imaging device 100, and the search range in frame-to-frame matching of compressed images may be limited according to the amount and direction of the detected movement. Such operations can further reduce the amount of computation.
  • the processing device 200 of the imaging system 10 outputs moving images of hyperspectral images, but it is not necessary to output moving images of hyperspectral images.
  • the processing device 200 may select one or a plurality of spectral images from spectral images of a plurality of wavelength bands forming a hyperspectral image, and output a moving image based on the selected spectral images.
  • the imaging system 10 can be configured as one device.
  • the imaging system 10 may be mounted on a moving object such as a vehicle, drone, or robot.
  • the image capturing device 100 and the processing device 200 in the image capturing system 10 may be provided at locations separated from each other. An example of such a configuration will be described below.
  • FIG. 16 is a diagram showing a configuration example of the imaging system 20 in which the imaging device 100 and the processing device 200 are installed at separate locations.
  • This imaging system 20 includes a first device 300 that captures a moving image of an object and a second device 400 that performs signal processing.
  • the first device 300 and the second device 400 are communicably connected via a network 30 such as the Internet.
  • the network 30 may be a wireless or wired communication network.
  • the first device 300 includes an imaging device 100 and a communication device 310.
  • the second device 400 comprises a communication device 410 , a processing device 200 , a storage device 230 and an output device 250 .
  • the imaging device 100, the processing device 200, the storage device 230, and the output device 250 have similar functions as the corresponding devices shown in FIG.
  • the first device 300 may further comprise a sensor for measuring the movement of the imaging device 100, such as an inertial measurement device.
  • the second device 400 may further comprise an input device 240 shown in FIG.
  • the communication device 310 and the communication device 410 perform data communication between the first device 300 and the second device 400 .
  • the communication device 310 transmits the compressed image acquired by the imaging device 100 .
  • Communication device 410 receives the compressed image.
  • the processing device 200 processes the compressed image received by the communication device 410 in the same manner as in any of the above-described embodiments or modifications thereof. Thereby, a spectral image can be generated for each wavelength band.
  • the processing device 200 is one device, but the functions of the processing device 200 may be distributed among a plurality of devices. A plurality of such devices may be installed at locations remote from each other and communicatively connected via a network. Similarly, the storage device 230 may be a single device or an aggregate of multiple separate devices.
  • FIG. 2 How the processing device can reduce the amount of calculation will be described below using the imaging system 10 described in Modification 1 of Embodiment 1.
  • FIG. The processing in this modified example described below may be executed in the imaging systems described in each of the modified examples other than the modified example 1 of the first embodiment, the first embodiment, and the second embodiment.
  • This modification may be as shown below.
  • a filter array including a plurality of filters having different transmittance characteristics with respect to wavelengths from a first wavelength to a second wavelength; the first wavelength being smaller than the second wavelength; an image sensor; including a processor; The processor causes the image sensor to image an object at a first time, thereby causing the image sensor to output a first image, the first image being based on the first light from the filter array.
  • a sensor receives the first light; The first light is based on second light incident on the filter array from an object,
  • the processor determines a first region included in the first image; the first image includes the first area and the second area; the first region includes the object, the first region includes a plurality of first pixels; the second region does not include the object, the second region includes a plurality of second pixels; the first region does not include the region included in the second region; the second region does not include the region included in the first region;
  • the processor calculates a plurality of first pixel values corresponding to a plurality of third pixels based on the first image and matrix H; wherein the processor does not calculate a plurality of second pixel values corresponding to a plurality of fourth pixels based on the first image and matrix H; the plurality of third pixels and the plurality of fourth pixels are included in image I(1k);
  • the plurality of third pixels correspond to the plurality of first pixels, the plurality of fourth pixels correspond to the plurality of second pixels,
  • the processor may determine the first area based on information specified by a user.
  • the processor may determine the third region based on one or more feature points included in the second image and one or more feature points included in the first region.
  • FIG. 17 is a flow chart showing the operation of the imaging system 10 in this modified example.
  • FIG. 18 is a diagram showing the relationship among the first image Ig1, matrix g1', and matrix g1.
  • FIG. 19 is a diagram showing the relationship between the first image Ig1 and the image I(1k).
  • FIG. 20 is a diagram showing the relationship between the second image Ig2, the matrix g2', and the matrix g2.
  • FIG. 21 is a diagram showing the relationship between the second image Ig2 and the image I(2k).
  • the imaging system 10 includes an imaging device 100 , a processing device 200 and a storage device 230 .
  • Storage device 230 may also be referred to as memory.
  • the memory may be one or more memories.
  • Imaging device 100 includes a filter array 110 and an image sensor 160 .
  • the filter array 110 includes multiple filters.
  • the transmittance characteristics for wavelengths at a plurality of first to second wavelengths corresponding to a plurality of filters are different from each other (see FIGS. 2A-2D).
  • the lower limit of the target wavelength range W described in the description of FIGS. 3A and 3B may be the first wavelength, and the upper limit may be the second wavelength.
  • the target wavelength range W is a wavelength range of visible light
  • the first wavelength may be about 400 nm and the second wavelength range may be about 700 nm.
  • the processing device 200 includes a processor (not shown).
  • a processor may be one or more processors.
  • the memory stores multiple instructions.
  • the instructions are executed by a processor.
  • the plurality of instructions include the processing shown in S11000 shown in FIG. 17 and the processing shown in S16000.
  • the processor causes the image sensor 160 to image the object S at the first time. Thereby, the image sensor 160 outputs the first image Ig1.
  • a first image Ig1 is based on the first light from the filter array 110, and the image sensor 160 receives the first light.
  • the first image Ig1 is stored in memory. The first light is based on the second light incident on the filter array 110 from the object S.
  • the processor determines a first area A11 contained in the first image Ig1.
  • the processor may determine the first area A11 based on information designated by the user (see, for example, S2400 of Modification 1 of Embodiment 1).
  • the first image Ig1 has m ⁇ n pixels. Each of the m ⁇ n pixels has a pixel value.
  • the first image Ig1 includes a first area A11 and a second area A12. 1st area
  • the first area A11 includes a plurality of first pixels s1(1 1), . . . , s1(1 q), .
  • the second area A12 is a plurality of second pixels s1(1 q+1), . . . , s1(1 n), . , s1(m 1), . . . , s1(m n).
  • the first area A11 does not include the area included in the second area A12.
  • the second area A12 does not include the area included in the first area A11.
  • a plurality of pixel values of a plurality of pixels included in the first image Ig1 are represented by a matrix g1' of m rows and n columns (see FIG. 18).
  • a plurality of pixel values of a plurality of pixels included in the first image Ig1 are represented by a matrix g1 of m ⁇ n rows and 1 column (see FIG. 18).
  • the processor executes a first process.
  • the first process calculates a plurality of first pixel values corresponding to a plurality of third pixels based on the matrix H and the matrix g1 based on the first image Ig1, and calculates a plurality of first pixel values corresponding to the plurality of third pixels, and This is a process that does not calculate a plurality of second pixel values corresponding to a plurality of fourth pixels based on g1.
  • the first processing will be described below.
  • the processor calculates a plurality of first pixel values corresponding to the plurality of third pixels based on the matrix H and the matrix g1 based on the first image Ig1 (equations (1) and (2), see FIG. 19).
  • the plurality of third pixels are t1k(1 1), ..., t1k(1 q), ..., t1k(p 1), ..., t1k(pq).
  • the plurality of first pixel values are f1k(1 1), . . . , f1k(1 q), .
  • the processor does not calculate the plurality of second pixel values corresponding to the plurality of fourth pixels based on the matrix H and the matrix g1 based on the first image Ig1 (equations (1) and (2), see FIG. 19).
  • the plurality of fourth pixels are t1k(1 q+1), . . . , t1k(1 n), . 1), . . . , t1k(mn).
  • the plurality of second pixel values are f1k(1 q+1), . . . , f1k(1 n), . m 1), . . . , f1k(m n).
  • Each of the plurality of second pixel values may be a predetermined value, eg zero.
  • the image I(1k) includes a plurality of third pixels and a plurality of fourth pixels.
  • the plurality of third pixels correspond to the plurality of first pixels
  • the plurality of fourth pixels correspond to the plurality of second pixels.
  • the image I(1k) corresponds to the k-th wavelength band Wk (see FIG. 19).
  • k is an integer
  • N is an integer
  • the minimum wavelength included in the k-th wavelength band Wk is equal to or longer than the first wavelength
  • the maximum wavelength included in the k-th wavelength band Wk is equal to or shorter than the second wavelength.
  • All of images I(11) through I(1N) may be generated.
  • One image included in images I(11) to I(1N) is generated, and other (N-1) images included in images I(11) to I(1N) are generated. It doesn't have to be.
  • ⁇ images included in images I(11) to I(1N) are generated, and other (N ⁇ ) images included in images I(11) to I(1N) are generated It does not have to be. 2 ⁇ N, where ⁇ may be an integer.
  • the processor causes the image sensor 160 to image the object S at the second time. Accordingly, the image sensor 160 outputs the second image Ig2.
  • a second image Ig2 is based on the third light from the filter array 110, and the image sensor 160 receives the third light.
  • the second image Ig2 is stored in memory.
  • the third light is based on the fourth light incident on the filter array 110 from the object S.
  • the processor determines a third area A21 included in the second image Ig2.
  • the processor may determine the third area A21 based on one or more feature points included in the second image Ig2 and one or more feature points included in the area A11 (for example, See S2100 and S2200 of Modification 1).
  • the second image Ig2 has m ⁇ n pixels. Each of the m ⁇ n pixels has a pixel value.
  • the second image Ig2 includes a third area A21 and a fourth area A22.
  • the third area A21 includes the object S.
  • the fourth area A22 does not include the object S.
  • the third area A21 includes a plurality of fifth pixels s2(1q), ..., s2(1n), ..., s2(pq), ..., s2(pn).
  • the fourth area A22 is a plurality of fifth pixels s2(1 1), . . . , s2(1 q ⁇ 1), . ), ..., s2(m 1), ..., s2(m n).
  • the third area A21 does not include the area included in the fourth area A22.
  • the fourth area A22 does not include the area included in the third area A21.
  • a plurality of pixel values of a plurality of pixels included in the second image Ig2 are represented by a matrix g2' of m rows and n columns (see FIG. 20).
  • a plurality of pixel values of a plurality of pixels included in the second image Ig2 are represented by a matrix g2 of m ⁇ n rows and 1 column (see FIG. 20).
  • the processor executes a second process.
  • the second process calculates a plurality of third pixel values corresponding to a plurality of seventh pixels based on the matrix H and the matrix g2 based on the second image Ig2, and calculates a plurality of third pixel values corresponding to the plurality of seventh pixels based on the matrix H and the matrix g2 based on the second image Ig2.
  • This is a process that does not calculate a plurality of fourth pixel values corresponding to a plurality of eighth pixels based on g2.
  • the second processing will be described below.
  • the processor calculates a plurality of third pixel values corresponding to the plurality of seventh pixels based on the matrix H and the matrix g2 based on the second image Ig2 (equations (1) and (2), see FIG. 21).
  • the plurality of seventh pixels are t2k(1q), ..., t2k(1n), ..., t2k(pq), ..., t2k(pn).
  • the plurality of third pixel values are f2k(1q), ..., f2k(1n), ..., f2k(pq), ..., f2k(pn).
  • the processor does not calculate the plurality of fourth pixel values corresponding to the plurality of eighth pixels based on the matrix H and the matrix g2 based on the second image Ig2 (see equations (1) and (2), FIG. 19).
  • the plurality of eighth pixels are t2k(1 1), . . . , t2k(1 q ⁇ 1), . , t2k(m1), . . . , t2k(mn).
  • the plurality of fourth pixel values are f2k(1 1), . . . , f2k(1 q ⁇ 1), . , f2k(m1), . . . , f2k(mn).
  • Each of the plurality of fourth pixel values may be a predetermined value, eg zero.
  • the image I(2k) includes a plurality of 7th pixels and a plurality of 8th pixels.
  • the plurality of seventh pixels correspond to the plurality of fifth pixels, and the plurality of eighth pixels correspond to the plurality of sixth pixels.
  • Image I(2k) corresponds to the k-th wavelength band Wk (see FIG. 21).
  • All of images I(21) through I(2N) may be generated.
  • One image included in image I(21) to image I(2N) is generated, and other (N-1) images included in image I(21) to image I(2N) are generated. It doesn't have to be.
  • ⁇ images included in images I(21) to I(2N) are generated, and other (N ⁇ ) images included in images I(21) to I(2N) are generated It does not have to be.
  • the technology of the present disclosure can be widely used for continuous measurement, evaluation, monitoring, etc. using hyperspectral imaging technology.
  • the technology of the present disclosure can be applied to mobile terminals such as smartphones, small movie cameras that are handheld or mounted on moving objects, or robots that perform hyperspectral imaging.
  • imaging system 30 network 70 object 100 imaging device 110 filter array 120 compressed image 140 optical system 160 image sensor 200 processing device 220 hyperspectral image 230 storage device 240 input device 250 output device 260 inertial measurement device 300 first device 400 second Device

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)

Abstract

撮像システム(10)は、対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を繰り返し取得する撮像装置(100)と、処理装置(200)とを備える。前記処理装置(200)は、前記圧縮画像から、前記対象物と前記撮像装置(100)との相対的な動きを補償するように、前記対象物の領域を含む部分領域を抽出し、前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成する。

Description

撮像システムおよび撮像方法
 本開示は、撮像システムおよび撮像方法に関する。
 RGB(赤、緑、および青)の組み合わせによる色表現を超える詳細な色表現が可能な画像データを取得するハイパースペクトル撮像装置が様々な分野で利用されている。従来のハイパースペクトル撮像方法として、例えば、プリズムまたは回折格子を用いて、計測対象領域を一方向にスキャンしながらラインごとに詳細なスペクトル情報を順次取得する方法がある。また、透過波長域の異なる複数の光学フィルタを入れ替えて順次撮像することにより、異なる複数の波長域の画像を順次取得する方法もある。これらの方法は、空間またはスペクトルに対して逐次的に情報を取得するため、撮像に時間を要する。
 特許文献1は、圧縮センシングを利用したハイパースペクトル撮像装置の例を開示している。特許文献1に開示された撮像装置は、対象物とイメージセンサとを結ぶ光路上に、分光透過率が互いに異なる複数の光学フィルタのアレイである符号化素子を備える。当該撮像装置は、符号化素子を用いた撮像によって取得された圧縮画像に基づく復元演算により、1回の撮像で複数の波長バンドの画像を生成することができる。特許文献1によれば、ハイパースペクトル画像による動画を生成することもできる。
 特許文献2は、画像中で物体が識別された領域についてのみ復元演算を行うことにより、圧縮センシングによる画像データの復元処理を軽減する方法を開示している。
 特許文献3は、取得された圧縮画像のうち、時間の経過に従って輝度が変化した領域のみを復元することにより、圧縮センシングによる画像データの復元処理の負荷を軽減する方法を開示している。
 特許文献4は、圧縮センシング撮像によって取得された動画像データと、センサによって検出された画像取得時のカメラの動きを示すデータとに従って、動きに対応するカーネル行列を生成し、カーネル行列に基づいて動きによる画像のぶれを抑制する方法を開示している。
米国特許第9599511号明細書 国際公開第2019/054092号 特開2019-12869号公報 国際公開第2015/200038号
 本開示は、ぶれが軽減された複数の波長バンドの画像を生成するための演算処理の負荷を軽減する方法を提供する。
 本開示の一態様に係る撮像システムは、対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置と、処理装置とを備える。前記処理装置は、前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物の領域を含む部分領域を抽出し、前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成する。
 本開示の包括的または具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能な記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラムおよび記録媒体の任意の組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばCD-ROM(Compact Disc‐Read Only Memory)等の不揮発性の記録媒体を含む。装置は、1つ以上の装置で構成され得る。装置が2つ以上の装置で構成される場合、当該2つ以上の装置は、1つの機器内に配置されてもよいし、分離した2つ以上の機器内に分かれて配置されてもよい。本明細書および特許請求の範囲において、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
 本開示の一態様によれば、ぶれが軽減された複数の波長バンドの画像を生成するための演算処理の負荷を軽減することができる。
図1Aは、撮像システムの一例を模式的に示す図である。 図1Bは、撮像システムの他の例を模式的に示す図である。 図1Cは、撮像システムのさらに他の例を模式的に示す図である。 図1Dは、撮像システムのさらに他の例を模式的に示す図である。 図2Aは、フィルタアレイの例を模式的に示す図である。 図2Bは、複数の波長バンドのそれぞれの光に対するフィルタアレイの透過率の空間分布の一例を示す図である。 図2Cは、フィルタアレイに含まれるある領域の分光透過率の例を示す図である。 図2Dは、フィルタアレイに含まれる他の領域の分光透過率の例を示す図である。 図3Aは、対象波長域と、それに含まれる複数の波長バンドとの関係を説明するための図である。 図3Bは、対象波長域と、それに含まれる複数の波長バンドとの関係を説明するための他の図である。 図4Aは、フィルタアレイのある領域における分光透過率の特性の例を説明するための図である。 図4Bは、図4Aに示す分光透過率を、波長バンドごとに平均化した結果を示す図である。 図5は、実施形態1における撮像システムの構成を示すブロック図である。 図6は、撮像システムの動作を示すフローチャートである。 図7Aは、画像の補正量およびその計算方法を説明するための第1の図である。 図7Bは、画像の補正量およびその計算方法を説明するための第2の図である。 図7Cは、画像の補正量およびその計算方法を説明するための第3の図である。 図8は、ステップS1400の動作の詳細な例を示すフローチャートである。 図9は、実施形態1の変形例1における撮像システムの構成を示すブロック図である。 図10は、実施形態1の変形例1における撮像システムの動作を示すフローチャートである。 図11は、ステップS2500の動作のより詳細な例を示すフローチャートである。 図12は、実施形態1の変形例2における処理装置の動作の一部を示すフローチャートである。 図13は、実施形態1の変形例3における処理装置の動作の一部を示すフローチャートである。 図14は、実施形態2における撮像システムの構成を示すブロック図である。 図15は、実施形態2における撮像システムの動作を示すフローチャートである。 図16は、撮像装置と処理装置とが離れた場所に設置されている撮像システムの構成例を示す図である。 図17は、本変形例における撮像システム10の動作を示すフローチャートである。 図18は、第1画像Ig1、行列g1’、行列g1の関係を示す図である。 図19は、第1画像Ig1、画像I(1k)の関係を示す図である。 図20は、第2画像Ig2、行列g2’、行列g2の関係を示す図である。 図21は、第2画像Ig2、画像I(2k)の関係を示す図である。
 本開示において、回路、ユニット、装置、部材もしくは部の全部または一部、またはブロック図における機能ブロックの全部または一部は、例えば、半導体装置、半導体集積回路(IC)、またはLSI(large scale integration)を含む1つまたは複数の電子回路によって実行され得る。LSIまたはICは、1つのチップに集積されてもよいし、複数のチップを組み合わせて構成されてもよい。例えば、記憶素子以外の機能ブロックは、1つのチップに集積されてもよい。ここでは、LSIまたはICと呼んでいるが、集積の度合いによって呼び方が変わり、システムLSI、VLSI(very large scale integration)、もしくはULSI(ultra large scale integration)と呼ばれるものであってもよい。LSIの製造後にプログラムされる、FPGA(Field Programmable Gate Array)、またはLSI内部の接合関係の再構成またはLSI内部の回路区画のセットアップができるRLD(reconfigurable logic device)も同じ目的で使うことができる。
 さらに、回路、ユニット、装置、部材または部の全部または一部の機能または動作は、ソフトウェア処理によって実行することが可能である。この場合、ソフトウェアは1つまたは複数のROM、光学ディスク、ハードディスクドライブなどの非一時的記録媒体に記録され、ソフトウェアが処理装置(processor)によって実行されたときに、そのソフトウェアで特定された機能が処理装置および周辺装置によって実行される。システムまたは装置は、ソフトウェアが記録されている1つまたは複数の非一時的記録媒体、処理装置、および必要とされるハードウェアデバイス、例えばインターフェースを備えていてもよい。
 まず、本開示の実施形態における撮像システムの構成例、および本発明者らによって見出された知見を説明する。
 図1Aは、例示的な撮像システムを模式的に示す図である。このシステムは、撮像装置100と、処理装置200とを備える。撮像装置100は、特許文献1に開示された撮像装置と同様の構成を備える。撮像装置100は、フィルタアレイ110と、光学系140と、イメージセンサ160とを備える。フィルタアレイ110は、特許文献1に開示されている「符号化素子」と同様の構造および機能を有する。光学系140およびフィルタアレイ110は、被写体である対象物70から入射する光の光路上に配置されている。フィルタアレイ110は、光学系140とイメージセンサ160との間に配置される。
 図1Aには、対象物70の一例として、リンゴが例示されている。対象物70は、リンゴに限らず、任意の物体であり得る。イメージセンサ160は、複数の波長バンドの情報が2次元の1枚のモノクロ画像として圧縮された圧縮画像120のデータを生成する。処理装置200は、イメージセンサ160が生成した圧縮画像120のデータに基づいて、所定の対象波長域に含まれる複数の波長バンドのそれぞれについての画像データを生成する。この生成される複数の波長バンドに1対1に対応する複数の画像データを、本明細書において「ハイパースペクトル画像データ」と称する。ここで、対象波長域に含まれる波長バンドの数をN(Nは4以上の整数)とする。以下の説明において、生成される複数の波長バンドに1対1に対応する複数の画像データを、分光画像220W、分光画像220W、・・・、分光画像220Wと称し、これらをハイパースペクトル画像220と総称する。本明細書において、画像を示す信号、すなわち、各画素の画素値を表す信号の集合を、単に「画像」と称することがある。
 フィルタアレイ110は、行および列状に配列された透光性を有する複数のフィルタのアレイである。複数のフィルタは、分光透過率、すなわち光透過率の波長依存性が互いに異なる複数種類のフィルタを含む。フィルタアレイ110は、入射光の強度を波長ごとに変調して出力する。フィルタアレイ110によるこの過程を、本明細書において「符号化」と称する。
 図1Aに示す例において、フィルタアレイ110は、イメージセンサ160の近傍または直上に配置されている。ここで「近傍」とは、光学系140からの光の像がある程度鮮明な状態でフィルタアレイ110の面上に形成される程度に近接していることを意味する。「直上」とは、ほとんど隙間が生じない程両者が近接していることを意味する。フィルタアレイ110およびイメージセンサ160は一体化されていてもよい。
 光学系140は、少なくとも1つのレンズを含む。図1Aでは、光学系140が1つのレンズとして示されているが、光学系140は複数のレンズの組み合わせであってもよい。光学系140は、フィルタアレイ110を介して、イメージセンサ160の撮像面上に像を形成する。
 フィルタアレイ110は、イメージセンサ160から離れて配置されていてもよい。図1Bから図1Dは、フィルタアレイ110がイメージセンサ160から離れて配置されている撮像装置100の構成例を示す図である。図1Bの例では、フィルタアレイ110が、光学系140とイメージセンサ160との間で且つイメージセンサ160から離れた位置に配置されている。図1Cの例では、フィルタアレイ110が対象物70と光学系140との間に配置されている。図1Dの例では、撮像装置100が2つの光学系140Aおよび140Bを備え、それらの間にフィルタアレイ110が配置されている。これらの例のように、フィルタアレイ110とイメージセンサ160との間に1つ以上のレンズを含む光学系が配置されていてもよい。
 イメージセンサ160は、2次元的に配列された複数の光検出素子(本明細書において、「画素」とも呼ぶ。)を有するモノクロタイプの光検出器である。イメージセンサ160は、例えばCCD(Charge-Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)センサ、赤外線アレイセンサ、テラヘルツアレイセンサ、またはミリ波アレイセンサであり得る。光検出素子は、例えばフォトダイオードを含む。イメージセンサ160は、必ずしもモノクロタイプのセンサである必要はない。例えば、R/G/Bのフィルタ(赤色の光を透過するフィルタ、緑色の光を透過するフィルタ、及び、青色の光を透過するフィルタ)、R/G/B/IRのフィルタ(赤色の光を透過するフィルタ、緑色の光を透過するフィルタ、及び、赤外線を透過するフィルタ)、またはR/G/B/Wのフィルタ(赤色の光を透過するフィルタ、緑色の光を透過するフィルタ、及び、白色の光を透過するフィルタ)を有するカラータイプのセンサを用いてもよい。カラータイプのセンサを使用することで、波長に関する情報量を増やすことができ、ハイパースペクトル画像220の生成の精度を向上させることができる。取得対象の波長範囲は任意に決定してよく、可視の波長範囲に限らず、紫外、近赤外、中赤外、遠赤外、マイクロ波・電波の波長範囲であってもよい。
 処理装置200は、プロセッサと、メモリ等の記憶媒体とを備えるコンピュータである。処理装置200は、イメージセンサ160によって取得された圧縮画像120に基づいて、波長バンドWの情報を含む分光画像220Wのデータ、波長バンドWの情報を含む220Wのデータ、・・・、波長バンドWの情報を含む220Wのデータを生成する。
 図2Aは、フィルタアレイ110の例を模式的に示す図である。フィルタアレイ110は、2次元的に配列された複数の領域を有する。本明細書では、当該複数の領域それぞれを、「セル」と称することがある。各領域には、個別に設定された分光透過率を有する光学フィルタが配置されている。分光透過率は、入射光の波長をλとして、関数T(λ)で表される。分光透過率T(λ)は、0以上1以下の値を取り得る。
 図2Aに示す例では、フィルタアレイ110は、6行8列に配列された48個の矩形領域を有する。これはあくまで例示であり、実際の用途では、これよりも多くの領域が設けられ得る。その数は、例えばイメージセンサ160の画素数と同程度であってもよい。フィルタアレイ110に含まれるフィルタ数は、例えば数十から数千万の範囲で用途に応じて決定される。
 図2Bは、対象波長域に含まれる波長バンドW、波長バンドW、・・・、波長バンドWのそれぞれの光の透過率の空間分布の一例を示す図である。図2Bに示す例では、各領域の濃淡の違いは、透過率の違いを表している。淡い領域ほど透過率が高く、濃い領域ほど透過率が低い。図2Bに示すように、波長バンドによって光透過率の空間分布が異なっている。
 図2Cおよび図2Dは、それぞれ、図2Aに示すフィルタアレイ110に含まれる領域A1および領域A2の分光透過率の例を示す図である。領域A1の分光透過率と領域A2の分光透過率とは、互いに異なる。このように、フィルタアレイ110の分光透過率は、領域によって異なる。ただし、必ずしもすべての領域の分光透過率が異なっている必要はない。フィルタアレイ110では、複数の領域の少なくとも一部の領域の分光透過率が互いに異なっている。フィルタアレイ110は、分光透過率が互いに異なる2つ以上のフィルタを含む。ある例では、フィルタアレイ110に含まれる複数の領域の分光透過率のパターンの数は、対象波長域に含まれる波長バンドの数Nと同じか、それ以上であり得る。フィルタアレイ110は、半数以上の領域の分光透過率が異なるように設計されていてもよい。
 図3Aおよび図3Bは、対象波長域Wと、それに含まれる波長バンドW、波長バンドW、・・・、波長バンドWとの関係を説明するための図である。対象波長域Wは、用途によって様々な範囲に設定され得る。対象波長域Wは、例えば、約400nmから約700nmの可視光の波長域、約700nmから約2500nmの近赤外線の波長域、または約10nmから約400nmの近紫外線の波長域であり得る。あるいは、対象波長域Wは、中赤外、遠赤外、テラヘルツ波、またはミリ波などの電波域であってもよい。このように、使用される波長域は可視光域とは限らない。本明細書では、可視光に限らず、近紫外線、近赤外線、および電波などの非可視光も便宜上「光」と称する。
 図3Aに示す例では、Nを4以上の任意の整数として、対象波長域WをN等分した複数の波長域を波長バンドW、波長バンドW、・・・、波長バンドWとしている。ただしこのような例に限定されない。対象波長域Wに含まれる複数の波長バンドは任意に設定してもよい。例えば、波長バンドによって帯域幅を不均一にしてもよい。隣接する波長バンドの間にギャップまたは重なりがあってもよい。図3Bに示す例では、波長バンドによって帯域幅が異なり、且つ隣接する2つの波長バンドの間にギャップがある。このように、複数の波長バンドは、互いに異なっていればよく、その決め方は任意である。
 図4Aは、フィルタアレイ110のある領域における分光透過率の特性の例を説明するための図である。図4Aに示す例では、分光透過率は、対象波長域W内の波長に関して、複数の極大値(つまり極大値P1、~、極大値P5)、および複数の極小値を有する。図4Aに示す例では、対象波長域W内での光透過率の最大値が1、最小値が0となるように正規化されている。図4Aに示す例では、波長バンドW、および波長バンドWN-1などの波長域において、分光透過率が極大値を有している。このように、各領域の分光透過率は、波長バンドWから波長バンドWのうち、少なくとも2つの複数の波長域において極大値を有していてもよい。図4Aの例では、極大値P1、極大値P3、極大値P4および極大値P5は0.5以上である。
 以上のように、各領域の光透過率は、波長によって異なる。したがって、フィルタアレイ110の各領域は、入射する光のうち、ある波長域の成分を多く透過させ、他の波長域の成分をそれほど透過させない。例えば、各領域において、N個の波長バンドのうちのk個の波長バンドの光については、透過率が0.5よりも大きく、残りのN-k個の波長バンドの光については、透過率が0.5未満であり得る。kは、2≦k<Nを満たす整数である。仮に入射光が、すべての可視光の波長成分を均等に含む白色光であった場合には、フィルタアレイ110は、入射光を領域ごとに、波長に関して離散的な複数の強度のピークを有する光に変調し、これらの多波長の光を重畳して出力する。
 図4Bは、一例として、図4Aに示す分光透過率を、波長バンドW、波長バンドW、・・・、波長バンドWごとに平均化した結果を示す図である。平均化された透過率は、分光透過率T(λ)を波長バンドごとに積分してその波長バンドの帯域幅で除算することによって得られる。本明細書では、このように波長バンドごとに平均化した透過率の値を、その波長バンドにおける透過率とする。この例では、極大値P1、P3およびP5をとる3つの波長域において、透過率が突出して高くなっている。特に、極大値P3およびP5をとる2つの波長域において、透過率が0.8を超えている。
 図2Aから図2Dに示す例では、各領域の透過率が0以上1以下の任意の値をとり得るグレースケールの透過率分布が想定されている。しかし、必ずしもグレースケールの透過率分布にする必要はない。例えば、各領域の透過率がほぼ0またはほぼ1のいずれかの値を取り得るバイナリスケールの透過率分布を採用してもよい。バイナリスケールの透過率分布では、各領域は、対象波長域に含まれる複数の波長域のうちの少なくとも2つの波長域の光の大部分を透過させ、残りの波長域の光の大部分を透過させない。ここで「大部分」とは、概ね80%以上を指す。
 全セルのうちの一部、例えば半分のセルを、透明領域に置き換えてもよい。そのような透明領域は、対象波長域Wに含まれるすべての波長バンドWからWの光を同程度の高い透過率、例えば80%以上の透過率で透過させる。そのような構成では、複数の透明領域は、例えば市松(checkerboard)状に配置され得る。すなわち、フィルタアレイ110における複数の領域の2つの配列方向において、光透過率が波長によって異なる領域と、透明領域とが交互に配列され得る。
 このようなフィルタアレイ110の分光透過率の空間分布を示すデータは、設計データまたは実測キャリブレーションに基づいて事前に取得され、処理装置200が備える記憶媒体に格納される。このデータは、後述する演算処理に利用される。
 フィルタアレイ110は、例えば、多層膜、有機材料、回折格子構造、または金属を含む微細構造を用いて構成され得る。多層膜を用いる場合、例えば、誘電体多層膜または金属層を含む多層膜が用いられ得る。この場合、セルごとに各多層膜の厚さ、材料、および積層順序の少なくとも1つが異なるように形成される。これにより、セルによって異なる分光特性を実現できる。多層膜を用いることにより、分光透過率におけるシャープな立ち上がりおよび立ち下りを実現できる。有機材料を用いた構成は、セルによって含有する顔料または染料が異なるようにしたり、異種の材料を積層させたりすることによって実現され得る。回折格子構造を用いた構成は、セルごとに異なる回折ピッチまたは深さの回折構造を設けることによって実現され得る。金属を含む微細構造を用いる場合は、プラズモン効果による分光を利用して作製され得る。
 次に、処理装置200による信号処理の例を説明する。処理装置200は、イメージセンサ160から出力された圧縮画像120、およびフィルタアレイ110の波長ごとの透過率の空間分布特性に基づいて、多波長のハイパースペクトル画像220を生成する。ここで多波長とは、例えば通常のカラーカメラで取得されるRGBの3色の波長域よりも多くの波長域を意味する。この波長域の数は、例えば4から100程度の数であり得る。この波長域の数を、バンド数と称する。用途によっては、バンド数は100を超えていてもよい。
 求めたいデータはハイパースペクトル画像220のデータであり、そのデータをfとする。バンド数をNとすると、fは、波長バンドWに対応する画像データf、波長バンドWに対応するf、・・・、波長バンドWに対応するfを統合したデータである。ここで、図1Aに示すように、画像の横方向をx方向、画像の縦方向をy方向とする。求めるべき画像データのx方向の画素数をnとし、y方向の画素数をmとすると、画像データf、画像データf、・・・、画像データfの各々は、n×m画素の2次元データである。したがって、データfは要素数n×m×Nの3次元データである。この3次元データを、「ハイパースペクトル画像データ」または「ハイパースペクトルデータキューブ」と称する。一方、フィルタアレイ110によって符号化および多重化されて取得される圧縮画像120のデータgの要素数はn×mである。データgは、以下の式(1)によって表すことができる。式(1)、式(2)に含れる
Figure JPOXMLDOC01-appb-M000001
は、式(1)式(2)に関連する記載において、gと標記されることがある。
Figure JPOXMLDOC01-appb-M000002
 ここで、f、f、・・・、fの各々は、n×m個の要素を有するデータである。したがって、右辺のベクトルは、n×m×N行1列の1次元ベクトルである。圧縮画像120のデータgは、n×m行1列の1次元ベクトルgに変換されて表され、計算される。行列Hは、ベクトルfの各成分f、f、・・・、fを波長バンドごとに異なる符号化情報(以下、「マスク情報」とも称する。)で符号化および強度変調し、それらを加算する変換を表す。したがって、Hは、n×m行n×m×N列の行列である。
 ベクトルgと行列Hが与えられれば、式(1)の逆問題を解くことにより、fを算出することができそうである。しかし、求めるデータfの要素数n×m×Nが取得データgの要素数n×mよりも多いため、この問題は不良設定問題であり、このままでは解くことができない。そこで、処理装置200は、データfに含まれる画像の冗長性を利用し、圧縮センシングの手法を用いて解を求める。具体的には、以下の式(2)を解くことにより、求めるデータfが推定される。
Figure JPOXMLDOC01-appb-M000003
 ここで、f’は、推定されたfのデータを表す。上式の括弧内の第1項は、推定結果Hfと取得データgとのずれ量、いわゆる残差項を表す。ここでは2乗和を残差項としているが、絶対値または二乗和平方根等を残差項としてもよい。括弧内の第2項は、正則化項または安定化項である。式(2)は、第1項と第2項との和を最小化するfを求めることを意味する。処理装置200は、再帰的な反復演算によって解を収束させ、最終的な解f’を算出することができる。
 式(2)の括弧内の第1項は、取得データgと、推定過程のfを行列Hによって変換したHfとの差の二乗和を求める演算を意味する。第2項のΦ(f)は、fの正則化における制約条件であり、推定データのスパース情報を反映した関数である。この関数は、推定データを滑らかまたは安定にする効果をもたらす。正則化項は、例えば、fの離散的コサイン変換(DCT)、ウェーブレット変換、フーリエ変換、またはトータルバリエーション(TV)などによって表され得る。例えば、トータルバリエーションを使用した場合、観測データgのノイズの影響を抑えた安定した推測データを取得できる。それぞれの正則化項の空間における対象物70のスパース性は、対象物70のテキスチャによって異なる。対象物70のテキスチャが正則化項の空間においてよりスパースになる正則化項を選んでもよい。あるいは、複数の正則化項を演算に含んでもよい。τは、重み係数である。重み係数τが大きいほど冗長的なデータの削減量が多くなり、圧縮する割合が高まる。重み係数τが小さいほど解への収束性が弱くなる。重み係数τは、fがある程度収束し、かつ、過圧縮にならない適度な値に設定される。
 なお、図1Bおよび図1Cの構成においては、フィルタアレイ110によって符号化された像は、イメージセンサ160の撮像面上でボケた状態で取得される。したがって、予めこのボケ情報を保有しておき、そのボケ情報を前述の行列Hに反映させることにより、ハイパースペクトル画像220を生成することができる。ここで、ボケ情報は、点拡がり関数(Point Spread Function:PSF)によって表される。PSFは、点像の周辺画素への拡がりの程度を規定する関数である。例えば、画像上で1画素に相当する点像が、ボケによってその画素の周囲のk×k画素の領域に広がる場合、PSFは、その領域内の各画素の輝度への影響を示す係数群、すなわち行列として規定され得る。PSFによる符号化パターンのボケの影響を、行列Hに反映させることにより、ハイパースペクトル画像220を生成することができる。フィルタアレイ110が配置される位置は任意であるが、フィルタアレイ110の符号化パターンが拡散しすぎて消失しない位置が選択され得る。
 上記のような方法によって生成されたハイパースペクトル画像における各画素は、予め設定された対象波長域に含まれる複数の波長バンドのそれぞれの光強度または輝度値の情報を含む。前述のように、各波長バンドは、対象波長域内の一部の波長域である。各波長バンドは、ある幅をもつ波長域(例えば、500nmから550nm等の50nmの幅をもつ波長域)であり得る。本開示においては、ある幅をもつ1つの波長域だけでなく、各々が幅をもつ複数の波長域の集合も同様に1つの「波長バンド」として扱うことがある。一例として、500nmから550nmの50nmの幅をもつ波長域と、600nmから650nmの50nmの幅をもつ波長域との集合、すなわち合計100nmの2つの波長域の組み合わせを1つの「波長バンド」として扱ってもよい。各波長バンドは、例えば1nmから20nm程度の狭い幅を有していてもよい。一例として、対象波長域が451nmから950nmの範囲であり、各波長バンドの幅が5nmである場合、その対象波長域は100個の波長バンドを含む。
 そのような多くの波長バンドのそれぞれの画像の各画素の輝度値を、上記の演算によって計算する場合、演算量が多くなり、ハイパースペクトル画像の生成に長い時間を要する場合がある。
 一方、上記の撮像システムは、ハイパースペクトル画像に基づく動画像を撮影する用途でも使用され得る。撮影時に人が撮像装置を手に保持して撮影したり、移動体に撮像装置を搭載して撮影したりする場合、または、動く対象物をトレースして撮影する場合、撮像装置と対象物との相対位置が撮影中に変動する。その結果、撮影された動画像における対象物の位置がフレームごとにずれ、対象物がぶれる不安定な動画像が生成されてしまう。
 1フレームとは、動画中の1回の撮影(露光)によって得られる1つの画像あるいは画像群を意味してもよい。1フレームは、1つの圧縮画像であってもよい。1フレームは、1つの圧縮画像に基づき生成された複数の波長バンドのそれぞれに対応する複数の画像であってもよい。1フレームは、1つの圧縮画像に基づき生成された複数の波長バンドのそれぞれに対応する複数の画像に含まれる1つの画像であってもよい。
 そこで、本開示の実施形態では、撮像装置と対象物との相対的な動きを検出し、当該相対的な動きの影響が小さくなるように、圧縮画像から対象物を含む一部の領域を抽出して復元する方法が用いられる。つまり、圧縮画像に含まれる、対象物を含む一部の領域以外の領域は復元されない。以下、本開示の実施形態の概要を説明する。
 本開示の例示的な実施形態による撮像システムは、対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置と、処理装置とを備える。前記処理装置は、前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物の領域を含む部分領域を抽出し、前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成する。
 圧縮画像は、上記のように、4つ以上の波長バンドの情報が1つのモノクロ画像として圧縮された画像、およびそのような画像を示す信号またはデータを意味する。圧縮画像は、撮像装置から画像データの形式で出力されてもよいし、撮像装置に含まれるイメージセンサから出力された信号がそのまま圧縮画像を示すデータとして撮像装置から出力されてもよい。処理装置が生成する複数の分光画像は、上記の4つ以上の波長バンドに対応していてもよいし、当該4つ以上の波長バンドの一部、またはそれらのうちの任意の組み合わせに対応していてもよい。
 上記の構成によれば、対象物と撮像装置との相対的な動きを補償するように、圧縮画像から対象物を含む部分領域が抽出され、当該部分領域について前述の復元演算が行われる。このため、対象物と撮像装置との相対的な動き(例えば手振れ)の影響を抑制し、且つ、少ない演算量で必要な分光画像を短時間で生成することが可能になる。
 前記撮像装置は、前記圧縮画像を繰り返し取得してもよい。前記処理装置は、前記圧縮画像の経時変化に基づいて、前記対象物と前記撮像装置との相対的な動きを検出し、前記相対的な動きに基づいて前記部分領域を決定してもよい。例えば、前記処理装置は、連続する2つの圧縮画像のフレームから、対象物と撮像装置との相対的な動きを検出し、その動きに応じて部分領域を決定してもよい。そのような動作により、対象物と撮像装置との相対的な動きを検出するセンサを用いることなく、圧縮画像から対象物に対応する部分領域を適切に抽出することができる。
 前記撮像装置は、分光透過率が互いに異なる複数のフィルタを含むフィルタアレイと、前記フィルタアレイを通過した光を検出して前記圧縮画像を示す信号を出力するイメージセンサと、を含み得る。前記フィルタアレイは、例えば、図2Aから図2Dを参照して説明したように、2次元平面内に配列された複数のフィルタを含み得る。各フィルタは、例えば、所定の対象波長域において、複数の透過率のピーク(あるいは極大値)を有し得る。そのようなフィルタアレイを用いた圧縮センシングにより、良好な分光画像を生成することができる。
 前記撮像システムは、前記フィルタアレイの前記分光透過率に応じた行列データを記憶する記憶装置をさらに備えていてもよい。前記処理装置は、前記行列データのうち、前記部分領域に対応する部分に基づいて、前記複数の分光画像を生成するように構成され得る。例えば、上記の式(2)に基づく演算を、圧縮画像から抽出した部分領域に適用することにより、複数の分光画像を高い精度で復元することができる。
 行列データは、例えば上記の式(2)における行列Hを示すデータであり得る。行列データは、例えばテーブルの形式で記憶装置に格納され得る。そのような行列を示すテーブルを、以下の説明において「復元テーブル」と称することがある。
 前記処理装置は、第1の時刻に前記イメージセンサから出力された第1圧縮画像を示す信号と、前記第1の時刻よりも後の第2の時刻に前記イメージセンサから出力された第2圧縮画像を示す信号とに基づくマッチング処理により、前記第2圧縮画像から前記部分領域を抽出してもよい。第1圧縮画像は、例えば動画像の1つのフレームに対応し、第2圧縮画像は、当該動画像の次のフレームに対応していてもよい。このように、異なる時刻に出力された2つの圧縮画像のマッチングにより、撮像装置と対象物との相対的な動きを検出し、その動きを補償するように、第2圧縮画像から適切な部分領域を抽出することができる。そのような動作をフレームごとに実行することにより、例えば手振れに起因する動画像中の対象物のぶれを軽減することができる。
 前記処理装置は、前記第2圧縮画像の前記部分領域に対応する前記フィルタアレイの一部における分光透過率に応じた行列データに基づいて、前記部分領域のデータから前記複数の分光画像を生成するように構成され得る。
 前記撮像システムは、前記対象物と前記撮像装置との相対的な動きを検出するセンサをさらに備えていてもよい。前記処理装置は、前記センサから出力された信号に基づいて、前記部分領域を決定してもよい。そのような構成によれば、上記のようなマッチング処理によることなく、対象物と撮像装置との相対的な動きを検出できるため、処理の量および時間をさらに低減することができる。
 前記センサは、加速度センサおよび角速度センサ(例えばジャイロセンサ)の少なくとも一方を含み得る。前記センサは振動センサを含んでいてもよい。前記処理装置は、前記センサから出力された前記信号に基づいて前記撮像装置の動きベクトルを決定し、前記動きベクトルに基づいて、前記部分領域を決定してもよい。前記撮像システムが車両などの移動体に搭載される場合、前記センサは、移動体に搭載された慣性計測装置(IMU)であってもよい。
 前記処理装置は、ディスプレイに前記圧縮画像を表示させてもよい。さらに、前記処理装置は、前記ディスプレイに、前記圧縮画像における動き補償の対象となる前記対象物をユーザに指定させるためのグラフィカルユーザインターフェース(GUI)を表示させてもよい。そのような構成により、ユーザは、圧縮画像を確認しながら動き補償の対象となる対象物を指定することができる。このため、例えば複数の物体が圧縮画像中に存在するような場合に、特定の物体を対象物として選択することができ、利便性が向上する。
 前記処理装置は、前記撮像装置からの前記圧縮画像を示す信号の取得、前記部分領域の抽出、および前記複数の分光画像の生成を繰り返し、前記複数の分光画像のそれぞれの動画像データを生成するように構成され得る。これにより、例えば複数の波長バンドのそれぞれの動画像を短い処理時間で生成することができる。
 本開示の他の態様に係る方法は、コンピュータによって実行される方法であって、対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置から、前記圧縮画像を示す信号を取得することと、前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物を含む部分領域を抽出することと、前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成することと、を含む。
 本開示のさらに他の態様に係るコンピュータプログラムは、コンピュータが読み取り可能な非一時的記録媒体に格納される。前記コンピュータプログラムは、対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置から、前記圧縮画像を示す信号を取得することと、前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物を含む部分領域を抽出することと、前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成することと、をコンピュータに実行させる。
 以下、本開示の例示的な実施形態をより具体的に説明する。なお、以下で説明する実施形態は、いずれも包括的又は具体的な例を示すものである。以下の実施形態で示される数値、形状、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する趣旨ではない。以下の実施形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。各図は模式図であり、必ずしも厳密に図示されたものではない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略または簡略化される場合がある。
 (実施形態1)
 本開示の例示的な第1の実施形態を説明する。本実施形態による撮像システムは、ハイパースペクトル画像による動画を生成するシステムである。撮像システムは、撮像装置と、撮像装置から出力された画像データを処理する処理装置とを備える。撮像装置は、上記のように、分光透過率の異なる複数のフィルタが2次元的に配列されたフィルタアレイを用いた圧縮センシング撮像を行い、4つ以上の波長バンドの情報が圧縮された圧縮画像を取得する。処理装置は、フィルタアレイの分光透過率の空間分布を反映した復元データ(例えば行列データ)を用いて、圧縮画像からハイパースペクトル画像(すなわち波長バンドごとの複数の分光画像)を復元する。処理装置は、撮像装置から連続的に出力された複数フレームの圧縮画像から、撮像装置と対象物との間の相対的な動きを検出し、動きによる影響を補償して動画像を安定させる処理を行う。圧縮画像における対象物(すなわち被写体)は、例えば、画像処理によって認識可能な特徴点を有する図形または領域であり得る。対象物は、画像の中心部に位置する特徴点を有する図形であってもよい。あるいは、撮像システムが特定の物体をトラッキングしながら撮影するように構成されている場合、対象物は、画像中でトラッキング対象の物体に対応する図形または領域であってもよい。以下の説明において、画像における対象物以外の領域を背景とする。背景が特徴点を有していてもよい。
 処理装置は、撮像装置が撮影によって取得した複数フレームの圧縮画像の間でマッチングを行い、フレーム間の撮像装置の動きに起因する動きベクトルを検出する。動きベクトルによる画像内の対象物の位置のずれの影響を低減するため、処理装置は、各フレームの圧縮画像から、他のフレーム(例えば直前のフレーム)とマッチングできた対象物を含む部分領域を抽出する。これにより、撮像装置の動きに起因する画像のぶれが軽減される。処理装置は、抽出した部分領域について前述の復元処理を行い、抽出した部分領域のハイパースペクトル画像を生成する。
 このように、本実施形態における処理装置は、撮像装置の動きに起因する画像のぶれの影響を小さくするために、圧縮画像から対象物を含む一部の領域を抽出し、抽出した領域に対して復元処理を行う。処理装置は圧縮画像に含まれる、対象物を含む一部の領域以外の領域に対して復元処理を行わない。すなわち、処理装置は、多数の波長バンドのそれぞれの画像ではなく、復元前の1つの圧縮画像に対してぶれの補正処理を行い、さらに、ぶれの補正のために切り出した一部の領域についてのみ復元処理を行う。このような処理により、ぶれの補正処理およびハイパースペクトル画像の復元処理の演算量を大幅に削減し、短時間で対象物のハイパースペクトル画像を生成することができる。
 [1-1.構成]
 図5は、本実施形態における撮像システム10の構成を示すブロック図である。本撮像システム10は、ハイパースペクトル画像に基づく動画像を生成する。このため、撮像システム10を、「ハイパースペクトル動画生成システム」と呼ぶこともできる。撮像システム10は、撮像装置100と、処理装置200と、記憶装置230と、出力装置250とを備える。
 撮像装置100は、例えば図1Aから図1Dのいずれかに示す撮像装置100と同様の構成を備えたカメラである。撮像装置100を「圧縮ハイパースペクトルカメラ」と呼ぶことがある。撮像装置100は、例えば図1Aに示すように、符号化素子として機能するフィルタアレイ110と、イメージセンサ160とを備える。撮像装置100は、短時間且つ1回の露光で前述の圧縮画像を取得することができる。圧縮画像は、4つ以上の波長バンドの光の成分が1つのモノクロ画像として圧縮された画像である。圧縮画像に上記の式(2)に基づく演算処理を適用することにより、ハイパースペクトル画像、すなわち複数の波長バンドに対応する複数の分光画像を生成することができる。このように、圧縮画像は、ハイパースペクトル画像を生成するための情報を含む。このため、圧縮画像を「圧縮ハイパースペクトル画像」と呼ぶことがある。
 撮像装置100におけるイメージセンサ160は、2次元的に配列された複数の光検出セルを備える。各光検出セルは、4つ以上の波長バンドの成分が重畳された光を同時に受け、受光量に応じた電気信号を出力する。イメージセンサ160から出力された電気信号に基づいて、圧縮画像が構成される。圧縮画像における各画素の輝度値(画素値ともいう)は、少なくとも2以上の階調を有し、例えば256の階調を有し得る。このように、イメージセンサ160の各光検出セルによって検出された光の輝度に関する情報は、圧縮画像における各画素の画素値に反映される。これにより、圧縮画像は、イメージセンサ160によって検出された光の強度の空間分布の情報を保持する。
 圧縮画像の取得には、透過率の波長依存性が互いに異なる複数のフィルタを含むフィルタアレイ110が使用される。複数のフィルタは、例えば2次元平面内にランダムに配置され得る。そのようなフィルタアレイ110を用いて圧縮画像を取得することにより、当該圧縮画像は、対象波長域に含まれる複数の波長バンドの光の透過率が平均化された平均透過率に応じた階調を有する輝度画像となる。
 撮像装置100は、所定のフレームレート(例えば60fpsまたは30fps等)で圧縮画像を生成する。撮像装置100は、それらの圧縮画像に基づく動画像を生成して出力するように構成され得る。
 処理装置200は、1つ以上の処理回路と、1つ以上の記憶媒体(例えばメモリ)とを備える。処理回路は、例えばCPU(Central Processing Unit)またはGPU(Graphics Processing Unit)などのプロセッサであり得る。プロセッサは、メモリに格納されたコンピュータプログラムを実行することにより、後述する動作を実行する。処理装置200は、撮像装置100から出力された圧縮画像に基づく動画像を取得し、当該動画像の各フレームの圧縮画像に基づいて、特定の対象物に対応する領域のハイパースペクトル画像を生成する。具体的には、処理装置200は、圧縮画像に基づく動画像から、時間的に連続する2つ以上のフレームの圧縮画像の間でマッチングを行うことにより、撮像装置100の視野内の物体と撮像装置100との相対的な動きを示す動きベクトルを求める。処理装置200は、得られた動きベクトルから、撮像装置100のぶれを示すベクトルを選択する。処理装置200は、ぶれの影響を低減するように、各フレームの圧縮画像から、他のフレームとマッチングが取れた対象物の領域を切り出す。さらに、処理装置200は、あらかじめ記憶装置230に記憶された復元テーブル(例えば上記の式(2)における行列Hを示すデータ)のうち、当該フレームの切り出し領域に対応する値を参照して、切り出した圧縮画像に対して上記の式(2)に基づく復元処理を行う。これにより、処理装置200は、特定の対象物についての複数の分光画像、すなわちハイパースペクトル画像をフレームごとに生成することができる。
 記憶装置230は、例えば半導体記憶媒体、磁気記憶媒体、または光学記憶媒体などの、1つ以上の記憶媒体を含む装置である。記憶装置230は、撮像装置100が備えるフィルタアレイ110の光透過特性に応じた復元テーブルを記憶する。復元テーブルは、フィルタアレイ110の分光透過率の2次元分布を反映したデータを含む。例えば、復元テーブルは、イメージセンサ160の各画素の位置に対応するフィルタアレイ110の領域における各波長バンドの透過率を示すデータを含み得る。記憶装置230はまた、撮像装置100から出力された圧縮画像を記憶する。記憶装置230は、処理装置200が複数のフレームの圧縮画像に対して処理を行う期間、圧縮画像を保持する。記憶装置230は、さらに、処理装置200が処理の過程で生成した各種のデータ、例えば復元されたハイパースペクトル画像のデータを記憶する。
 出力装置250は、撮像装置100によって取得された圧縮画像、および/または処理装置200による復元処理によって生成されたハイパースペクトル画像を出力する装置である。出力装置250は、例えば、圧縮画像および/またはハイパースペクトル画像を表示するディスプレイ、印刷機、または圧縮画像および/またはハイパースペクトル画像のデータを外部の装置に送信する通信装置であり得る。出力装置250は、生成された圧縮画像および/またはハイパースペクトル画像のデータを保存するメモリ等の記憶媒体を含み得る。
 なお、撮像装置100は、各フレームの圧縮画像の情報を含む動画像のデータを出力する代わりに、イメージセンサ160から出力された各フレームの信号をそのまま出力してもよい。その場合、処理装置200は、イメージセンサ160から出力された信号に基づいて各フレームの圧縮画像データを生成し、当該圧縮画像データからハイパースペクトル画像を復元するように構成され得る。
 [1-2.動作]
 図6は、撮像システム10の動作を示すフローチャートである。撮像システム10は、図示されていない入力手段または通信手段から入力された開始信号に従って動作を開始する。撮像システム10は、図6に示すステップS1100からS1800の動作を実行する。以下、各ステップの動作を説明する。
 <ステップS1100>
 処理装置200は、動作の終了を指示する終了信号が入力されたか否かを判断する。終了信号は、図示されていない入力手段または通信手段から入力され得る。ステップS1100において終了信号の入力がある場合、撮像システム10は動作を終了する。ステップS1100において終了信号の入力がない場合、ステップS1200へ進む。
 <ステップS1200>
 処理装置200は、撮像装置100に撮影を指示する信号を送る。撮像装置100は、当該信号に応答して、対象物を含むシーンを撮影することにより、複数の波長バンドの画像情報が圧縮された圧縮画像を生成する。この圧縮画像は、動画の1フレームのピクチャに相当する。撮像装置100は、生成した圧縮画像を記憶装置230に記憶させる。
 <ステップS1300>
 処理装置200は、ステップS1200で撮影された当該フレームの直前のフレームの圧縮画像が記憶装置230に記憶されているか否かを判断する。記憶装置230が直前のフレームの圧縮画像を記憶していない場合、ステップS1200に戻る。記憶装置230が直前のフレームの圧縮画像を記憶している場合、ステップS1400に進む。
 <ステップS1400>
 処理装置200は、記憶装置230に記憶された当該フレームの圧縮画像と直前のフレームの圧縮画像とのマッチングを行い、動きベクトルを抽出する。ステップS1400の動作の詳細は後述する。
 <ステップS1500>
 処理装置200は、ステップS1400で抽出された動きベクトルに基づいて、画像の補正量を計算する。補正量は、例えば、画像の復元範囲を決定するための画像の水平方向および垂直方向のずれ量を示す。
 図7Aから図7Cは、画像の補正量およびその計算方法を説明するための模式図である。図7Aは、時刻tn-1およびtに撮影された連続する2つのフレームの圧縮画像の例を模式的に示している。これらの2つのフレームを、フレームtn-1およびフレームtと表記する。この例における対象物は、同一の静止したリンゴである。動画撮影中の撮像装置100の動き(例えば手振れ)により、撮像装置100の視野内における対象物の位置がフレームtn-1とフレームtとで異なっている。
 図7Bは、図7Aに示すフレームtn-1の画像とフレームtnの画像とを重ね合わせた状態を示す図である。図7Bにおいて、対象物の位置のずれが矢印で示されている。この矢印は、対象物に対する撮像装置100の相対的な動きによって生じた動きベクトルを表している。
 図7Cは、対象物であるリンゴの領域が重なるようにフレームtn-1の画像とフレームtnの画像とを重ね合わせた状態を示す図である。図7Cにおいて、破線はフレームtn-1を示し、点線はフレームtnを示し、太線は両者の重複する領域を示している。
 処理装置200は、図7Bに示す動きベクトルの逆向きのベクトルの水平成分および垂直成分(図7Cにおいて点線矢印で表示)を補正量として計算する。処理装置200は、フレームtnの画像を水平方向および垂直方向にそれぞれの補正量の分だけずらすことにより、フレームtnの画像中の対象物をフレームtn-1の画像中の対象物に重ねることができる。言い換えれば、処理装置200は、動きベクトルの逆向きにフレームtnの画像をずらすことにより、フレームtnの画像中の対象物をフレームtn-1の画像中の対象物に重ねることができる。この処理により、フレームtnの画像においてフレームtn-1の画像と重複する領域の左下の角を、フレームtn-1の画像の左下の角に合わせることができる。これにより、フレーム間の動きベクトルに応じて各フレームの圧縮画像を補正し、対象物を画像中で静止させることができる。
 <ステップS1600>
 処理装置200は、ステップS1500で求めた補正量に基づき、当該フレームの圧縮画像において対象物を含む部分領域を決定し、当該部分領域を圧縮画像から抽出する。例えば、処理装置200は、図7Cにおいて太線で示されているような、直前のフレームの圧縮画像と重複する領域を圧縮画像から切り出す。抽出される部分領域は、直前のフレームの圧縮画像と重複する領域の一部であってもよい。
 <ステップS1700>
 処理装置200は、ステップS1600で切り出した圧縮画像の部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像すなわちハイパースペクトル画像を復元する処理を行う。処理装置200は、記憶装置230に記憶された復元テーブル(すなわち行列データ)のうち、ステップS1600で切り出した部分領域に対応する部分を用いて復元処理を行う。例えば、図7Cに示すフレームtnの画像において、フレームtn-1の画像とマッチする画素領域を部分領域として切り出した場合、処理装置200は、当該部分領域の画素値の情報と、当該部分領域に対応する復元テーブルの部分とを用いて復元処理を行う。復元処理は、前述の式(2)に基づく処理と同様である。
 このように、処理装置200は、当該フレームにおける対象物の位置を直前のフレームにおける対象物の位置に合わせ、且つ、直前のフレームと一致する部分領域について復元処理を行う。つまり、処理装置200は、当該フレームにおける部分領域以外の領域について復元処理を行わない。これにより、復元処理の計算量を低減し、且つ、フレーム間での対象物の動きを低減することができる。
 <ステップS1800>
 処理装置200は、ステップS1700で復元されたハイパースペクトル画像を当該フレームのハイパースペクトル画像として出力装置250に出力し、記憶装置230に記憶させる。出力装置250は、例えば当該ハイパースペクトル画像を表示または外部の装置に送信する。ステップS1800の後、ステップS1100へ戻る。
 ステップS1100からステップS1800の動作を繰り返すことにより、処理装置200は、ハイパースペクトル画像に基づく動画像を生成することができる。上記の処理により、撮像装置100と対象物との相対的な動きに起因する画像中の対象物の動き(すなわちぶれ)を低減したハイパースペクトルの動画像を生成することができる。
 次に、ステップS1400の詳細な動作の例を説明する。図8は、ステップS1400の動作の詳細な例を示すフローチャートである。図8に示す例において、ステップS1400は、ステップS1410からS1450を含む。以下、各ステップの動作を説明する。
 <ステップS1410>
 処理装置200は、ステップS1200で取得された当該フレームの圧縮画像と、記憶装置230に格納された直前のフレームの圧縮画像とから、特徴点を抽出する。特徴点は、例えばエッジまたはコーナー上の点であり得る。処理装置200は、例えばソーベルフィルタまたはラプラシアンフィルタといった空間フィルタを用いたエッジ抽出処理を行うことにより、各圧縮画像から特徴点を抽出することができる。あるいは、処理装置200は、ハリスのコーナー検出またはFAST(Features from Accelerated segment Test)などの方法によってコーナーを検出し、コーナー上の点を特徴点として抽出してもよい。
 <ステップS1420>
 次に、処理装置200は、ステップS1410で抽出した特徴点のマッチングを、当該フレームの画像と直前のフレームの画像との間で行う。マッチングは、例えば、当該フレームの画像の特徴点をパッチとして抽出し、当該パッチと最も類似度の高い領域をSSD(Sum of Squared Difference)などの指標値に基づいて探索する方法によって行われ得る。マッチングは、複数の特徴点について行われ得る。
 <ステップS1430>
 処理装置200は、当該フレームの画像と直前のフレームの画像との間で対応が取れたすべての特徴点について、直前のフレームの画像中の特徴点の位置を始点とし、当該フレームの画像中において対応する特徴点の位置を終点とするベクトルを求める。
 <ステップS1440>
 処理装置200は、ステップS1430で求められたベクトルについて、向きと大きさに従ってクラスタリングする。すなわち、処理装置200は、向きと大きさが近いベクトルをクラスタとしてまとめ、ベクトルを1つ以上のクラスタに分類する。
 <ステップS1450>
 処理装置200は、ステップS1440でクラスタリングされたベクトルのうち、クラスタ内のベクトルの始点が画像内で最も広い範囲に分布するクラスタを選択し、それを撮像装置100の動きに起因するぶれを示すクラスタとする。処理装置200は、このクラスタに含まれる全ベクトルの向きと大きさの平均を、動きベクトルとして生成する。
 以上の方法により、処理装置200は、連続する2つのフレームの間で動きベクトルを決定することができる。なお、フレーム間のマッチング方法およびベクトルの生成方法は、上記の例に限定されず、任意の方法を用いてもよい。
 [1-3.効果等]
 以上のように、本実施形態における撮像システム10は、圧縮画像を連続して撮影することによって動画像を生成する。処理装置200は、時間的に隣り合うフレーム間でマッチングを行って動きベクトルを特定し、その動きベクトルの影響を緩和するように各フレームの圧縮画像から部分領域を切り出す。処理装置200は、切り出した部分領域について、ハイパースペクトル画像の復元処理を行う。つまり、処理装置200は、当該圧縮画像における部分領域以外の領域の復元処理を行わない。これにより、撮像装置100と対象物との相対的な動きに起因する各フレームの画像のぶれが軽減されたハイパースペクトル画像の動画を生成することができる。さらに、ぶれ補正のための部分画像の切り出しを、多数のバンドの画像ではなく圧縮画像に対して行うため、計算量を大幅に削減することができる。さらに、撮影によって取得された各フレームの圧縮画像の全体ではなく、ぶれ補正のために切り出された一部の領域について復元処理を行うため、復元処理の計算量も削減することができる。
 本実施形態では、ステップS1450において、処理装置200は、クラスタリングされたベクトルのうち、クラスタ内のベクトルの始点が画像内で最も広い範囲に分布するクラスタを選択し、そのクラスタを撮像装置100の動きに起因するぶれを示すクラスタとして処理する。これは、画像中の広い範囲に分布する共通のベクトルを「動きベクトル」として採用する動作である。このような動作は、撮像装置(すなわちカメラ)を手で持って取り扱う場合、カメラを移動体に搭載する場合、または機械の傍等の振動の大きい場所にカメラを設置して使用する場合に、カメラの動きの影響を軽減するために有効である。対象物が静止している場合には、対象物を含め画像全体が同一のクラスタに含まれることになるため、上記の方法により、画像からカメラの動きの影響を効果的に除去することができる。対象物が動く場合には、対象物の動きベクトルは一か所に集中し、周辺の静止物はカメラの動きに従って全て同じ動きベクトルを持つため、静止物の動きベクトルは画像中の広い範囲に分布する。したがって、動きベクトルが画像内で最も広い範囲に分布するクラスタを選択することで、対象物の動きを残し、カメラの動きに起因する画像のぶれを補正することができる。
 一方、カメラが固定されており、対象物に振動あるいは移動等の動きがある場合には、ステップS1450において、クラスタリングされたベクトルのうち、ベクトルの始点が一定の領域に集中するクラスタを選択してもよい。そのような選択により、動く対象物を選択することができ、対象物があたかも静止しているかのような動画を生成することができる。
 移動する対象物をカメラが視野を移動させることで追跡する場合、対象物は視野の中心付近にあり、その動きベクトルは比較的小さく、背景の動きベクトルは比較的大きくなる。このような場合、ステップS1450において、クラスタリングされたベクトルのうち、ベクトルの始点が一定の領域に集中するクラスタであり、且つベクトルの大きさが他のクラスタのベクトルの平均的な大きさよりも小さいクラスタを選択してもよい。そのような選択により、カメラが視野を移動させることで追跡している対象物を選択することができ、対象物があたかも静止しているかのような動画を生成することができる。
 カメラは静止しているが対象物の背景が移動する場合もある。例えば、背景に道路またはベルトコンベアのような移動する物体が存在する場合、または、プロジェクタ等により背景に動きのある映像が写されている場合があり得る。そのような場合、背景の動きが比較的一定で広範囲にわたるものであれば、ステップS1450において、クラスタリングされたベクトルのうち、ベクトルの始点が一定の領域に集中するクラスタを選択してもよい。そのような選択により、対象物が移動する場合においても対象物のクラスタを選択することができ、対象物があたかも静止しているかのような動画を生成することができる。
 なお、実施形態1では、時間的に隣り合う2つのフレームの画像間でのみマッチングが行われるが、時間的に連続する3以上のフレームについて、相互にあるいは隣り合うフレーム間でマッチングを行ってもよい。背景が変化する場合には、最も多くのフレーム間でマッチングされる特徴点を対象物を示す特徴点として抽出してもよい。補正処理において、当該フレームと直前のフレームとの間でマッチングされる特徴点によって構成されるベクトルのクラスタのうち、最も多くのフレームでマッチングされる特徴点によって構成されるベクトルを含むクラスタから、補正のための動きベクトルを選択することができる。このような処理により、対象物のクラスタを選択しやすくなる。
 (実施形態1の変形例1)
 次に、実施形態1の変形例を説明する。
 実施形態1における撮像システム10は、圧縮画像を連続して撮影することで動画像を生成し、時間的に連続する複数のフレームの圧縮画像間でマッチング処理を行って動きベクトルを特定する。撮像システム10は、当該動きベクトルに基づいて、撮像装置100と対象物との相対的な動きを補正するように、各フレームの圧縮画像から対象物を含む部分領域を抽出し、抽出した部分領域について復元処理を行う。つまり、処理装置200は、圧縮画像における部分領域以外の領域の復元処理を行わない。これにより、ハイパースペクトル画像の復元処理に要する演算量を低減し、且つ、撮像装置100と対象物との相対的な動きに起因するぶれの影響を抑制することができる。
 これに対し、本変形例では、ユーザまたは外部の装置(例えば判定システムなどのコンピュータシステム)が各フレームの圧縮画像中の対象物を指定する。撮像システムは、圧縮画像における指定された対象物の領域に含まれる特徴点のマッチングをフレーム間で行い、対象物の位置ずれを補正した動画像を生成する。
 図9は、本変形例における撮像システム10の構成を示すブロック図である。この撮像システム10は、図5に示す構成要素に加えて、入力装置240をさらに備える。本実施形態における出力装置250は、撮像装置100によって生成された圧縮画像、および処理装置200によって生成されたハイパースペクトル画像を表示するディスプレイを備える。本実施形態における処理装置200は、ディスプレイに圧縮画像を表示させ、当該ディスプレイに、圧縮画像における動き補償の対象となる対象物をユーザに指定させるためのグラフィカルユーザインターフェースを表示させる。
 入力装置240は、例えばポインティングデバイスを含み得る。ユーザは、ポインティングデバイスを用いて、出力装置250のディスプレイに表示された圧縮画像を見ながら特定の対象物の位置を指定することができる。あるいは、入力装置240は、キーボードまたは音声入力装置を含んでいてもよい。その場合、ユーザは、キーボードまたは音声入力装置を用いて、出力装置250のディスプレイに表示された圧縮画像から、特定の対象物に対応する領域を選択することができる。処理装置200は、表示される圧縮画像を複数の領域に分割し、それらの複数の領域からユーザが対象物に対応する領域を選択できるように、圧縮画像を出力装置250に表示させてもよい。入力装置240は、撮像システム10の外部のシステムから対象物を指定する信号を受信する通信装置を含んでいてもよい。その場合も対象物の指定は、圧縮画像中の対象物に対応する位置または領域を指定する方法で行われ得る。対象物の指定は、圧縮画像中で探索すべき対象物のテンプレートを示す画像などのデータを送信する方法によって行われてもよい。
 図10は、本変形例における撮像システム10の動作を示すフローチャートである。このフローチャートは、図6に示すフローチャートにおけるステップS1300の後にステップS2100からS2400が追加され、ステップS1400がステップS2500に置換されたものである。以下、図6に示す動作とは異なる点を説明する。以下では、一例として、ユーザが出力装置250に含まれるディスプレイに表示された圧縮画像を確認し、入力装置240に含まれるポインティングデバイスを用いて対象物を指定する場合の動作を説明する。
 <ステップS2100>
 ステップS1300で前のフレームが記録されていると判断すると、処理装置200は、対象物の指定情報が既にあるか否かを判断する。対象物の指定情報は、例えば、当該フレームの圧縮画像を取得する以前に出力装置250に表示された圧縮画像上で入力装置240を用いて指定された領域から抽出された1つ以上の特徴点を示す情報であり得る。処理装置200は、ユーザが特定の対象物に対応する位置または領域を指定すると、特定の対象物に対応する位置を含む領域、または、特定の対象物を含む領域、における1つ以上の特徴点を抽出し、当該特徴点を示す情報を対象物の指定情報としてメモリに記憶させるように構成され得る。抽出された1つ以上の特徴点を、以下、「対象物のパターン」とも称する。ステップS2100の時点で対象物の指定情報が既にある場合、ステップS2200へ進む。指定情報がない場合、ステップS2400へ進む。
 <ステップS2200>
 処理装置200は、当該フレームの圧縮画像上で対象物のパターンを探索し、パターンにマッチする領域があるか否かを判断する。当該フレームの画像中にパターンにマッチする領域がある場合、処理装置200は、出力装置250に表示されている当該フレームの圧縮画像上に、マッチングされた対象物の領域を表示してもよい。表示は、例えば対象物の領域を囲む矩形枠もしくはそれ以外の形状の枠、または塗りつぶし等の表示であり得る。対象物の領域の表示は、記号または文字による表示でもよい。表示の後、ステップS2300に進む。当該フレームの画像中に対象物のパターンにマッチする領域がない場合、ステップS2400に進む。
 <ステップS2300>
 処理装置200は、対象物の指定情報の変更入力の有無を判断する。本実施形態では、ユーザが動画撮影中に表示された圧縮画像を見ながら対象物の指定を変更することができる。変更入力の有無は、対象物の変更を指示する入力が入力装置240から入力されたか否かによって判断され得る。例えば、出力装置250に表示されている対象物の領域以外の領域または位置を指定する入力が入力装置240から入力されたか否かによって変更入力の有無が判断され得る。変更入力がある場合、ステップS2400へ進む。変更入力がない場合、ステップS2500へ進む。
 <ステップS2400>
 処理装置200は、入力装置240のポインティングデバイスによって指定された、出力装置250に表示された圧縮画像上の位置の情報を取得する。例えば、処理装置200は、当該フレームの画像中のエッジで囲まれた閉空間のうち、入力装置240から入力された画像上の位置を含む領域を対象物の領域とし、その領域に含まれる特徴点(すなわち対象物のパターン)を示す情報を、新たな対象物の指定情報として生成する。ステップS2400の後、ステップS1800へ進む。
 <ステップS2500>
 処理装置200は、ステップS2200でパターンマッチングされた当該フレームの画像中の対象物の特徴点に対応する特徴点を、直前のフレームの画像から探索する。処理装置200は、さらに、直前のフレームの画像中の特徴点の位置を始点とし、当該フレームの画像中の特徴点の位置を終点とするベクトルを動きベクトルとして生成する。
 図11は、ステップS2500の動作のより詳細な例を示すフローチャートである。この例において、ステップS2500は、ステップS2510およびS2520を含む。以下、各ステップの動作を説明する。
 <ステップS2510>
 処理装置200は、直前のフレームの画像と、ステップS2100で取得された対象物のパターンとの間でマッチングを行い、当該パターンにマッチする特徴点を特定する。
 <ステップS2520>
 処理装置200は、ステップS2510でマッチングされた直前のフレームの画像中の対象物のパターンを示す特徴点の位置を始点とし、ステップS2200でマッチングされた当該フレームの画像中の対象物のパターンを示す特徴点の位置を終点とするベクトルを、動きベクトルとして生成する。
 ステップS2500の後、図6に示す例と同様、ステップS1500からS1800の動作を行う。ステップS1800の後、ステップS1100に戻る。
 以上の処理により、撮影中に対象物の指定が変更される場合であっても、指定された対象物を含む領域のハイパースペクトル画像を生成することができる。
 以上のように、本変形例における処理装置200は、指定された対象物の特徴点を含むパターンに基づいて、時間的に連続する複数のフレームの圧縮画像間でそれぞれマッチングを行い、フレーム間の対象物の位置のずれを示す動きベクトルを生成する。この動きベクトルに基づいてぶれを補正するように当該フレームの圧縮画像から対象物を含む部分領域を抽出し、部分領域について復元処理を行う。つまり、処理装置200は、当該圧縮画像における部分領域以外の領域の復元処理を行わない。これにより、動画像における対象物の位置を安定させることができる。部分領域を復元処理の対象とすることで計算量を削減できる。さらに、撮影の対象物の指定が変化した場合でも、指定された対象物のハイパースペクトル画像を生成することができる。対象物が変化したフレームでは、処理装置200は、それまでの対象物の位置に合わせる補正処理を行わず、新たに指定された対象物の位置を基準位置として、以後のフレームにおけるぶれの補正処理を行う。このように、処理装置200は、ユーザによる対象物の指定の変更に応答して容易に対象物を切り替えることができる。実施形態1のように画像全体で特徴点のマッチングを行い、特徴点の動きベクトルをクラスタリングして補正の対象にするベクトルを選択するのが困難な場合(例えば、背景に動く物体が多く存在し、視野内に多くの様々なベクトルのクラスタが存在する場合)においても、動画像中の対象物の位置を安定させることができる。例えば、視野内に移動物が多く写り込んでいる場合、または、視野内にプロジェクションのような変化または移動する図形が多く存在する場合、動きベクトルのクラスタが多く生成され、補正に用いるべき動きベクトルを選択することが困難である。このような場合でも、本変形例においては、対象物の選択が可能であるため、動画像中の対象物の位置を安定させることができる。
 なお、本変形例では、ユーザが出力装置250におけるディスプレイに表示された圧縮画像を確認し、入力装置240におけるポインティングデバイスを用いて対象物を指定する場合を想定したが、外部のシステムが対象物を指定してもよい。その場合、ステップS2400において出力装置250は、当該フレームの圧縮画像を外部のシステムに出力するように構成され得る。外部のシステムは、新たな対象物の特徴点の位置情報と、マッチング用のパターンを示す情報とを入力装置240に送信するように構成され得る。その場合、外部のシステムは、圧縮画像から対象物を決定する認識装置を含み得る。
 (実施形態1の変形例2)
 実施形態1では、処理装置200は、時間的に連続する複数のフレームの圧縮画像間でマッチングを行って動きベクトルを特定し、その動きを補正するように各フレームの圧縮画像から対象物に対応する部分領域を抽出する。実施形態1の変形例1では、ユーザまたは外部のシステムによって視野内の対象物が指定され、処理装置200は、指定された対象物をフレームごとにパターンマッチングしてその動きベクトルを特定し、その動きを補正するように各フレームの圧縮画像から対象物に対応する部分領域を抽出する。
 これに対し、本変形例では、処理装置200は、時間的に連続する複数のフレーム間で特徴点のマッチングを行い、複数の動きベクトルに含まれる共通成分を取り出し、当該共通成分に基づいて補正を行う。
 本変形例における撮像システム10の構成は、図5に示す実施形態1における構成と同様であるので説明を省略する。
 図12は、本変形例における処理装置200の動作の一部を示すフローチャートである。本変形例における動作は、図6に示す実施形態1における動作と同様であるが、ステップS1400の動作の詳細が実施形態1とは異なる。図12は、本変形例におけるステップS1400の動作の詳細を示している。図12に示すフローチャートは、図8に示すフローチャートにおけるステップS1450が、ステップS3010およびS3020に置換されたものである。ステップS1410からS1440の動作は図12に示す動作と同じである。以下、ステップS3010およびS3020の動作を説明する。
 <ステップS3010>
 処理装置200は、ステップS1440で生成した直前フレームの画像中の各特徴点の位置と当該フレーム画像中の対応する特徴点の位置とを結ぶベクトルをクラスタリングして得られたクラスタごとに、そのクラスタに含まれる全ベクトルの平均ベクトルをそのクラスタの代表ベクトルとして生成する。なお、平均ベクトルに代えて、ベクトルの分布状態に基づいて代表ベクトルを生成または選択してもよいし、これ以外の方法で代表ベクトルを生成してもよい。
 <ステップS3020>
 処理装置200は、ステップS3010で生成したクラスタごとの代表ベクトルのすべてを平均化したベクトルを生成する。処理装置200は、生成した全クラスタの代表ベクトルの平均ベクトルを、直前フレームから当該フレームまでの撮像装置100と視野内の被写体との相対的な動きの共通成分とみなし、補正処理のための動きベクトルとして処理する。
 以上のように、本変形例では、視野内の特定の対象物を含むいくつかの被写体の動きベクトルの共通成分を補正処理のための動きベクトルとすることにより、フレーム間の全体的な動きの影響を抑制しながら動きのある被写体の移動はそのまま残る処理が可能になる。
 (実施形態1の変形例3)
 実施形態1の変形例2では、直前フレームの画像中の特徴点の位置と当該フレームの画像中の特徴点の位置とを結ぶベクトルをクラスタリングして得られたクラスタごとに代表ベクトルが生成され、代表ベクトルの平均が、画像全体の動きを代表する動きベクトルとして処理される。
 これに対し、本変形例における処理装置200は、直前フレームと当該フレームとの間で対応の取れた特徴点によって生成されたベクトルをクラスタリングすることなく利用して、画像全体の動きを代表する動きベクトルを生成する。以下、変形例2と異なる点を説明する。
 図13は、本変形例における処理装置200の動作の一部を示すフローチャートである。本変形例においても、図6に示す動作が行われるが、ステップS1400の動作の詳細が、図8および図12に示す動作とは異なっている。本変形例では、ステップS1430の後、以下のステップS3110の処理が行われる。
 <ステップS3110>
 処理装置200は、ステップS1430で求めた、直前フレームと当該フレームとの間で対応の取れた特徴点によって生成されたベクトルのすべてを用いて、動画像の共通の動き成分を示す動きベクトルを生成する。共通の動き成分は、例えば図7Cに示す圧縮画像の補正を行った場合に全ベクトルの絶対値の和を最小にする動きベクトルを求めることで生成され得る。
 なお、ベクトルの大きさについて、ステップS1430で求められたベクトルをそのままステップS3110で用いてもよいが、ベクトルの始点位置によって重みをつけて、ステップS3110の動作を行ってもよい。例えば、画像の中心の重みを大きく設定し、画像中心からの距離が大きくなるに従って重みが小さくなるような重みづけを行ったベクトルについて、ステップS3110の処理を行ってもよい。このような重みづけにより、画像の中心部にある被写体(例えば復元対象物)の動きの影響を抑制しやすくなる。例えば、画像の中心の重みを小さく設定し、画像中心からの距離が大きくなるに従って、重みが大きくなるような重みづけを行ったベクトルについて、ステップS3110の処理を行ってもよい。このような重みづけにより、画像の周辺部にある被写体(例えば背景)の動きの影響を抑制しやすくなる。
 このように、変形例3における処理装置200は、直前フレームと当該フレームとの間で対応の取れた特徴点によって生成されたベクトルをクラスタリングすることなく利用して、画像全体の動きを補正するための動きベクトルを生成する。補正ベクトルの計算時に直前フレームと当該フレームとの間で対応の取れた特徴点によって生成されたベクトルに位置に応じた重みづけを行うことで、動きの抑制に傾向をつけることができる。これにより、動画像内で中心付近の対象物を安定させたり、背景を安定させたりすることができる。
 (実施形態2)
 次に、本開示の第2の実施形態を説明する。
 実施形態1およびその変形例1から3では、対象物(または視野内の他の被写体)と撮像装置との相対的な動きを検出するために、撮像装置100によって撮影された時間的に連続する複数のフレームの画像の間でマッチングが行われる。これに対して、本実施形態では、撮像装置100の動きを検出する1つ以上のセンサが用いられる。センサは、例えば加速度センサおよび角速度センサの少なくとも一方を含み得る。センサは、例えば慣性計測装置(Inertial Measurement Unit:IMU)を含んでいてもよい。慣性計測装置は、例えば、加速度センサ、回転角加速度センサ、ジャイロセンサ、地磁気センサ、気圧センサ、および湿度センサのパッケージであり得る。以下では、センサが慣性計測装置である場合の例を説明する。
 図14は、本実施形態における撮像システム10の構成を示すブロック図である。慣性計測装置260が追加された点を除けば、図5に示す実施形態1の構成と同様である。
 慣性計測装置260は、撮像システム10の3軸方向(x、y、z軸方向とする)の加速度および回転角加速度を計測し、それらの6個の計測値を出力する。
 処理装置200は、撮像装置100によって撮影された圧縮画像をフレームごとに取得する。処理装置200はまた、慣性計測装置260によって計測されたシステム10の移動に伴う加速度および回転角加速度の情報を取得する。処理装置200は、フレームごとに、直前フレームの撮影時から当該フレームの撮影時までの時間に計測された3軸方向の加速度および回転角加速度を2回積分して3軸方向の移動距離および回転角を計算する。これにより、撮像装置100の移動および姿勢の変化を求め、画像補正のための動きベクトルを決定することができる。
 図15は、本実施形態における撮像システム10の動作を示すフローチャートである。図15に示すフローチャートは、図6に示すフローチャートにおけるステップS1300およびステップS1400がステップS4100に置き換わり、ステップS1500がステップS4200に置き換わったものである。以下、ステップS4100およびS4200の動作を説明する。
 <ステップS4100>
 処理装置200は、慣性計測装置260から、撮像装置100のフレーム間隔の間の3軸方向の加速度および3軸方向の回転角加速度の情報を取得する。例えばフレームレートが60Hzで、フレーム間隔が16msの場合、処理装置200は、直前のフレームと現フレームとの間の16msの間の3軸方向の加速度および3軸方向の回転角加速度の情報を取得する。
 <ステップS4200>
 処理装置200は、ステップS4100で取得した3軸方向の加速度および3軸方向の回転角加速度の情報から、補正処理に用いられる補正ベクトルを生成する。例えばフレーム間隔が16msの場合、処理装置200は、16msの間の3軸方向の加速度を2回積分して3軸方向の移動量を計算する。さらに、16msの間の3軸方向の回転角速度を2回積分して3軸方向の回転角を計算する。処理装置200は、3軸方向の移動量および3軸方向の回転角を、慣性計測装置260の座標系の原点を始点とするベクトルに変換する。当該ベクトルの逆向きのベクトルを、当該座標系におけるイメージセンサ160の受光面を含む平面に射影したベクトルを、補正ベクトルとして生成することができる。この補正ベクトルは、続くステップS1600における圧縮画像から部分画像を切り出す処理に用いられる(図7C参照)。ステップS1600以降の処理は図6に示す処理と同じである。
 以上のように、本実施形態によれば、撮像システム10は、圧縮画像を連続して撮影することで動画像を撮影する。さらに、撮像システム10は、撮影中に計測された3軸方向の加速度および3軸方向の回転角加速度の情報を用いて、直前のフレームから当該フレームまでの間に撮像装置100が動いたことに起因する画像上のずれを動きベクトルとして求める。その動きを補正するように各フレームの圧縮画像から対象物を含む部分領域を切り出して、切り出し領域について復元処理を行う。つまり、撮像システム10は、圧縮画像における部分領域以外の領域の復元処理を行わない。これにより、撮像装置100の移動あるいはぶれに起因する各フレームの画像のぶれが軽減されたハイパースペクトル画像の動画を生成することができる。さらに、ぶれ補正のための部分画像の切り出しを、多数のバンドの画像ではなく圧縮画像に対して行うため、計算量を大幅に削減することができる。さらに、撮影によって取得された各フレームの圧縮画像の全体ではなく、ぶれ補正のために切り出された一部の領域について復元処理を行うため、復元処理の計算量も削減することができる。
 なお、撮像システム10は、慣性計測装置260以外のセンサ、例えばジャイロセンサを備えていてもよい。ジャイロセンサを用いて撮像システム10の移動または振動と回転に関する情報を取得することができる。あるいは、撮像システム10は、撮像装置100とは別に、撮像装置100の全視野を含む視野を持つ別の撮像装置(すなわちカメラ)を備えていてもよい。当該別の撮像装置によって撮影された画像を用いて撮像システム10の移動または振動と回転に関する情報を取得してもよい。別の撮像装置を用いた移動または振動と回転に関する情報の取得は、フレーム間のマッチングによるものであってもよいし、それ以外の方法によるものであってもよい。あるいは、撮像システム10とは別の固定カメラ等のセンサにより、撮像システム10の動きがセンシングされ、通信によって撮像システム10が固定センサから動き情報を取得してもよい。
 上記のように、実施形態1では、圧縮画像のフレーム間マッチングによって動きベクトルが生成される。実施形態2では、撮像装置100以外のIMUまたは他のカメラ等のセンサによって取得された情報に基づいて動きベクトルが生成される。実施形態1,2の構成を組み合わせてもよい。例えば、IMUまたはジャイロセンサ等のセンサを用いて撮像装置100の動きを検出し、検出した動きの量および方向に応じて、圧縮画像のフレーム間マッチングにおける探索範囲を限定してもよい。そのような動作により、計算量をさらに削減することができる。
 上記の各実施形態およびその各変形例では、撮像システム10の処理装置200は、ハイパースペクトル画像の動画を出力するが、必ずしもハイパースペクトル画像の動画を出力する必要はない。例えば、処理装置200は、ハイパースペクトル画像を構成する複数の波長バンドの分光画像のうちの1つまたは複数の分光画像を選択し、選択した分光画像に基づく動画像を出力してもよい。
 上記の各実施形態およびその各変形例において、撮像システム10は、1つの装置として構成され得る。撮像システム10は、車両、ドローン、ロボットなどの移動体に搭載されてもよい。撮像システム10における撮像装置100と処理装置200とが互いに離れた場所に設けられていてもよい。以下、そのような構成の一例を説明する。
 図16は、撮像装置100と処理装置200とが離れた場所に設置されている撮像システム20の構成例を示す図である。この撮像システム20は、対象物の動画像を撮影する第1装置300と、信号処理を行う第2装置400とを備える。第1装置300と第2装置400は、インターネットなどのネットワーク30を介して通信可能に接続されている。ネットワーク30は、無線および有線のいずれの通信方式のネットワークでもよい。
 第1装置300は、撮像装置100と、通信装置310とを備える。第2装置400は、通信装置410と、処理装置200と、記憶装置230と、出力装置250とを備える。撮像装置100、処理装置200、記憶装置230、および出力装置250は、図5に示す対応する装置と同様の機能を備える。第1装置300は、さらに、慣性計測装置などの撮像装置100の動きを計測するセンサを備えていてもよい。第2装置400は、さらに、図9に示す入力装置240を備えていてもよい。
 通信装置310および通信装置410は、第1装置300と第2装置400との間のデータ通信を行う。通信装置310は、撮像装置100によって取得された圧縮画像を送信する。通信装置410は、当該圧縮画像を受信する。処理装置200は、通信装置410が受信した圧縮画像に対して、前述のいずれかの実施形態またはその変形例と同様の処理を行う。これにより、波長バンドごとの分光画像を生成することができる。
 以上の各実施形態およびその各変形例において、処理装置200は1つの装置であるが、処理装置200の機能が複数の装置に分散されていてもよい。そのような複数の装置は、互いに離れた場所に設置され、ネットワークを介して通信可能に接続されていてもよい。記憶装置230についても同様に、1つの装置であってもよいし、複数の分離した装置の集合体であってもよい。
 (その他1)
 本開示は、上述した各実施形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を各実施形態もの、当業者が思いつく各種変形を各変形例に施したもの、異なる実施形態における構成要素を組み合わせて構築される形態、異なる変形例における構成要素を組み合わせて構築される形態、任意の実施形態における構成要素と任意の変形例における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
 (その他2)
 以下において、処理装置がどのようにして計算量を減らすことができるかについて、実施形態1の変形例1で説明された撮像システム10を用いて説明する。以下において説明される、本変形例における処理は、実施形態1の変形例1以外の変形例、実施形態1、実施形態2のそれぞれで説明された撮像システムおいて実行されてもよい。
 本変形例は下記に示すようなものであってもよい。
 第1波長から第2波長における波長に対する透過率の特性が互いに異なる複数のフィルタを含むフィルタアレイと、前記第1波長は前記第2波長より小さく、
 イメージセンサと、
 プロセッサを含み、
 前記プロセッサは、前記イメージセンサに対象物を第1時刻に撮像させ、これにより、前記イメージセンサは第1画像を出力し、前記第1画像は前記フィルタアレイからの第1光に基づき、前記イメージセンサは前記第1光を受け取り、
  前記第1光は対象物から前記フィルタアレイに入射する第2光に基づき、
 前記プロセッサは、前記第1画像に含まれる第1領域を決定し、
  前記第1画像は前記第1領域と第2領域を含み、
  前記第1領域は前記対象物を含み、前記第1領域は複数の第1画素を含み、
  前記第2領域は前記対象物を含まず、前記第2領域は複数の第2画素を含み、
  前記第1領域は前記第2領域に含まれる領域を含まず、
  前記第2領域は前記第1領域に含まれる領域を含まず、
 前記プロセッサは、前記第1画像と行列Hに基づいて、複数の第3画素に対応する複数の第1画素値を算出し、
 前記プロセッサは、前記第1画像と行列Hに基づいて、複数の第4画素に対応する複数の第2画素値を算出せず、
  前記複数の第3画素と前記複数の第4画素は、画像I(1k)に含まれ、
  前記複数の第3画素は前記複数の第1画素と対応し、前記複数の第4画素は前記複数の第2画素と対応し、
  前記画像I(1k)は第k波長域Wkに対応し、
  1≦k≦Nであり、kは整数、Nは整数であり、前記第k波長域Wkに含まれる最小波長は前記第1波長以上であり、前記第k波長域Wkに含まれる最大波長は前記第2波長より以下であり、
 前記プロセッサは、前記イメージセンサに前記対象物を第2時刻に撮像させ、これにより、前記イメージセンサは第2画像を出力し、前記第2画像は前記フィルタアレイからの第3光に基づき、前記イメージセンサは前記第3光を受け取り、
  前記第3光は前記対象物から前記フィルタアレイに入射する第4光に基づき、
  前記第2時刻は前記第1時刻より遅く、
 前記プロセッサは、前記第2画像に含まれる第3領域を決定し、
  前記第2画像は前記第3領域と第4領域を含み、
  前記第3領域は前記対象物を含み、前記第3領域は複数の第5画素を含み、
  前記第4領域は前記対象物を含まず、前記第4領域は複数の第6画素を含み、
  前記第5領域は前記第6領域に含まれる領域を含まず、
  前記第6領域は前記第5領域に含まれる領域を含まず、
 前記プロセッサは、前記第2画像と前記行列Hに基づいて、複数の第7画素に対応する複数の第3画素値を算出し、
 前記プロセッサは、前記第2画像と前記行列Hに基づいて、複数の第8画素に対応する複数の第4画素値を算出せず、
  前記複数の第7画素と前記複数の第8画素は、画像(2k)に含まれ、
  前記複数の第7画素は前記複数の第5画素と対応し、前記複数の第8画素は前記複数の第6画素と対応し、
  前記画像I(2k)は第k波長域Wkに対応し、
 撮像システム。
 前記プロセッサは、ユーザによって指定された情報に基づいて、前記第1領域を決定してもよい。
 前記プロセッサは、前記第2画像に含まれる一または複数の特徴点と、前記第1領域に含まれる一または複数の特徴点に基づいて、前記第3領域を決定してもよい。
 図17~21を用いて、本変形例における撮像システム10の動作を以下に述べる。図17は、本変形例における撮像システム10の動作を示すフローチャートである。図18は、第1画像Ig1、行列g1’、行列g1の関係を示す図である。図19は、第1画像Ig1、画像I(1k)の関係を示す図である。図20は、第2画像Ig2、行列g2’、行列g2の関係を示す図である。図21は、第2画像Ig2、画像I(2k)の関係を示す図である。
 撮像システム10は、撮像装置100と、処理装置200と、記憶装置230を含む。記憶装置230はメモリと呼んでもよい。当該メモリは、1または複数のメモリあってもよい。撮像装置100は、フィルタアレイ110と、イメージセンサ160を含む。
 フィルタアレイ110は、複数のフィルタを含む。複数のフィルタに対応する複数の第1波長から第2波長における波長に対する透過率の特性は互いに異なる(図2A~図2D参照)。図3A及び図3Bの説明で記載された対象波長域Wの下限が第1波長、その上限が第2波長であってもよい。例えば、対象波長域Wが可視光の波長域の場合、第1波長は約400nm、第2波長域は約700nmであってもよい。
 処理装置200は、プロセッサ(図示せず)を含む。プロセッサは1または複数のプロセッサであってもよい。
 メモリは複数の命令(instructions)を記憶する。当該複数の命令はプロセッサによって実行される。複数の命令は図17に示すS11000に示す処理、~、S16000に示す処理を含む。
 (S11000)
 プロセッサは、イメージセンサ160に対象物Sを第1時刻に撮像させる。これにより、イメージセンサ160は第1画像Ig1を出力する。第1画像Ig1はフィルタアレイ110からの第1光に基づき、イメージセンサ160は第1光を受け取る。第1画像Ig1はメモリに格納される。第1光は対象物Sからフィルタアレイ110に入射する第2光に基づく。
 (S12000)
 プロセッサは、第1画像Ig1に含まれる第1領域A11を決定する。プロセッサは、ユーザによって指定された情報に基づいて、第1領域A11を決定してもよい(例えば、実施形態1の変形例1のS2400参照)。
 第1画像Ig1はm×n個の画素を有する。m×n個の画素の各々は画素値を有する。
 第1画像Ig1における(y,x)=(i,j)に位置する画素s1(i j)の画素値は、g1(i j)である(図18参照)。1≦i≦m、1≦j≦n、iは1以上の整数、jは1以上の整数、nは1以上の整数、mは1以上の整数である。
 第1画像Ig1は第1領域A11と第2領域A12を含む。第1領域A11は対象物Sを含む。第2領域A12は対象物Sを含まない。
 第1領域A11は複数の第1画素であるs1(1 1)、・・・、s1(1 q)、・・・、s1(p 1)、・・・、s1(p q)を含む。
 第2領域A12は複数の第2画素であるs1(1 q+1)、・・・、s1(1 n)、・・・、s1(p q+1)、・・・、s1(p n)、・・・、s1(m 1)、・・・、s1(m n)を含む。
 第1領域A11は第2領域A12に含まれる領域を含まない。
 第2領域A12は第1領域A11に含まれる領域を含まない。
 第1画像Ig1に含まれる複数の画素の複数の画素値は、m行n列の行列g1’で表現される(図18参照)。
 第1画像Ig1に含まれる複数の画素の複数の画素値は、m×n行1列の行列g1で表現される(図18参照)。
 (S13000)
 プロセッサは、第1処理を実行する。第1処理は、行列Hと第1画像Ig1に基づく行列g1に基づいて、複数の第3画素に対応する複数の第1画素値を算出し、かつ、行列H及び第1画像Ig1に基づく行列g1に基づいて、複数の第4画素に対応する複数の第2画素値を算出しない処理である。以下に第1処理を説明する。
 プロセッサは、行列Hと第1画像Ig1に基づく行列g1に基づいて、複数の第3画素に対応する複数の第1画素値を算出する(式(1)(2)、図19、参照)。
 複数の第3画素は、t1k(1 1)、・・・、t1k(1 q)、・・・、t1k(p 1)、・・・、t1k(p q)である。
 複数の第1画素値は、f1k(1 1)、・・・、f1k(1 q)、・・・、f1k(p 1)、・・・、f1k(p q)である。
 プロセッサは、行列Hと第1画像Ig1に基づく行列g1に基づいて、複数の第4画素に対応する複数の第2画素値を算出しない(式(1)(2)、図19、参照)。
 複数の第4画素は、t1k(1 q+1)、・・・、t1k(1 n)、・・・、t1k(p q+1)、・・・、t1k(p n)、・・・、t1k(m 1)、・・・、t1k(m n)である。
 複数の第2画素値は、f1k(1 q+1)、・・・、f1k(1 n)、・・・、f1k(p q+1)、・・・、f1k(p n)、・・・、f1k(m 1)、・・・、f1k(m n)である。複数の第2画素値の各々は、予め定められた値、例えばゼロであってもよい。
 画像I(1k)は複数の第3画素と複数の第4画素を含む。複数の第3画素は複数の第1画素と対応し、複数の第4画素は複数の第2画素と対応する。画像I(1k)は第k波長域Wkに対応する(図19参照)。
 1≦k≦Nである(図3A、図3B参照)。kは整数、Nは整数であり、第k波長域Wkに含まれる最小波長は第1波長以上であり、第k波長域Wkに含まれる最大波長は第2波長以下である。画像I(11)~画像I(1N)の全てが生成されてもよい。画像I(11)~画像I(1N)に含まれる1つの画像が生成され、かつ、画像I(11)~画像I(1N)に含まれる他の(N-1)個の画像が生成されなくてもよい。画像I(11)~画像I(1N)に含まれるα個の画像が生成され、かつ、画像I(11)~画像I(1N)に含まれる他の(N-α)個の画像が生成されなくてもよい。2≦α≦N、αは整数であってもよい。
 (S14000)
 プロセッサは、イメージセンサ160に対象物Sを第2時刻に撮像させる。これにより、イメージセンサ160は第2画像Ig2を出力する。第2画像Ig2はフィルタアレイ110からの第3光に基づき、イメージセンサ160は第3光を受け取る。第2画像Ig2はメモリに格納される。第3光は対象物Sからフィルタアレイ110に入射する第4光に基づく。第1時刻、第2時刻は所定のフレームレートに基づいて決定される。{(第2時刻)-(第1時刻)}=1/(フレームレート)であってもよい。
 (S15000)
 プロセッサは、第2画像Ig2に含まれる第3領域A21を決定する。プロセッサは、第2画像Ig2に含まれる一または複数の特徴点と、領域A11に含まれる一または複数の特徴点に基づいて、第3領域A21を決定してもよい(例えば、実施形態1の変形例1のS2100、S2200参照)。第2画像Ig2はm×n個の画素を有する。m×n個の画素の各々は画素値を有する。
 第2画像Ig2における(y,x)=(i,j)に位置する画素s2(i j)の画素値は、g2(i j)である(図20参照)。1≦i≦m、1≦j≦n、iは1以上の整数、jは1以上の整数、nは1以上の整数、mは1以上の整数である。
 第2画像Ig2は第3領域A21と第4領域A22を含む。第3領域A21は対象物Sを含む。第4領域A22は対象物Sを含まない。
 第3領域A21は複数の第5画素であるs2(1 q)、・・・、s2(1 n)、・・・、s2(p q)、・・・、s2(p n)を含む。
 第4領域A22は複数の第5画素であるs2(1 1)、・・・、s2(1 q-1)、・・・、s2(p 1)、・・・、s2(p q-1)、・・・、s2(m 1)、・・・、s2(m n)を含む。
 第3領域A21は第4領域A22に含まれる領域を含まない。
 第4領域A22は第3領域A21に含まれる領域を含まない。
 第2画像Ig2に含まれる複数の画素の複数の画素値は、m行n列の行列g2’で表現される(図20参照)。
 第2画像Ig2に含まれる複数の画素の複数の画素値は、m×n行1列の行列g2で表現される(図20参照)。
 (S16000)
 プロセッサは、第2処理を実行する。第2処理は、行列Hと第2画像Ig2に基づく行列g2に基づいて、複数の第7画素に対応する複数の第3画素値を算出し、かつ、行列H及び第2画像Ig2に基づく行列g2に基づいて、複数の第8画素に対応する複数の第4画素値を算出しない処理である。以下に第2処理を説明する。
 プロセッサは、行列Hと第2画像Ig2に基づく行列g2に基づいて、複数の第7画素に対応する複数の第3画素値を算出する(式(1)(2)、図21、参照)。
 複数の第7画素は、t2k(1 q)、・・・、t2k(1 n)、・・・、t2k(p q)、・・・、t2k(p n)である。
 複数の第3画素値は、f2k(1 q)、・・・、f2k(1 n)、・・・、f2k(p q)、・・・、f2k(p n)である。
  プロセッサは、行列Hと第2画像Ig2に基づく行列g2に基づいて、複数の第8画素に対応する複数の第4画素値を算出しない(式(1)(2)、図19、参照)。
 複数の第8画素は、t2k(1 1)、・・・、t2k(1 q-1)、・・・、t2k(p 1)、・・・、t2k(p q-1)、・・・、t2k(m 1)、・・・、t2k(m n)である。
 複数の第4画素値は、f2k(1 1)、・・・、f2k(1 q-1)、・・・、f2k(p 1)、・・・、f2k(p q-1)、・・・、f2k(m 1)、・・・、f2k(m n)である。複数の第4画素値の各々は、予め定められた値、例えばゼロであってもよい。
 画像I(2k)は複数の第7画素と複数の第8画素を含む。複数の第7画素は複数の第5画素と対応し、複数の第8画素は複数の第6画素と対応しする。画像I(2k)は第k波長域Wkに対応する(図21参照)。
 1≦k≦Nである(図3A、図3B参照)。画像I(21)~画像I(2N)の全てが生成されてもよい。画像I(21)~画像I(2N)に含まれる1つの画像が生成され、かつ、画像I(21)~画像I(2N)に含まれる他の(N-1)個の画像が生成されなくてもよい。画像I(21)~画像I(2N)に含まれるα個の画像が生成され、かつ、画像I(21)~画像I(2N)に含まれる他の(N-α)個の画像が生成されなくてもよい。
 本開示の技術は、ハイパースペクトル撮像技術を用いて連続的な計測、評価、または監視等を行う用途に広く利用可能である。例えば、本開示の技術は、スマートフォンなどの携帯端末、手持ちで利用または移動体等に搭載される小型ムービーカメラ、またはハイパースペクトル撮影を行うロボットに適用することができる。
 10   撮像システム
 30   ネットワーク
 70   対象物
 100  撮像装置
 110  フィルタアレイ
 120  圧縮画像
 140  光学系
 160  イメージセンサ
 200  処理装置
 220  ハイパースペクトル画像
 230  記憶装置
 240  入力装置
 250  出力装置
 260  慣性計測装置
 300  第1装置
 400  第2装置

Claims (12)

  1.  対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置と、
     処理装置と、
    を備え、
     前記処理装置は、
     前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物の領域を含む部分領域を抽出し、
     前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成する、
     撮像システム。
  2. 前記撮像装置は、前記圧縮画像を繰り返し取得し、
     前記処理装置は、前記圧縮画像の経時変化に基づいて前記対象物と前記撮像装置との相対的な動きを検出し、前記相対的な動きに基づいて前記部分領域を決定する、
     請求項1に記載の撮像システム。
  3.  前記撮像装置は、
     分光透過率が互いに異なる複数のフィルタを含むフィルタアレイと、
     前記フィルタアレイを通過した光を検出して前記圧縮画像を示す信号を出力するイメージセンサと、
    を含む、
     請求項1または2に記載の撮像システム。
  4.  前記フィルタアレイの前記分光透過率に応じた行列データを記憶する記憶装置をさらに備え、
     前記処理装置は、前記行列データのうち、前記部分領域に対応する部分に基づいて、前記複数の分光画像を生成する、
     請求項3に記載の撮像システム。
  5.  前記処理装置は、第1の時刻に前記イメージセンサから出力された第1圧縮画像を示す信号と、前記第1の時刻よりも後の第2の時刻に前記イメージセンサから出力された第2圧縮画像を示す信号とに基づくマッチング処理により、前記第2圧縮画像から前記部分領域を抽出する、
     請求項3または4に記載の撮像システム。
  6.  前記処理装置は、
     前記第2圧縮画像の前記部分領域に対応する前記フィルタアレイの一部における分光透過率に応じた行列データに基づいて、前記部分領域のデータから前記複数の分光画像を生成する、
     請求項5に記載の撮像システム。
  7.  前記対象物と前記撮像装置との相対的な動きを検出するセンサをさらに備え、
     前記処理装置は、前記センサから出力された信号に基づいて、前記部分領域を決定する、
     請求項1から4のいずれかに記載の撮像システム。
  8.  前記センサは、加速度センサおよび角速度センサの少なくとも1つのセンサを含み、
     前記処理装置は、前記センサから出力された前記信号に基づいて、前記撮像装置の動きベクトルを決定し、前記動きベクトルに基づいて前記部分領域を決定する、請求項7に記載の撮像システム。
  9.  前記処理装置は、
     ディスプレイに前記圧縮画像を表示させ、
     前記ディスプレイに、前記圧縮画像における動き補償の対象となる前記対象物をユーザに指定させるためのグラフィカルユーザインターフェース(GUI)を表示させる、
     請求項1から8のいずれかに記載の撮像システム。
  10.  前記処理装置は、
     前記撮像装置からの前記圧縮画像を示す信号の取得、前記部分領域の抽出、および前記複数の分光画像の生成を繰り返し、
     前記複数の分光画像のそれぞれの動画像データを生成する、
     請求項1から9のいずれかに記載の撮像システム。
  11.  コンピュータによって実行される方法であって、
     対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置から、前記圧縮画像を示す信号を取得することと、
     前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物の領域を含む部分領域を抽出することと、
     前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成することと、
     を含む方法。
  12.  コンピュータが読み取り可能な非一時的記録媒体に格納されたコンピュータプログラムであって、
     対象物からの4つ以上の波長バンドの光の情報が圧縮された圧縮画像を取得する撮像装置から、前記圧縮画像を示す信号を取得することと、
     前記圧縮画像から、前記対象物と前記撮像装置との相対的な動きを補償するように、前記対象物の領域を含む部分領域を抽出することと、
     前記圧縮画像における前記部分領域のデータに基づき、複数の波長バンドに対応する複数の分光画像を生成することと、
     をコンピュータに実行させる、コンピュータプログラム。
PCT/JP2022/042583 2021-12-03 2022-11-16 撮像システムおよび撮像方法 WO2023100660A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-197194 2021-12-03
JP2021197194 2021-12-03

Publications (1)

Publication Number Publication Date
WO2023100660A1 true WO2023100660A1 (ja) 2023-06-08

Family

ID=86612124

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/042583 WO2023100660A1 (ja) 2021-12-03 2022-11-16 撮像システムおよび撮像方法

Country Status (1)

Country Link
WO (1) WO2023100660A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015092339A (ja) * 2013-10-15 2015-05-14 ジーイー・アビエイション・システムズ・エルエルシー スペクトル的および空間的物体モデルから識別する方法
WO2015200038A1 (en) * 2014-06-26 2015-12-30 Alcatel Lucent Systems and methods for compressive sense imaging

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015092339A (ja) * 2013-10-15 2015-05-14 ジーイー・アビエイション・システムズ・エルエルシー スペクトル的および空間的物体モデルから識別する方法
WO2015200038A1 (en) * 2014-06-26 2015-12-30 Alcatel Lucent Systems and methods for compressive sense imaging

Similar Documents

Publication Publication Date Title
JP7262003B2 (ja) 撮像装置および分光システム
Kawakami et al. High-resolution hyperspectral imaging via matrix factorization
CN106456070B (zh) 成像装置和方法
US9300865B2 (en) Random imaging
WO2014185064A1 (en) Image processing method and system
JP4082714B2 (ja) 画像高解像度化装置、画像高解像度化方法、画像高解像度化プログラムおよび画像高解像度化システム
US9294675B2 (en) Image pickup apparatus capable of detecting motion vector, method of controlling the same, and storage medium
KR102269229B1 (ko) 렌즈리스 초분광 영상 이미징 방법 및 그 장치
US9324153B2 (en) Depth measurement apparatus, image pickup apparatus, depth measurement method, and depth measurement program
US9336570B2 (en) Demosaicking system and method for color array based multi-spectral sensors
WO2021246192A1 (ja) 信号処理方法、信号処理装置、および撮像システム
WO2021192891A1 (ja) 信号処理方法、信号処理装置、および撮像システム
WO2011077659A1 (ja) 画像処理装置、撮像装置、及び画像処理方法
KR20170102459A (ko) 스펙트럼 이미징 방법 및 시스템
WO2019003258A1 (ja) カメラ装置、複眼撮像装置及び画像処理方法、並びにプログラム及び記録媒体
Ramirez et al. Spectral image classification from multi-sensor compressive measurements
US20140204200A1 (en) Methods and systems for speed calibration in spectral imaging systems
CN116806304A (zh) 数据处理装置、方法及程序以及光学元件、摄影光学系统及摄影装置
WO2023100660A1 (ja) 撮像システムおよび撮像方法
US20170032501A1 (en) Image processing apparatus, image capturing apparatus, and storage medium that stores image processing program
JP2013187711A (ja) 画像処理装置、撮像装置及び画像処理方法
US11245877B2 (en) Scrolling spectral filter
KR101915883B1 (ko) 만화경을 이용한 초분광 영상 관측 방법 및 시스템
WO2023106142A1 (ja) 信号処理方法、プログラム、およびシステム
WO2023106143A1 (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: 22901093

Country of ref document: EP

Kind code of ref document: A1