public static void LearnObject(BitmapImage learningImage, BitmapImage backgroundImage, string objectName)
        {
            //get the object pallete
            Dictionary <Color, ColorInformation> objectPalleteData = PaletteAnalyzer.AnalyzeBitmaps(learningImage, backgroundImage);

            //convert into ColorData
            List <ObjectColorData> objectColorData = new List <ObjectColorData>();

            foreach (Color color in objectPalleteData.Keys)
            {
                objectColorData.Add(new ObjectColorData(color));
            }
            ObjectSignatureData objectSignature = new ObjectSignatureData(objectColorData, objectName);

            //save the learned object
            ObjectMemoryService.AddSignature(objectSignature);
        }
        public static void RemoveSignatureByName(string name)
        {
            ObjectSignatureData objectToRemove = null;

            foreach (ObjectSignatureData objectSignature in objectSignatures)
            {
                if (objectSignature.ObjectName.Equals(name))
                {
                    objectToRemove = objectSignature;
                    break;
                }
            }

            if (objectToRemove != null)
            {
                objectSignatures.Remove(objectToRemove);
                sync();
            }
        }
 public static void AddSignature(ObjectSignatureData newSignature)
 {
     objectSignatures.Add(newSignature);
     sync();
 }