Expand this Topic clickable element to expand a topic
Skip to content
Optica Publishing Group

Focal plane filter array engineering I: rectangular lattices

Open Access Open Access

Abstract

Focal planes arrays (FPA) measure values proportional to an integrated irradiance with little sensitivity to wavelength or polarization in the optical wavelength range. The measurement of spectral properties is often achieved via a spatially varying color filter array. Recently spatially varying polarization filter arrays have been used to extract polarization information. Although measurement of color and polarization utilize separate physical methods, the underlying design and engineering methodology is linked. In this communication we derive a formalism which can be used to design any type of periodic filter array on a rectangular lattice. A complete system description can be obtained from the number of unit cells, the pixel shape, and the unit cell geometry. This formalism can be used to engineer the channel structure for any type of periodic tiling of a rectangular lattice for any type of optical filter array yielding irradiance measurements.

© 2017 Optical Society of America

1. Introduction

Burgeoning developments in the polarimetric sensing community have resulted in the utilization of linear systems theory to describe polarimetric snapshot systems in a general way [1,2]. The demosaicing community has utilized the linear systems framework for some time to describe color filter arrays (CFAs) [3–10] and recently to design some spatially multiplexed filter arrays [10]. Much of the work in the demosaicing community has focused on tri-color reconstruction, due to the requirements of the human visual system [3–9], while the polarimetric community has developed some designs which increase spatial bandwidth [11–13], with a systematic approach being taken by our group [14]. Hirakawa and Wolfe [8] described a specific lattice formalism for color arrays which is general assuming no filter array subsampling; and Hao, Li, Zin, and Dubois [9] used this formalism to develop an optimization problem in order to select optimal tri-color CFAs. Yadid-Pecht did some analysis on the modulation transfer function of arbitrary pixel shapes [15]. Recent work by Jia, Barnard, and Hirakawa and by Jia, Ni, Sarangan, and Hirakawa showed spatially multiplexed channels which help to mitigate crosstalk issues for multi-spectral imaging [10,16]. We recently derived a specific physical channel structure for a conventional micropolarizer array (MPA) [17].

The tri-color constraint is typically not useful for remote sensing instruments which sense ocean color and ocean radiometry; often 5 or more spectral bands [18,19] are required. Moreover, conventional polarimetric sensing requires at least 3 filter types, and a full 3-dimensional 2nd order coherence measurement requires at least 5 filter types [20]. In this communication we generalize the results of Hirakawa and Wolfe, Jia et al, and Yadid-Pecht to any finite unit cell pattern of optical filters (on a rectangular lattice), while extending our work [14,17] addressing the physical measurement properties in order to facilitate sub-sampling and filter element shape engineering to be implemented for focal plane filter array (FPFA) design. This work is applicable to any array of filters which can measure a physical property of light as an irradiance.

The article is organized as follows: In Section 2 the physical form of a single filter element is analyzed in the Fourier (channel) domain for an element of arbitrary shape. In Section 3 this physical form is then combined into a finite array which reveals the lattice structure and Section 3.1 demonstrates that the complete physical channel structure available for engineering is a function of easily manipulated parameters.

2. Physical description

A typical tiled filter array will usually adhere to the rectangular pixel grid focal plane array (FPA) geometry. Other grid geometries, e.g. hexagonal lattices, have been shown to be more efficient in terms of bandwidth [21], however there are currently very few commercially available FPAs which offer a hexagonal lattice. In this section we derive an ideal physical model of the channel structure given the assumptions: 1) spatial integrations are disjoint, 2) filter parameters are constant over the filter element, 3) temporal integration time is ignored, and 4) the FPFA is on a regular rectangular lattice. A channel in this manuscript refers to a Dirac δ-function or an approximation to a Dirac δ-function which arises from a periodic spatial carrier structure due to the unit cell tiling of an FPA. The primary physical parameters which affect the channel structure are the filter shape, the spatial functions of the filters, and the array size.

2.1. Single filter

We make the assumption that each filter array element has the same shape and spatial attenuation function, and that the each filter element shape is compact and restricted to the filter element pitch size. This function can be represented by h(x, y) as shown in Fig. 1. A single element on the rectangular grid can be represented by h(xxj, yy) multiplied by the sum of periodic spatial filter functions [17]. Periodic spatial filter functions denote the set of filter projections over each filter type, at a specific location (xj, y). Coherence properties (e.g., polarimetric measurements) may have projections of a specific property for a specific filter type. Spectral filters can be designed so that there is only a single scalar transmission factor for each filter type. Mathematically, we define the set of possible projective measurement vectors as {a(x, y), b(x, y), · · · , v(x, y), · · · }. Given a physical irradiance property vector 𝔡(x, y) = [d0(x, y) d1(x, y) · · · dk (x, y)]T, the irradiance available to the sensor element after the filter can be defined as the inner product between the sum of the measurement vectors and the irradiance property vector (extending Hirakawa and Wolfe [8]) multiplied by the filter element transmission function:

