Open access peer-reviewed chapter

A Study on a Filter Bank Structure With Rational Scaling Factors and Its Applications

By Fumio Itami

Submitted: April 10th 2012Reviewed: August 15th 2012Published: January 16th 2013

DOI: 10.5772/52391

Downloaded: 1239

1. Introduction

Filter banks decompose signals into multiple sub-bands to perform various processes and reconstruct the original signals [1]-[8]. It has been demonstrated that sub-band processing with filter banks improves the performance of numerous image processing applications such as image recognition, watermarking, image coding,and so on [9]-[14].

For example, image recognition accuracy is improved with sub-band processing. A watermark is typically embedded into a middle frequency band in order to make the scheme not only robust to compression but also secure against attacks on the watermark. Thus, it is highly desirable that analysis filters have excellent frequency characteristics to appropriately decompose signals in such applications.

In sub-band coding, on the other hand, we usually focus more on various visual issues proper to compression such as checkerboard artifacts and blocking effects, rather than the frequency characteristics of the analysis filters. Coding gain is also one of the significant issues in image coding. Therefore, various constraints are imposed on the filters to deal with such problems in the design. Accordingly, the design is usually performed with non-linear optimization, which increases its design complexity.

Multi-resolution processing, which is an extension of sub-band processing, is also in demand in a number of applications. Multi-resolution schemes such as wavelet transform not only decompose the frequencies of signals but also yield various lower resolution versions of the original signals by gradually reducing the sampling rate with filter banks.

Meanwhile, image scaling has become highly required processing in the context of the diversification of the means of displaying images [15]-[17]. Image scaling changes the resolution of images more flexibly than multi-resolution processing, although it does not decompose the frequency components of signals. Typically it consists of up/down samplers and a filter which suppresses the imaging or aliasing components caused by the samplers.

Under the circumstances, we discuss complex processes where sub-band processing and scaling are carried out sequentially in this chapter. For instance, when watermarked images are scaled, or scaling is applied to decoded images, a filter bank and a scaling structure are designed separately and implemented sequentially. However, they have the structural similarity in that they involve samplers and filters. This implies that one can integrate them in order to implement them with lower implementation cost.

Therefore, this chapter provides a profound discussion on a filter bank structure to yield an effective scheme in computation in such complex processing. We introduce a simple filter bank structure for computational simplicity which directly synthesizes the analysis decomposed signals to produce a scaled signal, not to reconstruct the original signal as in traditional perfect reconstruction filter banks.

First, we discuss the frequency decomposition characteristics of the filter bank to show how to obtain arbitrarily scaled signals. We briefly clarified the band-width of the synthesis filters to obtain the scaled signal from the analysis part of the filter bank in [18]. However, the discussion is not sufficient since the behavior of the aliasing components, which can significantly affect the filter bank performance, is not clarified. This chapter discusses the issue so that the feature of the filter bank will be manifested. It is shown that the aliasing problem is similar to that of perfect reconstruction filter banks.

Next, theoretical conditions for addressing the above aliasing problem are given through the input-output relation of the filter bank. We also discussed the strategy to make the filter bank equivalent to the direct scaling structure by deriving such theoretical conditions in [18]. However, we observed the number of conditions is proportional to that of aliasing components, which can lead to time-consuming design or complicated optimization. Moreover, we also know the conditions are usually not satisfied when all the filters have linear phase, so that the derived filter banks do not have excellent performance.

In this chapter, we discuss the conditions from a viewpoint of the aliasing components to verify that they are the same regardless of the aliasing components, so that the number of equations to solve is significantly reduced. A design procedure with the conditions is also discussed. We mention that the procedure is applicable to various image processing mentioned above. In addition, it is demonstrated through simulation results that scaled images' quality is comparable to that of the sequential structure even though not all the filters have linear phase characteristics. Finally, we discuss potential issues and advantages in making use of the scheme as well as traditional ones in practical image processing.

2. Image scaling

Image-scaling which changes the resolution of images has become highly required processing in the context of the diversification of the means of displaying images. In such context, various image processing such as image coding, watermarking and recognition is also applied before image scaling, in which a filter bank is often accompanied by a scaling structure sequentially in practice since filter banks are used in many image processing applications with their sub-band decomposition performance.

