A computer implemented method, comprising: obtaining angular spectral data related to a target coating from a spectrophotometer; identifying, using a processor, at least one type of pigment in the target coating, wherein identifying the at least one type of pigment comprises applying a Bayesian process employing a Bayesian system with multiple decision points making use of the obtained spectral data to determine a probability that the target coating contains at least one particular type of pigment of a plurality of different types of pigments based on the angular spectral data and reference characteristics for one or more types of pigments; identifying, using the processor, for the identified type(s) of pigment at least one refined pigment in the target coating, wherein identifying the at least one refined pigment comprises applying a Bayesian process employing a Bayesian system with multiple decision points making use of the obtained angular spectral data in a refined angular analysis to generate a list of refined pigments that are each associated with a respective probability of acceptable match to refined pigments in the target coating based on the angular spectral data and reference characteristics for one or more pigments; formulating, using a processor, a matching formulation of the target coating, wherein formulating comprises passing the list of refined pigments identified by the Bayesian system to a formulation engine and determining, by the formulation engine, which ones of the identified refined pigments should be used in the matching formulation and at what quantity; and outputting the determined formulation obtaining angular spectral data related to a target coating from a spectrophotometer; identifying, using a processor, at least one type of pigment in the target coating, wherein identifying the at least one type of pigment comprises applying a Bayesian process employing a Bayesian system with multiple decision points making use of the obtained spectral data to determine a probability that the target coating contains at least one particular type of pigment of a plurality of different types of pigments based on the angular spectral data and reference characteristics for one or more types of pigments; identifying, using the processor, for the identified type(s) of pigment at least one refined pigment in the target coating, wherein identifying the at least one refined pigment comprises applying a Bayesian process employing a Bayesian system with multiple decision points making use of the obtained angular spectral data in a refined angular analysis to generate a list of refined pigments that are each associated with a respective probability of acceptable match to refined pigments in the target coating based on the angular spectral data and reference characteristics for one or more pigments; formulating, using a processor, a matching formulation of the target coating, wherein formulating comprises passing the list of refined pigments identified by the Bayesian system to a formulation engine and determining, by the formulation engine, which ones of the identified refined pigments should be used in the matching formulation and at what quantity; and outputting the determined formulation