I(x,y)=h(xxj,yy)[a0(x,y)+a1(x,y)++an(x,y)]𝔡(x,y)=h(xxj,yy)𝔪(x,y)𝔡(x,y),
under the constraint that every measurement vector element and every irradiance property vector element is non-negative. For example, a specific Stokes analyzer can be represented as a(x, y) = [a0(x, y) a1(x, y) a2(x, y) a3(x, y)]T while the irradiance data can be represented by 𝔡(x, y) = [s0(x, y) s1(x, y) s2(x, y) s3(x, y)]T. The irradiance available to the sensor is then a1(x, y) · 𝔡(x, y) = a0(x, y)s0(x, y) + a1(x, y)s1(x, y) + a2(x, y)s2(x, y) + a3(x, y)s3(x, y). The Stokes parameter definition will be modified somewhat here to be consistent with the non-negativity constraint. A polarization filter does not yield negative values in irradiance, it will vary from some non-negative minimum value to some maximum value depending on the projection. This results in a baseband channel for any irradiance filter scheme. In the Stokes calculus the s0 term is used to enforce this constraint. Here we redefine the linear Stokes filter types as
a0=a1+a0,a1=a2+a0,a2=a3+a0,
with any filter being mutually exclusive of other filters to enforce the physical constraints. This filter design for the Stokes parameters is not unique, any choice could be made as long as the filters do not violate the physical constraints.

 figure: Fig. 1

Fig. 1 Arbitrary filter shape represented by the function h(x, y), which is assumed to be compact, but not necessarily an indicator (binary) function. Notice that it is centered on (0, 0). Adapted from [17].

Download Full Size | PDF

As a general example of the scheme, a 2-band spectral measurement could be taken together with a Stokes measurement by adding 2 additional vectors and extending the length of all of the vectors. We assume disjoint spectral measurements. We can re-define the Stokes filter measurement vector as a0(x, y) = [a′0,0(x, y) a′0,1(x, y) a′0,2(x, y) 0 0]T The first color band can be defined by a1(x, y) = [0 0 0 a1,3(x, y) 0]T and the second as a2(x, y) = [0 0 0 0 a2,4(x, y)]T, totaling 5 filters types and yielding a hybrid polarization/color sensor.

Generally, a single element at (xj, y) has an irradiance transmission of

I(x,y)=h(xxj,yy)[a0(xj,y)𝔡(x,y)+a1(xj,y)𝔡(x,y)++an(xj,y)𝔡(x,y)]
prior to the spatial detector integration. Note that each an,k (xj, y) is constant over a filter element. The system description is then
h(xxj,yy)[a0(xj,y)+an(xj,y)]𝔡^
where 𝔡̂ = [1 1 · · · 1]T, i.e., uniform data. Taking the 2D Fourier transform of Eq. (4) results in
e2πi(xjξ+yη)H(ξ,η)[a0(xj,y)+an(xj,y)]𝔡^
where the Fourier transform variables are xξ, yη. The elements of an(xj, y)s corresponding to the filter element weights in Eq. (5) are constants, but are samples of some periodic function(s) [17]. Figure 2 shows a set of filter values for a single filter element to illustrate a physical example for color measurements
a0=[a0,00000]T,a1=[0a1,1000]T,a2=[00,a2,2,00]T,a3=[000a3,30]T,a4=[0000a4,4]T,
where we have dropped the location dependence on (xj, y) for brevity.

 figure: Fig. 2

Fig. 2 An example of a 5-band transmission filter element for wavelengths 443nm, 520nm, 550nm, 600nm, 660nm. This 5-band transmission is for a single filter element, corrected for the spectral integration and the quantum efficiency at the detector assuming the camera is an Andor Alta F6. This type of multi-band filter is currently being manufactured by companies like PIXELTEQ and Alluxa.

Download Full Size | PDF

Note that the multi-band filter shown in Figure 2 is a panchromatic filter. A panchromatic filter passes multiple spectral bands in some specific ratio to one another. Furthermore, we do not account for quantum efficiency, etc. in our mathematical framework, but detector phenomenology would need to be taken into account when designing the filters since the final ratio measurements are what determine the channels in the Fourier domain. The manufacture of such multi-band color filters has recently commenced (e.g., PIXELTEQ [22]).

3. Array of filter elements

The assumption that h(x, y) is compact within a bounding rectangle defined by the filter element pitch implies that we can add an array of the elements together. We can then take the Fourier transform of this sum, and interchange the summation and Fourier transform to obtain

H(ξ,η)je2πi(ξxj+ηy)[a0(xj,y)+an(xj,y)]𝔡^
We can now change the notation and rewrite Eq. (7) as;
p=0kH(ξ,η)n˜=Na0Na0m˜=Ma0Ma0e2πi(n˜Pxξ+m˜Pyη)a0,p(n˜Px,m˜Py)+p=0kH(ξ,η)n˜=Na1Na1m˜=Ma1Ma1e2πi(n˜Pxξ+m˜Pyη)a1,p(n˜Px,m˜Py)+p=0kH(ξ,η)n˜=NanNanm˜=ManMane2πi(n˜Pxξ+m˜Pyη)an,p(n˜Px,m˜Py)
where ñ, describe the filter element numbers with xj = Pxñ, y = Py, N′ + N″, M′ + M″ represent the appropriately indexed number of filter elements along x and y coordinates respectively, and Px, Py describe the pixel pitch of the array. The p index represents the sum over vector elements including the case where there is more than one irradiance projection per measurement, e.g., a0(0, 0) · 𝔡̂ = a0,0(0, 0) + a0,1(0, 0), with k being the maximum required length for any vector. We can always insert zeros to make all vectors of length k. Each line of Eq. (8) represents the channel domain description for each measurement type an (ñPx, m̃Py) of a FPFA system. The representation in Eq. (8) is general for periodic, non-periodic, or quasi-periodic arrays.

3.1. Unit cell tiling

