public WinEnsembleHash(IFingerprintService fingerprintService)
 {
     this.fingerprintService = fingerprintService;
     InitializeComponent();
     Icon = Resources.Sound;
     permutations = new DbPermutations(ConfigurationManager.ConnectionStrings["FingerprintConnectionString"].ConnectionString);
 }
        public WinDbFiller(IFingerprintService fingerprintService, IWorkUnitBuilder workUnitBuilder, ITagService tagService)
        {
            this.fingerprintService = fingerprintService;
            this.workUnitBuilder = workUnitBuilder;
            this.tagService = tagService;
            InitializeComponent();
            Icon = Resources.Sound;
            foreach (object item in ConfigurationManager.ConnectionStrings)
            {
                _cmbDBFillerConnectionString.Items.Add(item.ToString());
            }

            if (_cmbDBFillerConnectionString.Items.Count > 0)
            {
                _cmbDBFillerConnectionString.SelectedIndex = 0;
            }

            _btnStart.Enabled = false;
            _btnStop.Enabled = false;
            _nudThreads.Value = MaxThreadToProcessFiles;
            _pbTotalSongs.Visible = false;
            hashAlgorithm = 0; /**/
            _lbAlgorithm.SelectedIndex = 0; /*Set default algorithm LSH*/

            if (hashAlgorithm == HashAlgorithm.LSH)
            {
                _nudHashKeys.ReadOnly = false;
                _nudHashTables.ReadOnly = false;
            }

            object[] items = Enum.GetNames(typeof (StrideType)); /*Add enumeration types in the combo box*/
            _cmbStrideType.Items.AddRange(items);
            _cmbStrideType.SelectedIndex = 0;
        }
        public WinCheckHashBins(IFingerprintService fingerprintService)
        {
            this.fingerprintService = fingerprintService;
            InitializeComponent();

            Icon = Resources.Sound;
            foreach (object item in ConfigurationManager.ConnectionStrings) /*Detect all the connection strings*/
                _cmbConnectionString.Items.Add(item.ToString());

            if (_cmbConnectionString.Items.Count > 0) /*Set connection string*/
                _cmbConnectionString.SelectedIndex = 0;
            /*Setting default values*/
            _cmbAlgorithm.SelectedIndex = (int) _hashAlgorithm;

            string[] items = Enum.GetNames(typeof (StrideType)); /*Add enumeration types in the combo box*/
            _cmbStrideType.Items.AddRange(items);
            _cmbStrideType.SelectedIndex = 0;

            switch (_cmbAlgorithm.SelectedIndex)
            {
                case (int) HashAlgorithm.LSH:
                    _gbMinHash.Enabled = true;
                    _gbNeuralHasher.Enabled = false;
                    break;
                case (int) HashAlgorithm.NeuralHasher:
                    _gbMinHash.Enabled = false;
                    _gbNeuralHasher.Enabled = true;
                    break;
                case (int) HashAlgorithm.None:
                    _gbMinHash.Enabled = false;
                    _gbNeuralHasher.Enabled = false;
                    break;
            }
        }
 public WinEnsembleHash(IFingerprintService fingerprintService, IModelService modelService)
 {
     this.modelService = modelService;
     InitializeComponent();
     Icon = Resources.Sound;
     new DatabasePermutations(modelService);
 }
        private bool CreateFpInfo(HostContext host, IFingerprintService service, string jsContent = null)
        {
            var(success, msg) = service.InitTagStatus(host, jsContent);

            if (!success)
            {
                Events.OnWarning(this, new EventInfoArgs(msg));
                return(false);
            }

            var(succd, msg1) = service.BuildDeviceFingerprint(host);
            if (!succd)
            {
                Events.OnWarning(this, new EventInfoArgs(msg1));
                return(false);
            }

            if (host.FingerprintInfo == null)
            {
                return(false);
            }

            //set cookie
            host.FingerprintInfo.SetToNetClient(host.Session.NetClient);
            var(succd1, msg2) = service.PostFpInfo(host);
            if (!succd1)
            {
                Events.OnWarning(this, new EventInfoArgs(msg2));
                return(false);
            }

            host.SetFingerprintInfoToSession();
            return(true);
        }