Typically, the direct scaling structure consists of up/down samplers and a filter which suppresses the imaging or aliasing components caused by the samplers. Similarly, the filter bank structure also involves the samplers and filters. This indicates that one can integrate both the structure in order to implement them with lower computational complexity than that of their sequential structure shown in Figure 1.

Figure 1.

The typical sequential structure.

For this, we provide a study on a simple filter bank structure depicted in Figure 2 which is a simplified version of the structure given in [18]. Please note that the sampling rate at the output in both the structures Figure 1 and Figure 2 is the same whenR=UandS=D. In addition, the number of channels in both the systems is also the same whenN=D. Thus, we assume this relation in this chapter.

The aim of this chapter is to demonstrate that the computational complexity of Figure 2 for scaling is reduced compared to that of Figure 1, while its scaling performance is comparable to that of Figure 1.

Figure 2.

The introduced filter bank structure.

3. A discussion on the computational complexity of the filter bank for scaling

First, we discuss the computation cost of the introduced filter bank drawn in Figure 2 as well as the sequential structure shown in Figure 1.

The sequential structure decomposes the input signal into sub-band frequency components first with down-sampling by the factorD. Next, the decomposed signals are synthesized after up-sampling byD. Such sub-band processing with the filter bank is followed by the direct scaling structure, where further up-sampling by Uis carried out. Thus, the sampling rate increases with two successive up-sampling processes. After this, the sampling rate decreases with down-sampling byD.

On the other hand, the introduced filter bank structure also decomposes the input into multiple sub-band signals with down-sampling by Dfirst, and then synthesizes the signals with up-sampling byU.

Accordingly, we see that the sequential structure requires two down-sampling and up-sampling processes, while the introduced filter bank structure is carried out with only one down-sampling and up-sampling process. Such a structural difference can cause different computation time for scaling signals.

If we assume that both the systems have the same length of the analysis filters, then the difference in length between both the systems will be in their synthesis part. The difference will also cause different computation time. We also discuss these concerns with the design and simulation in both of the systems in detail.

4. A discussion on the filter bank structure for scaling

4.1. The frequency decomposition and synthesis characteristics of the filter bank

Next, we discuss the performance of the frequency decomposition and synthesis with the filter bank. Figure 3(a) shows an original signal X(z)where the bold line represents π[rad] on the frequency axis. Figure 3(b) shows the frequency decomposition characteristics with the analysis low-pass filter H0(z)followed by down-sampling by the factorD. We also show the counterpart of the high-pass filter HD-1(z)and down-samplingin Figure 3(c). The frequency components colored with dots represent the aliasing components. Please note that these decomposition characteristics in the analysis part are the same as those of traditional (perfect reconstruction) filter banks.

Figure 3.

The frequency decomposition and synthesis in the filter bank

The analysis signals such as Figure 3(b) and (c) are described in the z domain as

Yc,iz=1Dr=0D-1XWrz1DHiWrz1Di=0,1,,D-1E1

where

W=e-j2πDE2

These analysis signals are up-sampled by the factor Uand then filtered with the filters Gi(z)in the synthesis part, which is illustrated with Figure 3(d) and (e) in the case of G0(z)andGD-1(z), respectively. Please notice that the pass band of the filters Gi(z)is not the same asthat of Hi(z)since the factor UandDare not the same either to yield scaled signals.

These signals in the synthesis part are represented as

Yt,iz=1Dr=0D-1XWrzUDHiWrzUDi=0,1,,D-1E3

The eventual scaled signal, which is the output of the filter bank, is drawn in the Figure 3(f), and also represented as

Ysz=1Di=0D-1Yt,izGi(z)E4

In this manner, one can obtain a scaled signal by using the filter bank, and the scaled signal is completely reconstructed when the ideal filters are used in the filter bank. However, it is not possible to use such filters, as in traditional filter banks, and the aliasing components affect the scaling performance with the filter bank.

Therefore, we provide a discussion on the aliasing components in the next, which manifests the scaling behavior of the filter bank.

4.2. The aliasing components of the filter bank

The output signal of the filter bank is rewritten as

Ysz=i=0D-1Giz1Dr=0D-1XWrzUDHiWrzUDE5

When U=D, that is, a perfect reconstruction filter bank is used, then the pass-band of the synthesis filters is the same as that of the analysis one. In this case, “serious” aliasing caused by the “mismatch” of the band of the filters is avoided, and only minor aliasing caused by the non-ideal filters exists in the adjacent areas between the aliasing componentsin the frequency domain.