We now assume that the filter element tiling is some integer number of unit cells of size Ty × Tx, i.e., a0,p (ñPx, m̃Py) , · · · , an,p (ñPx, m̃Py), · · · are periodic with period (Tx, Ty) when Tx, Ty ∈ ℤ, for each respective p. For this analysis we manipulate the inner part of the generic sum

n˜=NNm˜=MMe2πi(n˜Pxξ+m˜Pyη)an,p(n˜Px,m˜Py)
Dn,p,ξ,η(jPx,Py)=an,p(0,0)S(0,0)++an,p(τxPx,0)S(τxPx,0)+an,p(0,τyPy)S(0,τyPy)++an,p(τxPx,τyPy)S(τxPx,τyPy)
where
S(jPx,Py)=n˜=NjPx,PyNjPx,PyMjPx,PyMjPx,Pye2πi([n˜TxPx+OjPxPx]ξ+[m˜TyPy+OPyPy]η)
with similar results for the other sums shown in Eq. (8). Given an integer number of unit cells, the sum can be re-written as a sum of sub-sums as shown in Eqs. (10) and (11), where N′jPx,ℓPy, N″jPx,ℓPy, M′jPx,ℓPy, M″jPx,ℓPy are appropriately bounded, OjPx, OℓPy characterize the integer shift away from the (0, 0) element within a unit cell, and 0 ≤ τx < Tx, 0 ≤ τy < Ty with τx, τy ∈ ℕ respectively. See Fig. 3. Equation (10) is written in table form which conveys the geometric nature of each particular sub-sum and the link to each unit cell element location. Eq. (11) is derived directly from rearranging Eq. (9) into a sum of sub-sums with a common factor and appropriate shifting and indexing into the unit cell with the (0, 0) location being located at the lower left corner. Each sub-sum an,k (jPx, ℓPy) · S(jPx, ℓPy) is a weighted and shifted 2D Dirichlet-like kernel with continuous independent variables ξ, η [23] which is dependent on the location of a specific unit cell element and the transmission weighting of the filter at that specific location. This results in an approximation of a 2D comb function. Figure 3 shows a conceptual example of how the sub-sums are derived. Following the Dirichlet kernel derivation in Lanczos [23] each sub-sum can be rewritten as:
Dn,p,ξ,η(jPx,Py)=an,p(jPx,Py)DKξ(jPx,Py)DKη(jPx,Py)
where
DKξ(jPx,Py)=eπi(Nj,Px,PyNjPx,Py2OjPxTx)TxPxξ{sin[TxPx(NjPx,Py+NjPx,Py+1)πξ]sin(TxPxπξ)}
and
DKη(jPx,Py)=eπi(Nj,Px,PyMjPx,Py2OPyTy)TyPyη{sin[TyPy(NjPx,Py+NjPx,Py+1)πη]sin(TyPyπη)}
The final sum is then
H(ξ,η)j=0Tx1=0Ty1p=0kD0,p,ξ,η(jPx,Py)+H(ξ,η)j=0Tx1=0Ty1p=0kD1,p,ξ,η(jPx,Py)+H(ξ,η)j=0Tx1=0Ty1p=0kDn,p,ξ,η(jPx,Py)
This expression emphasizes that the physical channel structure is a sum of weighted and shifted 2D Dirichlet kernels (approximate comb functions) multiplied by the Fourier transform of the filter element shape. The Dirichlet kernels are only dependent upon the specific unit cell geometry and the number of unit cells. The weights from the filter elements, an,p, add the Dirichlet kernels together. Note that there may be many different an,ps over the j, range depending on the complexity of the physical filters present.

 figure: Fig. 3

Fig. 3 An example of sub-sum selection from a 6-band spectral CFA. The green sub-sum is denoted by the black circles. Each element type is periodic over the array. an,p (0, 0) through an,p (2, 1) represent the 6 different periodic sets over the FPA, while a0,0(−3, 1), a0,0(0, 1), a0,0(3, 1), a0,0(0, 3), a0,0(3, 3), · · · represent the green sub-sum.

Download Full Size | PDF

4. Discussion

Equation (15) completely describes the physical channel structure available to a sensor, subject to sampling in the spatial domain. A filter designer may utilize the following parameters to adjust for a filter design; 1) the number of unit cells, 2) the filter element shape function, 3) the unit cell geometry, and 4) the unit cell element weights. The unit cell geometry specifies the set of available channels and the possible channel configurations in the spatial frequency domain. We define the unit cell geometry as size M × N, where M is the number of rows and N is the number of columns. Note that N corresponds to Tx and M corresponds to Ty.

A designer can choose a set of desired channels, and then invert a matrix equation to obtain the filter weights needed to realize the specified set of channels, but a solution does not necessarily exist. The available channels can be enumerated and the values can be stored in a vector mk for each filter element of the unit cell. The channel centers are located at positions (nM,mM) where n, m ∈ ℤ are constrained such that nN,mM[12,12), i.e. at steps of 1N, 1M and inside the Nyquist boundary when the sampling rate is maximal and we assume without loss of generality that Px = Py = 1 in cycles per pixel. We read off the entries of mk starting at the lower-leftmost channel location. Figure 4 demonstrates the possible channels for a 2 × 3 unit cell at the 9 locations in an intuitive way, while Fig. 5 shows the physical channel structure locations to a sensor for a variety of unit cell geometries corresponding to the (0, 0) unit cell location.

 figure: Fig. 4

