#!/usr/bin/env python # -*- coding: utf-8 -*- ''' Sample code to generate caption ''' import numpy as np from image_reader import Image_reader from caption_generator import Caption_generator #Instantiate image_reader with GoogleNet mean image mean_image = np.array([104, 117, 123]).reshape((3, 1, 1)) image_reader = Image_reader(mean=mean_image) #Instantiate caption generator caption_model_place = '../models/caption_model.chainer' cnn_model_place = '../data/bvlc_googlenet_caffe_chainer.pkl' index2word_place = '../work/index2token.pkl' caption_generator = Caption_generator(caption_model_place=caption_model_place, cnn_model_place=cnn_model_place, index2word_place=index2word_place) #The preparation is done #Let's ganarate caption for a image #First, read an image as numpy array image_file_path = '../images/test_image.jpg' image = image_reader.read(image_file_path) #Next, put the image into caption generator #The output structure is # [caption,caption,caption,...]
parser.add_argument("-v", "--vocab",default=index2word_file, type=str, help=u" vocaburary file") parser.add_argument("-i", "--image",default=image_file_name, type=str, help=u"a image that you want to generate capiton ") parser.add_argument("-b", "--beam",default=beamsize, type=int, help=u"a image that you want to generate capiton ") args = parser.parse_args() gpu_id=args.gpu model_place= args.model index2word_file = args.vocab image_file_name = args.image caffe_model_place = args.caffe beamsize = args.beam #Instantiate image_reader with GoogleNet mean image mean_image = np.array([104, 117, 123]).reshape((3,1,1))#GoogleNet Mean image_reader=Image_reader(mean=mean_image) #Instantiate caption generator caption_generator=Caption_generator(caption_model_place=model_place,cnn_model_place=caffe_model_place,index2word_place=index2word_file,beamsize=beamsize,gpu_id=gpu_id) #Read Image image=image_reader.read(image_file_name) #Generate Catpion captions=caption_generator.generate(image) #print it for caption in captions: sentence=caption['sentence'] probability=caption['probability'] print " ".join(sentence),probability
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' Sample code to generate caption ''' import numpy as np from image_reader import Image_reader from caption_generator import Caption_generator #Instantiate image_reader with GoogleNet mean image mean_image = np.array([104, 117, 123]).reshape((3,1,1)) image_reader=Image_reader(mean=mean_image) #Instantiate caption generator caption_model_place='../models/caption_model.chainer' cnn_model_place='../data/bvlc_googlenet_caffe_chainer.pkl' index2word_place='../work/index2token.pkl' caption_generator=Caption_generator(caption_model_place=caption_model_place,cnn_model_place=cnn_model_place,index2word_place=index2word_place) #The preparation is done #Let's ganarate caption for a image #First, read an image as numpy array image_file_path='../images/test_image.jpg' image=image_reader.read(image_file_path) #Next, put the image into caption generator #The output structure is
"--beam", default=beamsize, type=int, help=u"a image that you want to generate capiton ") args = parser.parse_args() gpu_id = args.gpu model_place = args.model index2word_file = args.vocab image_file_name = args.image caffe_model_place = args.caffe beamsize = args.beam #Instantiate image_reader with GoogleNet mean image mean_image = np.array([104, 117, 123]).reshape((3, 1, 1)) #GoogleNet Mean image_reader = Image_reader(mean=mean_image) #Instantiate caption generator caption_generator = Caption_generator(caption_model_place=model_place, cnn_model_place=caffe_model_place, index2word_place=index2word_file, beamsize=beamsize, gpu_id=gpu_id) #Read Image image = image_reader.read(image_file_name) #Generate Catpion captions = caption_generator.generate(image) #print it