Esempio n. 6
0
        public SoundFingerprinter(IModelService modelService, string loadFromPath, string debugDirectoryPath)
        {
            SetDebugPath(debugDirectoryPath);

            // if the modelService was passed, use it
            if (modelService != null)
            {
                this.modelService = modelService;
            }
            else
            {
                //  ... otherwise use the loadFromPath
                this.modelService = GetSQLiteDatabaseService(loadFromPath);
            }

            // and set the rest of the services
            this.audioService = new FindSimilarAudioService();

            var fingerprintConfig = new ShortSamplesFingerprintConfiguration();

            this.spectrumService = new FindSimilarSpectrumService(
                fingerprintConfig.SpectrogramConfig,
                new LogUtility()
                );

            this.fingerprintService = new FindSimilarFingerprintService(
                spectrumService,
                new LocalitySensitiveHashingAlgorithm(new MinHashService(new MaxEntropyPermutations()), new HashConverter()),
                new StandardHaarWaveletDecomposition(),
                new FastFingerprintDescriptor()
                );

            this.fingerprintCommandBuilder = new FingerprintCommandBuilder(fingerprintService);
        }
 public Repository(IFingerprintService fingerprintService, IWorkUnitBuilder workUnitBuilder, IStorage storage, IPermutations permutations)
 {
     this.permutations = permutations;
     this.storage = storage;
     service = fingerprintService;
     this.workUnitBuilder = workUnitBuilder;
     hasher = new MinHash(this.permutations);
 }
Esempio n. 8
0
 public FingerprintController(IFingerprintService fps)
 {
     _fps = fps;
     if (!_fps.Fingerprint.IsInitialised)
     {
         _fps.Fingerprint.Init();
     }
 }
Esempio n. 9
0
        public WinMisc(IFingerprintService fingerprintService, IWorkUnitBuilder workUnitBuilder)
        {
            this.fingerprintService = fingerprintService;
            this.workUnitBuilder = workUnitBuilder;

            InitializeComponent();
            Icon = Resources.Sound;
        }
Esempio n. 10
0
 public FingerprintsController()
 {
     fingerprintService = new FingerprintService();
     SERVER_IP          = ConfigurationManager.AppSettings["iClockHost"] ?? "10.62.0.23";
     if (_client == null)
     {
         _client = new RabbitMQClient("Fingerprint Monitor Queue");
     }
 }
Esempio n. 11
0
 public M7TradeService(IMappingService mappingService, ISettingService settingService, ITradingBookService tradingBookService, IFingerprintService fingerprintService,
                       IM7PartyService im7PartyService, IContactService contactService, IVenueService venueService, ILogger <M7TradeService> logger)
 {
     this.mappingService     = mappingService;
     this.fingerprintService = fingerprintService;
     this.im7PartyService    = im7PartyService;
     this.contactService     = contactService;
     this.venueService       = venueService;
     this.settingService     = settingService;
     this.tradingBookService = tradingBookService;
     this.logger             = logger;
 }
        public WinDrawningTool(IFingerprintService fingerprintService, IAudioService audioService, ITagService tagService, IWorkUnitBuilder workUnitBuilder, IFingerprintingConfiguration fingerprintingConfiguration)
        {
            this.fingerprintService = fingerprintService;
            this.audioService = audioService;
            this.tagService = tagService;
            this.workUnitBuilder = workUnitBuilder;
            this.fingerprintingConfiguration = fingerprintingConfiguration;

            InitializeComponent();
            Icon = Resources.Sound;

            _lbImageTypes.Items.Add("Single file");
            _lbImageTypes.Items.Add("Separated images");
        }
Esempio n. 13
0
        public TracklistViewModel() : base()
        {
            fileService        = DependencyInjector.GetService <IFileService>();
            taggingService     = DependencyInjector.GetService <ITaggingService>();
            metadataService    = DependencyInjector.GetService <IMetadataService>();
            fingerprintService = DependencyInjector.GetService <IFingerprintService>();

            TagList   = new ObservableCollection <MetaTagDisplayable>();
            MatchList = new ObservableCollection <TrackVirtual>();

            SelectAllCommand         = new RelayCommand <object>(exe => ExecuteSelectAll(), can => CanExecuteSelectAll);
            SelectReverseCommand     = new RelayCommand <object>(exe => ExecuteSelectReverse(), can => CanExecuteSelectReverse);
            ManageSourcesCommand     = new RelayCommand <object>(exe => ExecuteManageSources(), can => CanExecuteManageSources);
            UpdateTagsCommand        = new RelayCommand <object>(exe => ExecuteUpdateTags(), can => CanExecuteUpdateTags);
            GetFingerprintCommand    = new RelayCommand <object>(exe => ExecuteGetFingerprint(), can => CanExecuteGetFingerprint);
            SearchMusicBrainzCommand = new RelayCommand <object>(exe => ExecuteSearchMusicBrainz(), can => CanExecuteSearchMusicBrainz);
        }