Fig. 4 The set of possible channel locations and values available for a 2 × 3 unit cell. The ξ, η-axes (horizontal and vertical respectively) have ranges in [12,12) in cycles per pixel showing the Nyquist bandwidth square. The circles are located at the channel centers, the magnitude of each channel is 1, and the clocking angle and color indicate the angle of the complex value of each channel.

Download Full Size | PDF

 figure: Fig. 5

Fig. 5 Examples of approximate δ-functions (channels) for different unit cell sizes for the (0, 0) element assuming maximal sampling. Note the 3 × 3 unit cell has approximate δ-functions which lie completely within the Nyquist square. This representation conveys the physical structure available in the Fourier domain, whereas the notation used in Fig. 4 is conceptual.

Download Full Size | PDF

A matrix equation can be formed by concatenating all of the mk vectors column wise,

M=C[1Cm01Cm11Cmk],
for k = M · N unit cell elements. C is a constant which depends on the unit cell size and the number of unit cells used [17]. Each element of each mk has magnitude C, i.e., 1Cmk=Nchan where Nchan is the total number of channel locations, see the Appendix B for details. A matrix equation can then be solved for a list of desired channels:
y=Mxx=M+y,
where y is the list of desired channel values, + is the Moore-Penrose pseudoinverse, and x is a list of filter weights assigned to each unit cell element. This determines the final gross Fourier domain structure with further refinement possible via filter element shape engineering. The channel value matrix, M, for the 2 × 3 unit cell is shown in Section 6.

Once the channel values are chosen, we obtain a set of filter values for each band. When an object is imaged, the Fourier transform of that data is convolved with each channel, for each specific band, then all of the convolved data is added together linearly, or “mixed.” In order to reconstruct the data for each band the data must be “unmixed” first. This can be accomplished directly in the Fourier domain via a matrix, which we denote the Q matrix [2,14,24,25].

This framework can be applied to any filter scheme where an irradiance measurement is being made. If a filter array is sub-sampled, i.e., each filter element has multiple measurement pixels per filter element, then the filter transmission function can also be used to shape the channel structure, however the details of filter shape engineering are beyond the scope of this article.

5. Examples

In this section we use our design methodology to briefly analyze tri-color FPFA systems. We introduce 2 new designs and compare them to designs by Hirakawa and Wolfe [8]; Condat [26]; and Lukac, Rastislav and Plataniotis [27]. The unit cells are shown in Fig. 6 and the associated channel descriptions are given in Fig. 7. Using our framework and the associated software, FiltArrayDesigner.m, (Code 1 [28]), these configurations are easily computed. The Hirakawa, Condat, and Lukac designs have been compared in the past using the standard lighthouse image, however reasonable reconstruction resulted for all designs by using low-pass filters in the Fourier domain for the color sidebands, indicating that the region of interest often shown in the literature has low spatial frequency color content. We also assess the performance of the different patterns by using a synthetic resolution target, which includes spatial frequency content which violates the bandlimit criteria for all filter array designs. The standard lighthouse images and a synthetic resolution target were processed with no noise, using the specified color filter arrays, and reconstructed by linear filtering in the Fourier domain. The synthetic image is 1680 × 1680 pixels because this size is divisible by 2, · · · , 8, facilitating the testing of different unit cell sizes. The mean squared error (MSE) was them computed for each color component to quantitatively compare the different CFA designs. See Fig. 8 for the synthetic image used and the region of interest (ROI) shown in the comparison.

 figure: Fig. 6

Fig. 6 Human perception of the unit cells for the various CFA designs. Generated via our software (Ref. [28])

Download Full Size | PDF

 figure: Fig. 7

Fig. 7 Red (top row), green (center row), and blue (bottom row) channel descriptions for the Hirakawa, Condat, Lukac, and Vaughn 4 × 2 and 8 × 2 color filter array designs.

Download Full Size | PDF

 figure: Fig. 8

Fig. 8 Synthetic resolution target truth image. This image varies between 0 and 1 for each color and is processed as if being incident on an ideal sensor. The white square indicates the region of interest.

Download Full Size | PDF

The linear filters in the Fourier domain used for the lighthouse image reconstruction are circular, with a radius of 0.05 cycles per pixel for the sideband color channels and 0.5 cycles per pixel for the luminance channel, except for the Lukac design, where the luminance channel filter had a radius of 0.45 cycles per pixel due to channel locations at the top and bottom of the Nyquist square. The synthetic images required Fourier domain filters which pass higher frequency content in order to achieve reasonable reconstruction. The Fourier filters for the synthetic images were chosen in an ad-hoc manner, but we attempted to minimize the MSE of each design without resorting to extensive optimization techniques, see Fig. 9. No matter which linear reconstruction methods are used, channel crosstalk [29] causes errors, particularly for the 8 × 2 and Hirakawa designs due to the frequency content wrapping around the Nyquist boundary. Optimal Fourier domain filter strategies and filter design are not the primary objective of this communication, and we plan to address this specific topic in greater detail in a subsequent publication.

 figure: Fig. 9

Fig. 9 Fourier domain filters used for the synthetic image reconstruction. Data shown is for the synthetic image and is log scaled on the magnitude of the Fourier domain data. Note that the Hirakawa filters overlap, resulting in the high filter display values there, however, Fourier domain filter sets are used individually for the reconstruction.

Download Full Size | PDF

