A one-layer inverse skin model was used to extract the parameters from the two-layer spectra. The same code used to generate the two-layer MCLUT was also used to create the one-layer MCLUT. Refractive indices and probe geometry parameters were also the same. In the one-layer MCLUT, ranges from 0 to and ranges from 0 to to cover the range of optical properties present in skin.28 Ten evenly spaced increments were used for each parameter. In the one-layer inverse model, the first step is to set initial values to the following parameters: (1) , (2) [mel], (3) [Hb], (4) , and (5) vessel radius (). Next, is calculated using Eq. (1) and is determined using the following equation: Display Formula
(4)where [mel] represents the concentration of melanin and is the wavelength dependent absorption due to hemoglobin that has been corrected for the inhomogeneous distribution. Because hemoglobin is confined to very small volumes in blood vessels, we account for this inhomogeneous distribution in tissue by using the corrections described by van Veen et al. to calculate a corrected absorption coefficient of blood.29 The correction factor can be calculated as Display Formula
(5)where is the absorption coefficient of whole blood and is assumed to be the mean vessel radius in the tissue volume sampled. The packaging corrected absorption coefficient of blood in tissue can now be written as Display Formula
(6)where Display Formula
(7)where [Hb] is the hemoglobin concentration, is the extinction coefficient for oxygenated hemoglobin at wavelength , is the extinction coefficient for deoxygenated hemoglobin at wavelength , and is the oxygen saturation. After Eqs. (1), (4) to (7) are used to calculate and , the one-layer MCLUT is used to generate a reflectance spectrum. The root-mean-sqared error between this spectrum and the modeled two-layer spectrum is then calculated. The parameters are then iteratively updated until the error is minimized. An interior-point nonlinear optimization routine provided in the MATLAB® optimization toolbox (Mathworks, Natick, Massachusetts) was used as the optimization algorithm. In order to avoid converging to a local minima, the optimization algorithm was run three times with three different sets of initialization parameters and then we used the solution that gave the smallest error. We are confident that the global minimum was found because the three different initialization parameters led to very similar solutions.