Esempio n. 14
0
        /// <summary>
        /// Get signature similarity between 2 different songs.
        /// </summary>
        /// <param name="service">
        /// The service.
        /// </param>
        /// <param name="unitOfWork">
        /// The unit Of Work.
        /// </param>
        /// <param name="unitOfWorkToCompareWith">
        /// The unit Of Work To Compare With.
        /// </param>
        /// <param name="results">
        /// The results.
        /// </param>
        private void GetFingerprintSimilarity(IFingerprintService service, IWorkUnit unitOfWork, IWorkUnit unitOfWorkToCompareWith, DumpResults results)
        {
            double sum = 0;

            List<bool[]> imglista = unitOfWork.GetFingerprintsUsingService(service).Result;
            List<bool[]> imglistb = unitOfWorkToCompareWith.GetFingerprintsUsingService(service).Result;

            int count = imglista.Count > imglistb.Count ? imglistb.Count : imglista.Count;
            double max = double.MinValue;
            for (int i = 0; i < count; i++)
            {
                int j = i;
                double value = MinHash.CalculateSimilarity(imglista[i], imglistb[j]);
                if (value > max)
                {
                    max = value;
                }

                sum += value;
            }

            results.SumJaqFingerprintSimilarityBetweenDiffertSongs = sum;
            results.AverageJaqFingerprintsSimilarityBetweenDifferentSongs = sum / count;
            results.MaxJaqFingerprintsSimilarityBetweenDifferentSongs = max;
        }
 internal FingerprintCommand(IFingerprintService fingerprintService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService  = fingerprintService;
     this.lshAlgorithm        = lshAlgorithm;
     FingerprintConfiguration = new DefaultFingerprintConfiguration();
 }
Esempio n. 16
0
 public Task<List<bool[]>> GetFingerprintsUsingService(IFingerprintService service)
 {
     throw new NotImplementedException();
 }
 public FingerprintUnitBuilder(IFingerprintService fingerprintService, IAudioService audioService, IMinHashService minHashService)
 {
     this.fingerprintService = fingerprintService;
     this.audioService = audioService;
     this.minHashService = minHashService;
 }
Esempio n. 18
0
 internal FingerprintCommand(IFingerprintService fingerprintService)
 {
     this.fingerprintService  = fingerprintService;
     FingerprintConfiguration = new DefaultFingerprintConfiguration();
 }
 internal FingerprintCommandBuilder(IFingerprintService fingerprintService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService = fingerprintService;
     this.lshAlgorithm = lshAlgorithm;
 }
 internal FingerprintCommand(IFingerprintService fingerprintService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService = fingerprintService;
     this.lshAlgorithm = lshAlgorithm;
     FingerprintConfiguration = new DefaultFingerprintConfiguration();
 }
Esempio n. 21
0
 public FingerprintCommand(IFingerprintService fingerprintService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService = fingerprintService;
     this.lshAlgorithm       = lshAlgorithm;
 }
        public void SetUp()
        {
            connectionstring = ConnectionString;
            dalManager = new DaoGateway(connectionstring);
            fingerprintingServiceWithBass = new FingerprintService(
                new BassAudioService(), new FingerprintDescriptor(), new HaarWavelet());

            fingerprintingServiceWithDirectSound = new FingerprintService(
                new DirectSoundAudioService(), new FingerprintDescriptor(), new HaarWavelet());

            fingerprintingConfiguration = new DefaultFingerprintingConfiguration();
            workUnitBuilder = new WorkUnitBuilder();
        }
Esempio n. 23
0
 public ValuesController(IFingerprintService fps)
 {
     _fps = fps;
 }
Esempio n. 24
0
 public FingerprintCommand(IFingerprintService fingerprintService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService  = fingerprintService;
     this.lshAlgorithm        = lshAlgorithm;
     FingerprintConfiguration = FingerprintConfiguration.Default;
 }