The lighthouse reconstructions all had fairly low MSE, see Fig. 10. The means of the red, green, and blue channel for the lighthouse image are 122.5, 115.5, and 98.2 respectively, with corresponding total MSEs shown in Table 1. The synthetic images varied from 0 to 1, with each channel having the same mean of 0.5. Interestingly, our 4 × 2 design and the Lukac perform the best with the high frequency content of the synthetic image, see Fig. 11 and Table 1. The MSE values shown in Table 1 are the total MSEs, i.e., the sums of the MSEs of each color. MSE for each color is calculated as follows:

MSE=1NMgg^2
where g is the original image taken as a vector, ĝ is the estimated image taken as a vector and M, N are the number if pixels in the x and y directions respectively. The 4 × 2 design performs better in terms of MSE than all of the other designs on both the lighthouse image and the synthetic image.

 figure: Fig. 10

Fig. 10 Reconstructions of the lighthouse image.

Download Full Size | PDF

 figure: Fig. 11

Fig. 11 Reconstructions of the ROI of the synthetic image.

Download Full Size | PDF

Tables Icon

Table 1. Table of total MSE values for various unit cells. Note that the lighthouse and synthetic MSEs are not comparable due to the original images having different image values for each color, from 0 to 255 and from 0 to 1 respectively.

6. Conclusions

Focal plane filter engineering has a formal mathematical structure which applies to all periodic filter array layouts on a rectangular lattice. We have shown the underlying mechanism for filter array design, including the physical channel structure available from the irradiance. We have outlined a procedure in this communication for the engineering of any periodic filter array, given an irradiance measuring sensor and filter elements lying on a rectangular lattice. This procedure is general, and may need optimization over some cost or utility function which quantifies aspects of the final sensor requirements. The procedure follows:

  1. Determine the number of filter types needed (e.g. the number of colors, neutral density filters, or number of Stokes parameters). This determines the number of channel locations required.
  2. Using the procedure outlined in Section 6, determine the number of channels and the channel locations required in the Nyquist square. The locations will depend on bandwidth requirements and the absolute or relative errors of the unmixing matrix Q.
  3. Choose a unit cell layout which gives channel locations near the locations selected. These must be at rational values. The unit cell layout will completely characterize the available channel configurations and locations.
  4. Choose the filter locations and weights, then use Eq. (17) to find the filter element weights which will result in the desired channel locations.
  5. Finally, if sub-sampling of the filters is allowed or desired, the filter transmission shape can be engineered to enhance or change the gross channel structure. The number of unit cells determines the “sharpness” of the channels, which affects the reconstructable resolution. The analysis of sub-sampling and spatial filter function shaping is part of our ongoing research and will be addressed in a future publication.

Our design methodology encompasses all filter array designs for irradiance sensors with pixels located on a periodic rectangular lattice and allows for generic engineering of filter arrays to specific specifications. We showed our method applied to previous color filter designs presented in the literature, and presented a new 4 × 2 design which performs well on both the standard lighthouse image and on a synthetic image which violates the band limits of all designs.

Appendix A: unit cells are rectangular

In general, there are 17 different ways to tile the plane in an abstract manner [30], dependent on the symmetries of the primitive cells, denoted the wallpaper groups. There exist an infinite number of specific implementations of the wallpaper groups, and here we show that a unit cell on an FPA with a rectangular lattice can be defined via a rectangular unit cell in general.

Suppose we have some arbitrary (non-rectangular) unit cell shape, which periodically tiles the FPA. The unit cell element is fixed to the rectangular lattice, and is periodic in some direction. The fixation means that any rotational symmetries but be integer rotations of 90°. Generally, there will exist a maximum period in the x-direction, Tx ∈ ℤ and a maximum period in the y-direction, Ty ∈ ℤ in the number of filters for the final tiled array. We can then re-define the unit cell to be the set of filter elements from (0, 0) to (Tx − 1, Ty − 1), which is rectangular.

Appendix B: unit cell channel magnitudes

The magnitudes of the channels from each unit cell filter element can be computed from Eqs. (12) and (15) when

0.5ξ=kNN0.5,0.5η=kMM0.5,Px=Py=1,an,k(j,)=1.
Then from Eq. (12) we obtain
Dn,k,ξ,η(j,)=exp(πi(Nj,Nj,2OjTx)Txξ)exp(πi(Mj,Mj,2OTy)Tyη){sin[Tx(Nj,+Nj,+1)πξ]sin(Txπξ)}{sin[Ty(Mj,+Mj,+1)πξ]sin(Tyπη)}
since the exponential terms have magnitude 1. For a unit cell of size M × N, Tx = N and Ty = M will have a step size of M. The Ux = N′j,ℓ + N″j,ℓ + 1 and Uy = M′j,ℓ + M″j,ℓ + 1 terms are integers depending on the number of unit cells used. Combining the above yields
oe-25-10-11954-e001.jpg
where the sin terms can be solved using L’Hôpitals rule due to an indeterminate form of 0/0. If the number of unit cells in the x-direction is odd, then N′j,ℓN″j,ℓ = 0 and if number of unit cells in the x-direction is even then N′j,ℓN″j,ℓ = −1. Similarly, if the number of unit cells in the y-direction is odd, then M′j,ℓM″j,ℓ = 0 and if number of unit cells in the y-direction is even then M′j,ℓM″j,ℓ = −1. This results in 2 cases:
Dn,k,ξ,η(j,)=UxUye(2πiOjkNN)e(2πiOkMM),
or
Dn,k,ξ,η(j,)=UxUye(2πiOjkNN)e(2πiOkMM).
For a specific sub-sum of a specific filter type we have a fixed (j, ), corresponding to a specific unit cell location, and Oj, O are also fixed. Eq. (15) for a specific sub-sum with the above constraints and H(ξ, η) ≡ 1 results in a magnitude of UxUy from Eqs. (22) and (23) for the channels available.