On the other hand, when UD, which is necessary to obtain an arbitrarily scaled signal, the pass-band of the synthesis ones is not the same as that of the analysis ones, and the serious aliasing occurs. Actually, it can be observed that the pass-band of Gi(z)overlaps with the aliasing components in the above equation and also in Figure 3.

However, it can also be verified in the frequency domain that such serious aliasing is essential and necessary to obtain a scaled signal, since the aliasing components themselves form the scaled signal in part in thiscase.

In this sense, one can conclude that even though the input signal is scaled, only minor aliasing between the aliasing components caused by the non-ideal filters is taken into account to design the filter banks as well as the traditional filter banks.

We also compare the direct scaling structure in the sequential structure shown in Figure 1 with the filter bank of Figure 2 in terms of aliasing. In the direct scaling structure, up-sampling by the factor of Uis followed by down-sampling byD. Hence, whenU>D, which means the input signal is extended, then down-sampling is not critical sampling, that is, oversampling. We illustrate this with Figure 4.

On the other hand, the filter bank structure performs down-sampling by Dfirst, which means critical sampling. This implies that the aliasing caused by down-sampling in Figure 1 is less than that of Figure 2. Thus, it is also concluded that the filter bank structures have more aliasing than the direct scaling structures do when the scaling factors are larger than 1.

These are possible issues to address when we design the filter banks that serve as scaling systems.

Figure 4.

The frequency characteristics of the direct scaling structure

5. The theoretical conditions for the improvement of the scaling performance

Typically, traditional perfect reconstruction filter banks are designed to satisfy perfect reconstruction conditions completely or approximately so that aliasing will be eliminated. Similarly, we provide theoretical conditions for the introduced filter banks to reduce aliasing.

We see, from Figure 3 and 4, that aliasing in Figure 3 is reduced if the eventual signal shown in Figure 3(f) is the same as Figure 4(c). In other words, it is desired that the introduced filter banks precisely work as the direct scaling structures. Therefore, a design scheme for the filter banks that approximately or exactly serve as the direct scaling structures is provided in this section.

5.1. The input-output relation in the filter banks and the direct scaling structures in the frequency domain

First, we give the relation between the input and output of the filter banks and the direct scaling structures. The output signal of the direct scaling structure in the sequential structure shown in Figure 1 is written as

Ydz=1Dr=0D-1XWUrzUDHWrz1D.E6

Please note that we usually use a perfect reconstruction filter bank in Figure 1, therefore, it is assumed that the output of the filter bank is the same as its input.

On the other hand, the output signal Ys(z)of the filter bank shown in Figure 2 is represented as the equation (4).

If the signal Yd(z)is equal to the output signalYs(z), then

XWUrzUDHWrz1D=XWrzUDi=0D-1HiWrzUDGiz r=0,1,,D-1E7

in which

XWUrzUD=XWrzUDE8

hold in some cases without any manipulation, or holds in the other cases by changing the order of ron the left and right side of (8). This depends on the values ofUandD. Therefore, the conditions (7) are proportional tothe number of aliasing componentsD-1, and the parameters in the conditions areH(z),Hi(z)andGi(z). Moreover, it is observed that the conditions are mostly difficult to satisfy when all the filters have linear phase characteristics, i.e., the symmetry of the coefficients. Therefore, we give a profound discussion on the conditions to address these issues in the next.

5.2. A discussion on the conditions

First, we discuss the equations (8) to verify that they hold. We assume thatU>D, but the following discussion is straightforwardly extended to the case whereU<D. Since the equation

Wr=WnD+rE9

hold, the equations

Ur=nD+rE10

need to hold in order to satisfy the equations (8). n is an arbitrary integer number.

IfU=D+1, thenUr=rD+r, which leads to (10). Thus, the equations (8) hold in this case. WhenUD+1, (10) does not hold. Hence, we replace r on the right side of (10) withr'=r(U-D). Therefore, nD+r'=Ur+D(n-r), which also leads to

Ur=nD+r'.  E11

If we replacer'with

r''=modr',DE12

then we also obtain

Ur=nD+r''.  E13

mod(a,b)represents the reminder in the case where ais divided byb.Therefore, the equations

