Example #1
0
def method_select(name):
    if name == "color":
        ret = Color()
    elif name == "edge":
        ret = Edge()
    elif name == "gabor":
        ret = Gabor()
    elif name == "daisy":
        ret = Daisy()
    elif name == "HOG":
        ret = HOG()
    return ret
Example #2
0
 def _get_feat(self, db, f_class):
     if f_class == 'color':
         f_c = Color()
     elif f_class == 'daisy':
         f_c = Daisy()
     elif f_class == 'edge':
         f_c = Edge()
     elif f_class == 'gabor':
         f_c = Gabor()
     elif f_class == 'hog':
         f_c = HOG()
     return f_c.make_samples(db, verbose=False)
Example #3
0
    # retrieve by daisy
    method = Daisy()
    samples = method.make_samples(db)
    query = samples[query_idx]
    _, result = infer(query, samples=samples, depth=depth, d_type=d_type)
    print(result)

    # retrieve by edge
    method = Edge()
    samples = method.make_samples(db)
    query = samples[query_idx]
    _, result = infer(query, samples=samples, depth=depth, d_type=d_type)
    print(result)

    # retrieve by gabor
    method = Gabor()
    samples = method.make_samples(db)
    query = samples[query_idx]
    _, result = infer(query, samples=samples, depth=depth, d_type=d_type)
    print(result)

    # retrieve by HOG
    method = HOG()
    samples = method.make_samples(db)
    query = samples[query_idx]
    _, result = infer(query, samples=samples, depth=depth, d_type=d_type)
    print(result)

    # retrieve by VGG
    method = VGGNetFeat()
    samples = method.make_samples(db)
Example #4
0
        name, weight = s.split(':')
        weight = int(weight)
        if name not in features.keys() or weight < 1:
            raise Exception
        return name, weight
    except:
        raise argparse.ArgumentTypeError(
            f"\nFeature must be 'name:weight'\n\tname in {features.keys()}\n\tweight >= 1"
        )


features = {
    "color": Color(),
    "daisy": Daisy(),
    "edge": Edge(),
    "gabor": Gabor(),
    "hog": HOG(),
    "vgg": VGGNetFeat(),
    "res": ResNetFeat(),
}

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-n",
                        "--neighbor",
                        help="neighbor by class",
                        type=int,
                        default=3)
    parser.add_argument(
        "-c",
        help="Copy images in a result path (src/CBIR/result/retrieval/)",