The channel value matrix for the 2 × 3 unit cell shown in Fig. 4 is

M=C[112icosπ612+icosπ6112+icosπ612icosπ6111111112+icosπ612icosπ6112icosπ612+icosπ6112icosπ612+icosπ6112icosπ612+icosπ6112icosπ612+icosπ6112icosπ612+icosπ6111111112+icosπ612icosπ6112+icosπ612icosπ6112icosπ612+icosπ6112+icosπ612icosπ6112icosπ612+icosπ6112+icosπ612icosπ6111111112+icosπ612icosπ6112icosπ612+icosπ6].

Appendix C: available channels

A designer must choose channels by first specifying how many channels are needed prior to choosing the channel locations. The degrees of freedom available for a set of chosen channel locations, assuming maximal sampling, is given by the following algorithm:

  • Count the channel locations which are entirely within the interior of the Nyquist square. We’ll label this count by Nint.
  • Count the channel locations which lie on one and only one edge (not in a corner). We’ll label this count by Nedg.
  • Count if any channel locations lies in a corner and only a corner. This condition is binary, either there are 4 corner locations, or there are 0 corner locations (due to symmetry). Set Ncor = 1 or Ncor = 0 respectively.
The total available degrees of freedom, i.e., the maximum number of filter types that you can have, is Nint + Nedg/2 + Ncor.

Funding

Asian Office of Aerospace Research and Development (FA2386-15-1-4098).

Acknowledgment

The authors thank Matthew A. Kupinski for asking questions about MPAs which led to this work.

References and links

1. N. Hagen and M. W. Kudenov, “Review of snapshot spectral imaging technologies,” Optical Engineering 52, 090901 (2013). [CrossRef]  

2. A. S. Alenin and J. S. Tyo, “Generalized channeled polarimetry,” J. Opt. Soc. Am. A 31, 1013–1022 (2014). [CrossRef]  

3. J. E. Adams Jr, “Design of practical color filter array interpolation algorithms for digital cameras,” “Electronic Imaging , 1997,117–125 (1997).

4. D. Alleysson, S. Süsstrunk, and J. Hérault, “Color demosaicing by estimating luminance and opponent chromatic signals in the fourier domain,” in “Color and Imaging Conference,” 2002331–336 (2002).

5. D. Alleysson, S. Süsstrunk, and J. Hérault, “Linear demosaicing inspired by the human visual system,” Image Processing, IEEE Transactions on 14, 439–449 (2005). [CrossRef]  

6. E. Dubois, “Frequency-domain methods for demosaicking of bayer-sampled color images,” IEEE Signal Processing Letters 12, 847 (2005). [CrossRef]  

7. R. W. Schafer and R. M. Mersereau, “Demosaicking: color filter array interpolation,” Signal Processing Magazine, IEEE 22, 44–54 (2005). [CrossRef]  

8. K. Hirakawa and P. J. Wolfe, “Spatio-spectral color filter array design for optimal image recovery,” Image Processing, IEEE Transactions on 17, 1876–1890 (2008). [CrossRef]  

9. P. Hao, Y. Li, Z. Lin, and E. Dubois, “A geometric method for optimal design of color filter arrays,” Image Processing, IEEE Transactions on 20, 709–722 (2011). [CrossRef]  

10. J. Jia, K. J. Barnard, and K. Hirakawa, “Fourier spectral filter array for optimal multispectral imaging,” IEEE Transactions on Image Processing 25, 1530–1543 (2016). [CrossRef]   [PubMed]  

11. C. F. LaCasse, T. Ririe, R. A. Chipman, and J. S. Tyo, “Spatio-temporal modulated polarimetry,” “Proc. SPIE ,” 816081600K (2011). [CrossRef]  

12. D. A. LeMaster and K. Hirakawa, “Improved microgrid arrangement for integrated imaging polarimeters,” Optics Letters 39, 1811–1814 (2014). [CrossRef]   [PubMed]  

13. K. Hirakawa and D. A. LeMaster, “Fourier domain design of microgrid imaging polarimeters with improved spatial resolution,” “Proc. SPIE,” 909906 (2014).

14. A. S. Alenin, I. J. Vaughn, and J. S. Tyo, “Optimal bandwidth micropolarizer arrays,” Optics Letters 42, 458–461 (2017). [CrossRef]   [PubMed]  

15. O. Yadid-Pecht, “Geometrical modulation transfer function for different pixel active area shapes,” Optical Engineering 39, 859–865 (2000). [CrossRef]  

16. J. Jia, C. Ni, A. Sarangan, and K. Hirakawa, “Guided filter demosaicking for fourier spectral filter array,” Electronic Imaging 2016, 1–5 (2016). [CrossRef]  

17. I. J. Vaughn, A. S. Alenin, and J. S. Tyo, “Bounds on the micropolarizer array channel assumption,” in “SPIE Commercial + Scientific Sensing and Imaging,” 83640S (2016).

18. A. A. Kokhanovsky and G. H. Leeuw, Satellite Aerosol Remote Sensing Over Land (Springer, 2009). [CrossRef]  

19. D. Diner, F. Xu, M. Garay, J. Martonchik, B. Rheingans, S. Geier, A. Davis, B. Hancock, V. Jovanovic, M. Bull, et al., “The airborne multiangle spectropolarimetric imager (airmspi): a new tool for aerosol and cloud remote sensing,” Atmospheric Measurement Techniques 6, 2007–2025 (2013). [CrossRef]  

