help = "Caminho para a imagem de busca.") parser.add_argument("-n", "--limit", required = True, type = check_negative, help = "Numero de imagens similares a serem buscadas.") parser.add_argument("-m", "--method", required = True, help = "Nome do metodo descritor a ser utilizado.") parser.add_argument("--mask", required = False, default = 7, type = check_mask, help = "Tamanho da mascara (3x3, 5x5 ou 7x7) a ser utilizada no descritor de Fourier. Padrao = 7.") parser.add_argument("-d", "--distance", required = True, help = "Nome do metrica de distancia para comparacao de histogramas.") args = vars(parser.parse_args()) t1 = time.time() # verifica o metodo a ser usado e inicializa um objeto para o respectivo metodo if(args["method"].upper() == "FOURIER"): queryDesc = FourierDescriptor(args["mask"]) indexFilepath = "indexes/" + str(args["mask"]) + "fourierindex.csv" elif(args["method"].upper() == "GCH"): queryDesc = GCHDescriptor((9, 12, 4)) indexFilepath = "indexes/gchindex.csv" elif(args["method"].upper() == "LCH"): queryDesc = LCHDescriptor((9, 12, 3)) indexFilepath = "indexes/lchindex.csv" else: sys.exit("\nMetodo descritor invalido!\n") # carrega a imagem de consulta em memoria e aplica o descritor query = cv2.imread(args["query"]) queryFeatures = queryDesc.describe(query) # inicializa um objeto que ira' fazer a comparacao da imagem de consulta com o banco de imagens
"--mask", required=False, default=7, type=check_mask, help= "Tamanho da mascara (3x3, 5x5 ou 7x7) a ser utilizada no descritor de Fourier. Padrao = 7." ) args = vars(parser.parse_args()) t1 = time.time() # verifica o metodo a ser usado e inicializa um objeto para o respectivo metodo if (args["method"].upper() == "FOURIER"): print "Gerando o indice do banco de imagens em \"%s\" para o metodo FOURIER com mascara %dx%d ..." % ( args["images"], args["mask"], args["mask"]) descriptor = FourierDescriptor(args["mask"]) indexFilepath = "indexes/" + str(args["mask"]) + "fourierindex.csv" elif (args["method"].upper() == "GCH"): print "Gerando o indice do banco de imagens em \"%s\" para o metodo GCH ..." % ( args["images"]) descriptor = GCHDescriptor((9, 12, 4)) indexFilepath = "indexes/gchindex.csv" elif (args["method"].upper() == "LCH"): print "Gerando o indice do banco de imagens em \"%s\" para o metodo LCH ..." % ( args["images"]) descriptor = LCHDescriptor((9, 12, 3)) indexFilepath = "indexes/lchindex.csv" else: sys.exit("Metodo descritor invalido!") # abre o indice para escrita
default=7, type=check_mask, help="Tamanho da mascara (3x3, 5x5 ou 7x7) a ser utilizada no descritor de Fourier. Padrao = 7.", ) args = vars(parser.parse_args()) t1 = time.time() # verifica o metodo a ser usado e inicializa um objeto para o respectivo metodo if args["method"].upper() == "FOURIER": print 'Gerando o indice do banco de imagens em "%s" para o metodo FOURIER com mascara %dx%d ...' % ( args["images"], args["mask"], args["mask"], ) descriptor = FourierDescriptor(args["mask"]) indexFilepath = "indexes/" + str(args["mask"]) + "fourierindex.csv" elif args["method"].upper() == "GCH": print 'Gerando o indice do banco de imagens em "%s" para o metodo GCH ...' % (args["images"]) descriptor = GCHDescriptor((9, 12, 4)) indexFilepath = "indexes/gchindex.csv" elif args["method"].upper() == "LCH": print 'Gerando o indice do banco de imagens em "%s" para o metodo LCH ...' % (args["images"]) descriptor = LCHDescriptor((9, 12, 3)) indexFilepath = "indexes/lchindex.csv" else: sys.exit("Metodo descritor invalido!") # abre o indice para escrita indexFile = open(indexFilepath, "w")