// Get Recipes public Data[] GetRecipes(ModelChoice model_choice, DataPurpose data_purpose) { MLContext mlContext = new MLContext(); IDataView testData = GetDataView(model_choice, mlContext, data_purpose); IDataView features = GetDataView(model_choice, mlContext, DataPurpose.FEATURES); return(GetData(testData, features)); }
protected FeatureSet ExtractFeatures(Sample sample, DataPurpose purpose) { var extractor = new FeatureExtraction(); var feedback = CaptureFeedback.None; var features = new FeatureSet(); extractor.CreateFeatureSet(sample, purpose, ref feedback, ref features); return((feedback == CaptureFeedback.Good) ? features : null); }
protected FeatureSet ExtractFeatures(Sample Sample, DataPurpose Purpose) { FeatureExtraction Extractor = new FeatureExtraction(); CaptureFeedback feedback = CaptureFeedback.None; FeatureSet features = new FeatureSet(); Extractor.CreateFeatureSet(Sample, Purpose, ref feedback, ref features); if (feedback == CaptureFeedback.Good) { return(features); } return(null); }
private string GetPrefix(DataPurpose dataPurpose) { switch (dataPurpose) { case DataPurpose.Test: return(testDataPrefix); case DataPurpose.Training: return(trainingDataPrefix); default: return(null); } }
public IEnumerable <InputOutputPairModel> GetData(DataPurpose dataPurpose) { var prefix = GetPrefix(dataPurpose); var imageData = ReadImageData($@"{mnistDataFolder}\{prefix}-images.dat"); var labelData = ReadLabelData($@"{mnistDataFolder}\{prefix}-labels.dat"); for (var i = 0; i < imageData.Length; i++) { yield return(new InputOutputPairModel { Inputs = imageData[i].Select(NormalizeImageActivation).ToArray(), Outputs = NormalizeLabelActivation(labelData[i]) }); } }
public static FeatureSet ExtractFeatures(Sample sample, DataPurpose datapurpose) { FeatureExtraction extractor = new FeatureExtraction(); CaptureFeedback feedback = CaptureFeedback.None; FeatureSet feature = new FeatureSet(); extractor.CreateFeatureSet(sample, datapurpose, ref feedback, ref feature); if (feedback == CaptureFeedback.Good) { return(feature); } else { return(null); } }
public DPFP.Template ConvertRawBmpAsTemplate(Bitmap RawBmp, DataPurpose ProcessPurpose = DataPurpose.Enrollment, short VertDpi = 700, short HorDpi = 700) { VariantConverter VConverter; Enroller = new DPFP.Processing.Enrollment(); RawBmp = EncodeBitmap(RawBmp, VertDpi, HorDpi); try { // converts raw image to dpSample using DFC 2.0--------------------------------------- // encode the bmp variable using the bitmap Loader BitmapLoader BmpLoader = new BitmapLoader(RawBmp, (int)RawBmp.HorizontalResolution, (int)RawBmp.VerticalResolution); BmpLoader.ProcessBitmap(); // return the required result inputData = BmpLoader.RawData; inpRaw = BmpLoader.DPInputParam; // dispose the object BmpLoader.Dispose(); // start the conversion process VConverter = new VariantConverter(VariantConverter.OutputType.dp_sample, DataType.RawSample, inpRaw, inputData, false); MemoryStream DStream = new MemoryStream(VConverter.Convert()); DPsample = new DPFP.Sample(DStream); // DPsample = DirectCast(VConverter.Convert(), DPFP.Sample) // converts dpSample to DPFeatures using the OTW''''''''''''''''''''''''''''''''''''''' DPFeatures = ExtractFeatures(DPsample, ProcessPurpose); // convert DPfeatures to ISO FMD using the DFC 2.0''''''''''''''''''''''''''''''''''''''' byte[] SerializedFeatures = null; DPFeatures.Serialize(ref SerializedFeatures); // serialized features into the array of bytes ISOFMD = DigitalPersona.Standards.Converter.Convert(SerializedFeatures, DigitalPersona.Standards.DataType.DPFeatureSet, DataType.ISOFeatureSet); // convert ISO FMD to DPTemplate using DFC 2.0''''''''''''''''''''''''''''''''''''''' byte[] DPTemplateData = DigitalPersona.Standards.Converter.Convert(ISOFMD, DigitalPersona.Standards.DataType.ISOTemplate, DataType.DPTemplate); // deserialize data to Template DPTemplate = new DPFP.Template(); DPTemplate.DeSerialize(DPTemplateData); // required for database purpose // ============================================================================ DStream.Close(); return(DPTemplate); } catch (Exception ex) { return(null /* TODO Change to default(_) if this is not a reference type */); } }
// Get DataView public IDataView GetDataView(ModelChoice choice, MLContext ml, DataPurpose purpose) { // get features if (purpose.Equals(DataPurpose.FEATURES)) { return(LoadFeatures(Path.Combine(Environment.CurrentDirectory, "Data", FEATURES_DATA), ml)); } // get NMF data (entries set aside for testing) else if (choice.Equals(ModelChoice.NMF)) { // test data if (purpose.Equals(DataPurpose.TEST)) { return(LoadData(Path.Combine(Environment.CurrentDirectory, "Data", NMF_TEST_DATA), ml)); } // training data else { return(LoadData(Path.Combine(Environment.CurrentDirectory, "Data", NMF_TRAIN_DATA), ml)); } } // get data (recipes set aside for testing) else { // test data if (purpose.Equals(DataPurpose.TEST)) { return(LoadData(Path.Combine(Environment.CurrentDirectory, "Data", TEST_DATA), ml)); } // training data else { return(LoadData(Path.Combine(Environment.CurrentDirectory, "Data", TRAIN_DATA), ml)); } } }