20. T. Carozzi, R. Karlsson, and J. Bergman, “Parameters characterizing electromagnetic wave polarization,” Physical Review E 61, 2024 (2000). [CrossRef]  

21. R. M. Mersereau, “The processing of hexagonally sampled two-dimensional signals,” Proceedings of the IEEE 67, 930–949 (1979). [CrossRef]  

22. R. Priore, J. Dougherty, O. Cohen, L. Bikov, and I. Hirsh, “Design of a miniature swir hyperspectral snapshot imager utilizing multivariate optical elements,” in “SPIE Security+ Defense,” 999205 (2016).

23. C. Lanczos, Discourse on Fourier series, vol. 255 (Oliver & BoydLondon, 1966).

24. A. S. Alenin and J. S. Tyo, “Task-specific snapshot mueller matrix channeled spectropolarimeter optimization,” in “Proc. SPIE,” 836402 (2012). [CrossRef]  

25. I. J. Vaughn, O. G. Rodríguez-Herrera, M. Xu, and J. S. Tyo, “A portable imaging mueller matrix polarimeter based on a spatio-temporal modulation approach: theory and implementation,” in “Proc. SPIE,” 9613961312 (2015), vol. 9613. [CrossRef]  

26. L. Condat, “A new color filter array with optimal properties for noiseless and noisy color image acquisition,” IEEE Transactions on image processing 20, 2200–2210 (2011). [CrossRef]   [PubMed]  

27. R. Lukac and K. N. Plataniotis, “Color filter arrays: Design and performance analysis,” IEEE Transactions on Consumer Electronics 51, 1260–1267 (2005). [CrossRef]  

28. I. J. Vaughn, “Focal plane filter array engineering software,” Zenodo (2017) [retrieved 3 May 2017], https://doi.org/10.5281/zenodo.570959.

29. I. J. Vaughn, O. G. Rodríguez-Herrera, M. Xu, and J. S. Tyo, “Bandwidth and crosstalk considerations in a spatio-temporally modulated polarimeter,” in “Proc. SPIE,” 9613961305 (2015). [CrossRef]  

30. M. A. Armstrong, Groups and Symmetry (Springer Science & Business Media, 2013).

Supplementary Material (1)

NameDescription
Code 1       Code with GUI

Cited By

Optica participates in Crossref's Cited-By Linking service. Citing articles from Optica Publishing Group journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (11)

Fig. 1
Fig. 1 Arbitrary filter shape represented by the function h(x, y), which is assumed to be compact, but not necessarily an indicator (binary) function. Notice that it is centered on (0, 0). Adapted from [17].
Fig. 2
Fig. 2 An example of a 5-band transmission filter element for wavelengths 443nm, 520nm, 550nm, 600nm, 660nm. This 5-band transmission is for a single filter element, corrected for the spectral integration and the quantum efficiency at the detector assuming the camera is an Andor Alta F6. This type of multi-band filter is currently being manufactured by companies like PIXELTEQ and Alluxa.
Fig. 3
Fig. 3 An example of sub-sum selection from a 6-band spectral CFA. The green sub-sum is denoted by the black circles. Each element type is periodic over the array. an,p (0, 0) through an,p (2, 1) represent the 6 different periodic sets over the FPA, while a0,0(−3, 1), a0,0(0, 1), a0,0(3, 1), a0,0(0, 3), a0,0(3, 3), · · · represent the green sub-sum.
Fig. 4
Fig. 4 The set of possible channel locations and values available for a 2 × 3 unit cell. The ξ, η-axes (horizontal and vertical respectively) have ranges in [ 1 2 , 1 2 ) in cycles per pixel showing the Nyquist bandwidth square. The circles are located at the channel centers, the magnitude of each channel is 1, and the clocking angle and color indicate the angle of the complex value of each channel.
Fig. 5
Fig. 5 Examples of approximate δ-functions (channels) for different unit cell sizes for the (0, 0) element assuming maximal sampling. Note the 3 × 3 unit cell has approximate δ-functions which lie completely within the Nyquist square. This representation conveys the physical structure available in the Fourier domain, whereas the notation used in Fig. 4 is conceptual.
Fig. 6
Fig. 6 Human perception of the unit cells for the various CFA designs. Generated via our software (Ref. [28])
Fig. 7
Fig. 7 Red (top row), green (center row), and blue (bottom row) channel descriptions for the Hirakawa, Condat, Lukac, and Vaughn 4 × 2 and 8 × 2 color filter array designs.
Fig. 8
Fig. 8 Synthetic resolution target truth image. This image varies between 0 and 1 for each color and is processed as if being incident on an ideal sensor. The white square indicates the region of interest.
Fig. 9
Fig. 9 Fourier domain filters used for the synthetic image reconstruction. Data shown is for the synthetic image and is log scaled on the magnitude of the Fourier domain data. Note that the Hirakawa filters overlap, resulting in the high filter display values there, however, Fourier domain filter sets are used individually for the reconstruction.
Fig. 10
Fig. 10 Reconstructions of the lighthouse image.
Fig. 11
Fig. 11 Reconstructions of the ROI of the synthetic image.

Tables (1)

Tables Icon

Table 1 Table of total MSE values for various unit cells. Note that the lighthouse and synthetic MSEs are not comparable due to the original images having different image values for each color, from 0 to 255 and from 0 to 1 respectively.

Equations (23)