XWUrzUD=XWr''zUDE14

hold. We see that the equations (14) also hold whenU=D+1, i.e., (14) are equivalent to (8) whenU=D+1.

Hence, the equations

HWrz1D=i=0D-1HiWr''zUDGiz  r=0,1,,D-1E15

need to hold in order to satisfy the conditions (7).

Next, we verify the equations (15) are the same regardless ofr. Whenr''=r=0, the equations (15) are rewritten withhi,j, gi,jand hjpartly (every D-th equation) as

hqD+p=h0,qD+pg0,lU+k+h0,q+1D+pg0,l-1U+k++h1,qD+pg1,lU+k+hqD+p+1=h0,qD+p+1g0,lU+k-1+h0,q+1D+p+1g0,l-1U+k-1++h1,qD+p+1g1,lU+k-1+hqD+p+2=h0,qD+p+2g0,lU+k-2+h0,q+1D+p+2g0,l-1U+k-2++h1,qD+p+2g1,lU+k-2+hqD+p+3=h0,qD+p+3g0,lU+k-3+h0,q+1D+p+3g0,l-1U+k-3++h1,qD+p+3g1,lU+k-3+E16

wherehi,j, gi,jand hjare the coefficients of the filterHi(z), GizandHz, respectively, and the order of the rows except the 0-th row on the right side of (16), however, changes depending on the factors DandU.

Here we define the following vector

vr''=Wcr''W2cr''W(D-1)cr''E17

in which cis a constant, and thep''-th row on the right side of (16) is multiplied by the p''-th element Wp''cr''in eachr''. For example, the p''-th row on the right side of (16) is multiplied by the coefficient Wp''cwhenr''=1.

Moreover, the p''-th row on the right side includeshi,p+qD, since the coefficient hi,p+qDhas the delayzUD(p+qD), where p''has the relation top, which is

p''=modUp+qD,DE18

If we denote pwhich satisfiesp''=1asps, thenc=ps, since the first row on the right side, which includeshi,ps+qD, is multiplied by the coefficient Wpswhenr''=1. In this manner, the constant c is determined.

On the other hand, we also define the following vector

vr=WrW2rW(D-1)rE19

where the p''-th row on the left side of (16) is multiplied by the p''-th element Wp''rin eachr. If r=pswhenr''=1, then vr''=vrsincec=ps. In this case, the equations (16) are the same as those inr=r''=0. In fact, the equation r=psholds whenr''=1, since (18) is equivalent to (12). In other words, the relation between p''and pis the same as that between r''andr. Furthermore, the equations vr''=vrhold in all the r''and runder (12). Therefore, we see that the equations (16) are the same regardless of rorr''.

However, it is observed that equations are usually not satisfied when all the filters have linear phase characteristics. Accordingly, we do not impose the symmetry constraints on all the filters. We also see that the filter in the desired direct scaling structure needs to have some delays in order to satisfy the equations. The performance of such filter banks is examined in the next section.

6. Design and Simulation Results

The equations derived in the previous section have unknown parametersHi(z), Gi(z), andH(z). The filter H(z)in the direct scaling structure should be known, or designed, in advance. Thus, Hi(z)andGi(z)are obtained by solving the equations with a pre-designed desired H(z)so that the filter bank structure will be exactly or approximately equivalent to the direct scaling structure.

The concrete design procedure depends on applications the filter banks are utilized in. For example, several constraints should be imposed on the analysis filters Hi(z)for the filter banks to have non DC leakage, high coding gain, etc., when the filter banks are exploited in sub-band image coding.

The analysis filters should have high attenuation in the stop band, or excellent frequency decomposition performance, when the filter banks are employed for watermarking, since the watermarks are often embedded only into one narrow sub-band that is robust to attacks.

These tell that the analysis filters typically suffer from severe constraints. In this section, we survey the case where the analysis and synthesis filters are separately designed, i.e., only Gi(z)are determined so that the equations are satisfied with not only a pre-designed H(z)but alsoHi(z), in order not to lay much burden onHi(z). On the other hand, we do not impose the symmetry constraints on Gi(z)to satisfy the equations more precisely.

