FS3DD1SLITESTINGREPORT By Laurence G. Hassebrook Last updated 6/28/2013 TableofContents 1. Background ........................................................................................................................................... 2 1.1 Test Apparatus .................................................................................................................................... 2 1.2 SLI Image Signals ................................................................................................................................. 3 2. Basic Requirements ............................................................................................................................... 5 3. Geometric Accuracy .............................................................................................................................. 7 3.1 Across‐Bar Error ............................................................................................................................ 7 2.37 Along‐Bar Error ............................................................................................................................. 8 2.38 Depth Resolution and Noise Level ................................................................................................ 9 2.39 Structured Light Illumination Depth Banding Test ..................................................................... 10 4. Spatial Frequency Response of SLI Amplitude Modulation Parameter .............................................. 11 5. Gray Level Uniformity ......................................................................................................................... 12 5.1 Requirement #1: Adjacent Row and Column Uniformity ................................................................. 13 5.2 Requirement #2: Pixel‐to‐Pixel Uniformity ....................................................................................... 14 5.3 Requirement #3: Small Area Uniformity ........................................................................................... 14 5.4 Requirement #4: Noise Standard Deviation ..................................................................................... 15 5.5 Measurement of Device Input‐Output Relation ............................................................................... 15 6. Fingerprint Image Quality ................................................................................................................... 17 REFERENCES ................................................................................................................................................ 23 A. APPENDIX: Section 2 Data Calculations .............................................................................................. 23 The experimental measurements are referenced to [1] in terms of its sections and section titles. Measurements that pass existing PIV and Appendix F are indicated by Green font and measurements that fail are indicated by Red font. Most of the measurements we performed manually. We were not able to obtain the software indicated in the PIV document. In future iterations, we will automate or add software algorithms to some of the measurements to make them more statistically accurate and repeatable. 1 The scale factors of the original FS3D D1 were off by 14.5% and based on 40 calibration points. UK recalibrated the device using a multi-grid approach using 144 calibration points. Furthermore, the multi-grid approach can be post-processed to reduce optical distortion. In future iterations, FS3D will be expected to perform the calibration. The tubular flattening used by the D1 does not function with flat surfaces because its level 1 process determines a radius. If the radius is too large then the algorithm gives incorrect results. There are several ways to fix this. If the level 1 results in a radius above a certain value, then the function could block level 1 and only use the level 2 operation. UK has used a general spring algorithm which works on any shape and seems to approximate the non-uniform compression and expansion characteristics of a real finger. 1. Background We give background on the test apparatus in section 1.1 and the Structured Light Illumination (SLI) Phase Measuring Profilometry (PMP) method and how it relates to the imagery under test in section 1.2. 1.1TestApparatus The FlashScan3D D1 scanner is shown in Fig. 1.1 with and without its finger guide. When conducting imaging tests, the guide is removed and the aperture edges are used as alignment features for X, Y and Z world coordinates. Figure 1.1: (left) D1 with finger guide. (right) D1 without finger guide and test alignment edges indicated. 2 The test apparatus consists of a vertical translation stage with a Ronchi Ruling attachement as shown in Fig. 1.2 (left). A 1c/mm Ronchi Ruling is shown in Fig. 1.2 (right). The Ronchi rulings in our tests were obtained from reference [2]. The rulings are printed on paper which is cut and glued to plastic mounts. Such a mount is shown in Fig. 1.2. The translation stage uses a screw with 1 turn/mm so it can be manually positioned accurately in 1 mm and 0.5 mm increments. Figure 1.2: (left) Test Apparatus for moving test patterns. (right) View of a Ronchi Ruling. 1.2SLIImageSignals Unlike traditional photography, SLI provides signal and depth information in image form. The reason is that the D1 SLI is implemented by projecting a series of sine wave patterns sequentially shifted in the “phase” direction. In this report, the phase dimension is vertical or along the Y dimension of the imagery. What we call the “orthogonal” dimension is horizontal or along the X direction. A set of projection patterns for a single cycle or unit frequency is shown in Fig. 1.3. 3 Figure 1.3: Unit frequency pattern projection sequence. The projected patterns are described in projector coordinates {xp, yp} as I Pr oj ,n x p , y p A p B p cos 2 f c y p 2 n N (1.1) where in Fig. 1.3, fc=1 and N=8 and n=0, 1, 2,… , 7. The camera captures these patterns at an angle, reflected off the target surface and hence, distorted by the depth of the surface. The received images in camera space {xc, yc} are described by I n xc , y c Axc , y c B xc , y c cos2 n N z x c , y c (1.2) Since the patterns occur in time, we can refer to the processed results from the patterns as an image signal in that each pixel has a time signal associated with it. There are 3 image types that we can calculate from Eq. (1.2). The first one is simply an average of all the patterns and looks like a photographic image of the target. If N is even and is 4 or larger, then the average intensity image signal is Axc , y c 1 N N 1 I n xc , y c (1.3) n 0 The other two image signals are the intensity modulation, B(xc, yc), and the phase, z(xc, yc), image signals. The intensity modulation is a measure of peak-to-peak reflectance of the patterns and the phase is directly related to world coordinates via a perspective transformation. The measurable outputs from are the world coordinates {Xw(xc, yc), Yw(xc, yc), Zw(xc, yc)} where Zw(xc, yc) is used in place of intensity in some of the specifications. The intensity equivalent parameters of SLI are listed in Table 1-1. 4 Table 1‐1: SLI intensity equivalents that may be used in place of intensity measures in performance specifications. Intensity Equivalent Parameter A(xc, yc) B(xc, yc) Zw(xc, yc) Description of Parameter Intensity average of the patterns at each pixel location {xc, yc}. Intensity modulation indicates the peak-to-peak variation of the reflected patterns at each pixel location {xc, yc}. Depth measure. After a flattening process is applied, the finger curvature is removed but the ridge cross sections still have depth variation. These ridge depths are encoded with gray levels corresponding to an intensity equivalent. 2. BasicRequirements See section 2 of reference [1]. The requirements and results are in Table 2-1. We removed the finger guide and used the top edge surface as Zmax. Zmin is 5mm lower (ie., closer to the camera & projector) than Zmax and Z0 is 2.5 mm below Zmax. We used a 1cy/mm Ronchi ruling positioned along the phase direction and the orthogonal direction to measure the resolution and capture size. Because this report is an iteration, I only did single measurements across the middle of the images. The measurement for the Native resolution was performed by dividing pixel distance by number of Ronchi cycles. That result was used with the image size (480 x 752) to determine the Capture size. None of the capture sizes pass due to the orthogonal width. This is not a serious problem but will require a change in FOV. All the Native resolutions passed and as Nyquist frequencies, they are more than twice the required 500 ppi needed in the final output. The “Resolution Scale” in Table 2-1 allows for keyhole camera distortion in contact scanners. For SLI scanners, it is more appropriate to measure calibration error. So we calculate scaling error where we assume the Native Resolution measurement to be the correct value. From the 2-D contact specifications of the PIV, the units are in percent error where the bound is +2% = (10/500) x100% error. For example, for Zmax phase measurement, we find that the distance across 17 cycles in the Ronchi ruling is 19.47mm when it really should be 17 mm. The scaling error is 14.5% error = 100% x (19.47-17)/17. This error will carry through to the downsampling algorithm that interpolates the output to exactly 500 ppi assuming there is no error in the measured distance. Hence, the calibration error will not downsample to 500 ppi but rather have a percent error similar to the calibration error. Table 2‐1: Required and measured basic requirements. Parameter (a) Capture Size (b) True Optical or Requirement > 12.8 mm wide by > 16.5 mm high > 500 ppi in sensor detector Measured Value Zmax: 11.91 mm by 18.88 mm Z0: 11.57 mm by 18.32 mm Zmin: 11.16 mm by 17.69 mm Zmax: Ortho=1023.62 ppi, Phase= 1011.52 ppi Z0: Ortho= 1054.10 ppi, Phase= 1042.89 ppi 5 P/F F, P F, P F, P P, P P, P Native row and column Resolution directions. (Nyquist frequency) (c) Resolution 490 ppi to 510 Scale ppi in sensor detector row and column directions. Allow +2% error (d) Image Type Capability to output monochrome image at 8 bits per pixel, 256 gray levels (prior to any compression). Zmin: Ortho=1092.20 ppi, Phase=1079.50 ppi P, P See sample calculation for Eq. (2.1). 6 cycle measurements: 495.3 to 499.5 ppi 1 cycle measurements: 508 ppi (Fails ApF, Passes PIV) P, P F, P The FS3D calibration was too inaccurate to pass this test. Also the tubular flattening did not function with a flat surface. But with UK calibration and a UK general springs flattening plugin, the results improved. mvBlueFox-MLC200wG: provides 8 bits per pixel. Pass The software keeps that pixel resolution in all stages of processing to the final output image. Sample calculations for Table 2-1: (a) To get the FOV we first found the ppi values for Zmin, Phase direction, in part (b). Then finding the FOV is simply a matter of dividing the number of pixels in the phase direction (752) by the ppi. For the example in (b) this would yield 17.69 mm = 25.4 mm/in x 752 points / 1079.50 ppi (b) Using a graphic application we determine two positions within the I.bmp file, shown in Fig. 2.1 (right), for Zmin height and Phase direction. The two positions correspond to edges of the ruling stripes {220, 709} and {220, 29}. The pixel coordinate 220 is about the center of the 480 pixel wide image. The pixel distance in the phase direction is 680 pixels =709-29. The number of stripe cycles (i.e., 1 black and 1 white stripe) is 16 cycles. We know that 1 cycle = 1mm. So the samples per inch are 1079.50 ppi=25.4 (mm/in) x 680 pixels / 16 mm. 6 Figure 2.1: The captured Ronchi ruling 1c/mm intensity modulation image of I.bmp. Image 752 x 480 pixels. (left) Orthogonal alignment and (right) phase alignment. (c) Consider the Zmax phase measurement. Using the measurements in Table 3-1 we can determine the ppi. For 6 cycles we measured either 117 pixels or 118 pixels. The down sampling is based on the world coordinates. So the measured pixels (points) per inch is ppi measured N p points 6 mm 25.4 mm 1 inch (2.1) Where Np is the number of pixels, 6 mm is the actual distance of the 6 cycle measurement and 25.4 is the unit conversion between mm and inches. The results for 117 and 118 pixels is 495.3 and 499.5 ppi, respectively. For a single cycle measurement, Eq. (2.1) is only over 1mm so we have 508 ppi = 20 pixels x 25.4 mm/inch. 3. GeometricAccuracy Test geometric accuracy of Xw, Yw, Zw and radial distortion. The “across-bar” measurements, described in reference [1], are applicable to section 2 resolution scale. The “along-bar” measurements are intended to limit radial distortions such as barrel distortion. 3.1 Across‐BarError All measurements are in either inches or mm as stated. Given Z0 as the reference height, then Zmax = Z0 + 2.5 mm and Zmin = Z0 – 2.5 mm. Letting Z0 = 0 and converting to inches: {Zmax, Z0, Zmin} = {0.098 in, 0.0, -0.098 in} D < 0.0013, for 0.00 < X < 0.07 D < 0.018X, for 0.07 < X < 1.5 where 7 X=Actual target distance= number of cycles x (1/25.4 in/cycle) Y=Measured image distance D=|Y-X| The specification indicates a measurement for 1 and 6 cycles. The measurements were performed toward the center of the captured data images. Because we are manually measuring these values, we used leading or trailing edges as the references. For future measurements, we will use automated measurement which works more accurately by determining the bar centers as the reference points. Table A-3 is in Native resolutions prior to flattening and downsampling. Table 3-1 are the same measurements performed after flattening and downsampling to 500 ppi. All the single cycle measurements quantized to 20 pixels. The 6 cycle measurements quantized to either 117 pixels or the more accurate 118 pixels. The present tubular flattening used by the D1 scanner will not flatten an already flat surface. That is, the tubular algorithm requires curvature of the surface to estimate a radius. So it does not work. So in this test, we use a general flattening plugin developed at UK to perform the flattening. The general flattening algorithm uses a grid of springs fit to the original finger surface (not including ridges) and is forced to be flat. Then the springs relax and the resulting lateral nodes are used to map the original fingerprint to a flat surface leaving only the ridge cross sectional variation. Table 3‐1: Across‐Bar Error after flattening and down sampling. Direction, Height Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Y= Measured Dist. (mm) 1.016 1.016 1.016 1.016 1.016 1.016 5.994 5.944 5.994 5.944 5.994 5.994 X= Actual Dist. (mm) 1 1 1 1 1 1 6 6 6 6 6 6 Diff. (mm) % Error Diff. (inch) ApF 0.01X (inch) PIV 0.018X (inch) P/F ApF, PIV 0.016 0.016 0.016 0.016 0.016 0.016 0.006 0.056 0.006 0.056 0.006 0.006 1.6% 1.6% 1.6% 1.6% 1.6% 1.6% 0.1% 0.93% 0.1% 0.93% 0.1% 0.1% 7.0 E-4 7.0 E-4 7.0 E-4 7.0 E-4 7.0 E-4 7.0 E-4 23.6 E-4 23.6 E-4 23.6 E-4 23.6 E-4 23.6 E-4 23.6 E-4 13 E-4 13 E-4 13 E-4 13 E-4 13 E-4 13 E-4 42.5 E-4 42.5 E-4 42.5 E-4 42.5 E-4 42.5 E-4 42.5 E-4 P, P P, P P, P P, P P, P P, P P, P P, P P, P P, P P, P P, P 6.30 E-4 6.30 E-4 6.30 E-4 6.30 E-4 6.30 E-4 6.30 E-4 2.36 E-4 22.04 E-4 2.36 E-4 22.04 E-4 2.36 E-4 2.36 E-4 2.37 Along‐BarError The along bar error is described in reference [1], subsection 3.4.2. See details for Table 3-2 in Appendix A, Table A-4. The max H threshold is based on a bar length of 1.5 inches. The points selected were limited by the FOV to be much less than 1.5. So the resulting H error is scaled by 1.5 divided by the AC length and then compared with the Max H threshold of 0.027 inches. We chose to perform this process in the native resolution for more accuracy but since the 8 measurements were an order of magnitude under the Max H, using the flattened and down sampled image should also pass the test. Table 3‐2: Native curvature measurements using most likely to be curved bar (i.e., bars near edge of FOV). Direction, Height Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Scaled H ApF (inch) Max H thresh (inch) 0.0053 0.016 0.0025 0.016 0.0042 0.016 0.0050 0.016 0.0027 0.016 0.0027 0.016 PIV Max H thresh (inch) 0.027 0.027 0.027 0.027 0.027 0.027 P/F ApF, PIV P, P P, P P, P P, P P, P P, P 2.38 DepthResolutionandNoiseLevel We use the results from the multi-grid calibration technique. The downloadable calibrate.exe can be downloaded from http://www.engr.uky.edu/~lgh/soft/softscannerDownloadsOnly.htm along with tutorials. This program outputs actual and calculated values of the multi-grid feature centers. For each plane, the average Z value and STD are calculated and presented in Table 3-3 and plotted in Fig. 3.1. At this time there is no specification threshold on depth. In appendix F the specification is for gray level and is in section 2.1 of appendix F. In SLI depth can be treated as a spatial dimension or mapped to a gray level. Consider 7.65/255 as a threshold scaling coefficient based on gray level mapping. Then for a 5 mm depth span, the allowed variation would be 0.15 mm =5mm x 7.65/255. Table 3‐3: Depth Measurement Accuracy. Actual Z (mm) 0 1 2 3 4 5 Average Measured Z (mm) 0.0364 0.9688 1.9807 2.9959 4.0043 5.0139 Z (mm) Z STD (mm) 0.0364 -0.0312 -0.0193 -0.0041 0.0043 0.0139 0.0454 0.0374 0.0267 0.0220 0.0198 0.0296 9 Threshold (mm) 0.15 0.15 0.15 0.15 0.15 0.15 Pass/Fail P P P P P P Figure 3.1: Depth linearity and accuracy. 2.39 StructuredLightIlluminationDepthBandingTest Banding can be measured by sampling a position on the Z peak on a band and two points, one on either side of the peak in the valleys of the band. Applying the triangle geometry used in the “along-bar” analysis, we get the peak-to-peak measure of the banding. Other information that may be important to the SLI designer is the wavelength of the band along with the wavelength of one of the reflected patterns. This additional information may help the designer but is not necessary for the specification. GL3Dview.exe is used to get the three data points. An automated process can sample the data for banding statistics but since this is a new specification and we are measuring manually we selected the worst banding region in the multi-grid set and took one test sample. To find the band features we used GL3Dview to metalize the surface as shown in Fig. 3.2. The banding is maximum toward the bottom of that image. The data taken and the results of the measurement are shown in Table . 10 Figure 3.2: Metalized calgrid0_0F.bmp grid surface, at Zmin depth, revealing SLI banding. Table 3‐4: Banding measurement. Scan File A-valley (mm) {Xw, Yw, Zw} Calgrid0_0F.bmp 5.7967, 2.9267, 1.9506 B-peak (mm) {Xw, Yw, Zw} 5.7972, 2.7810, 1.9549 C-valley (mm) H (p-p) {Xw, Yw, Zw} (micron) 5.7975, 4.7539 2.6372, 1.9497 Thresh (micron) 15.00 P/F P 4. SpatialFrequencyResponseofSLIAmplitudeModulationParameter Our depth targets are still in production so we conducted scaled experiments on other scanners to find an alternative. What we found is that SLI has alternative parameters that can be used for intensity based Frequency Response analysis. In particular, the amplitude modulation parameter, described in subsection 1.2, demonstrates high contrast and is based on the temporal signature of the patterns at each pixel. Due to time constraints we were only able to obtain and test Ronchi rulings with 1cy/mm, 2 cy/mm, 3 cy/mm, 4 cy/mm, 5 cy/mm and 10 cy/mm. In future research we will obtain and test grids with 6 cy/mm, 7, cy/mm, 8 cy/mm and 9cy/mm. While the present results are certainly promising, future tests need to include these higher frequencies. For this iteration, for the phase alignment, we also only sampled values from a 20 x 100 point area in the center of the scan outputs. The partition was then averaged along 20 pixel dimension to reduce the effects of extrema and then the maximum and minimum peaks were used for the data processing. The rectangle was rotated 90 degrees for orthogonal Ronchi alignment. The output was from the general springs algorithm and uniformly down sampled to 500 ppi. We used the non-normalized definition of CTF as the modulation index such that CTF B f maximum B minimum B maximum B minimum B (4.1) Both the PIV and Appendix F Specifications allow normalization of the CTF by the “0” frequency CTF value. Furthermore, for practicality, a low frequency of 0.3 cy/mm may be used 11 as the normalizing value. For our tests, the lower frequencies were flat, i.e., same values, in modulation index so we used the f = 1 cy/mm as the normalization term such that CTF NB f CTF B f CTF B 1 (4.2) Tables for both results are given in this section and sample graphs are shown in Appendix A. Table 4-1 shows the non-normalized results and Table 4-2 shows the normalized CTF results. While the native resolution captured the 10 cy/mm without aliasing. After the flattening and down sampling to 500 ppi there was aliasing. Better angular alignment and distortion correction may resolve this problem in future tests. Table 4‐1: Non‐normalized CTF results for 500ppi after flattening with uniform springs algorithm. Cy/mm CTF Phase Zmax 1 0.8712 2 0.8895 3 0.8895 4 0.8525 5 0.7650 10 0.4364 CTF Ortho Zmax 0.8279 0.8706 0.8747 0.8442 0.7564 0.4430 CTF Phase Z0 0.8729 0.8866 0.8787 0.8323 0.7326 0.3747 CTF Ortho Z0 0.8209 0.8624 0.8635 0.8202 0.7179 0.3746 CTF Phase Zmin 0.8326 0.8732 0.8590 0.7909 0.6562 0.2752 CTF Ortho Zmin 0.8193 0.8560 0.8409 0.7855 0.6589 0.2564 ApF Thresh PIV Thresh P/F ApF,PIV 0.9480 0.8690 0.7910 0.7130 0.6360 0.2590 0.9200 0.8220 0.7200 0.6200 0.5260 0.1740 F, F F, P P, P P, P P, P F aliasing ApF Thresh PIV Thresh P/F ApF,PIV 0.9480 0.8690 0.7910 0.7130 0.6360 0.2590 0.9200 0.8220 0.7200 0.6200 0.5260 0.1740 P, P P, P P, P P, P P, P Table 4‐2: Normalized CTF results for 500 ppi after flattening with uniform springs algorithm. Cy/mm CTF Phase Zmax 1 1.0000 2 1.0211 3 1.0210 4 0.9786 5 0.8782 10 0.5010 CTF Ortho Zmax 1.0000 1.0517 1.0566 1.0197 0.9137 0.5351 CTF Phase Z0 1.0000 1.0157 1.0067 0.9535 0.8393 0.4293 CTF Ortho Z0 1.0000 1.0506 1.0520 0.9992 0.8745 0.4564 CTF Phase Zmin 1.0000 1.0487 1.0317 0.9499 0.7881 0.3305 CTF Ortho Zmin 1.0000 1.0448 1.0263 0.9588 0.8043 0.3130 F aliasing 5. GrayLevelUniformity Gray Level Uniformity requirements 1 through 4 are dependent on 125 point by 125 point partitions. Unfortunately the present FOV of the D1 was such that much of the area would be wasted if we used 125 point by 125 point partitions. So for this iteration we used partitioning based on 114 columns by 121 rows. This will be corrected in future iterations. Also, the uniform surfaces available during this study were somewhat noisy so higher quality matte uniform gray level target surfaces will be used in future iterations. Never the less, the measurements show that 12 the D1 will need better uniformity in its illumination and/or its post-processing of the captured patterns. 5.1Requirement#1:AdjacentRowandColumnUniformity The D1 one did not pass this specification. For the Row uniformity test the dark surface (~61) had 29% and the gray surface (~205) had 6% of their differences above the associated thresholds, respectively. {29%, 6%} > 1% = Fail. The column uniformity also failed with {69%, 67%}>1%=Fail Figure 5.1: (left) Dark surface differences. (right) Gray surface differences. The results for the adjacent row tests are shown in Fig. 5.1 (left and right). The red line for both surfaces shows that along the orthogonal direction which represents the greatest step difference, the results are well above threshold and hence fail the test. The results for the adjacent column tests are shown in Fig. 5.2 (left and right). Fig. 5.2 tells a similar story but along the Phase direction (blue and violet lines). Typically, any angling of the optical axes of the projector and/or the camera will create a linear ramp in terms of 13 attenuation of the light. Combined with this linear attenuation is a Gaussian like intensity distribution cause by aperture and lens effects. My conjecture is that this is what is causing this problem and it can be corrected by one of several approaches that are commonly used in illumination systems. 5.2Requirement#2:Pixel‐to‐PixelUniformity For each of the 114 by 121 partitions: The average gray level for each ~quarter-inch window, rounded to the nearest whole number (nearest integer value), is computed for each image. Compliance with the requirement is achieved when no more than 1.0% of the pixels in each dark gray image window are more than 8 gray levels away from the window average, and no more than 1.0% of the pixels in each light gray image window are more than 22 gray levels away from the window average. The partitions are arranged 3 x 2 and the results are shown in Tables 5-1 and 5-2. Table 5‐1: Percent Pixels diff. from average by 8 0.4 % 4.4 % 33.7 % 0.7 % 3.4 % 29.5 % Table 5‐2: Percent Pixels diff. from average by 22 0.3 % 0.08 % 0.0 % 1.2 % 0.04 % 0.4 % The results of this particular test makes sense in terms of the linear ramp affects but they would also be sensitive to the lower quality surfaces that I had to use. I don’t recommend making engineering changes only based on Tables 5-1 and 5-2 unless the data is retested with higher quality test surfaces. 5.3Requirement#3:SmallAreaUniformity The locations of the minimum number of quarter-inch windows that cover the capture area are identified, for the light gray and dark gray images. The average gray level for each quarter-inch window is computed for each partition. The mean values are shown in Tables 5-3 and 5-4. Table 5‐3: Mean values of Dark surface partitions. 47 56 72 46 55 68 14 Table 5‐4: Mean values of Gray Surface partitions. 197 204 195 195 205 195 The absolute value of the difference between the gray level averages for every possible pairing of quarter-inch windows is computed. Compliance with the requirement is achieved when the largest difference for the dark gray image is less than or equal to 3.0 gray levels, and the largest difference for the light gray images is less than or equal to 12.0 gray levels. With 6 partitions there are 15 differences. For the Dark surface there is 13 out of 15 out of bounds. For the Gray surface the mean values are all within 12 gray levels. Dark=Fail and Gray=Pass. 5.4Requirement#4:NoiseStandardDeviation All partition noise STDs must be less than 3.5. The Dark and Gray STDs are shown in Tables 55 and 5-6, respectively. Both the Dark and Gray surface STDs Fail. Table 5‐5: Dark surface partition STDs. 3.3 4.2 9.5 3.4 4.1 9.1 Table 5‐6: Gray surface partition STDs. 9.0 4.1 5.3 9.5 3.5 5.2 5.5MeasurementofDeviceInput‐OutputRelation A set of xwrite calibrated surfaces were captured by the D1. The mini-target was too big to include all the test pads or position at Z0 and Zmin levels, but we did position it at Zmax. A big issue here is in regards to Automatic Gain Control (AGC) for the D1? From the scans, it would appear that there was no AGC modifying the data. However, pad 85 resulted in 0 intensity values and pad 243 had visible banding. The banding indicates that the patterns were saturating and hence the drop off in response. We also see “watermark” features in Fig. 5.2 which we found originated within the imaging system of the D1. While not part of the testing, FS3D should be aware that all the images have faint circular “watermark” features in the captured images. 15 Figure 5.2: Captured calibrated targets from left to right, 85, 122, 160, 200 and 243. Fig. 5.3 (left) shows the mean values of 250x250 center partition of the 122, 160, 200 and 243 targets. STD error bars are included. Fig. 5.3 (right) shows a line fitted to the 4 data points. Future iterations will include more data points for better measurement of linearity but for the 3 pads that had no apparent banding and were not zero in value, they do indicate a linear relationship that is measureable. Figure 5.3: (left) Mean values with STD bars. (right) Line fit to mean values. There was no specification in PIV but in Appendix F the absolute difference between the values and the line fit had to be less than 7.65 gray levels. The results are shown in Table 5-7. Table 5‐7: Absolute difference between gray level and fit values. Mean Value 61.5 119.1 192.3 197.3 Fit Value 72.4 117.4 164.7 215.6 Difference 11.0 1.7 27.6 18.3 P/F (P < 7.65) F P F F 16 6. FingerprintImageQuality We were not able to obtain the MITRE software to evaluate image quality for this iteration. We also did not have enough time to collect from more than 4 subjects. So for this iteration are focus is to evaluate the flattening process and obtain a preliminary evaluation of this aspect of the testing. We used the UK software in reference [1] section 6 for evaluating the flattening. Unfortunately, the FS3D tubular flattening was not functioning so we used a general spring based flattening algorithm developed at UK to conduct the flattening and uniform down sampling. Table 6‐1: Flattening alignment test using feature alignment. ID Digit FS# CM# N Scale 0 0 1 1 2 2 3 3 1 1 1 D2 D7 D3 D7 D2 D7 D2 D7 D8 D9 D10 1 1 1 1 1 1 1 1 1 1 1 0.99873 1.00652 0.93127 1.00568 1.01996 0.97320 1.01873 0.96172 0.98024 1.01223 1.0393 1 1 1 1 1 1 1 1 1 1 1 8 8 5 8 18 8 8 18 4 6 4 Scale Error |S-1| 0.00127 0.00652 0.06873 0.00568 0.01996 0.0268 0.01873 0.03828 0.01976 0.01223 0.0393 RMS Error (microns) 87 180 196 178 106 110 131 123 125 118 46 Thresh RMS (micron) 180 180 180 180 180 180 180 180 180 180 180 Thresh Scale |S-1| 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 P/F P P F P P F P F P P F In Table 6-1, the “ID” is the subject number. The “Digit” is D1 through D10 where D2 and D7 are the right and left index fingers, respectively. Some scans are performed more than once per subject-digit so FS# and CM# are the scan numbers for FlashScan3D D1 and the CrossMatch Verifier 320 LC, respectively. The number of features used is “N”. The Root Mean Square (RMS) Error, in units of microns, is determined by the performing the RMS operation on the distances between feature pairs. Subject 1 has difficult prints for both the CrossMatch and FlashScan scanners so we could not compare D2. We included D3 instead as well as D8, D9 and D10 for Subject 1. For the RMS error we suggest, only as a starting point for further discussion, 180 microns and for the Scale error threshold we recommend 0.02. Our reasoning for these levels is that 180 microns is below a ridge width in most fingerprints and 0.02 or 2% scale error should be in range of many matching algorithms and seems to work, for our group, with manual inspection/comparison of prints. For this iteration we included 4 subjects instead of 10 and did not include the 5 separate scans of one of the subjects. In future iterations, we will include 10 subjects as well as the 5 scans of the same finger for one of the subjects. For Figs. 6.1 through 6.11, we used UK comparison software. We manually assigned feature point pairs such that for each pair, one feature would be positioned in a FlashScan3D D1 scan, Fig. 6.1 (left), and the other feature to the CrossMatch Verifier 320 LC scan, Fig. 6.1 second from left. The application calculates an affine transformation to align the whole feature set. The 17 aligned feature set is shown if Fig. 6.1 third image from left. The right image of Fig. 6.1 is a composite image where a moveable partition showing the aligned FS3D scan on top of the reference CrossMatch scan. If one follows the light gray lines in the FS3D partition, they should line up with the white lines in the reference image. Figs. 6.2 through 6.11 are organized in the same way. Figure 6.1: Subject 0, D2. First from left is FS3D scan. Second from left is CrossMatch Scan. Third from left is superimposed features and right is composite CM with a FS3D partition. Figure 6.2: Subject 0, D7 results. 18 Figure 6.3: Subject 1, D3 results. Figure 6.4: Subject 1, D7 results. 19 Figure 6.5: Subject 2, D2 results. Figure 6.6: Subject 2, D7 results. 20 Figure 6.7: Subject 3, D2 results. Figure 6.8: Subject 3, D7 results. 21 Figure 6.9: Subject 1, D8 results. Figure 6.10: Subject 1, D9 results. 22 Figure 6.11: Subject 1, D10 results. REFERENCES 1. Laurence G. Hassebrook, “Test Procedures for Verifying Image and 3-Dimensional Quality Requirements For Personal Identity Verification (PIV) Single Fingerprint Structured Light Illumination (SLI) Device,” University of Kentucky ECE Technical Report, (2013) 2. Ronchi Rulings purchased from Applied Image, Inc. 1653 East Main St., Rochester, NY 14609. Rulings are on paper and mounted on plastic mounts. A. APPENDIX:Section2DataCalculations For Section 2, the data values used to calculate ppi are shown in Table A-1 and A-2. Table A‐1: Points Per Inch (ppi) Calculations Direction, Height Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Pixel A {26,338 } {220,24 } {20,338 } {220,28 } {16,338 } {220,29 } Pixel B {429,338 } {220, 701} {435,338 } {220, 726} {446, 338} {220,709 } Cycles 10 17 10 17 10 16 23 ppmm 40.3=(429-26)/10 39.82=(701-24)/17 41.50=(435-20)/10 41.06=(726-28)/17 43.00=(446-16)/10 42.50=(709-29)/16 ppi 1023.62 1011.52 1054.10 1042.89 1092.20 1079.50 Table A‐2: Field Of View (FOV) calculations Direction, Height Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Resolution/ppmm 480/40.3 752/39.82 480/41.50 752/41.06 480/43.00 752/42.50 Distance 11.91 mm 18.88 mm 11.57 mm 18.32 mm 11.16 mm 17.69 mm For Section 3, the Across bar error calculations at Native scanner resolution is shown in Table A3. Table A‐3: Across‐Bar Error for N‐cycles in Native Xw and Yw coordinates Direction, Height Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin Y=Measur ed Distance (mm) 0.9936 0.9983 1.0128 1.0138 1.0037 1.0039 6.00095 6.01508 5.99112 5.99643 6.00975 6.00557 X= Actual Distance (mm) 1 1 1 1 1 1 6 6 6 6 6 6 Difference (mm) % Error Difference (inch) 0.018X (inch) P/F 0.0064 0.0017 0.0128 0.0138 0.0037 0.0039 0.00095 0.0151 0.00888 0.00357 0.00975 0.00557 0.64% 0.17% 1.28% 1.38% 0.37% 0.39% 0.016% 0.25% 0.15% 0.06% 0.16% 0.093% 2.52 E-4 6.69 E-5 5.04 E-4 5.43 E-4 1.46 E-4 1.53 E-4 3.74 E-5 5.94 E-4 3.50 E-4 1.41 E-4 3.84 E-4 2.19 E-4 7.09 E-4 7.09 E-4 7.09 E-4 7.09 E-4 7.09 E-4 7.09 E-4 42.5 E-4 42.5 E-4 42.5 E-4 42.5 E-4 42.5 E-4 42.5 E-4 P P P P P P P P P P P P For Section 3, the Along bar error/distortion calculations at Native scanner resolution is shown in Table A-4. Table A‐4: Native curvature measurements using most likely to be curved bar. Direction, Height Pnt A (mm) Xw, Yw, Zw Pnt B (mm) Xw, Yw, Zw Pnt C (mm) Xw, Yw, Zw Ortho, Zmax Phase, Zmax Ortho, Z0 Phase, Z0 Ortho, Zmin Phase, Zmin 1.274,17.582,5.056 0.421,16.800,5.107 11.080,17.647,2.705 0.463,16.743,2.578 11.101,17.498,0.249 0.711,16.738,0.119 1.164,9.301,5.311 6.127,16.867,5.144 11.090,8.921,2.956 6.125,16.807,2.609 11.094,8.931,0.516 5.731,16.797,0.147 24 Scaled H Max H (inch) thresh (inch) 1.164,‐0.715,5.674 0.0053 0.027 11.716,16.907,5.153 0.0025 0.027 11.009,‐0.358,3.271 0.0042 0.027 11.534,16.799,2.619 0.0050 0.027 11.040,0.375,0.822 0.0027 0.027 11.167,16.836,0.1458 0.0027 0.027 P/F P P P P P P The max H threshold is based on a bar length of 1.5 inches. So the scaled H is scaled to be the effective error in 1.5 inches. The trigonometric method used to determine the values in Table A4 is designed for manual measurements. It is based on 3 points in a 3-D triangle. The points are manually selected from the Native 3-D scans by using a 3-D viewer. The points are physically measured to be in the middle of the bar region. These points are organized in a triangle shown in Fig. A.1 and processed with the following equations. Figure A.1: Triangle formed from three 3‐D points along a bar. We know that H can be determined as H AB sin A (A.1) where the vertices are defined by PA x A yA zA (A.2a) PB x B yB zB (A.2b) PC xC yC zC (A.2c) And the vectors references to point A are AB PB PA (A.3a) AC PC PA (A.3b) The lengths of the vectors in Eq. (A.3) are the square root of the inner product such that L AB AB AB (A.4a) L AC AC AC (A.4b) 25 Combining Eqs (A.3) and (A.4) yields the angle between the two vectors as AB AC A cos 1 L AB L AC (A.5) MATLAB SOFTWARE USED FOR ALONG BAR ERROR % calculate bar curvature clear all; % allocate PA=zeros(1,3); PB=PA; PC=PA; % Zmax, Ortho PA=[1.274,17.582,5.056] PB=[1.164,9.301,5.311] PC=[1.164,-0.715,5.674] [ThetaA,LAB,LAC]= AngleBetweenVectors1(PA,PB,PC); % Determine effective H for 1.5 inches Hmm=LAB*sin(ThetaA)*(1.5*25.4)/LAC HinchZmaxOrtho=Hmm/25.4 % Zmax, Phase PA=[0.421,16.800,5.107] PB=[6.127,16.867,5.144] PC=[11.716,16.907,5.153] [ThetaA,LAB,LAC]= AngleBetweenVectors1(PA,PB,PC); % Determine effective H for 1.5 inches Hmm=LAB*sin(ThetaA)*(1.5*25.4)/LAC HinchZmaxPhase=Hmm/25.4 % Z0, Ortho PA=[11.080,17.647,2.705] PB=[11.090,8.921,2.956] PC=[11.009,-0.358,3.271] [ThetaA,LAB,LAC]= AngleBetweenVectors1(PA,PB,PC); % Determine effective H for 1.5 inches Hmm=LAB*sin(ThetaA)*(1.5*25.4)/LAC HinchZ0Ortho=Hmm/25.4 % Z0, Phase PA=[0.463,16.743,2.578] PB=[6.125,16.807,2.609] PC=[11.534,16.799,2.619] [ThetaA,LAB,LAC]= AngleBetweenVectors1(PA,PB,PC); % Determine effective H for 1.5 inches Hmm=LAB*sin(ThetaA)*(1.5*25.4)/LAC HinchZ0Phase=Hmm/25.4 % Zmin, Ortho PA=[11.101,17.498,0.249] PB=[11.094,8.931,0.516] PC=[11.040,0.375,0.822] [ThetaA,LAB,LAC]= AngleBetweenVectors1(PA,PB,PC); % Determine effective H for 1.5 inches Hmm=LAB*sin(ThetaA)*(1.5*25.4)/LAC HinchZminOrtho=Hmm/25.4 % Zmin, Phase PA=[0.711,16.738,0.119] 26 PB=[5.731,16.797,0.147] PC=[11.167,16.836,0.1458] [ThetaA,LAB,LAC]= AngleBetweenVectors1(PA,PB,PC); % Determine effective H for 1.5 inches Hmm=LAB*sin(ThetaA)*(1.5*25.4)/LAC HinchZminPhase=Hmm/25.4 FUNCTION FOR FINDING ANGLE function [ ThetaA, LAB, LAC ] = AngleBetweenVectors1(PA,PB,PC) % form vectors VAB=PB-PA; VAC=PC-PA; % Vector lengths LAB=sqrt(VAB*VAB'); LAC=sqrt(VAC*VAC'); % Vector inner product ABC=VAB*VAC'; % Cosine thetaA ThetaA=acos(ABC/(LAB*LAC)); end For Section 3.3 Depth Linearity and STD calculation we use the multi-grid approach to measure positional accuracy. The “multi-grid” is the same 2-D flat grid captured at different depth. When processed together, the sequence is used as a single grid which spans the scan volume. Actual colorized captured data is shown in Fig. A-2. Figure A.2: Multi‐grid data. From Section 4 we plot the averaged (21 columns of the 5 cy/mm partition for Zmax in Phase direction. 27 Figure A.3: Average signal in 21 x 101 partition for 5 cy/mm Ronchi ruling in Phase direction for Zmax. Figure A.4: (left) Non‐normalized results for Zmax, Phase, CTF. (right) Normalized results. 28