Spectroscopic device and method for sample characterization
10444142 ยท 2019-10-15
Assignee
Inventors
Cpc classification
G01N21/31
PHYSICS
G01J3/42
PHYSICS
G01N21/314
PHYSICS
International classification
G01N21/31
PHYSICS
G01N21/27
PHYSICS
G01J3/42
PHYSICS
Abstract
The invention relates to a characterization device (50) for characterizing a sample (S) comprising: a memory (MEM) storing a measured spectrum (A.sub.s+p) of said sample, performed through a translucent material, and a measured spectrum of the translucent material (A.sub.p), a processing unit (PU) configured to: determine a spectral energy (E.sub.s+p) of the measured spectrum (A.sub.s+p) of the sample through the translucent material (A.sub.s+p), estimate a coefficient ({circumflex over ()}) from said spectral energy (E.sub.s+p) and, determine a corrected spectrum (.sub.s) of the sample from the measured spectrum (A.sub.s+p) of the sample through the translucent material and from a corrected spectrum of the translucent material (.sub.p),
said corrected spectrum of the translucent material (.sub.p) being determined from the measured spectrum of the translucent material (A.sub.p) and from the estimated coefficient ({circumflex over ()}).
Claims
1. Characterization device for characterizing a sample said device comprising: a memory storing a measured spectrum of said sample, performed through a translucent material, and a measured spectrum of the translucent material, a processing unit configured to: determine a spectral energy of the measured spectrum of the sample through the translucent material, the spectral energy being proportional to an integration on wavelength of the measured spectrum, estimate a coefficient from said spectral energy and, determine a corrected spectrum of the sample from the measured spectrum of the sample through the translucent material and from a corrected spectrum of the translucent material, said corrected spectrum of the translucent material being determined from the measured spectrum of the translucent material and from the estimated coefficient.
2. Characterization device as claimed in claim 1 further comprising a modelling unit configured to implement a characterization model developed from a reference database of spectra of reference samples, said characterisation model using the corrected spectrum of the sample as input, and delivering a classification of the sample or a classification or a quantification of a compound present in the sample.
3. Characterization device as claimed in claim 2, further comprising a data structuring module configured for structuring the corrected sample spectrum based on a principal component analysis, said data structuring module generating a structured corrected sample spectrum, thereby reducing the number of wavelengths of the measurement into a lower number of variables, said structured corrected sample spectrum being the input of an improved characterization model developed from the reference database, said improved characterization model delivering a classification of the sample or a classification or a quantification of a compound present in the sample in place of said classification model.
4. A spectrophotometer comprising: a measuring device comprising: a light source configured to illuminate a sample, said sample being illuminated through a translucent material, a detector configured to detect the light reflected from or transmitted by the sample, a calculation module configured to generate a measured spectrum of said sample, and a characterization device as claimed in claim 1.
5. Method for determining a corrected spectrum of a sample, comprising: storing a measured spectrum of the sample performed through a translucent material, storing a measured spectrum of the translucent material, determining a spectral energy of the measured spectrum of the sample through the translucent material, the spectral energy being proportional to an integration on wavelength of the measured spectrum, estimating a coefficient from said spectral energy, determining said corrected spectrum of the sample from the measured spectrum of the sample and from a corrected spectrum of the translucent material, said corrected spectrum of the translucent material being determined from the measured spectrum of the translucent material and from the estimated coefficient.
6. Method as claimed in claim 5 wherein said measured spectra are expressed as absorbance.
7. Method as claimed in claim 5 wherein the corrected spectrum of the translucent material is determined from a product of the estimated coefficient and the measured spectrum of the translucent material.
8. Method as claimed in claim 5 wherein the corrected spectrum of the sample is determined by subtracting the corrected spectrum of the translucent material from the measured spectrum of the sample through the translucent material.
9. Method as claimed in claim 5 wherein the estimated coefficient is determined by a predetermined relationship between the spectral energy of the measured spectrum of the sample through the translucent material and the estimated coefficient.
10. Method as claimed in claim 9 wherein the predetermined relationship is a linear function.
11. Method as claimed in claim 5 comprising a previous step of measuring the measured spectrum of the sample through the translucent material.
12. Method as claimed in claim 5, further comprising implementing a characterization model corresponding to a classification model or a quantification model, and using the corrected spectrum of the sample as input.
13. Method as claimed in claim 5 further comprising structuring the corrected sample spectrum based on a principal component analysis to generate a structured corrected sample spectrum, thereby reducing the number of wavelengths of the measurement into a lower number of variables.
14. Method of characterization of a sample comprising a method for determining a corrected spectrum of said sample as claimed in claim 13 and further comprising implementing a characterization model using the structured corrected sample spectrum as input.
15. A non-transitory computer-readable storage medium for determining a corrected spectrum of a sample, comprising computer-executable instructions for: storing a measured spectrum of the sample performed through a translucent material, storing a measured spectrum of the translucent material, determining a spectral energy of the measured spectrum of the sample through the translucent material, the spectral energy being proportional to an integration on wavelength of the measured spectrum, estimating a coefficient from said spectral energy, determining said corrected spectrum of the sample from the measured spectrum of the sample and from a corrected spectrum of the translucent material, said corrected spectrum of the translucent material being determined from the measured spectrum of the translucent material and from the estimated coefficient.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Embodiments of the present invention, and further objectives of advantages thereof, are described in details below with reference to the attached figures, wherein:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
DETAILED DESCRIPTION OF THE INVENTION
(26)
(27) The light first passes through the material P, then through the sample S, then through the material P again (for reflective or transmissive of
(28) Here the optical measurement is performed through a translucent material distorting the optical measurement, that is to say, that a transparent material is placed in the light path between the light source and the detector, in addition of the sample. The translucent material may be placed in contact with the sample. This is the case for plastic packaging of dishes. Air may be present between the translucent material and the sample, which is the case when the sample has an enclosure and is measurement through a window.
(29) In any case the translucent material is a solid material.
(30) For the optical measurement it is needed for a translucent material to permit the light to go through the material, and the material may also be transparent.
(31) The measurement can be performed on a reflective sample by reflection or a transparent or translucent sample by transmission.
(32) Throughout this document, in a non limitative way and for the purpose of clarity, the absorbance A() is used as the signal for the spectrum S(), but other definitions (such as transmittance, reflectance or opacity) of the spectrum could have been used.
(33) We define:
(34) A.sub.s(): measured absorbance of the sample alone,
(35) A.sub.s+p(): measured absorbance of the sample through the translucent material P,
(36) A.sub.p() as the measured absorbance of the translucent material alone.
(37) The absorbance A.sub.p may be defined as the absorbance corresponding to a one way passage of the light through it or a two way, there and back passage.
(38) For the case of
A.sub.s+p=log.sub.10[I0/I3]]
A.sub.p=log.sub.10[I0/I1]]=log.sub.10[I2/I3]] (with Ap for a one way passage)
A.sub.s=log.sub.10[I1/I2]]
I0/I3=I0/I1*I1/I2*I2/I3
(39) This multiplicative relationship becomes an additive relationship with absorbance:
(40) For Ap corresponding to one passage of the beam through the translucent material it can be written:
A.sub.s+p=A.sub.s+2A.sub.p
(41) Or
(42) For Ap corresponding to a there and back of the beam through the translucent material it can be written:
A.sub.s+p=A.sub.s+A.sub.p(3)
(43) Throughout this document we will consider A.sub.p as the absorbance corresponding to the contribution of the translucent material for the measurement (there and back or one way, depending of the configuration of the measurement).
(44) The light is affected by absorption by the molecular vibrations of the sample/material P molecules, and in a first approximation each wavelength is assumed to be independent of the others.
(45) By using the mathematical model of formula (3), it can be deduced that for obtaining A.sub.s from A.sub.s+p it is sufficient to subtract A.sub.P from A.sub.s+p.
(46) Thus it is first needed to get the signature of each type of translucent material, meaning without the presence of any sample. A key parameter being the chemical nature of the material, it is needed to obtain the measured spectra A.sub.p() of a set of candidate chemical types of translucent materials (PP, PET, PE . . . ).
(47) The aim is to determine an estimated measured spectrum of the sample alone (meaning without the presence of a translucent material) named .sub.s(), from the measurements of A.sub.s+p and A.sub.P, as close as possible to the real measured spectrum A.sub.s of the sample alone.
(48) Applying formula (3) the estimated spectrum is:
.sub.s=A.sub.s+pA.sub.p(4)
(49) To apply this model it may be useful that the measurements of A.sub.p and A.sub.s+p be performed with protocol and conditions as close as possible from one measurement to the next.
(50) This simplified model does not give satisfactory results because it appears that some spectral patterns that are reconstructed using formula (2) do not have a physical meaning. For instance, notches appear with this technique. A characterization device and method permitting a very low error rate for spectra introduced into a classification/quantification model is thus needed, where the spectra are obtained from measurements through a translucent material P such as a packaging or a window.
(51) A tool to evaluate the performance of an estimator .sub.s is provided to calculate an indicator such as the root mean square error or RMSE. To perform the calculation, the real absorbance A.sub.s corresponding to the sample alone is needed, performed with the same protocol as the A.sub.p and A.sub.s+p measurements. The RMSE is:
(52)
(53) Where i, is the ith wavelength indexed from 1 to m, corresponding to the wavelengths used during the measurement.
(54) The absolute value of the RMSE obtained for a determined estimator .sub.s is an imperfect indicator of the estimator quality, however the RMSE is useful to compare different estimators with one other.
(55)
(56) In a first step 100, a measured spectrum A.sub.s+p of the sample performed through a translucent material P is loaded.
(57) The translucent material has a chemical type, a certain thickness, and may present different physical aspects.
(58) The measure of the spectrum was performed by an optical measurement, the optical measurement being distorted by the presence of a translucent material positioned on the light path. The spectrum is defined as a signal, dependant on the wavelength, arriving on the detector after passing through the translucent material and the sample.
(59) In a second step 110 a measured spectrum of the translucent material alone A.sub.p is loaded.
(60) This spectrum Ap may be obtained by a measurement made in a comparable or equivalent way as the sample spectrum or may be available from a database DBP insofar as its chemical type is known. The two measured spectra A.sub.s+p and A.sub.p may be performed in the same conditions, the same configuration, and with the same apparatus.
(61) For a reflective sample, the measurement of A.sub.p may be realized by replacing the sample S by a neutral reflecting material in the optical range of the measurement.
(62) For a transmissive sample, the measurement of A.sub.p may be realized by simply removing the sample S.
(63) Optionally some preprocessing, such as smoothing or averaging may be applied to the measured spectrum.
(64) In an embodiment the spectral range for the measurement is visible ([0.4 m; 0.8 m]), and/or near IR (for example included in [0.8; 3 m]), and/or another bandwidth in the IR.
(65) Then the method comprises a third step 115 of determining a spectral energy E.sub.s+p of the measured spectrum A.sub.s+p of the sample through the translucent material (A.sub.s+p).
(66) In signal processing, the spectral energy of a signal is a quantity proportional to the integral of the signal. Here the signal is the measured spectrum As+p function of wavelength . Thus the spectral energy E.sub.s+p is proportional to the integration on wavelength of A.sub.s+p:
(67) Considering a discrete number of wavelengths hi for the measurement of the spectrum, index i varying from 1 to m, then E.sub.s+p can be written as:
(68)
(69) Or in a general case:
E.sub.s+p.sub..sub.
(70) Then the method comprises a fourth step 120 consisting of estimating a coefficient {circumflex over ()} from the spectral energy E.sub.s+p of the measured spectrum A.sub.s+p of the sample performed through a translucent material P.
(71) The method further comprises a step 130 of determining the corrected spectrum .sub.s of the sample from the measured spectrum A.sub.s+p of the sample and from a corrected spectrum of the translucent material .sub.p.
(72) The corrected spectrum of the translucent material .sub.P is determined from the measured spectrum of the translucent material A.sub.P and from the estimated coefficient {circumflex over ()}.
(73) Indeed, after a lot of experimentation and reasoning, the inventors have found that a coefficient {circumflex over ()} permitting the correction of the effect of the presence of the translucent material P during the spectrum measurement can be related to the spectral energy of the distorted measurement. The estimated coefficient {circumflex over ()} may be obtained by a predetermined relationship R between E.sub.s+p and {circumflex over ()}:
{circumflex over ()}=f(E.sub.s+p)(8)
(74) It will be explained further in the document how this relation may be determined, leading to an example of such a relationship.
(75) The corrected spectrum .sub.s is a spectrum obtained from the loaded measured spectrum A.sub.s+p but being less distorted by the presence of the material P during the measurement. This is possible because the spectrum A.sub.p of the material has been predetermined and loaded. The spectrum Ap may be either measured, or be loaded from a material database. In this last case, the chemical type of the material P has to be known.
(76) The estimated coefficient {circumflex over ()} permits to determine a corrected spectrum of the translucent material .sub.p which is itself used to correct the measured spectrum A.sub.s+p.
(77) The corrected spectrum .sub.s may be used for classification of the sample, or classification or quantification of a compound present in the sample as explained below. The fact that the spectrum has been corrected will decrease the error rate due the presence of the material P during the measurement of classification/quantification models using the spectrum as input, as described in the background.
(78) Preferably the measured spectra A.sub.s+p and A.sub.P. are expressed as absorbance defined by formula (1) (or formula (2)), depending on the context and in a consistent way.
(79) In an embodiment of the method as claimed the corrected spectrum of the translucent material .sub.p is determined from the product of the estimated coefficient {circumflex over ()} by the measured spectrum of the translucent material A.sub.p:
.sub.p={circumflex over ()}A.sub.p(9)
(80) In an embodiment, it is possible to introduce the coefficient {circumflex over ()} in formula (3) such as the corrected spectrum .sub.s of the sample is determined by subtracting the corrected spectrum of the translucent material .sub.p from the measured spectrum A.sub.s+p of the sample through the translucent material:
.sub.s=A.sub.s+p{circumflex over ()}A.sub.p(10)
(81) Formula (10) corresponds to the model described in formula (3) with the adjunction of a coefficient {circumflex over ()} into A.sub.P in order to better take into account the influence of the material P on the measured spectrum. This coefficient according to the invention has a specific relationship R with an intrinsic feature of the measurement itself A.sub.s+p via the spectral energy E.sub.s+p.
(82) Once the estimated spectrum determined by the method 10 is obtained, this spectrum may be used as input into a characterization model.
(83) A first example of application for the use of , illustrated on
(84) A second example of application for the use of , illustrated on
(85) A mixed application is a classification of a sample using a quantification of a compound, the class of sample being determined as a function of the quantification. For example, two different classes of flour may be defined depending on the percentage of the compound in the flour, above or below a predetermined threshold.
(86) In parallel with elaboration of method 10 by using coefficient {circumflex over ()}, the inventors have developed a method for structuring the initial spectra As() of reference samples (or a pre-processed spectrum), which are preferably expressed as an absorbance, by using a method of dimension reduction, as explained in the following paragraphs.
(87) Indeed a spectrum As() has generally a substantial number of abscissa i, i from 1 to m, m typically being equal to hundreds or thousands, and it may be desired to reduce this number as explained below. For this purpose a method called principal component analysis (PCA) is used.
(88) The principle of the PCA according to the invention, permitting a change of space on the data matrix comprising measured spectra is illustrated on
(89) The departure space vector is the spectral space S containing the measured spectrum as a function of wavelength, that is to say the data matrix DMsr of the spectrum of the reference samples (n reference samples) of the reference database DB which is used to elaborate the characterization model (see
(90) A PCA algorithm is used on a DMsr containing n samples.
(91) The arrival vector space is an orthogonal space of dimension I, with Im, with new coordinates .sub.j, defining a new matrix DM of n samples Astr().
(92) In practice the PCA algorithm determined a coefficient matrix M.sub.PCA which is the transfer matrix from to :
Y=XM.sub.PCA(11)
(93) The analysis in principal components uses different criteria consisting of maximizing the variance of data and of orthogonalizing the resulting coordinates.
(94) Among .sub.j, it is possible to choose only the 2 or 3 first coordinates (1, 2, 3) which concentrate all the needed information. By construction, coordinates are sorted in a way that the first ones explain the greatest part of the variance in the data. Because spectral data are often highly correlated, the information can be summarized in a few new coordinates. Therefore, it is usual that the three first new coordinates are sufficient to represent the original data.
(95) The matrix of coefficient M.sub.PCA is representative of the way the data are organized. In the flour example, the coefficients highlight the differences between the flours. Actually the coefficients may be a weighting factor applied to the values of absorbance of the spectrum of DMs.
(96) PCA analysis may be used as an analysis and visualization technique. Attention is paid to the new coordinates j named scores.
(97) In the context of the invention, the determined coefficients M.sub.PCA (from the data matrix of reference samples DMsr) are used on another matrix.
(98) A first option is to use them on the measured spectrum A.sub.s+p obtained by method 10 as illustrated in
(99) A new characterization model CMimp is developed taking into account the change of variable from to as illustrated in
(100) By applying the PCA coefficients to the spectrum through the translucent material P, this data is transposed into a new space structured in such a way that the classification/quantification operation is greatly simplified, despite the presence of the material P during the measurement. Thus the improved characterization model CMimp delivers a classification of the sample or a classification or a quantification of a compound present in the sample in place of the classification model CM.
(101) By applying the model of flour classification described above, the inventors have found that by using optimized structuration of the spectra by a dimension reduction such as PCA, thus using a transformation based on PCA coefficients M.sub.PCA, the error rate for spectra of samples performed through the translucent material P became (the corresponding rate without PCA is provided between parenthesis; see also table 1 below).
(102) PE1: 2% (75%)
(103) PE2: 6% (65%)
(104) PET1: 34% (88%)
(105) PET2: 15% (88%)
(106) Thus a result of this first option is that the error rate can be improved by dimension reduction alone.
(107) As a second option corresponding to another embodiment of the invention, such PCA coefficients M.sub.PCA (calculated as explained above) are applied to the corrected spectrum .sub.s obtained in method 10.
(108) An aspect of the invention is thus a method 10 comprising a step 140 of structuring the corrected sample spectrum .sub.s() based on a principal component analysis PCA, to generate a structured corrected sample spectrum .sub.str(p) in order to reduce the plurality of wavelengths i (I between 1 and m) of the measurement into an lower number of variables 1, 2, 3. The example of
(109) The additional step 140 of structuring .sub.s may be included in a characterization method 400 using an adapted characterization model CMimp, implemented in a step 150, also illustrated in
(110) For example, the characterization model may be a classification or a quantification model.
(111)
(112)
(113) In the flour example, by applying the correction of formula (2) in combination with dimension reduction (PCA), that is to say subtracting the packaging spectrum with =1, the error rate becomes (see also table 1 below):
(114) PE1: 2%
(115) PE2: 5%
(116) PET1:35%
(117) PET2: 14%
(118) So applying formula (2) (=1) to generate a pseudo corrected spectrum in combination with PCA does not improve the error rate compared to PCA alone.
(119) By applying PCA on an improved spectrum .sub.s obtained by using an estimated coefficient {circumflex over ()} however, the error rate is decreased drastically.
(120) In the flour classification example, by applying formula (5) and estimating {circumflex over ()} by the method described above, the following results are obtained (see table 1):
(121) TABLE-US-00001 TABLE 1 PCA + PCA + formula(5) formula(2) Translucent ({circumflex over ()}) ( = 1) PCA alone Initial error material P Error rate Error rate Error rate rate PE1 0% 2% 2% 75% PE2 4% 5% 6% 65% PET1 15% 35% 34% 88% PET2 10% 14% 15% 88%
(122) It can be seen, by comparison with the results obtained with =1 above, that the combination of the correction of the spectrum by using an estimated coefficient {circumflex over ()} ({circumflex over ()}1) with a structuration by PCA of the corrected spectrum leads to a very powerful treatment permitting the recovery of a very low error rate, thus rendering the characterization model robust to the presence of a disturbing material P during the measurement.
(123) Now a way to determine the relationship R between the spectral energy E.sub.s+p of the measured spectrum A.sub.s+p and the estimated coefficient {circumflex over ()} is described and illustrated on
R: {circumflex over ()}=f(E.sub.s+p)
(124) The starting point is the realization of the database BD of reference sample used to develop the characterization model. This data base contains measured spectrum As(j) of reference samples Sj, with j=1 to m.
(125) In a first step k samples Sk among the j samples Sj are chosen, k<j, on specific criteria. For those chosen reference samples Sk in a measured spectrum A.sub.s+p(k) through the translucent material P of a known chemical nature is performed.
(126) In a second step for each k the corresponding spectral energy E.sub.s+p(k) is determined by integration.
(127) In a third step for each k [A.sub.s+p(k), E.sub.s+p(k)] an optimized coefficient .sub.opt(k) is determined minimizing an error between A.sub.s+p(k)
Ap on one side and As(k) on the other side. This calculation can be performed because for those samples Sk both A.sub.s+p and A.sub.s are known.
(128) Preferably .sub.opt (k) minimizes RMSE(k):
(129)
(130) With:
(131)
(132) In a fourth step the cloud of points Pk with Pk having the coordinates: {E.sub.s+p(k), .sub.opt(k)} is considered. This cloud of points provides a picture of the link between the optimized coefficient and the spectral energy for a certain number of samples. To obtain a general law, the relationship R: {circumflex over ()}=f(E.sub.s+p) is determined by interpolation. This relationship constitutes the predetermined relationship which is used in step 120 of method 10.
(133) This method permits the establishment of a law based on practical measurement and representative of the effect of the material P corrupting the measurement, and thus the correction of such effect via the estimated coefficient {circumflex over ()}.
(134)
(135) In order to obtain the regression model, thirty measurements have been taken for each type of flour (eight different types of flours, those considered for the classification model) with a given packaging. Each point on the
(136) In the case illustrated on
{circumflex over ()}=aE.sub.s+p+b(14)
(137) According to another aspect the invention concerns a characterization device 50 for characterizing a sample S illustrated on
(138) The device comprises a memory MEM storing a measured spectrum A.sub.s+p of the sample S, performed through a translucent material P, and a measured spectrum of the translucent material A.sub.p. This spectrum Ap may be obtained by a measurement made the same way as the sample spectrum or may be available from a database DBP insofar as its chemical type is known.
(139) The device 50 further comprises a processing unit PU configured to: estimate a coefficient {circumflex over ()} from a spectral energy E.sub.s+p of the measured spectrum A.sub.s+p of the sample through the translucent material P and, determine a corrected spectrum (.sub.s of the sample from the measured spectrum A.sub.s+p of the sample through the translucent material and from a corrected spectrum of the translucent material .sub.p.
(140) The corrected spectrum of the translucent material .sub.P is determined from the measured spectrum of the translucent material A.sub.P and from the estimated coefficient {circumflex over ()}.
(141) The corrected spectrum of the sample .sub.s is intended to be used for classification of the sample, or classification or quantification of a compound present in the sample.
(142) In a particular embodiment illustrated on
(143) The characterization device 50 further comprises a data structuring module DSM, as illustrated in
(144) The structured corrected sample spectrum .sub.str is the input of a improved characterization model CMimp developed from a reference database DB and taking into account the structuration of .sub.str.
(145) According to another aspect, the invention concerns a spectrophotometer Spectro as illustrated in
(146) The spectrometer Spectro according to the invention is thus capable of measuring the spectrum of the sample S through a material P which may degrade the measurement, and performing an accurate characterization of the sample despite the presence of the material P during the measurement.
(147) In one embodiment, the spectrum of the translucent material A.sub.p is measured the same way as the sample, with the light source LS, the detector D and the calculation module. In this case it is not necessary to know the chemical type of the translucent material.
(148) In another embodiment, the chemical type of the translucent material P is identified, and the spectrum Ap is loaded from a material database DBP, which can be either included in Spectro, as shown in
(149) It will be appreciated that the foregoing embodiments are merely non limiting examples. In particular, the measuring device MeD, the characterization device 50 and the material database DBP may be located in different elements and used together in any combination.
(150) In an embodiment MeD may be linked to a computer Comp via an I/O interface 900, the characterization device 50 and the material database DBP being located in the computer, as illustrated in
(151) In another embodiment characterization device 50 and/or material database DBP may be located in a remote server 76 linked via internet 75 to the communication subsystem 720 of a computer Comp, as illustrated in
(152) The disclosed methods 10, 200, 300, 400, 500, 600, can take form of an entirely hardware embodiment (e.g. FPGA), an entirely software embodiment (for example to control a device according to the invention) or an embodiment containing both hardware and software elements. Software embodiments include but are not limited to firmware, resident software, microcode, etc. The invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or an instruction execution system.
(153) A computer-usable or computer-readable embodiment can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium.
(154) In some embodiments, the methods described herein may be implemented in whole or part by a user device. These methods and processes may be implemented by computer-application programs or services, an application-programming interface (API), a library, and/or other computer-program product, or any combination of such entities.
(155) The user device may be a mobile device such as a smart phone or tablet, a computer or any other device with processing capability, such as a robot or other connected device.
(156)
(157) Logic device 701 includes one or more physical devices configured to execute instructions. For example, the logic device 701 may be configured to execute instructions that are part of one or more applications, services, programs, routines, libraries, objects, components, data structures, or other logical constructs. Such instructions may be implemented to perform a task, implement a data type, transform the state of one or more components, achieve a technical effect, or otherwise arrive at a desired result.
(158) The logic device 701 may include one or more processors configured to execute software instructions. Additionally or alternatively, the logic device may include one or more hardware or firmware logic devices configured to execute hardware or firmware instructions. Processors of the logic device may be single-core or multi-core, and the instructions executed thereon may be configured for sequential, parallel, and/or distributed processing. Individual components of the logic device 701 optionally may be distributed among two or more separate devices, which may be remotely located and/or configured for coordinated processing. Aspects of the logic device 701 may be virtualized and executed by remotely accessible, networked computing devices configured in a cloud-computing configuration.
(159) Storage device 702 includes one or more physical devices configured to hold instructions executable by the logic device to implement the methods and processes described herein. When such methods are implemented, the state of storage 702 device may be transformede.g., to hold different data.
(160) Storage device 702 may include removable and/or built-in devices. Storage device 702 may comprise one or more types of storage device including optical memory (e.g., CD, DVD, HD-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. Storage device may include volatile, nonvolatile, dynamic, static, read/write, read-only, random-access, sequential-access, location-addressable, file-addressable, and/or content-addressable devices.
(161) In certain arrangements, the system may comprise an I/O interface 703 adapted to support communications between the Logic device 701 and further system components. For example, additional system components may comprise removable and/or built-in extended storage devices. Extended storage devices may comprise one or more types of storage devices including optical memory 732 (e.g., CD, DVD, HD-DVD, Blu-Ray Disc, etc.), semiconductor memory 733 (e.g., RAM, EPROM, EEPROM, FLASH etc.), and/or magnetic memory 731 (e.g., hard-disk drive, floppy-disk drive, tape drive, MRAM, etc.), among others. Such extended storage device may include volatile, nonvolatile, dynamic, static, read/write, read-only, random-access, sequential-access, location-addressable, file-addressable, and/or content-addressable devices.
(162) It will be appreciated that storage device includes one or more physical devices, and excludes propagating signals per se. However, aspects of the instructions described herein alternatively may be propagated by a communication medium (e.g., an electromagnetic signal, an optical signal, etc.), as opposed to being stored on a storage device.
(163) Aspects of logic device 701 and storage device 702 may be integrated together into one or more hardware-logic components. Such hardware-logic components may 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.
(164) The term program may be used to describe an aspect of computing system implemented to perform a particular function. In some cases, a program may be instantiated via logic device executing machine-readable instructions held by storage device. It will be understood that different modules may be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Likewise, the same program may be instantiated by different applications, services, code blocks, objects, routines, APIs, functions, etc. The term program may encompass individual or groups of executable files, data files, libraries, drivers, scripts, database records, etc.
(165) In particular, the system of
(166) For example a program implementing the steps described with respect to
(167) Accordingly the invention may be embodied in the form of a computer program.
(168)
(169) It will be understood that the configurations and/or approaches 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 may represent one or more of any number of processing strategies. As such, various acts illustrated and/or described may be performed in the sequence illustrated and/or described, in other sequences, in parallel, or omitted. Likewise, the order of the above-described processes may be changed.
(170) The subject matter of the present disclosure includes all novel and non-obvious combinations and sub-combinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as any and all equivalents thereof.
(171) On another aspect, the invention relates to a computer program adapted to implement the steps of the method as claimed. On another aspect the invention relates to a computer readable medium incorporating the computer program.