Efficient reading of birefringence data
By employing a multi-wavelength multiplexing technique combining a polarization state generator and a bandpass filter, along with likelihood functions and constraints, the problem of long reading times for local birefringence data in existing technologies has been solved, enabling fast and efficient determination of birefringence values and optimizing the reading process.
Patent Information
- Application Number
- CN202180033224.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-05-05
- Filing Date
- 2021-03-25
- Publication Date
- 2026-01-09
- Estimated Expiration
- 2041-03-25
AI Technical Summary
Existing technologies require multiple measurements when reading local birefringence data, resulting in excessively long reading times and an inability to effectively utilize arbitrary polarization configurations to quickly determine birefringence values.
By using a combination of polarization state generator and bandpass filter, time-overlapping multi-wavelength multiplexing measurement is achieved. Combined with likelihood function and constraint conditions, the azimuth angle and hysteresis value of birefringent voxels are determined with fewer than three measurements. Wavelength multiplexing technology and background correction method are used to optimize the readout process.
It reduces the time and computational resource consumption for reading birefringence data, improves reading efficiency, enables rapid determination of birefringence values under arbitrary polarization states, and reduces the impact of the number of measurements on reading time.
Smart Images

Figure CN115552520B_ABST
Abstract
Description
BACKGROUND
[0001] Over the past decade, much of the world’s data has moved to the cloud. To meet the growing demand, cloud providers rely on various data storage technologies. These data storage technologies include non-volatile memory (NVM), flash memory, hard disk drives (HDDs), magnetic tape, and optical disks. These storage technologies differ from one another in terms of cost, latency, throughput, storage density, failure rate, and media lifetime. SUMMARY
[0002] This summary is provided to introduce a selection of concepts further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to implementing any or all of the disadvantages mentioned in any portion of this summary.
[0003] A promising technology for storing data is to encode data as local birefringence voxels in a dielectric storage medium. Such data can be stored at high density and the storage medium has a longer lifetime compared to magnetic and other storage media. However, reading local birefringence to decode the data involves performing multiple optical measurements at different polarization states. Each additional measurement increases the time required to read the medium. Accordingly, various aspects of the technology disclosed herein help reduce the time for reading data stored as local birefringence.
[0004] One aspect provides a system for reading birefringence data. The system includes one or more light sources, a first polarization state generator positioned to produce first polarized light from a first wavelength band of light output by the one or more light sources, a second polarization state generator positioned to produce second polarized light from a second wavelength band of light output by the one or more light sources, an image sensor configured to acquire images of a sample region through which the first polarized light and the second polarized light pass, a polarization state analyzer optically arranged between the sample region and the image sensor, a first bandpass filter optically arranged between the polarization state analyzer and the image sensor, the first bandpass filter configured to pass the first wavelength band of light, a second bandpass filter optically arranged between the polarization state analyzer and the image sensor, the second bandpass filter configured to pass the second wavelength band of light. In some examples, three or more polarization state generators can be used to generate three or more different polarization states using three or more wavelength bands of light, and three or more corresponding bandpass filters can be used between the polarization state analyzer and the image sensor. With this aspect, multi-wavelength multiplexed measurements of voxels can be made in a time-overlapped manner, thereby reducing the amount of time used to read birefringence data compared to using sequential measurements without wavelength multiplexing.
[0005] In another aspect, a method on a computing device is provided, the method comprising acquiring measurement data for a birefringent voxel by directing light comprising one or more predetermined polarization states through the birefringent voxel and receiving the light at an image sensor based on the measurement data, determining two points on a surface of a Poincaré sphere corresponding to two possible birefringent states of the birefringent voxel, each state comprising a set of birefringent values including an azimuthal angle and a retardance, applying a constraint to determine the azimuthal angle and the retardance; and outputting the determined birefringent values including the azimuthal angle and the retardance. In this aspect, by applying the constraint to determine the azimuthal angle and the retardance, the birefringent values for the voxel can be determined with fewer measurement values than if the constraint is not applied. BRIEF DESCRIPTION OF DRAWINGS
[0006] Figure 1 Reading of birefringent voxels in a storage medium is schematically illustrated.
[0007] Figure 2 A schematic of a storage medium comprising data encoded as birefringent voxels is shown.
[0008] Figure 3 A Poincaré sphere showing representation of polarization states as positions on a sphere.
[0009] Figure 4 A flowchart showing an example method for determining birefringent values based on a maximum value determined for a likelihood function is shown.
[0010] Figure 5 An example of a polarization state used to measure birefringent values is shown.
[0011] Figure 6 Example solutions for birefringent values based on two measurements and based on one measurement are shown.
[0012] Figure 7 A flowchart describing an example method for acquiring birefringent measurements using wavelength multiplexing is shown.
[0013] Figure 8 A block diagram of an example system for reading birefringent data with wavelength multiplexing is shown.
[0014] Figure 9 An example system using light from the same image source to wavelength multiplex light of different polarization states is shown.
[0015] Figures 10A-10B A flowchart showing an example method for measuring birefringent voxels via wavelength multiplexing is shown.
[0016] Figure 11A flowchart depicting an example method for performing background correction on birefringence values is shown.
[0017] Figure 12 A block diagram of an example computing system is shown. DETAILED DESCRIPTION
[0018] As noted above, one promising technology for cloud data storage involves optically writing data into a solid dielectric substrate, such as glass, using high-power, short-pulse laser irradiation. The irradiance, at its focal point, induces local birefringence, which can later be read using polarization imaging. The term "voxel" as used herein refers to any discrete volume of the substrate in which a single data value (i.e., symbol) can be stored. The data stored in a voxel can take various forms. In principle, any Mueller matrix coefficient of the substrate lattice can be manipulated to encode data. In an example using a quartz glass substrate, the lattice perturbation from the focused polarized irradiance appears in the form of an extrinsic birefringence localized at the focus. Thus, each voxel of the substrate can be modeled as a very small waveplate with a retardance magnitude and an azimuthal angle. These model parameters can be independently manipulated to write a desired symbol into a given voxel. Here, the polarization angle of the light beam determines the azimuthal angle of the voxel, while other various factors (pulse amplitude, duration, energy, number, and / or spacing between pulses) determine the retardance of the voxel.
[0019] By dividing the continuous space of achievable azimuthal angles and / or retardance magnitudes into discrete bins, a multi-bit data value can be encoded into each voxel by writing the birefringence of that voxel into one of the discrete bins. Furthermore, in some examples, multiple parallel layers of voxel structures can be written into the same substrate by focusing the laser irradiance to a specified depth below the substrate irradiation surface. These features, alone or in combination, can allow a large amount of data to be written into a single medium. In some examples, the storage medium comprises a solid, slab-like structure. In other examples, the storage medium comprises a thin layer formed on another substrate. In further examples, the storage medium can have any other suitable configuration, such as a prism or a cylinder.
[0020] When a light ray passes through a birefringent voxel, the birefringent voxel exhibits anisotropy because different light polarization states pass through the sample at different speeds. When light passes through or reflects off a birefringent voxel, its polarization state changes in a particular way that depends on the azimuthal angle and the retardance of the sample. As such, by measuring the polarization state of polarized light that interacts with a birefringent voxel, information about the azimuthal angle and the retardance of the voxel can be obtained.
[0021] Some methods of measuring the polarization state (and thus the angle and retardance of a voxel) involve performing a series of measurements using different input or output (or both) polarizations. Figure 1Reading of birefringence data stored in storage medium 100 is illustrated schematically. Light from light source 102 passes through a polarization state generator (PSG) 104, which outputs polarized light having a polarization angle determined by the PSG. The light source can include an LED, a laser, or other light source.
[0022] After passing through storage medium 100, the light emitted by light source 102 and PSG 104 passes through one or more voxels of storage medium 105, passes through a polarization state analyzer (PSA) 106, and then reaches a detector 108. The settings of PSA 106 and PSG 101 define a polarization state k for the measured intensity k of the light, as detailed below. Detector 108 can include, for example, a CMOS image sensor (e.g., a high resolution / high frame rate sensor) or other suitable photodetector array that can image an entire focal plane located within storage medium 105, and thereby image multiple arrayed voxels in the same image. In other examples, point detectors or small arrays of detectors, e.g., photodiodes, phototransistors, or SPADs (single photon avalanche diodes) can be used to build up an image point by point). Although Figure 1 Light rays are shown passing through the storage medium and being transmitted to the image sensor, but in other examples, the light rays can reach the image sensor by reflection from the storage medium.
[0023] In examples where data is to be read from multiple layers of storage medium 105, a variable focal length optical element 110 can be used to adjust the focal plane of detector 108 so as to read voxels at the focal plane while other voxels are out of focus. In other examples, the focal point can be changed by moving the sample. Figure 2 An example storage medium 200 including multiple layers of voxels is illustrated schematically, with two layers illustrated at 202 and 204.
[0024] To describe the measurements made of the voxels, a common construct is the Poincaré sphere, as Figure 3The Poincaré sphere 300 is used to represent the polarization state of light by mapping the last three components of the 4-D Stokes vector onto a 3-D Cartesian coordinate system. For fully polarized light, a particular measurement state is described by a particular location on the surface of the sphere that represents the particular polarization state of the light. Partially polarized light is represented by a point inside the surface of the Poincaré sphere. The north pole represents RCP - right circularly polarized light. The south pole represents LCP - left circularly polarized light. The states on the equator are linearly polarized, with the angle defined by the azimuthal angle on the sphere. A generic point on the sphere is elliptically polarized, with the ellipticity determined by the angle between the state and the pole, and the azimuthal angle determined by the angle around the sphere. Examples of polarization states are shown on the sphere at 302. The black dashed curves are circles of constant latitude, and thus have constant retardance. The term "swing" refers to the angle of the measurement state relative to the pole of the sphere 304. The horizontal angle is the azimuthal angle 306. The azimuthal angle and the retardance of a voxel can also be represented as a point on the surface of the sphere, since they result in the polarization output state of the probe light.
[0025] Current methods for determining the birefringence values of voxels of a storage medium involve three or more (typically four) measurements of a voxel at different probe light polarization states. Multiple measurements are used since the determination involves four degrees of freedom, the voxel retardance, the voxel azimuthal angle, the measurement scale, and the measurement offset. The four measurement method determines all four of these values for each read process. M. Shribag and R. Oldenbough, "Fast and Sensitive Measurement Technique for Two-Dimensional Birefringence Distributions," Appl. Opt. 42, 16, 3009 (2003), Optical Society of America, (https: / / www.osapublishing.org / ao / abstract.cfm?uri=ao-42-16-3009; see also https: / / doi.org / 10.1364 / AO.42.003009) describe a three measurement method that assumes the offset is zero and solves for the other three parameters from the three measurement values. However, using three or four measurements affects the speed of retrieving data from the storage due to the different number of measurements.
[0026] Therefore, this paper discloses an example measurement procedure that can be used to determine the azimuth and hysteresis values for a birefringent voxel with fewer than three measurements. In short, the disclosed method utilizes prior knowledge of the hysteresis-based constraint on the hysteresis value, allowing the determination of hysteresis and azimuth values with two measurements, or even a single measurement. The disclosed method can also be used for three measurements, and its advantage over existing three-measurement methods is that it does not need to assume the offset to be zero as long as it is known before the measurement, and the relative hysteresis and angle can be determined. Since the scale and offset do not change significantly in space and time when reading data encoded as birefringence from a storage medium, the scale and offset values can be determined once or periodically using four (or more) measurement techniques, and the determined scale and offset values can then be used for subsequent determination of hysteresis and angle using fewer than four measurements. Furthermore, as described below, when the scale and offset are unknown, they can be determined via digital optimization techniques.
[0027] Figure 4 A flowchart of an example method 400 for determining birefringence values is shown. Method 400 is an example of a technique that can be used to determine scale and offset values so that subsequent determinations can be made with fewer measurements, and has the advantage over current methods in that it can be made using arbitrary probe light polarization states instead of predetermined states that are difficult to implement via physical instruments. Method 400 first includes, at 402, acquiring four or more measurements of voxels under different polarization states, wherein each measurement includes the observed intensity m under measurement state k. k The measurement state is determined by the swing X. k and angle θ k The measurement polarization state is defined. Method 400 further includes, at 404, determining a likelihood function for voxel measurement, where the likelihood function represents the likelihood of voxel measurement values generated from each of a plurality of birefringence value sets. The likelihood is determined as a function of angle and hysteresis using a noise model and assumptions about the model for the data. Any suitable data model and noise model can be used, including Gaussian, Poisson, and combinations of Gaussian and Poisson. For example, Equation (1) gives the intensity m of a given measurement state k measured using a Gaussian noise model (as shown at 406). k The likelihood.
[0028]
[0029] In equation (1), I k =a(1-cosχ) k cosδ+sinχ k sinδsin(2φ-2θ))+b, where I kis the expected measurement taken on polarization state k. δ is the sample retardation, Φ is the sample angle, a is a scale parameter, b is an offset, and σ is noise. The term "set of birefringence values" refers to a set of values {a, b, δ, j}. Using this notation, the likelihood function that determines the likelihood of a set of measurements can be expressed as L is computed for a plurality of sets of birefringence values, and a maximum value for the likelihood function is determined, as shown at 408. Then, at 410, using the maximum value of the likelihood function, the most likely set of birefringence values for the set of measurements of the voxel is determined from the set that produces the maximum determined value. This can be mathematically expressed as equation (2).
[0030] {a, b, δ, φ} = argmax(L(a, b, δ, φ)) (2)
[0031] The determined scale and offset can be used in measurements using three or fewer measurements. It can be appreciated that the term maximum determined value and similar terms used herein do not mean the actual global maximum value for the likelihood function, but rather the maximum observed value for all parameter sets used. It can also be appreciated that in other examples, any other suitable method can be used to determine the birefringence values including the scale and offset. For example, instead of computing the likelihood of the parameters, according to Bayes' theorem, prior knowledge about the distribution of the angle or retardation can also be included which can compute the posterior values. In this case, the parameter values that maximize the posterior probability can be found (often referred to as MAP - Maximum A Posteriori). In such examples, the parameter values can be determined, for example, by taking the expected value of the posterior probability, or by using other statistical methods.
[0032] As mentioned above, an advantage of using the maximum value determination likelihood method to determine the birefringence values of a voxel is that the polarization states used for the measurements can be arbitrary, rather than predetermined. However, in some examples, some configurations of polarization states can make better use of the available signal than other state configurations. Two examples of such configurations are given below. Again referring to the Poincaré sphere of Figure 3 A first example of a set of polarization states used to determine the birefringence values for a voxel includes a circularly polarized input state with a single handedness (as set by the PSG) and elliptically polarized output states with opposite handedness to the input state and equal ellipticity to each other but with different azimuthal angles, equally spaced around half or all of a circle on the Poincaré sphere surface, as at {0, 45, 90, 135} degrees or {0, 22.5, 45, 67.5} degrees. A second example set of polarization states includes an output state of a single handed circular polarization and one input state with opposite handedness to the output state and equal ellipticity to each other but with different azimuthal angles, equally spaced around half or all of a circle on the Poincaré sphere surface. Figure 5Examples of three such polarization state configurations are depicted, each configuration represented by a dot with a different sign from the other configurations. In Figure 5 In the middle, a view of the Poincaré sphere along the pole of the sphere, the dashed circle corresponds to a selected latitude of polarization states, and the outer boundary corresponds to the equator of the sphere.
[0033] When the measurements are configured in this way, the azimuth angle of the voxel can be determined as follows:
[0034]
[0035] Here, Φ is the measured angle, the index k has at least m k the measured number of measurements is the intensity of the kth measurement, and 2θ k is the angle on the Poincaré sphere of the kth measurement state. To find the retardance, one suitable method includes numerically optimizing the likelihood of the data for a given measurement, as described above with respect to Figure 4
[0036] As described above, the retardance and azimuth angle of a voxel can be determined using a reduced number of measurements using prior knowledge of the scale and offset parameters. For example, the azimuth angle of a voxel can be determined using three measurements plus a known offset value by using equation (4).
[0037]
[0038] For example, the retardance can be found by numerical maximization of the likelihood function as described above. Furthermore, even if the scale and offset are not initially known, numerical optimization techniques can be used to determine the scale and offset. In such examples, the scale and offset can be determined with knowledge of the expected distribution of angles (as in the case of the birefringent voxel written previously). With prior knowledge of the expected distribution of angles, the scale and offset can be computationally adjusted until the expected distribution reaches a suitable approximation.
[0039] If some prior information is known about the retardance, but the retardance value itself is not known, then a two measurement method can be used to determine the birefringence value of the voxel. In some examples, the two measurement method also utilizes prior knowledge of the scale and offset, while in other examples, the scale and offset are determined through numerical optimization as described above.
[0040] When using two measurements, even with knowledge of the offset and scale, there are still two possible solutions for the retardance and angle of the sample. This is because each measurement restricts the solution to a 2D plane in the 3D space of the Poincaré sphere. Thus, the two measurement values define a line in 3D. Figure 6 An example of a two-measurement determination on a Poincaré sphere 602 is illustrated. In this example, the line 604 defined by the two measurements for a voxel intersects the sphere surface at two points 606 and 608.
[0041] To determine which of the two points corresponds to the actual birefringence value of the measured voxel, the following constraint is applied, which selects the point with lower retardance as corresponding to the state of the voxel, as it can be shown mathematically that the other solution is at least as large as the effective retardance of the measured state. For example, given two measurements in the Poincaré sphere 602, point 606 would be selected as it represents a lower retardance value than point 608. This constraint based on prior information can be used in any system where the effective measurement retardance is known to be different (either larger or smaller) than the measurement retardance. This constraint narrows the solution to one point on the sphere, and thus the sample retardance and azimuth can be determined.
[0042] The following is a more detailed mathematical description of the two-measurement method example. It is noted that this method can be performed either by using scale and offset values determined initially using a larger number of measurements (e.g. four), and then applied to the two-measurement determination, or by determining the scale and offset values using a numerical optimization method. If scale and offset values are initially determined, these parameters can be determined using any suitable method, including the maximum likelihood example described above with respect to Figure 4 the two-measurement method.
[0043] After obtaining the measurement values, the example two-measurement method first involves solving the following system of equations (5, 6, 7) for the retardance δ:
[0044] m1= a(l - cosx1cosδ + sinx1sinδsin(2φ - 2θ1)) + b (5)
[0045] m2= a(l - cosx2cosδ + sinx2sinδsin(2φ - 2θ2)) + b (6)
[0046] (sinδsin(2φ - 2θ1)) 2 +(sinδsin(2φ - 2θ2)) 2 +cos 2 δ = 1 (7)
[0047] As δ has two possible solutions, the smaller value is selected, as described above. Next, the azimuth can be calculated using equation (8):
[0048] When ,
[0049]
[0050] If known scale and offset values are used in the present determination, the determination is complete at this stage. If, on the other hand, assumed scale and offset values are used, then a and b can be adjusted using prior information. For example, if the distribution of angles is uniform (as can be the case for birefringence data where the writing process of the data is known), then the distribution of angles can be calculated and equations (5)-(7) and (8) can be repeatedly determined while adjusting a and b until the measured angle histogram is sufficiently similar to the expected histogram.
[0051] In the case where the voxel retardation is known (as can be the case for birefringence writing characteristics), the birefringence value can be determined via a single measurement, again using known or assumed scale and offset parameter values. If assumed values are used, then these values can be numerically optimized. Based on the known or assumed scale and offset values, a single measurement 612 defines a two-dimensional plane in three-dimensional space, with reference to the Poincaré sphere 610 in Figure 6 This two-dimensional plane intersects the spherical surface along a circle 614, where the circle represents the continuous range of possible sample angles and retardation values. If the sample retardation (represented by angle 616) is accurately known, then this angle can be determined to one of two values (represented by points 620 and 622), i.e., the location where the retardation plane 618 intersects the measurement circle 614. In contrast, the two measurement examples described above use less detailed prior information, i.e., that the retardation is less than the swing. If the angle is known to be within a certain range, spanning only half of the total available angles, e.g., between 0 and 90 degrees, or between 45 and 135 degrees (or any other 90 degree range), then these two points can be limited to one, which determines the retardation and angle of the sample. Mathematically, the calculation performed by the disclosed example single measurement determination is represented by equations (9) and (10).
[0052] m1= a(l - cosx1cosd + sinx1sin dsin(2f - 2d)) + b (9)
[0053]
[0054] Figure 7 A flowchart depicting an example method 700 for determining birefringence values of voxels using two or fewer measurements is shown. As described above, Figure 7 The method of Figure 4or can be initially assumed and subsequently numerically optimized. The method 700 includes, at 702, acquiring measurement data for the birefringent voxel by directing probe light containing one or more predetermined polarization states through the birefringent voxel and receiving the light at an image sensor. In some examples, as shown at 704, the measurement data can include measurement data acquired using a first polarization state, and measurement data acquired using a second, different polarization state. In other examples, the measurement data can include data from a single measurement, as shown at 706.
[0055] Next, based on the measurement data, the method 700 includes, at 708, determining two points on the surface of a Poincaré sphere corresponding to two possible birefringent states of the birefringent voxel, each state including a set of birefringent values, and applying a constraint to determine the birefringent values of the voxel. For example, when measurements are taken at two polarization states, there are two azimuthal solutions to the above equations (5)-(7). In this case, the method 700 includes, at 710, applying a constraint that specifies that the set of birefringent values with the lower retardance value is the correct set. By selecting the point on the Poincaré sphere representing the lower retardance, the azimuthal angle can be solved using the above equation 8, providing the determined birefringent values of the voxel.
[0056] In the case where a single measurement is used, the method 700 includes, at 712, determining, based on the measurement, a circle on the surface of the Poincaré sphere that includes two locations representing the known retardance of the voxel that intersect a plane. Then, at 714, a point representing the birefringent values of the voxel can be selected based on the azimuthal angle of the point being within an expected range of angles, and the birefringent values can be determined using the above equations (9) and (10). The method 700 further optionally includes, at 716, numerically optimizing a likelihood function based on the determined azimuthal angle and retardance values to determine the scale and offset values in the case where these values are initially unknown. The method 700 also includes, at 718, outputting the birefringent values of the voxel.
[0057] The above examples can help reduce the time and computational resources consumed when reading birefringent voxels in a storage medium compared to methods that use four or more measurement values. Other procedures can also be used alternatively or additionally to provide efficient reading of birefringent voxels. For example, wavelength multiplexing can be used to reduce some of the individual images acquired in the reading process.
[0058] Figure 8An illustration of an example system 800 for reading a birefringent storage medium is shown. System 800 utilizes wavelength multiplexing, in which N different bands of light having different polarization states are multiplexed to obtain N measurements in a time-overlapped manner. System 800 includes N light sources, shown as first light source 802, second light source 804, and Nth light source 806, each configured to output light of a different band (e.g., red, green, and blue). Each light source directs light to a corresponding PSG, shown as PSG 808, PSG 810, and PSG 812 for light sources 802, 804, and 806, respectively, to allow different polarization states to be set for each band. In other examples, a system that performs two time-overlapped measurements can have two light sources and corresponding PSGs.
[0059] Light from each PSG is directed to a storage medium 814 located in a sample region of the system for reading the storage medium. The term “sample region” is used herein to mean a location where the storage medium is placed for reading. In the illustrated example, N-l beam combiners, shown as beam combiner 1 816 and beam combiner N-l 818, are used to combine light from each PSG into a beam to probe the sample medium.
[0060] In the depicted embodiment, an optical element in the form of a condenser 820 directs light through the storage medium, and an objective lens 817 focuses the light onto a detector in the form of an image sensor 822 that images the entire data layer in each image frame of the storage medium 814. An achromatic PSA 824 is located between the storage medium and the image sensor 822. The image sensor 822 includes a plurality of integrated wavelength-selective bandpass filters so that light of different bands passes through different filters and onto different areas of the pixels of the image sensor 822. In this way, the light intensity for each band (with different polarization settings for each band) can be measured in the same image frame.
[0061] In some examples, one or more physical masks can be used for pupil engineering to help improve the quality of the signal used to read birefringent encoded data in the storage medium. Example masks that can be used are illustrated as an intensity mask 825 and a phase mask 826. The engineering of the pupil can depend on the layout of the voxels in the storage medium (e.g., x, y, z spatial distribution). For example, an annular intensity mask added to the lens pupil results in a Bessel beam instead of a traditional Gaussian beam. A phase mask can also be used to design the polarization field at the sample plane to optimize the pupil profile for the expected type of birefringence distribution of the sample. Thus, if a particular measurement optical probe is needed, the signal that can be input to these methods can be tailored by designing the shape of the input light to improve the quality of the measurement.
[0062] In some examples, the tunable focusing optical element can be moved to selectively focus on voxels of a particular layer within the storage medium 814 volume, allowing different layers to be read. In other examples, the storage medium can be moved to focus on voxels in different layers. While the illustrated image sensor includes integrated bandpass filters, in other examples the bandpass filters can be included elsewhere in the system. For example, the system can utilize multiple PSGs in combination with wavelength multiplexing and a rotating bandpass filter (e.g., a color wheel) to allow sequential acquisition of images of different polarization states.
[0063] As noted above, in some examples, a smaller number of light sources can be used to produce a larger number of wavebands with different polarization states. Figure 9 An example light source configuration is shown in which light from a single light source 902 is split into two beams 906, 908 of different wavebands via a beamsplitter 904. The beams 906 and 908 pass directly through respective PSGs 912 and 914 using any suitable optics (e.g., mirrors 916 and 918 in the illustrated example), and the PSG 912 and PSG 914 set different polarization states for the beams 906 or 908. After passing through the multiple PSGs, the beams 906, 908 are combined with a beam combiner 920 to probe the storage medium. In other examples, light from a suitable light source can be split into three or more different wavebands.
[0064] Figures 10A-10B An example method 1000 is shown that depicts acquiring multiple time- overlapping measurements via wavelength multiplexing. First, referring to Figure 10A The method 1000 includes, at 1002, producing first polarized light of a first waveband, the first polarized light including a first polarization state, and producing second polarized light of a second waveband different from the first waveband, the second polarized light including a second polarization state different from the first polarization state. In some examples, the light of the first waveband is output via a first light source, and the light of the second waveband is output by a second light source, as shown at 1004. In other examples, light can be output from a smaller number of light sources and then split into more different wavebands of light beams, as shown at 1006. Further, it is understood that more than two additional wavebands can be used. Thus, the method 1000 can include, at 1008, outputting light of three or more different wavebands with different polarization states to produce a third polarized light and possibly additional other multiple polarized light beams.
[0065] Next, the method 1000 includes, at 1010, passing the first polarized light and the second polarized light through the voxel of the storage medium, thereby changing the first polarization state of the first polarized light to a first modified polarization state and changing the second polarization state of the second polarized light to a second modified polarization state. Passing the first polarized light and the second polarized light through the voxel of the storage medium can include, at 1012, combining the first polarized light and the second polarized light via a beam combiner prior to the first polarized light and the second polarized light passing through the storage medium. Further, the process 1010 can also include, at 1014, combining a third polarized light and any additional polarized light bands with the first polarized light and the second polarized light prior to passing the light through the storage medium. In some examples, the engineered pupil can be implemented using one or more masks. For example, the method 1000 can include, at 1016, passing the polarized light through an intensity mask prior to the polarized light passing through the voxel of the storage medium. Alternatively or additionally, the method 1000 can include, at 1018, passing the polarized light through a phase mask prior to the polarized light passing through the voxel of the storage medium.
[0066] Next, with reference to Figure 10B , the method 1000 includes, at 1022, passing the first polarized light, the second polarized light, and any additional bands of polarized light through a polarization state analyzer after the polarized light passes through the voxel of the storage medium, where the analyzer attenuates the intensity of the light based on the polarization state of the light compared to the state of the analyzer. Then, at 1024, the method 1000 includes passing the first polarized light through a first bandpass filter onto an image sensor and passing the second polarized light through a second bandpass filter onto the image sensor, where the first bandpass filter selectively passes the first band and the second bandpass filter selectively passes the second band. Further, as shown at 1026, additional bands of polarized light having different polarization states can pass through respective additional bandpass filters. In this way, the intensity of the first band, the second band, and any additional bands are imaged separately.
[0067] In some examples, the first bandpass filter, the second bandpass filter, and any additional bandpass filters are integrated with the image sensor as spatially separate filters integrated with the pixels of the image sensor. In these examples, the method 1000 includes, at 1028, passing the first polarized light onto a first region of the image sensor, passing the second polarized light onto a second region of the image sensor, and passing any additional wavelengths of polarized light onto the image sensor. In this way, images for each polarization state can be acquired separately in the same image frame. In other examples, different bandpass filters can be applied in a time-multiplexed fashion, such as by a color wheel. In these examples, different image frames are acquired for each wavelength. After obtaining measurements for different wavelengths using different polarization settings, the method 1000 includes, at 1030, determining a birefringence value for the voxel based on the first polarized light received at the image sensor via the first bandpass filter and the second polarized light received at the image sensor via the second bandpass filter, and any additional wavelength-multiplexed polarized light. The birefringence value can be determined using the example method described above or any other suitable manner.
[0068] Using any of the methods described above, the system and media through which the probe light travels when probing a voxel can impart additional rotation and / or retardation to the polarized light used to probe the voxel. For example, reading a layer of voxels in a data storage medium containing a three-dimensional array of voxels can cause the probe light to rotate as it passes through other out-of-focus layers of voxels during the read process. System imperfections can also cause background noise. Thus, it is often meaningful to measure the birefringence properties of a sample, such as a data storage medium, relative to imperfections in the system and storage medium, such as the presence of other voxels in the optical path that are not being read. This is referred to as background subtraction.
[0069] The current method includes removing the background signal by capturing a set of images {b k} and a set of measurements {m k} and calculating the angle and retardation of the background. {b k} is captured using the same instrument with the same set of polarization states as {m k}. {b k} is simply captured by removing the actual sample from the field of view. {b k} can also be estimated from {m k} by, for example, performing a blurring operation. The blurring can be implemented by a simple low-pass filter. However, this approach can not adequately correct for system imperfections and sample imperfections, such as other voxels.
[0070] Therefore, disclosed is estimating {b k} from {m kWith respect to the example, in the two-step process, two low-pass versions of the measured intensities are computed and combined using multiplication constants to form an enhanced background image. In this way, both a local background intensity and a global background intensity can be estimated, which can represent a more accurate estimate of the background intensity at large and small scales, as the large scale background can compensate for imperfect system and the small scale background can compensate for the three-dimensional nature of the storage medium. For example, the filter parameters and multiplication constants can be derived by minimizing the error between the known sample's latency and the computed latency distribution. This background correction method can be more efficient than separately acquiring a background image of the system (e.g., without data storage medium in the sample area) because fewer physical measurement processes are performed, thereby saving time and resources for the separate physical background measurement. As a more specific example, for a sample having known data encoded into the glass and a set of image frames already acquired, initial filter parameters and multiplication constants are set and the encoded data is decoded. This is repeated by updating the filter parameters and multiplication constants. The parameters and multiplication constants that give the smallest error in decoding are then selected. The process of updating the filter parameters can be a brute force search in the parameter space or a gradient method in various examples.
[0071] Figure 11 A flowchart depicting an example method 1100 of correcting birefringence values using multiple low-pass filters is shown. The method 1100 includes, at 1102, acquiring an intensity image of a voxel of a storage medium. To measure the birefringence of the voxel, a plurality of images of the voxel are acquired at different polarization states, as shown at 1104. In some examples, the images can be of a plurality of voxels arranged in an image plane within the storage medium, as shown at 1106. The images of the voxel include higher frequency image information arising from the birefringence state of the voxel and lower frequency image information arising from one or more birefringent regions of the storage medium other than the voxel.
[0072] At 1108, the method 1100 includes applying a first low-pass filter to the images of the voxel to obtain a first background image and applying a second low-pass filter to the images of the voxel to obtain a second background image. As described above, the first low-pass filter and the second low-pass filter have different cut-off frequencies such that the first background image can represent more local background features, such as birefringence noise arising from other voxels in the storage medium, while the second background image can have a lower cut-off frequency than the first low-pass filter and represent more global background features. The effect of the more localized low-pass filter can be to remove high frequency data representing more detailed features of the in-focus voxel, leaving less detailed features from other out-of-focus voxels in the read process. As shown at 1110, the first low-pass filter and the second low-pass filter are applied to each measured image acquired for the voxel to form a background image for each measured image.
[0073] Next, at 1112, the method 1100 includes determining an enhanced background image from the first and second background images. The enhanced background image can be determined in any suitable manner. In some examples, the enhanced background image can be determined by combining the first and second background images using a multiplication constant, as indicated at 1114. A more particular example uses the following equation:
[0074] b k = a (LowPassl(m k ) - LowPass2(m k )) + LowPass2(m k ), (11)
[0075] where the measured intensity = mk, the local background intensity is represented by LowPassl(m k ), the global background intensity is represented by LowPass2(m k ), a is a multiplication constant used as a scaling factor, and b k is the enhanced background image.
[0076] The method 1100 also includes, at 1116, determining birefringence values for the enhanced background image and, at 118, determining birefringence values for the voxel image. Each set of birefringence values includes a retardance value and an azimuthal angle value angle, which can be determined using the examples described above or in any other suitable manner.
[0077] The method 1100 further includes, at 1120, correcting the birefringence values of the voxel image based on the birefringence values of the enhanced background image. At 1122, correcting the birefringence values of the image can include, for example, determining the relative angle and relative retardance of the birefringence values of the voxel image compared to the birefringence values of the enhanced background image. In one example, the measured retardance δ m and the angle θ m come from {m k}, the background retardance δ b and the angle θ b come from {b k}. For example, using any of the methods described above or other suitable methods. The relative angle θ r and retardance δ r are determined by the following equations.
[0078] δ r sin2θ r = δ m sin2θ m - δ b sin2θ b = U (12)
[0079] δ r cos2θr = δ m sin 2 θ m - δ b sin 2 θ b = V (13)
[0080]
[0081]
[0082] In some embodiments, the methods and processes described herein can be associated with a computing system of one or more computing devices. In particular, these methods and processes can be implemented as a computer application or service, an application programming interface (API), a library, and / or other computer program product.
[0083] Figure 12 A non-limiting embodiment of a computing system 1200 that can implement one or more of the methods and processes described above is shown schematically. The computing system 1200 is shown in simplified form. The computing system 1200 can take the form of one or more personal computers, server computers, tablet computers, home-entertainment computers, network computing devices, gaming devices, mobile computing devices, mobile communication devices (e.g., smart phone), and / or other computing devices.
[0084] The computing system 1200 includes a logic subsystem 1202 and a storage subsystem 1204. The computing system 1200 can optionally include a display subsystem 1206, input subsystem 1208, communication subsystem 1210, and / or other components not shown in FIG. 12. Figure 12
[0085] The logic subsystem 1202 includes one or more physical devices configured to execute instructions. For example, the logic subsystem can be configured to execute instructions that are part of one or more applications, services, programs, routines, libraries, objects, components, data structures, or other logical structures. Such instructions can be implemented in a recognized or conventional computer programming language, instruction set, or
[0086] The logic subsystem 1202 can include one or more processors configured to execute software instructions. Additionally or alternatively, the logic subsystem 1202 can include one or more hardware or firmware logic subsystems configured to execute hardware or firmware instructions. The processors of the logic subsystem 1202 can be single-core or multi-core, and the instructions executed thereon can be configured for sequential, parallel, and / or distributed processing. Individual components of the logic subsystem 1202 optionally can be distributed among two or more separate devices, which can be remotely located and / or configured for coordinated processing. Various aspects of the logic subsystem 1202 can be virtualized and executed by remotely accessible, networked computing devices configured in a cloud-computing configuration.
[0087] The storage subsystem 1204 includes one or more physical devices configured to hold data and / or instructions executable by the logic subsystem 1202 to implement the herein described methods and processes. When such methods and processes are implemented, the state of the storage subsystem 1204 can be transformed— e.g., to hold different data.
[0088] The storage subsystem 1204 can include physical devices such as optical memory (e.g., CD, DVD, Blu-Ray Disc, etc.), semiconductor memory (e.g., RAM, EPROM, EEPROM, etc.), and / or magnetic memory (e.g., hard-disk drive, floppy-disk drive, tape drive, MRAM, etc.) among others. The storage subsystem 1204 can include volatile, nonvolatile, dynamic, static, read / write, readonly, random access, sequential access, location- addressable, file- addressable, and / or content- addressable devices. The storage subsystem 1204 can include a non-transitory computer- readable medium, a media, and / or an article of manufacture.
[0089] Notably, the storage subsystem 1204 includes one or more physical devices. However, aspects of the instructions described herein can be propagated by a communication medium (e.g., an electromagnetic signal, an optical signal, etc.) that is not held by a physical device for a finite duration.
[0090] Various aspects of the logic subsystem 1202 and the storage subsystem 1204 can be integrated into one or more hardware-logic components. Such hardware-logic components can include field-programmable gate arrays (FPGAs), program- and application-specific integrated circuits (PASIC / ASICs), program- and application-specific standard products (PSSP / ASSPs), system-on-a-chip (SOC), and complex programmable logic devices (CPLDs), for example.
[0091] The term "program" can be used to describe an aspect of the computing system 1200 that is implemented to perform a particular function. In some cases, a program can be instantiated via the logic subsystem 1202 executing instructions held by the storage subsystem 1204. It is to be understood that different programs can be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Likewise, a program can be implemented by different applications, services, code blocks, objects, routines, APIs, functions, etc. The term "program" can include a single or plurality of executable files, data files, libraries, drivers, scripts, database records, etc.
[0092] Notably, a "service", as used herein, is an application program that is executable across multiple user sessions. A service potentially performs totally or partially stateless functionality, which is independent of user authentication. A service potentially handles multiple requests from several users that are similar or related. A service potentially handles a large volume of requests efficiently, and is built to implement a narrow delegation of functionality. A service potentially represents a program in execution that can be run on a server system.
[0093] When included, the display subsystem 1206 can be used to display a visual representation of data held by the storage subsystem 1204. This visual representation can take the form of a graphical user interface (GUI). As the methods and processes described herein manipulate data held by the storage subsystem, thereby transforming the state of the storage subsystem, the state of the display subsystem 1206 can also be transformed to visually represent changes in the underlying data. The display subsystem 1206 can include one or more display devices using virtually any type of technology. Such display devices can be integrated with the logic subsystem 1202 and / or storage subsystem 1204 in a shared enclosure, or such display devices can be peripheral display devices.
[0094] When included, the input subsystem 1208 can comprise or interface with one or more user-input devices such as a keyboard, mouse, touch screen, or game controller. In some embodiments, the input subsystem can comprise or interface with selected natural user input (NUI) componentry. Such componentry can be integrated or peripheral, and the transduction and / or processing of input actions can be handled on- or off-board. Example NUI componentry can include a microphone for speech and / or voice recognition; an infrared, color, stereoscopic, and / or depth camera for machine vision and / or gesture recognition; a head tracker, eye tracker, accelerometer, and / or gyroscope for motion detection and / or intent recognition; as well as electric-field sensing componentry for assessing brain activity.
[0095] When included, communication subsystem 1210 can be configured to communicatively couple computing system 1200 with one or more other computing devices. Communication subsystem 1210 can include wired and / or wireless communication devices compatible with one or more different communication protocols. As non-limiting examples, the communication subsystem can be configured for communication via a wireless telephone network, or a wired or wireless local- or wide-area network, etc. In some embodiments, the communication subsystem can allow computing system 1200 to send and / or receive messages to and / or from other devices via a network such as the Internet.
[0096] Another example provides a system for reading birefringence data, the system comprising one or more light sources, a first polarization state generator positioned to generate first polarized light from a first wavelength band of light output by the one or more light sources, a second polarization state generator positioned to generate second polarized light from a second wavelength band of light output by the one or more light sources, an image sensor configured to acquire images of a sample region through which the first polarized light and the second polarized light pass, a polarization state analyzer optically arranged between the sample region and the image sensor, a first bandpass filter optically arranged between the polarization state analyzer and the image sensor, the first bandpass filter configured to pass light of the first wavelength band, a second bandpass filter optically arranged between the polarization state analyzer and the image sensor, the second bandpass filter configured to pass light of the second wavelength band. In some such examples, the system further comprises a third polarization state generator positioned to generate third polarized light from a third wavelength band of light output by the one or more light sources, the third wavelength band being different from the first wavelength band and the second wavelength band, and a third bandpass filter optically arranged between the polarization state analyzer and the image sensor, the third bandpass filter configured to pass light of the third wavelength band. In some such examples, the system further comprises a beam combiner configured to optically combine the first polarized light and the second polarized light upstream of the sample region. In some such examples, the first bandpass filter and the second bandpass filter of the system can be integrated with pixels of the image sensor. In some such examples, the one or more light sources comprise a first light source configured to output light of the first wavelength band and a second light source configured to output light of the second wavelength band. In some such examples, the system further comprises a computing system comprising executable instructions for determining birefringence values of voxels of a storage medium placed in the sample region from light received at the image sensor via the first bandpass filter and light received from the image sensor via the second bandpass filter. In some such examples, the system further comprises one or more intensity masks and phase masks positioned optically upstream of the sample region.
[0097] Another example provides a method of performing birefringence measurements, the method including generating first polarized light from a first wavelength band of light output from one or more light sources, the first polarized light including a first polarization state, generating second polarized light from a second wavelength band of light output from the one or more light sources, the second wavelength band being different than the first wavelength band, and the second polarized light including a second polarization state different than the first polarization state, passing the first polarized light and the second polarized light through a voxel of a storage medium, thereby changing the first polarization state to a first modified polarization state and changing the second polarization state to a second modified polarization state, passing the first polarized light and the second polarized light through a polarization state analyzer after passing the first polarized light and the second polarized light through the voxel of the storage medium, passing the first polarized light through a first bandpass filter and onto a first region of an image sensor, and passing the second polarized light through a second bandpass filter and onto a second region of the image sensor. In some such examples, the method further includes generating third polarized light from a third wavelength band of light output from the one or more light sources, the third wavelength band being different than the first wavelength band and the second wavelength band, and the third polarized light including a third polarization state different than the first polarization state and the second polarization state, and passing the third polarized light through a third bandpass filter optically disposed between the polarization state analyzer and the image sensor, the third bandpass filter configured to pass light of the third wavelength band. In some such examples, the method further includes combining the first polarized light and the second polarized light via a beam combiner prior to passing the first polarized light and the second polarized light through the voxel of the storage medium. In some such examples, the method further includes outputting the first wavelength band of light via a first light source and outputting the second wavelength band of light via a second light source. In some such examples, the method further includes determining a birefringence value of the voxel of the storage medium based on the first polarized light received at the image sensor via the first bandpass filter and the second polarized light received from the image sensor via the second bandpass filter. In some such examples, the method further includes passing the first polarized light and the second polarized light through one or more intensity masks and phase masks positioned prior to the voxel of the storage medium.
[0098] Another example, on a computing device, provides a method for determining the birefringence value of a birefringent voxel of a storage medium. The method includes acquiring measurement data of the birefringent voxel by guiding light containing one or more predetermined polarization states through it, receiving light at an image sensor based on the measurement data, determining two points on a Poincaré sphere surface corresponding to two possible birefringence states of the voxel, each state including a set of birefringence values including azimuth and hysteresis, applying constraints to determine the azimuth and hysteresis, and outputting the determined birefringence value including the determined azimuth and hysteresis. In some such examples, the measurement data includes measurement data from a first measurement using light with a first polarization state and measurement values from a second measurement using light with a second polarization state. In some such examples, two points on the Poincaré sphere are determined based on the measurement data from the first measurement and the measurement data from the second measurement, wherein applying constraints includes selecting from the two points on the Poincaré sphere a point representing a set of birefringence values with a lower hysteresis value. In some such examples, the method further includes multiplexing light with a first band having a first polarization state and light with a second band having a second polarization state to acquire the first and second measurements. In some such examples, the measurement data includes measurements from a single measurement. In some such examples, determining two points on the Poincaré sphere involves determining a circle on the Poincaré sphere based on the measurement results, where the two points are the locations where the circle intersects a plane representing known voxel hysteresis, and applying constraints includes selecting one of the two points to represent a set of birefringence values having an azimuth angle within a desired angular range. In some such examples, the method also includes determining offset and scaling parameters via numerical optimization after determining the azimuth angle.
[0099] Another example provides a method for reading data stored as birefringence values in a storage medium on a computing device, the method comprising acquiring the intensity m of a voxel of the storage medium using light with polarization state k. k The image measurements determine the likelihood function of the voxel image, which represents the likelihood of the voxel intensity produced by each of a plurality of possible sets of birefringence values, based on a selected data model and a selected noise model. The maximum value of the likelihood function is determined, and the most probable set of birefringence values for the voxel is determined based on the set of birefringence values that produces the maximum likelihood function. In some such examples, the noise model includes a Gaussian noise model. In some such examples, the voxel image intensity m is measured at state k. k The probability is given by the following formula:
[0100]
[0101] The polarization state k includes the oscillation X kand angle θ k .
[0102] where I k = a(l - cos x k cos δ + sin x k sin δ sin(2φ - 2θ)) + b and is the expected measurement of polarization state k,
[0103] where δ is the lag of the voxel of the storage medium,
[0104] where φ is the azimuth angle of the voxel of the storage medium,
[0105] where a is a scale parameter,
[0106] where b is an offset, and
[0107] where σ is a representation of noise.
[0108] In some such examples, a set of measurements The likelihood function of the set of measurements is denoted by L and is given by where the method includes computing L for a plurality of values of each of a, b, σ, and φ, and determining the most likely birefringence value set as {a, b, δ, φ} = argmax(L(a, b, δ, φ)).
[0109] It should be appreciated that the configurations and / or methods described herein are exemplary in nature, and that these specific embodiments or examples are not to be considered in a limiting sense, because numerous variations are possible. The specific routines or methods described herein can represent one or more of any number of processing strategies. As such, acts shown and / or described can be performed in the sequence shown, in other sequences, in parallel, or omitted. Likewise, the order of the above-described processes can be altered.
[0110] The subject matter of the present disclosure includes all novel and nonobvious combinations and subcombinations of the various processes, systems and configurations disclosed herein, and other features, functions, acts and / or properties disclosed herein, as well as any and all equivalents thereof.
Claims
1. A system for reading birefringence data, the system comprising: one or more light sources; a first polarization state generator positioned to produce first polarized light from a first waveband of light output by the one or more light sources; a second polarization state generator positioned to produce second polarized light from a second waveband of light output by the one or more light sources; an image sensor configured to acquire an image of a sample region through which the first polarized light and the second polarized light pass; a polarization state analyzer optically disposed between the sample region and the image sensor; a first bandpass filter optically disposed between the polarization state analyzer and the image sensor, the first bandpass filter configured to pass the first waveband of light; and a second bandpass filter optically disposed between the polarization state analyzer and the image sensor, the second bandpass filter configured to pass the second waveband of light.
2. The system of claim 1, further comprising: a third polarization state generator positioned to produce third polarized light from a third waveband of light output by the one or more light sources, the third waveband different from the first waveband and the second waveband, and a third bandpass filter optically disposed between the polarization state analyzer and the image sensor, the third bandpass filter configured to pass the third waveband of light.
3. The system of claim 1, further comprising a beam combiner configured to optically combine the first polarized light and the second polarized light upstream of the sample region.
4. The system of claim 1, wherein the first bandpass filter and the second bandpass filter are integrated with pixels of the image sensor.
5. The system of claim 1, wherein the one or more light sources comprise a first light source configured to output the first waveband of light and a second light source configured to output the second waveband of light.
6. The system of claim 1, further comprising a computing system comprising instructions executable to determine birefringence values of voxels of a storage medium placed in the sample region based on light received at the image sensor via the first bandpass filter and light received at the image sensor via the second bandpass filter.
7. The system of claim 6, wherein the storage medium comprises a quartz glass medium.
8. The system of claim 1, further comprising one or more of an intensity mask and a phase mask optically positioned upstream of the sample region.
9. A method for performing birefringence measurements, the method comprising: producing first polarized light from a first waveband of light output by one or more light sources, the first polarized light comprising a first polarization state; producing second polarized light from a second waveband of light output by the one or more light sources, the second waveband different from the first waveband, and the second polarized light comprising a second polarization state different from the first polarization state; passing the first polarized light and the second polarized light through a voxel of a storage medium, thereby changing the first polarization state to a first modified polarization state and changing the second polarization state to a second modified polarization state; passing the first polarized light and the second polarized light through a polarization state analyzer after passing the first polarized light and the second polarized light through the voxel of the storage medium; passing the first polarized light through a first bandpass filter and onto a first region of an image sensor; and passing the second polarized light through a second bandpass filter and onto a second region of the image sensor.
10. The method of claim 9, further comprising generating a third polarized light from a third waveband of light output by the one or more light sources, the third waveband being different from the first waveband and the second waveband, and the third polarized light comprising a third polarization state different from the first polarization state and the second polarization state, and passing the third polarized light through a third bandpass filter optically disposed between the polarization state analyzer and the image sensor, the third bandpass filter configured to pass light of the third waveband.
11. The method of claim 9, further comprising combining the first polarized light and the second polarized light via a beam combiner prior to passing the first polarized light and the second polarized light through the voxel of the storage medium.
12. The method of claim 9, further comprising outputting the first waveband of light via a first light source and outputting the second waveband of light via a second light source.
13. The method of claim 9, further comprising determining a birefringence value of the voxel of the storage medium based on the first polarized light received at the image sensor via the first bandpass filter and the second polarized light received at the image sensor via the second bandpass filter.
14. The method of claim 9, further comprising passing the first polarized light and the second polarized light through one or more of an intensity mask and a phase mask positioned prior to the voxel of the storage medium.
15. The method of claim 9, wherein the storage medium comprises quartz glass.
Citation Information
Patent Citations
Machine-learning optimization of data reading and writing
US20190114307A1