Abstract:
A color measuring system uses fuzzy logic to establish acceptable pass/fail tolerances for production or inventory samples. The tolerances define a super ellipsoid which has six individual tolerance coordinates. Initially, the tolerances are defined by the high/low values of the pass samples in a training set which have been chosen to represent a population of visually rated pass and fail samples. A classifier template uses the super ellipsoid tolerances and ranks every sample in the training set. Any pass/fail ranking that differs from the visual rank is considered an error. All of the error distances are summed and all samples are passed through the fuzzy logic contained in an induction module to determine the changes needed in the super ellipsoid tolerances to minimize the error distance. The new tolerances are then passed to the classifier template for a new ranking of the training samples. The process is repeated until a minimum error distance is achieved. The final tolerances are then used by the classifier to rank subsequent samples as either pass or fail. Shade sorting can also be accomplished. In that case, the training samples are rated twice, first for the centroid color differences and then for the shade differences. The training set is processed by the classifier template/induction module to determine the two tolerances. The classifier then rates production/inventory samples to determine if they meet the centroid color needs, and then places the samples in the proper shade sort group.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The invention relates to a color measuring system and method employing fuzzy logic, classifier templates and super ellipsoids for the purpose of defining acceptability tolerances for color and appearance with subsequent rating of other samples as pass or fail. 
     2. Description of the Related Art 
     The problem of defining acceptable tolerances for the color and appearance differences of product taken from a production line is a difficult task. The decision has to be a subjective one since the criteria is visual acceptability and not visual perceptibility. If the tolerances are set too large, the result can be returned product from the field. If the tolerances are set too small, the cost to produce the acceptable product could become prohibitive. 
     U.S. Pat. No. 4,745,555, a continuation of U.S. Pat. No. 4,688,178, describes the use of color tolerances for the purpose of shade sorting textile fabric. Color tolerances are defined by ellipsoids and are used to classify and place samples according to their color differences from a standard color target in such a way as to minimize the use of samples that lie farthest from the target. Further, the described method only makes use of existing tolerances, and does not appear to provide any capability for defining the acceptability tolerance itself. Only conventional ellipsoid definitions are used to define the color tolerances and, therefore, the definition of color tolerance is limited. 
     Of possible limited relevance to the invention are the disclosures in U.S. Pat. Nos. 4,697,242; 4,881,178; 4,918,618; 4,935,877 and 5,048,095. These patents cover applications for different types of artificial intelligence such as genetic algorithms and neural networks. 
     &#34;Docking a Truck: Fuzzy,&#34; an article in AI Expert, May 1992, describes a typical use of fuzzy logic. The basic concept of fuzzy sets is that the entire domain of possible observation values is subdivided into a smaller number of subsets. These subsets are usually overlapping, so that a particular observation point may be a partial member of more than one subset. That is, the boundaries to the subsets are fuzzy rather than sharp. Each fuzzy subset is associated with a set of rules that allow for a corresponding action of the proper magnitude and direction. The organization of many subsets into a single result is called defuzzification. In the case of the above article, fuzzy logic is used to transform spatial position into instructions defining the direction and amount to turn a vehicle steering wheel along with information regarding the proper truck velocity to reach the desired spatial position. 
     The publications, &#34;CCM System Utilizing a Neural Network,&#34; Dyeing and Finishing Technology, Vol. 26, No. 8, pp 553-557, and, &#34;Neural Networks in the Colour Industry,&#34; Applications of Artificial Intelligence in Engineering, Volume V, 1991, describe the use of fuzzy logic and another artificial intelligence method, namely neural networks, in the area of color. The term CCM stands for Computer Color Matching, which establishes colorant formulations to match specific color targets. Fuzzy logic is used to replace conventional algorithms that determine the colorant formula, while the neural network is used to replace the traditional Kubelka-Munk optical theory of color mixing. While this disclosure describes the practical use of artificial intelligence tools in the area of color, it does not appear to teach or suggest the use of such tools to quantify acceptability tolerances of color and appearance perception for use in classifying subsequent samples for pass and fail. Another publication of possible interest is &#34;Conversion of a Visual to an Instrumental Color Matching System: An Experimental Approach&#34; by R. Vanderhoven, Textile Chemist and Colorist, May 1992, Vol. 24, No. 5 , pages 19-25. This represents an attempt to go from a visual to instrumental approach for shade sorting, but the conclusion of the publication was that this approach did not agree well with visual observations. 
     The need to quantify the visual acceptability tolerances for specific colors so that the tolerances can be used to classify subsequent samples is a desirable operation in the production of colored products. Previous technologies have depended upon the user to provide the tolerances by whatever techniques thought practical. The chosen tolerances might represent rectangular as well as ellipsoidal volumes, even if the visual assessments did not agree. While the user could make a single judgment for a single sample as to its acceptability, he usually found it difficult to express a practical three dimensional tolerance for the total color acceptability of the color. The use of standard ellipsoids as the acceptability volume provides better visual agreement than rectangular volumes. However, it still does not agree well with visual perception on borderline situations especially when the specimens are not flat, uniform or opaque. 
     SUMMARY OF THE INVENTION 
     Briefly described, the invention comprises a color measuring system which uses fuzzy logic to establish acceptable pass/fail tolerances for production or inventory samples. The tolerances initially are defined by the high/low values of pass samples in a training set which have been chosen to represent a population of visually rated pass and fail samples. A classifier template makes use of the tolerances to determine the pass/fail status for all of the training samples. 
     The first step in the process is to train the classifier. The initial tolerance settings of the classifier are based upon a super ellipsoid which has six individual tolerance coordinates. The classifier template uses the super ellipsoid tolerances and ranks every sample in the training set. The determined status for each sample is then compared to the visual status. Any conflicts are considered errors and the total error is then determined for the training set. All of the error distances from a predetermined reference point are summed and all samples passed through the fuzzy logic contained in an induction module to determine the changes needed in the super ellipsoid tolerances to minimize the error distance. The new tolerances are then fed back as new settings to the classifier template for a new ranking of the training samples. The process is repeated until a minimum error distance is achieved, typically defined as (0.0) or after a predetermined number of runs have been made. In this manner, the classifier template is trained and then used as a standard for subsequent samples. Once the classifier is trained, it can be employed to rank production samples. If the results of the ranking fall into an area of uncertainty, then those samples can be included in future training sets for future retraining of the classifier template. 
     The same basic concept can be employed for shade sorting. Initially, a group of pass/fail samples is chosen for inclusion in a training set so that there are two values for each sample. One value represents the pass/fail values for centroid color and the second value represents the pass/fail values for shade color. The first and second set of values describe a pair of super ellipsoid volumes that establish two sets of tolerances for two classifier templates. Each of the two classifier templates is trained in the manner previously described by summing the error distances of the samples from two reference points. Fuzzy logic contained in the induction module is used to determine which tolerances of the super ellipsoid to change to minimize the error distances. That, in turn, defines two new super ellipsoids based upon the changed tolerances which are used to establish new tolerances for the two classifier templates. The training steps are repeated until the minimum error is equal to zero or a maximum number of iterations has been performed. The shade centers based upon the shade classifier template tolerances are such that they cover the entire centroid super ellipsoid. Once the classifier has been trained, it can be employed to evaluate and measure production runs for centroid color and shade. 
     These and other features of the invention may be more fully understood by reference to the following drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a schematic illustration of the preferred embodiment of the color tolerancing invention. 
     FIG. 2A illustrates the relationship between the computer programs which drive the microprocessor. 
     FIG. 2B is a pass/fail flow chart illustrating the manner in which the classifier according to the preferred embodiment is trained. 
     FIG. 2C is a pass/fail flow chart illustrating the manner in which the trained classifier evaluates production samples according to the preferred embodiment of the invention. 
     FIG. 2D is a pass/fail flow chart verbally describing the steps of the preferred embodiment of the invention. 
     FIGS. 3A and 3B illustrate constraints put upon the classifier module and its relationship to the induction module 
     FIGS. 4A, 4B and 4C respectively illustrate a prior art, conventional ellipsoid as seen from three orthogonal axes L, C and H. 
     FIGS. 5A, 5B and 5C respectfully illustrate the shape and characteristics of a super ellipsoid as seen from the L, C and H axes. 
     FIG. 6A is a shade sorting flow chart illustrating the manner in which the classifier is trained according to an alternative embodiment of the invention. 
     FIG. 6B is a shade sorting flow chart illustrating the manner in which inventory is checked for centroid color and then sorted for maximized shade according to the alternative embodiment of the present invention. 
     FIG. 6C is a shade sorting flow chart illustrating the manner in which production samples are checked for centroid color and then assigned to appropriate shade lots according alternative embodiment of the present invention. 
     FIG. 7A illustrates the manner in which three sweater-like objects are described with regard to centroid and shade color variance. 
     FIG. 7B illustrates how two objects in different production runs are described with respect to pass/fail tolerances. 
     FIG. 8 illustrates the manner in which a plurality of substantially identical shade center super ellipsoids cover a centroid color super ellipsoid for shade sorting purposes. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     During the course of this description, like numbers will be used to identify like elements according to the different figures which illustrate the invention. 
     The invention 10 according to its preferred embodiment is illustrated in FIGS. 1 through 3B and FIGS. 5A-5C. FIG. 1 describes the basics of the overall system 10 which is driven by microprocessor 12. Microprocessor 12 is serviced by a standard Random Access Memory (RAM) 14 and a storage disk 16 which includes an inventory of products and/or tolerances. The output from the microprocessor 12 is displayed on a video display terminal 22 or can be reproduced on a hard copy printer 24. System software 26 described in further detail in FIG. 2A includes instructions for the fuzzy logic induction module 48 and the classifier template 44 based upon the tolerances of a super ellipsoid 80 illustrated in FIGS. 5A-5C. A training set of samples 28 including insets 34 is initially visually rated to determine a set of pass/fail samples 30. The pass only portion of the training set samples 30 are inputted to keyboard 18 by the user as an initial input to microprocessor 12. Ultimately, colormetric measurements of the training set (DL*, DC*, DH*) 32 provide parameters to the microprocessor 12 for the rating on a pass/fail basis of future production samples. 
     A more detailed description of the application system software 26 is illustrated as flow chart 40 in FIG. 2A. The pass only portion of the visually rated training set 30 previously inputted by keyboard 18 provides a set of data 42 representative of the visual pass/fail determinations of the training set. That forms one input to the classifier template 44. Subsequent color measurements of the training samples 46 also provide an input to the classifier template 44. The classifier template 44 rates the samples and the output thereof is manipulated by the fuzzy logic induction module 48 to calculate the six new tolerance coordinates of a super ellipsoid 80. Software module 50 calculates the new super ellipsoid tolerances for color variance and using the six new tolerance coordinates modifies, or trains, the classifier template 44 to improve its accuracy. The process is repeated until the sum of the distances from a reference point are substantially zero (0,0) or a predetermined period of time has passed. Then subsequent production samples are evaluated by sample classification module 52 wherein a 1.0 or less is a pass and greater than a 1.0 is a fail and the results thereof provide an input to the color measurement of production samples module 54 which provide a new input to the classifier template 44. 
     The step wise operation of the preferred embodiment 10 of the present invention can be better understood by referencing to the flow charts in FIGS. 2B, 2C and 2D. 
     There are two basic steps that are necessary for the preferred embodiment 10 of the invention to operate. First, it is necessary to define the color and appearance tolerances of acceptability for the product as described in the flow chart 50 of FIG. 2B. Second, it is then necessary to define the pass/fail status for any subsequent production samples as described in flow chart 60 in FIG. 2C based upon the established tolerances initially set by the flow chart 50 of FIG. 2B. 
     The flow chart 50 of FIG. 2B describes how the classifier template 44 is trained based upon the tolerance values of the training set 28. The process of defining the color and/or appearance tolerance of a system is referred to in this disclosure as &#34;training the classifier&#34; and is accomplished through an evaluation of the training sample set 28. The training samples 28 provide the basis for obtaining both visual and instrumental data about the color/appearance acceptability of the product. Each training subset 34 within the larger sample set 28 includes a specific sample that is defined as the standard. This standard represents the optimum color/appearance for the product. All other samples in the training set are defined relative to this standard. The visual data, usually rated by a human expert, is in the form of a pass or fail judgment to determine whether the sample is acceptable according to certain color and/or appearance criteria. This instrumental data is set forth as a numerical delta difference from the standard&#39;s absolute measurement for all defined attributes of color/appearance. 
     An initial set of tolerances is determined for the high and low values for each color/appearance attribute measurement for only the pass samples of the training set 28. The classifier template 44 makes use of these tolerances and determines a pass/fail status for all of the training samples 28. The determined status of each sample is compared to the visual status. Any conflicts are considered errors and the total error, i.e. the sum of the errors, is then determined for the training set. 
     An induction module 48 based upon fuzzy logic determines the change needed in the tolerances to reduce the error to a minimum. The nature of the fuzzy logic used in induction module 48 is of the sort generally described in the following publications: &#34;Neural Networks and Fuzzy Systems,&#34; by Bart Kosko, Prentice Hall 1992; &#34;Analysis of Fuzzy Information,&#34; by James Bezdek, CRC Press 1987; &#34;Fuzzy Sets and Systems: Theory and Applications,&#34; by D. J. DuBois and H. Prade, Academic Press 1980; &#34;Introduction to the Theory of Fuzzy Sets,&#34; by A. Kaufmann, Academic Press 1975; &#34;Fuzzy Set Theory--and its Applications,&#34; by H. J. Zimmermann, Academic Press 1985. 
     In order to use fuzzy logic, it is only necessary to understand the basic initial system constraints which are set out in full and enabling detail in this disclosure. Once these constraints are known, fuzzy logic is applicable in the same manner as is described in the foregoing publications. 
     The tolerances determined by the fuzzy logic induction module 48 define the six coordinates of a super ellipsoid 80 described in FIGS. 5A, 5B and 5C. Super ellipsoid 80 is a significant improvement over prior art, conventional ellipsoids 78 such as illustrated in FIGS. 4A, 4B and 4C. A conventional prior art ellipsoid can be defined by the following equation and relationships: ##EQU1## where KL is always one half of L variance and KC is always one half of C variance and KH is always one half of H variance. In contrast, the super ellipsoid geometric volume 80 illustrated in FIGS. 5A-5C is described by the following equation and relationships: ##EQU2## where L, C, H represent an input sample, and, 
     KL 0  is the negative tolerance for L, and, 
     KL 1  the positive tolerance 
     KC 0  is the negative tolerance for C, and, 
     KC 1  the positive tolerance 
     KH 0  is the negative tolerance for H, and, 
     KH 1  the positive tolerance 
     where KL o  can be any portion of L variance and KC o  can be any portion of C variance and KH o  can be any portion of H variance and 
     if L&lt;0, KL=KL 0  otherwise KL=KL 1  ; and, 
     if C≦0, KC=KC 0  otherwise KC=KC 1  ; and, 
     if H≦0, KH=KH 0  otherwise KH=KH 1 . 
     It is clear from reviewing the form of the super ellipsoid geometric volume or shape 80 that the form is relatively unsymmetrical in view of the fact that it has six different potential tolerance values around an origin (0,0,0). This has been found, according to the present invention, to be a superior description of the tolerance parameters for a classification template 44 in that it produces significantly better pass/fail determinations. The centroid point (0,0,0) is a reference point which is preferably located within the volume defined by super ellipsoid 80, but, alternatively, the reference point could be any point within or even outside of the super ellipsoid depending upon the standards provided to initially define the classifier template tolerances. 
     The six new defined coordinates of super ellipsoid 80 are employed to provide six new tolerance settings for the classifier template 44. The process is repeated until a minimum error equal to zero (0.0) or a maximum number of iterations has been performed. The final tolerances are assigned as a production standard and define acceptable ranges of color/appearance tolerances for future production runs. Module 52 determines if a production sample has a value of 1.0 or not. If the classification value is 1.0 or less, then the production sample falls within the super ellipsoid volume 80 and is determined to be a pass. If, alternatively, the sample value is greater than 1.0, then the production sample is determined to be a fail. The samples processed by module 52 are subsequently measured by module 54 and provide new information to classifier template 44. 
     The foregoing process produces tolerances that reflect the quality judgments made by a visual assessment of the training samples 28. It is, therefore, important to have a representative set of training samples that reflect an expert&#39;s assessment of acceptable tolerances. If a training set is not available, such as an initial production run, it is still important to have an assessment of what is acceptable. A few carefully selected samples that an expert determines to be representative of the maximum tolerances for each of the color/appearance attributes can produce tolerances that can be used in the classifier module 44 to control production through the first run. Samples of that run can then be visually rated and measured to produce a representative training set for future tolerances. The process of using a classifier module 44 with a specific set of tolerances produced by the induction module 48 using a training set of samples that represent the product to be evaluated is known as a pass/fail determination. 
     Flow chart 60 shown in FIG. 2C illustrates the manner in which subsequent production runs are rated on a pass/fail basis. The classifier template 44 calculates a pass/fail value for each of the production samples. If the value is equal to, or less than 1.0, then as previously described, the sample is rated as a pass. If the value is above 1.0, the sample is rated as a fail. Or as stated another way, if the value is equal to or less than 1.0, the sample falls within the volume of the super ellipsoid 80, but if the value is above 1.0, the sample falls outside of the super ellipsoid volume 80. However, if the value falls into an intermediate area of uncertainty, then the system 10 can request classification of the sample for inclusion into a future training set for future runs. In that case the fuzzy logic induction module 48 will establish new tolerances defining six new coordinates for the super ellipsoid 80 defined in module 50 which in turn may retrain the classifier 44 to further improve its accuracy for future pass/fail evaluation of production samples. 
     The pass/fail flow chart 70 of FIG. 2D illustrates in an alternative, verbal form, the steps illustrated in flow charts 50 and 60, respectively, of FIGS. 2B and 2C. 
     FIG. 3A illustrates in a simplified form, the constraints on the system 10 and the relationship between the classifier template 44 and the fuzzy logic induction module 48. The fuzzy logic induction module dictates nine separate values which define the shape and location of the super ellipsoid 80. Six of the tolerance values L0, L1, C0 C1, H0, H1 define the six coordinates of the super ellipsoid 80 and L0, C0 and H0 define its distance from a reference point which may or may not be the center of the coordinate system. The input from the training samples 28 provide the initial tolerances for the classifier template 44. If the sum of the tolerance errors is not substantially equal to zero (0.0) or if a maximum period or a maximum number of iterations is passed, then the information is passed to the fuzzy logic module 48 which in turn adjusts the six super ellipsoid coordinates L0, L1, C0, C1, H0 and H1 which, in turn, define a new, modified and improved set of tolerance values for the now trained classifier template 44. The fuzzy logic induction module 48 may also provide some new reference point coordinates L0, C0, H0. 
     FIG. 3B illustrates in a simplified form the manner in which the fuzzy logic, defined by the module 48, makes a determination if, and by how much, the tolerance coordinates of the super ellipsoid 80 and the tolerance values of the classifier module 44 need to be changed. Curve 66 illustrates the value of the observed L1 and curve 68 illustrates the range which determines whether or not the new value L1 should be increased or decreased. If the value of L1 decreases by as much as 0.5, then the coordinate L1 should be decreased, and, alternatively, if the observed L1 is greater than 1.5 L1, then L1 should be increased. 
     The preferred embodiment of the invention just described has several advantages over prior art approaches. First, the tolerances used in the pass/fail determination are calculated automatically from a group of single, visual observations of standard and sample for color and appearance pass/fail determination. Since the visual decisions are made by a resident expert, the tolerances will reflect the tolerances of the expert and will be considered as acceptable tolerances. Second, the process can learn by the addition of selected samples to the training set. If these new samples are representative of recent color/appearance tolerances (pass/fail), the tolerances can be improved by running the induction module 48 again with the new samples. Third, the process makes use of a new super ellipsoid 80. This new geometric shape allows for greater accuracy in the definition of the acceptability volume since it has six independent definitions of its major axes. Fourth, the super ellipsoid 80 can handle asymmetrical definitions as well as those comparisons where the standard being used is an off-set standard. The off-set standard by itself is not considered to be acceptable, but is provided only as a reference color. Therefore, the super ellipsoid 80 can be defined with respect to a reference point that might be outside of the volume itself. 
     The concepts just described with reference to the preferred embodiment 10 can also be applied to a more sophisticated system that is capable of first sorting samples according to their centroid color and then making a judgment concerning those samples with regard to shade. The shade sorting flow chart 90 illustrated in FIG. 6A illustrates the manner in which the classifier 92 according to the alternative embodiment of the invention is trained. Initially, a plurality of pass/fail values are selected for inclusion in a training set where there are two values for each sample. The first value represents the pass/fail values for centroid color and the second value represents the pass/fail values for shade color. The pass values of the training set are then separately compared against two classifier templates based upon two sets of super ellipsoids 80 and 82A-J. While only one classifier template 92 is illustrated in FIG. 6A, it is understood that at different times, it will have different values and act as two different templates, one for centroid color and one for shade color, based upon the tolerances set by the two sets of super ellipsoids 80 and 82A-J. The first super ellipsoid 80 is defined by six coordinates for centroid color. The second super ellipsoid is actually a plurality of smaller super ellipsoids 82A-J which are described by six coordinates which define color shade. The errors of the samples passed through the two classifiers are summed with respect to their distances from two reference points. Fuzzy logic contained in an induction module is then employed to determine which tolerances to change to minimize the two error distances. The fuzzy logic then redefines two sets of six new coordinates which redefine two new super ellipsoid geometric volumes which, in turn, define two sets of six tolerance values for the two classifier templates. The result is two sets of classifier template tolerances such that a plurality of smaller shade center super ellipsoids 82A-82J cover the entire surface of the centroid super ellipsoid volume 80 as shown in FIG. 8. 
     The shade sorting flow chart 100 in FIG. 6B illustrates the manner in which the system can check inventory samples for centroid color and then the pass samples are maximized in a shade sort. As shown in the flow chart, the shade sort inventory samples are first compared in the classifier template 94 employing the coordinates of a super ellipsoid in which the tolerances for centroid color are compared against the standard value. If the samples have a value greater than 1.0, then they fail and are rejected. However, if the samples have a value of less than 1.0 for centroid color, then they pass and are sorted in a manner to maximize shade groupings. The passed samples are compared in a second classifier template 96 using the tolerances of a super ellipsoid which represents shades compared against selected standard values. The output of the flow chart system 100 illustrated in FIG. 6B is lots of material in which the outputs are maximized for shade sorting. 
     FIG. 6C illustrates an alternative shade sort flow chart 110 in which production samples are first classified with regard to a centroid color check in a classifier template 98 based upon the tolerances of a super ellipsoid as compared to standard values. The passed samples are then classified again by template 98, this time with different tolerance values, in such a way as to place the samples in shade center groups that contain the largest number of samples. The net result is to maximize the number of available shade sample lots. 
     FIG. 7A illustrates the problem faced by a manufacturer producing three sweaters 120, 122 and 124. Sweater 120 is made up of two sleeves, 120a and 120c, each attached to a body 120b. Similarly, sweaters 122 and 124 have sleeves 122a and 124a, 122c and 124c and bodies 122b and 124b, respectively. It is not only important that the centroid colors of the sweaters 120, 122 and 124 be correct but also, and perhaps even more importantly, that the shades of the sleeves match the shades of the bodies. The color centroid variance, which is first determined, is defined as the maximum allowable difference in color between objects called by the same color name. Once this is determined, it is also necessary to define shade color variance which is, for the purposes of this disclosure, the maximum allowable difference in color between any parts of one object. There are several conventional manners of defining color and color differences. For the purposes of disclosure, the CIELAB color difference is the preference wherein: 
     DL*=lightness differences (i.e. lighter, darker) 
     DC*=chroma differences (i.e. weaker, stronger) 
     DH*=hue differences (i.e. redder, yellower, greener, bluer) 
     The shade sorting flow chart 100 illustrated in FIG. 6B first makes a determination to see if the bodies and sleeves are all close enough to the centroid color to be generally acceptable. Then, it sorts the shades of the passed samples in such a way as to maximize the number of complete sweaters 120, 122 and 124 that can be manufactured. 
     FIG. 7B illustrates the challenge faced by a producer who wants to assign objects of differing shades 130a-b, 132a-b and 134a-b into a minimum number of shade lots. Objects 130a, 132a and 134a are produced in Run #1 and objects 130b, 132b and 134b are produced in Run #2. Objects 130a and 130b fall into shade lot #1; objects 132a and 132b fall into shade lot #2; and objects 134a and 134b fall into shade lot #3. It is desirable to place objects 130a-134a and 130b-134b into the minimal number of shade lots (illustrated as 1-3 here) so that matching is maximized and waste is minimized. The CIELAB color differences are the same ones as described with regard to FIG. 7A the important factor according to the pass/fail tolerance problem of FIG. 7B is to have preassigned shade tolerances so that a minimum number of shade lots exist before production runs start. The maximum allowable difference in color between any 2 shade lots is called centroid color variance. This technique provides for a minimum number of shade lots that cover any production sample that meets the centroid color variance. The flow chart system 110 illustrated in FIG. 6C illustrates the manner in which it is possible to first determine if the centroid color of the samples are correct and then places the samples in shade lot groups 1, 2 and 3 which contain the largest number of samples. This process minimizes the number of stray, or orphaned, shade lots that have small populations of samples. 
     The major advantage of the centroid and shade sorting systems illustrated in FIGS. 6A-6C are that they can minimize unmatched material by providing the optimum grouping of colored materials according to both centroid color and shade. 
     A computer program used to produce the results described above is annexed hereto and made part of this disclosure, however, this additional disclosure is not necessary to a full and complete understanding of invention. 
     While the invention has been described with reference to the preferred embodiment thereof, it will be appreciated by those of ordinary skill in the art that modifications can be made to the structure and steps of the invention without the departing from the spirit and scope of the invention as a whole. ##SPC1##