public static List <MultipartiteWeightedMatch> computeAssociations <T>(List <List <T> > boundingBoxes, ComputeSimilarityFunction <T> similarity)
        {
            MultipartiteWeightTensor t = computeSimilarityTensor <T>(boundingBoxes, similarity);

            MultipartiteWeightedMatching.GreedyMean matching = new MultipartiteWeightedMatching.GreedyMean();
            List <MultipartiteWeightedMatch>        ret      = matching.getMatching(t);

            return(ret);
        }
        public static List <MultipartiteWeightedMatch> computeGenericPolygonAssociations(List <List <Segment> > polygons)
        {
            MultipartiteWeightTensor t = computeSimilarityTensor(polygons);

            MultipartiteWeightedMatching.GreedyMean matching = new MultipartiteWeightedMatching.GreedyMean();
            List <MultipartiteWeightedMatch>        ret      = matching.getMatching(t);

            return(ret);
        }
        public static List <MultipartiteWeightedMatch> computeBoundingBoxAssociations(List <List <BoundingBox> > boundingBoxes)
        {
            MultipartiteWeightTensor t = computeSimilarityTensor(boundingBoxes);

            MultipartiteWeightedMatching.GreedyMean matching = new MultipartiteWeightedMatching.GreedyMean();
            List <MultipartiteWeightedMatch>        ret      = matching.getMatching(t);

            return(ret);
        }
Esempio n. 4
0
        public static List <MultipartiteWeightedMatch> AssociateTracklets(List <MultiObjectTrackingResult> compressedResults)
        {
            // multipartitie weighted matching
            // multipartite matching to cluster tracks
            CompressedTrackSimilarityMetric.ICompressedTrackSimilarityMetric metric = new CompressedTrackSimilarityMetric.TubeletIoU();
            MultipartiteWeightedMatching.GreedyMean mwmg  = new MultipartiteWeightedMatching.GreedyMean();
            MultipartiteWeightTensor         weightTensor = CompressedTrackSimilarityMetric.computeTrackSimilarityTensor(compressedResults, metric);
            List <MultipartiteWeightedMatch> association  = mwmg.getMatching(weightTensor);

            return(association);
        }