With this design policy, we here design filter banks. As an example, two-channel and three-channel filter banks are designed and explored. In the two-channel case, the scaling factor is 3/2, and in the three channel one, it is 2/3. The length of the linear phase analysis filters is 6 in the two-channel case, and 8 in the three-channel one. The length of the obtained (non-linear) synthesis filters is 9, and 6, respectively. The length of the linear phase filter in the direct scaling structure is 3, and 2, respectively, and it has third and half band amplitude characteristics, respectively. This is summarized in Table1.

Please note that in the introduced filter bank structures, the direct scaling filters are not required for scaling since the filter banks perform not only sub-band processing but also scaling. The direct scaling filters are used only to design the filter banks. The round brackets “(· )” are used in this sense in Table 1. It is observed that the direct scaling filters have some delays so that the conditions will be satisfied.

The number of channelsThe scaling FactorsThe length of the analysis, synthesis and direct scaling filters
23/269(3)
32/386(2)

Table 1.

The length of the designed filters in the introduced filter banks.

For comparison, we also design nearly perfect reconstruction filter banks in the two-channel and three-channel case, where the length of the analysis filters is 6, and 8, respectively. Please note that the sequential structure consists of the perfect reconstruction filter bank and the same direct scaling structure (except the delays). This is also shown in Table2.In the sequential structures, the coefficients of the analysis filters partially have a few zero-values to satisfy the perfect reconstruction conditions. The sequential structures also require direct scaling filters to perform the scaling process.

The number of channelsThe scaling FactorsThe length of the analysis, synthesis and direct scaling filters
23/2663
32/3892

Table 2.

The length of the designed filters in the sequential structures

The elapsed computation time required for signal scaling in both the sequential structure and the introduced filter bank is also compared. The computation is carried out on a computer with a 2.2 GHz processor. In this comparison, we examine the elapsed time with various scaling factors and length of the filters.

For example, the elapsed time is 0.2030, and 0.2660 in the introduced structure and the sequential one designed above, respectively, whenD=2, U=3and the input image size is256×256.

In addition, Table 3 shows the elapsed time[s] whenD=5, U=4, 6,9, 11, the length of the analysis filters in both systems is 10, and 30, the length of the filter in the direct scaling structure is equal to the factorU, and the input image size is256×256.

The factor UThe elapsed time[s]The length of the synthesis filters
ProposedSequentialProposedSequential
40.375, 0.406(0.281)0.437, 0.500(0.359)8, 2410, 30
60.390, 0.453(0.297)0.453, 0.531(0.390)12, 3610, 30
90.437, 0.578(0.375)0.484, 0.563(0.421)18, 5410, 30
110.453, 0.641(0.391)0.500, 0.593(0.485)22, 6610, 30

Table 3.

Comparison of the elapsed time[s] between the proposed and sequential schemes

It is observed that the elapsed time is proportional to the factor Uand also the length of the filters, and that the elapsed time of the introduced filter banks is more than that of the sequential structures when the synthesis filters are long with U = 9, 11. However, this drawback is improved if each branch of the filter banks is completely carried out in parallel, i.e., the computation time of the filter banks is the same as that of each branch in the filter banks. We also explored the elapsed time of both systems in this case, which is also shown in the round brackets “(· )”, where the length of the analysis filters is also 30, in Table 3.

We also explore the performance of image-scaling in the two-channel and three-channel cases. Several well-known test images (256×256) are used as the input to the filter banks. Table 4 shows the PSNR[dB] of the output of the introduced filter banks against that of the sequential structures. It is observed that the obtained scaled images with the introduced filter banks are comparable to that of the sequential structures. However, it is not certain whether the proposed approach can yield the optimal solution for image-scaling. A detailed discussion on this issue is future work.

The number of channelsLENABARBARABOATBuildingLighthouse
2147.60148.88145.40146.64146.56
3122.80123.96121.02122.12121.82

Table 4.

The PSNR[dB] of the introduced filter banks against the sequential structures.

The introduced filter banks as well as the sequential structures can be applicable to practical image processing applications. In this simulation, we examine the performance of both the systems in watermarking, where it is assumed that the watermark is embedded into a sub-band of the original image and then the watermarked image is rescaled, and that the watermark is extracted from the rescaled image subsequently. We illustrate both the systems in watermarking with Figure 5 and Figure 6 in which the scaling factor is 3/2.

Figure 5.

The sequential structure employed for watermarking.

Figure 6.