Equations on this page are rendered with MathJax. Learn more.

I ( x , y ) = h ( x x j , y y ) [ a 0 ( x , y ) + a 1 ( x , y ) + + a n ( x , y ) ] 𝔡 ( x , y ) = h ( x x j , y y ) 𝔪 ( x , y ) 𝔡 ( x , y ) ,
a 0 = a 1 + a 0 , a 1 = a 2 + a 0 , a 2 = a 3 + a 0 ,
I ( x , y ) = h ( x x j , y y ) [ a 0 ( x j , y ) 𝔡 ( x , y ) + a 1 ( x j , y ) 𝔡 ( x , y ) + + a n ( x j , y ) 𝔡 ( x , y ) ]
h ( x x j , y y ) [ a 0 ( x j , y ) + a n ( x j , y ) ] 𝔡 ^
e 2 π i ( x j ξ + y η ) H ( ξ , η ) [ a 0 ( x j , y ) + a n ( x j , y ) ] 𝔡 ^
a 0 = [ a 0 , 0 0 0 0 0 ] T , a 1 = [ 0 a 1 , 1 0 0 0 ] T , a 2 = [ 0 0 , a 2 , 2 , 0 0 ] T , a 3 = [ 0 0 0 a 3 , 3 0 ] T , a 4 = [ 0 0 0 0 a 4 , 4 ] T ,
H ( ξ , η ) j e 2 π i ( ξ x j + η y ) [ a 0 ( x j , y ) + a n ( x j , y ) ] 𝔡 ^
p = 0 k H ( ξ , η ) n ˜ = N a 0 N a 0 m ˜ = M a 0 M a 0 e 2 π i ( n ˜ P x ξ + m ˜ P y η ) a 0 , p ( n ˜ P x , m ˜ P y ) + p = 0 k H ( ξ , η ) n ˜ = N a 1 N a 1 m ˜ = M a 1 M a 1 e 2 π i ( n ˜ P x ξ + m ˜ P y η ) a 1 , p ( n ˜ P x , m ˜ P y ) + p = 0 k H ( ξ , η ) n ˜ = N a n N a n m ˜ = M a n M a n e 2 π i ( n ˜ P x ξ + m ˜ P y η ) a n , p ( n ˜ P x , m ˜ P y )
n ˜ = N N m ˜ = M M e 2 π i ( n ˜ P x ξ + m ˜ P y η ) a n , p ( n ˜ P x , m ˜ P y )
D n , p , ξ , η ( j P x , P y ) = a n , p ( 0 , 0 ) S ( 0 , 0 ) + + a n , p ( τ x P x , 0 ) S ( τ x P x , 0 ) + a n , p ( 0 , τ y P y ) S ( 0 , τ y P y ) + + a n , p ( τ x P x , τ y P y ) S ( τ x P x , τ y P y )
S ( j P x , P y ) = n ˜ = N j P x , P y N j P x , P y M j P x , P y M j P x , P y e 2 π i ( [ n ˜ T x P x + O j P x P x ] ξ + [ m ˜ T y P y + O P y P y ] η )
D n , p , ξ , η ( j P x , P y ) = a n , p ( j P x , P y ) D K ξ ( j P x , P y ) D K η ( j P x , P y )
D K ξ ( j P x , P y ) = e π i ( N j , P x , P y N j P x , P y 2 O j P x T x ) T x P x ξ { sin [ T x P x ( N j P x , P y + N j P x , P y + 1 ) π ξ ] sin ( T x P x π ξ ) }
D K η ( j P x , P y ) = e π i ( N j , P x , P y M j P x , P y 2 O P y T y ) T y P y η { sin [ T y P y ( N j P x , P y + N j P x , P y + 1 ) π η ] sin ( T y P y π η ) }
H ( ξ , η ) j = 0 T x 1 = 0 T y 1 p = 0 k D 0 , p , ξ , η ( j P x , P y ) + H ( ξ , η ) j = 0 T x 1 = 0 T y 1 p = 0 k D 1 , p , ξ , η ( j P x , P y ) + H ( ξ , η ) j = 0 T x 1 = 0 T y 1 p = 0 k D n , p , ξ , η ( j P x , P y )
M = C [ 1 C m 0 1 C m 1 1 C m k ] ,
y = Mx x = M + y ,
MSE = 1 NM g g ^ 2
0.5 ξ = k N N 0.5 , 0.5 η = k M M 0.5 , P x = P y = 1 , a n , k ( j , ) = 1 .
D n , k , ξ , η ( j , ) = exp ( π i ( N j , N j , 2 O j T x ) T x ξ ) exp ( π i ( M j , M j , 2 O T y ) T y η ) { sin [ T x ( N j , + N j , + 1 ) π ξ ] sin ( T x π ξ ) } { sin [ T y ( M j , + M j , + 1 ) π ξ ] sin ( T y π η ) }
D n , k , ξ , η ( j , ) = U x U y e ( 2 π i O j k N N ) e ( 2 π i O k M M ) ,
D n , k , ξ , η ( j , ) = U x U y e ( 2 π i O j k N N ) e ( 2 π i O k M M ) .
M = C [ 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 1 1 1 1 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 1 1 1 1 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 1 1 1 1 1 1 2 + i cos π 6 1 2 i cos π 6 1 1 2 i cos π 6 1 2 + i cos π 6 ] .
Select as filters


Select Topics Cancel
© Copyright 2024 | Optica Publishing Group. All rights reserved, including rights for text and data mining and training of artificial technologies or similar technologies.