Esempio n. 25
0
        /// <summary>
        ///   Get hash similarity of one song
        /// </summary>
        /// <param name = "service">Fingerprint service</param>
        /// <param name = "hashTables">Number of hash tables in the LSH transformation</param>
        /// <param name = "hashKeys">Number of hash keys per table in the LSH transformation</param>
        /// <param name = "path">Path to analyzed file</param>
        /// <param name = "results">Results object to be filled with the appropriate data</param>
        private void GetHashSimilarity(IFingerprintService service, int hashTables, int hashKeys, IWorkUnit unitOfWork, IWorkUnit sameUnitOfWork, DumpResults results)
        {
            double sum = 0;
            int hashesCount = 0;
            int startindex = 0;

            List<bool[]> listDb = unitOfWork.GetFingerprintsUsingService(service).Result;
            List<bool[]> listQuery = sameUnitOfWork.GetFingerprintsUsingService(service).Result;
            IPermutations perms = new DbPermutations(ConfigurationManager.ConnectionStrings["FingerprintConnectionString"].ConnectionString);
            MinHash minHash = new MinHash(perms);
            List<int[]> minHashDb = listDb.Select(minHash.ComputeMinHashSignature).ToList();
            List<int[]> minHashQuery = listQuery.Select(minHash.ComputeMinHashSignature).ToList();

            /*Calculate Min Hash signature similarity by comparing 2 consecutive signatures*/
            int countDb = minHashDb.Count;
            int countQuery = minHashQuery.Count;
            int minHashSignatureLen = minHashDb[0].Length;
            int similarMinHashValues = 0;
            for (int i = 0; i < countDb; i++)
            {
                for (int j = 0; j < countQuery; j++)
                {
                    for (int k = 0; k < minHashSignatureLen; k++)
                        if (minHashDb[i][k] == minHashQuery[j][k])
                            similarMinHashValues++;
                }
            }
            results.Results.SumIdenticalMinHash = similarMinHashValues;
            results.Results.AverageIdenticalMinHash = (double) similarMinHashValues/(countDb*countQuery*minHashSignatureLen);

            /*Group min hash signatures into LSH Buckets*/
            List<Dictionary<int, long>> lshBucketsDb =
                minHashDb.Select(item => minHash.GroupMinHashToLSHBuckets(item, hashTables, hashKeys)).ToList();

            List<Dictionary<int, long>> lshBucketsQuery =
                minHashQuery.Select(item => minHash.GroupMinHashToLSHBuckets(item, hashTables, hashKeys)).ToList();

            int countSignatures = lshBucketsDb.Count;
            sum = 0;
            foreach (Dictionary<int, long> a in lshBucketsDb)
            {
                Dictionary<int, long>.ValueCollection aValues = a.Values;
                foreach (Dictionary<int, long> b in lshBucketsQuery)
                {
                    Dictionary<int, long>.ValueCollection bValues = b.Values;
                    hashesCount += aValues.Intersect(bValues).Count();
                }
            }

            results.Results.SumJaqLSHBucketSimilarity = -1;
            results.Results.AverageJaqLSHBucketSimilarity = -1;
            results.Results.TotalIdenticalLSHBuckets = hashesCount;
        }
Esempio n. 26
0
 internal FingerprintCommandBuilder(IFingerprintService fingerprintService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService = fingerprintService;
     this.lshAlgorithm       = lshAlgorithm;
 }
 public void SetUp()
 {
     modelService = new ModelService(new MsSqlDatabaseProviderFactory(new DefaultConnectionStringFactory()), new ModelBinderFactory());
     fingerprintService = new FingerprintService(new FingerprintDescriptor(), new SpectrumService(new CachedFFTWService(new FFTWService86())), new WaveletService(new StandardHaarWaveletDecomposition()));
     defaultConfiguration = new DefaultFingerprintingConfiguration();
     var mockedPermutations = new Mock<IPermutations>();
     mockedPermutations.Setup(perms => perms.GetPermutations()).Returns(new int[1][]);
     permutations = mockedPermutations.Object;
     fingerprintUnitBuilderWithBass = new FingerprintUnitBuilder(fingerprintService, new BassAudioService(), new MinHashService(permutations));
     #pragma warning disable 612,618
     fingerprintUnitBuilderWithDirectSound = new FingerprintUnitBuilder(fingerprintService, new DirectSoundAudioService(), new MinHashService(permutations));
     #pragma warning restore 612,618
 }
Esempio n. 28
0
 internal FingerprintCommandBuilder(IFingerprintService fingerprintService)
 {
     this.fingerprintService = fingerprintService;
 }
 public FingerprintCommandBuilder(IFingerprintService fingerprintService, IAudioService audioService, ILocalitySensitiveHashingAlgorithm lshAlgorithm)
 {
     this.fingerprintService = fingerprintService;
     this.audioService       = audioService;
     this.lshAlgorithm       = lshAlgorithm;
 }