The introduced filter bank structure for watermarking.

Please notice that the subsequent extracting stage in both the systems requires down-sampling and also the use of a scaled version of the original image, in order to extract the watermark embedded in a sub-band of the original image in this simulation. The only difference between both of the systems is that the sub-band signals are synthesized and then rescaled sequentially in Figure 5 while they are rescaled in each sub-band and synthesized in Figure 6. This also holds for other image processing applications such as image coding, recognition, etc.

To demonstrate this, we use several original test images (256×256) and bi-level watermark images (128×128) shown in Figure 7 and Figure 8 in both the structures, and the watermark is embedded into the high frequency band of the original image because it is known that the low frequency one is visually susceptible to the watermarking process.

Figure 7.

The bi-level image used as Watermark1.

Figure 8.

The bi-level image used as Watermark2.

Table 5 represents the PSNR[dB] of the extracted watermark against the original watermark in both the systemsin which the original image “LENA” is used. It is observed that the obtained watermarks with the introduced filter banks are comparable to those of the sequential structures, while the computation time of the proposed filter bank is less than that of the sequential structures as shown above.

Watermark1Watermark2
Proposed structureSequential structureProposed structureSequential structure
34.3834.5634.6634.88

Table 5.

The PSNR[dB] of the extracted watermark against the original watermark.

We, however, see that the water marks are not extracted with very high PSNR in both the systems, which is because re-sampling or filtering is carried out in the image-scaling and watermark-extracting stage.

Typically, watermarks can also be deteriorated in quality or eliminated by attacks such as filtering, scaling, etc. Thus, they are more sensitive to such attacks than usual watermarking (without scaling) is. A detailed discussion is also the future work.

7. Conclusion

This chapter has discussed a filter bank structure which directly synthesizes the analysis decomposed signals to produce a scaled signal, which leads to computational simplicity in complex processing such as sub-band processing followed by scaling.

First, we have discussed the frequency decomposition characteristics of the filter bank to show how to obtain arbitrarily scaled signals, where the behavior of the aliasing components has also been manifested and addressed, since it can significantly affect the filter bank performance as in traditional perfect reconstruction filter banks.

Next, theoretical conditions for designing the filter bank that is equivalent to the direct scaling structure have been given with the input-output relation of the filter bank, where it has been mentioned that the number of conditions is proportional to that of aliasing components, and that the conditions are mostly not satisfied when all the filters have linear phase. Therefore, we have discussed the conditions, so that they are the same regardless of the aliasing components, which means that the number of equations to solve is significantly reduced.

In addition, it has been demonstrated through simulation results that the computation time required for signal scaling with the proposed scheme is usually less than that of the sequential structures, and that the quality of scaled images is comparable to that of the sequential structures even though not all the filters have linear phase characteristics.

Finally, we have discussed potential issues and advantages in employing the proposed scheme as well as traditional ones in practical image processing such as watermarking.

The findings in this research are that the derived solution by using the proposed approach yields comparable scaling and watermarking performance to that of the usual sequential structures that consist of filter banks and also the direct scaling processes, while the computation time required for scaling is less than that of the sequential scheme and the design procedure is considerabley simplified.

© 2013 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

How to cite and reference

Link to this chapter Copy to clipboard

Cite this chapter Copy to clipboard

Fumio Itami (January 16th 2013). A Study on a Filter Bank Structure With Rational Scaling Factors and Its Applications, Digital Filters and Signal Processing, Fausto Pedro García Márquez and Noor Zaman, IntechOpen, DOI: 10.5772/52391. Available from:

chapter statistics

1239total chapter downloads

More statistics for editors and authors

Login to your personal dashboard for more detailed statistics on your publications.

Access personal reporting

Related Content

This Book

Next chapter

Digital Filter Implementation of Orthogonal Moments

By Barmak Honarvar Shakibaei Asli and Raveendran Paramesran

Related Book

First chapter

Digital Filters for Maintenance Management

By Fausto Pedro García Márquez and Diego José Pedregal Tercero

We are IntechOpen, the world's leading publisher of Open Access books. Built by scientists, for scientists. Our readership spans scientists, professors, researchers, librarians, and students, as well as business professionals. We share our knowledge and peer-reveiwed research papers with libraries, scientific and engineering societies, and also work with corporate R&D departments and government entities.

More About Us