日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

caffe 提取特征并可视化(已测试可执行)及在线可视化

發(fā)布時(shí)間:2023/12/13 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 caffe 提取特征并可视化(已测试可执行)及在线可视化 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

網(wǎng)絡(luò)結(jié)構(gòu)在線(xiàn)可視化工具

http://ethereon.github.io/netscope/#/editor


參考主頁(yè)

caffe 可視化的資料可在百度云盤(pán)下載
鏈接: http://pan.baidu.com/s/1jIRJ6mU
提取密碼:xehi

http://cs.stanford.edu/people/karpathy/cnnembed/

http://lijiancheng0614.github.io/2015/08/21/2015_08_21_CAFFE_Features/
http://nbviewer.ipython.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb
http://www.cnblogs.com/platero/p/3967208.html
http://caffe.berkeleyvision.org/gathered/examples/feature_extraction.html
http://caffecn.cn/?/question/21


caffe程序是由c++語(yǔ)言寫(xiě)的,本身是不帶數(shù)據(jù)可視化功能的。只能借助其它的庫(kù)或接口,如opencv, python或matlab。使用python接口來(lái)進(jìn)行可視化,因?yàn)閜ython出了個(gè)比較強(qiáng)大的東西:ipython notebook, 最新版本改名叫jupyter notebook,它能將python代碼搬到瀏覽器上去執(zhí)行,以富文本方式顯示,使得整個(gè)工作可以以筆記的形式展現(xiàn)、存儲(chǔ),對(duì)于交互編程、學(xué)習(xí)非常方便。

使用CAFFE( http://caffe.berkeleyvision.org )運(yùn)行CNN網(wǎng)絡(luò),并提取出特征,將其存儲(chǔ)成lmdb以供后續(xù)使用,亦可以對(duì)其可視化

使用已訓(xùn)練好的模型進(jìn)行圖像分類(lèi)在 http://nbviewer.ipython.org/github/BVLC/caffe/blob/master/example/00-classification.ipynb 中已經(jīng)很詳細(xì)地介紹了怎么使用已訓(xùn)練好的模型對(duì)測(cè)試圖像進(jìn)行分類(lèi)了。由于CAFFE不斷更新,這個(gè)頁(yè)面的內(nèi)容和代碼也會(huì)更新。以下只記錄當(dāng)前能運(yùn)行的主要步驟。下載CAFFE,并安裝相應(yīng)的dependencies,說(shuō)白了就是配置好caffe。

1. 下載CAFFE,并安裝相應(yīng)的dependencies,說(shuō)白了就是配置好caffe運(yùn)行環(huán)境。2. 配置好 python ipython notebook,具體可參考網(wǎng)頁(yè):

http://blog.csdn.net/jiandanjinxin/article/details/50409448
3. 在caffe_root下運(yùn)行./scripts/download_model_binary.py models/bvlc_reference_caffenet獲得預(yù)訓(xùn)練的CaffeNet。獲取CaffeNet網(wǎng)絡(luò)并儲(chǔ)存到models/bvlc_reference_caffenet目錄下。

cd caffe-root python ./scripts/download_model_binary.py models/bvlc_reference_caffenet 4. 在python文件夾下進(jìn)入ipython模式(或python,但需要把部分代碼注釋掉)運(yùn)行以下代碼 cd ./python #(×) 后面會(huì)提到 ipython notebook

在命令行輸入 ipython notebook,會(huì)出現(xiàn)一下畫(huà)面

接著 點(diǎn)擊 New Notebook,就可以輸入代碼,按 shift+enter 執(zhí)行


python環(huán)境不能單獨(dú)配置,必須要先編譯好caffe,才能編譯python環(huán)境。

安裝jupyter

sudo pip install jupyter

安裝成功后,運(yùn)行notebook

jupyter notebook 輸入下面代碼: import numpy as np import matplotlib.pyplot as plt %matplotlib inline# Make sure that caffe is on the python path: caffe_root = '../' # this file is expected to be in {caffe_root}/examples #這里注意路徑一定要設(shè)置正確,記得前后可能都有“/”,路徑的使用是 #{caffe_root}/examples,記得 caffe-root 中的 python 文件夾需要包括 caffe 文件夾。#caffe_root = '/home/bids/caffer-root/' #為何設(shè)置為具體路徑反而不能運(yùn)行呢import sys sys.path.insert(0, caffe_root + 'python') import caffe #把 ipython 的路徑改到指定的地方(這里是說(shuō)剛開(kāi)始在終端輸入ipython notebook命令時(shí),一定要確保是在包含caffe的python文件夾,這就是上面代碼(×)),以便可以調(diào)入 caffe 模塊,如果不改路徑,import 這個(gè)指令只會(huì)在當(dāng)前目錄查找,是找不到 caffe 的。plt.rcParams['figure.figsize'] = (10, 10) plt.rcParams['image.interpolation'] = 'nearest' plt.rcParams['image.cmap'] = 'gray' #顯示的圖表大小為 10,圖形的插值是以最近為原則,圖像顏色是灰色import os if not os.path.isfile(caffe_root + 'models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel'):print("Downloading pre-trained CaffeNet model...")!../scripts/download_model_binary.py ../models/bvlc_reference_caffenet#設(shè)置網(wǎng)絡(luò)為測(cè)試階段,并加載網(wǎng)絡(luò)模型prototxt和數(shù)據(jù)平均值mean_npycaffe.set_mode_cpu()# 采用CPU運(yùn)算 net = caffe.Net(caffe_root + 'models/bvlc_reference_caffenet/deploy.prototxt',caffe_root + 'models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel',caffe.TEST)# input preprocessing: 'data' is the name of the input blob == net.inputs[0] transformer = caffe.io.Transformer({'data': net.blobs['data'].data.shape}) transformer.set_transpose('data', (2,0,1)) transformer.set_mean('data', np.load(caffe_root + 'python/caffe/imagenet/ilsvrc_2012_mean.npy').mean(1).mean(1)) # mean pixel,ImageNet的均值 transformer.set_raw_scale('data', 255) # the reference model operates on images in [0,255] range instead of [0,1]。參考模型運(yùn)行在【0,255】的灰度,而不是【0,1】transformer.set_channel_swap('data', (2,1,0)) # the reference model has channels in BGR order instead of RGB,因?yàn)閰⒖寄P捅緛?lái)頻道是 BGR,所以要將RGB轉(zhuǎn)換# set net to batch size of 50 net.blobs['data'].reshape(50,3,227,227)#加載測(cè)試圖片,并預(yù)測(cè)分類(lèi)結(jié)果。net.blobs['data'].data[...] = transformer.preprocess('data', caffe.io.load_image(caffe_root + 'examples/images/cat.jpg')) out = net.forward() print("Predicted class is #{}.".format(out['prob'][0].argmax()))plt.imshow(transformer.deprocess('data', net.blobs['data'].data[0]))# load labels,加載標(biāo)簽,并輸出top_k imagenet_labels_filename = caffe_root + 'data/ilsvrc12/synset_words.txt' try:labels = np.loadtxt(imagenet_labels_filename, str, delimiter='\t') except:!../data/ilsvrc12/get_ilsvrc_aux.shlabels = np.loadtxt(imagenet_labels_filename, str, delimiter='\t') # sort top k predictions from softmax outputtop_k = net.blobs['prob'].data[0].flatten().argsort()[-1:-6:-1] print labels[top_k]# CPU 與 GPU 比較運(yùn)算時(shí)間 # CPU modenet.forward() # call once for allocation %timeit net.forward()# GPU mode caffe.set_device(0) caffe.set_mode_gpu() net.forward() # call once for allocation %timeit net.forward()#****提取特征并可視化****#網(wǎng)絡(luò)的特征存儲(chǔ)在net.blobs,參數(shù)和bias存儲(chǔ)在net.params,以下代碼輸出每一層的名稱(chēng)和大小。這里亦可手動(dòng)把它們存儲(chǔ)下來(lái)。[(k, v.data.shape) for k, v in net.blobs.items()]#顯示出各層的參數(shù)和形狀,第一個(gè)是批次,第二個(gè) feature map 數(shù)目,第三和第四是每個(gè)神經(jīng)元中圖片的長(zhǎng)和寬,可以看出,輸入是 227*227 的圖片,三個(gè)頻道,卷積是 32 個(gè)卷積核卷三個(gè)頻道,因此有 96 個(gè) feature map[(k, v[0].data.shape) for k, v in net.params.items()] #輸出:一些網(wǎng)絡(luò)的參數(shù)#**可視化的輔助函數(shù)** # take an array of shape (n, height, width) or (n, height, width, channels)用一個(gè)格式是(數(shù)量,高,寬)或(數(shù)量,高,寬,頻道)的陣列 # and visualize each (height, width) thing in a grid of size approx. sqrt(n) by sqrt(n)每個(gè)可視化的都是在一個(gè)由一個(gè)個(gè)網(wǎng)格組成def vis_square(data, padsize=1, padval=0):data -= data.min()data /= data.max()# force the number of filters to be squaren = int(np.ceil(np.sqrt(data.shape[0])))padding = ((0, n ** 2 - data.shape[0]), (0, padsize), (0, padsize)) + ((0, 0),) * (data.ndim - 3)data = np.pad(data, padding, mode='constant', constant_values=(padval, padval))# tile the filters into an imagedata = data.reshape((n, n) + data.shape[1:]).transpose((0, 2, 1, 3) + tuple(range(4, data.ndim + 1)))data = data.reshape((n * data.shape[1], n * data.shape[3]) + data.shape[4:])plt.imshow(data)#根據(jù)每一層的名稱(chēng),選擇需要可視化的層,可以可視化filter(參數(shù))和output(特征) # the parameters are a list of [weights, biases],各層的特征,第一個(gè)卷積層,共96個(gè)過(guò)濾器 filters = net.params['conv1'][0].data vis_square(filters.transpose(0, 2, 3, 1)) #使用 ipt.show()觀(guān)看圖像#過(guò)濾后的輸出,96 張 featuremap feat = net.blobs['conv1'].data[4, :96] vis_square(feat, padval=1) #使用 ipt.show()觀(guān)看圖像:feat = net.blobs['conv1'].data[0, :36] vis_square(feat, padval=1)#第二個(gè)卷積層:有 128 個(gè)濾波器,每個(gè)尺寸為 5X5X48。我們只顯示前面 48 個(gè)濾波器,每一個(gè)濾波器為一行。輸入: filters = net.params['conv2'][0].data vis_square(filters[:48].reshape(48**2, 5, 5)) #使用 ipt.show()觀(guān)看圖像:#第二層輸出 256 張 feature,這里顯示 36 張。輸入: feat = net.blobs['conv2'].data[4, :36] vis_square(feat, padval=1) #使用 ipt.show()觀(guān)看圖像feat = net.blobs['conv2'].data[0, :36] vis_square(feat, padval=1)#第三個(gè)卷積層:全部 384 個(gè) feature map,輸入: feat = net.blobs['conv3'].data[4] vis_square(feat, padval=0.5) #使用 ipt.show()觀(guān)看圖像:#第四個(gè)卷積層:全部 384 個(gè) feature map,輸入: feat = net.blobs['conv4'].data[4] vis_square(feat, padval=0.5) #使用 ipt.show()觀(guān)看圖像:#第五個(gè)卷積層:全部 256 個(gè) feature map,輸入: feat = net.blobs['conv5'].data[4] vis_square(feat, padval=0.5) #使用 ipt.show()觀(guān)看圖像:#第五個(gè) pooling 層:我們也可以觀(guān)察 pooling 層,輸入: feat = net.blobs['pool5'].data[4] vis_square(feat, padval=1) #使用 ipt.show()觀(guān)看圖像:#用caffe 的python接口提取和保存特征比較方便。 features = net.blobs['conv5'].data # 提取卷積層 5 的特征 np.savetxt('conv5_feature.txt', features) # 將特征存儲(chǔ)到本文文件中#然后我們看看第六層(第一個(gè)全連接層)輸出后的直方分布: feat = net.blobs['fc6'].data[4] plt.subplot(2, 1, 1) plt.plot(feat.flat) plt.subplot(2, 1, 2) _ = plt.hist(feat.flat[feat.flat > 0], bins=100) #使用 ipt.show()觀(guān)看圖像:#第七層(第二個(gè)全連接層)輸出后的直方分布:可以看出值的分布沒(méi)有這么平均了。 feat = net.blobs['fc7'].data[4] plt.subplot(2, 1, 1) plt.plot(feat.flat) plt.subplot(2, 1, 2) _ = plt.hist(feat.flat[feat.flat > 0], bins=100) #使用 ipt.show()觀(guān)看圖像:#The final probability output, prob feat = net.blobs['prob'].data[0] plt.plot(feat.flat)#最后看看標(biāo)簽:Let's see the top 5 predicted labels. # load labels imagenet_labels_filename = caffe_root + 'data/ilsvrc12/synset_words.txt' try:labels = np.loadtxt(imagenet_labels_filename, str, delimiter='\t') except:!../data/ilsvrc12/get_ilsvrc_aux.shlabels = np.loadtxt(imagenet_labels_filename, str, delimiter='\t')# sort top k predictions from softmax output top_k = net.blobs['prob'].data[0].flatten().argsort()[-1:-6:-1] print labels[top_k]

備注:用 caffe 的 python 接口提取和保存特征到text文本下

features = net.blobs['conv5'].data # 提取卷積層 5 的特征 np.savetxt('conv5_feature.txt', features) # 將特征存儲(chǔ)到本文文件中

現(xiàn)在Caffe的Matlab接口 (matcaffe3) 和python接口都非常強(qiáng)大, 可以直接提取任意層的feature map以及parameters, 所以本文僅僅作為參考, 更多最新的信息請(qǐng)參考:
http://caffe.berkeleyvision.org/tutorial/interfaces.html

提取特征并儲(chǔ)存
CAFFE提供了一個(gè)提取特征的tool,見(jiàn) http://caffe.berkeleyvision.org/gathered/examples/feature_extraction.html 。

數(shù)據(jù)模型與準(zhǔn)備
安裝好Caffe后,在examples/images文件夾下有兩張示例圖像,本文即在這兩張圖像上,用Caffe提供的預(yù)訓(xùn)練模型,進(jìn)行特征提取,并進(jìn)行可視化。

1. 選擇需要特征提取的圖像
./examples/_temp

(1) 進(jìn)入caffe根目錄(本文中caffe的根目錄都為caffe-root),創(chuàng)建臨時(shí)文件夾,用于存放所需要的臨時(shí)文件

mkdir examples/_temp

(2) 根據(jù)examples/images文件夾中的圖片,創(chuàng)建包含圖像列表的txt文件,并添加標(biāo)簽(0)

find `pwd`/examples/images -type f -exec echo {} \; > examples/_temp/temp.txt sed "s/$/ 0/" examples/_temp/temp.txt > examples/_temp/file_list.txt

(3) 執(zhí)行下列腳本,下載imagenet12圖像均值文件,在后面的網(wǎng)絡(luò)結(jié)構(gòu)定義prototxt文件中,需要用到該文件 (data/ilsvrc212/imagenet_mean.binaryproto).下載模型以及定義prototxt。

sh ./data/ilsvrc12/get_ilsvrc_aux.sh

(4) 將網(wǎng)絡(luò)定義prototxt文件復(fù)制到_temp文件夾下

cp examples/feature_extraction/imagenet_val.prototxt examples/_temp

使用特征文件進(jìn)行可視化
參考 http://www.cnblogs.com/platero/p/3967208.html 和 lmdb的文檔 https://lmdb.readthedocs.org/en/release ,讀取lmdb文件,然后轉(zhuǎn)換成mat文件,再用matlab調(diào)用mat進(jìn)行可視化。

使用caffe的 extract_features.bin 工具提取出的圖像特征存為lmdb格式, 為了方便觀(guān)察特征,我們將利用下列兩個(gè)python腳本將圖像轉(zhuǎn)化為matlab的.mat格式 (請(qǐng)先安裝caffe的python依賴(lài)庫(kù))。extract_features.bin的運(yùn)行參數(shù)為

extract_features.bin $MODEL $PROTOTXT $LAYER $LMDB_OUTPUT_PATH $BATCHSIZE

上面不是執(zhí)行代碼,只是運(yùn)行參數(shù),不需要執(zhí)行上式。

下面給出第一個(gè)例子是提取特征并儲(chǔ)存。

(1) 安裝CAFFE的python依賴(lài)庫(kù),并使用以下兩個(gè)輔助文件把lmdb轉(zhuǎn)換為mat。在caffe 根目錄下創(chuàng)建feat_helper_pb2.py 和lmdb2mat.py,直接copy 下面的python程序即可。

cd caffe-root sudo gedit feat_helper_pb2.py sudo gedit lmdb2mat.py

需要添加的內(nèi)容如下
feat_helper_pb2.py:

# Generated by the protocol buffer compiler. DO NOT EDIT!from google.protobuf import descriptor from google.protobuf import message from google.protobuf import reflection from google.protobuf import descriptor_pb2 # @@protoc_insertion_point(imports)DESCRIPTOR = descriptor.FileDescriptor(name='datum.proto',package='feat_extract',serialized_pb='\n\x0b\x64\x61tum.proto\x12\x0c\x66\x65\x61t_extract\"i\n\x05\x44\x61tum\x12\x10\n\x08\x63hannels\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\x12\r\n\x05width\x18\x03 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\x12\r\n\x05label\x18\x05 \x01(\x05\x12\x12\n\nfloat_data\x18\x06 \x03(\x02')_DATUM = descriptor.Descriptor(name='Datum',full_name='feat_extract.Datum',filename=None,file=DESCRIPTOR,containing_type=None,fields=[descriptor.FieldDescriptor(name='channels', full_name='feat_extract.Datum.channels', index=0,number=1, type=5, cpp_type=1, label=1,has_default_value=False, default_value=0,message_type=None, enum_type=None, containing_type=None,is_extension=False, extension_scope=None,options=None),descriptor.FieldDescriptor(name='height', full_name='feat_extract.Datum.height', index=1,number=2, type=5, cpp_type=1, label=1,has_default_value=False, default_value=0,message_type=None, enum_type=None, containing_type=None,is_extension=False, extension_scope=None,options=None),descriptor.FieldDescriptor(name='width', full_name='feat_extract.Datum.width', index=2,number=3, type=5, cpp_type=1, label=1,has_default_value=False, default_value=0,message_type=None, enum_type=None, containing_type=None,is_extension=False, extension_scope=None,options=None),descriptor.FieldDescriptor(name='data', full_name='feat_extract.Datum.data', index=3,number=4, type=12, cpp_type=9, label=1,has_default_value=False, default_value="",message_type=None, enum_type=None, containing_type=None,is_extension=False, extension_scope=None,options=None),descriptor.FieldDescriptor(name='label', full_name='feat_extract.Datum.label', index=4,number=5, type=5, cpp_type=1, label=1,has_default_value=False, default_value=0,message_type=None, enum_type=None, containing_type=None,is_extension=False, extension_scope=None,options=None),descriptor.FieldDescriptor(name='float_data', full_name='feat_extract.Datum.float_data', index=5,number=6, type=2, cpp_type=6, label=3,has_default_value=False, default_value=[],message_type=None, enum_type=None, containing_type=None,is_extension=False, extension_scope=None,options=None),],extensions=[],nested_types=[],enum_types=[],options=None,is_extendable=False,extension_ranges=[],serialized_start=29,serialized_end=134, )DESCRIPTOR.message_types_by_name['Datum'] = _DATUMclass Datum(message.Message):__metaclass__ = reflection.GeneratedProtocolMessageTypeDESCRIPTOR = _DATUM# @@protoc_insertion_point(class_scope:feat_extract.Datum)# @@protoc_insertion_point(module_scope)

./lmdb2mat.py

import lmdb import feat_helper_pb2 import numpy as np import scipy.io as sio import timedef main(argv):lmdb_name = sys.argv[1]print "%s" % sys.argv[1]batch_num = int(sys.argv[2]);batch_size = int(sys.argv[3]);window_num = batch_num*batch_size;start = time.time()if 'db' not in locals().keys():db = lmdb.open(lmdb_name)txn= db.begin()cursor = txn.cursor()cursor.iternext()datum = feat_helper_pb2.Datum()keys = []values = []for key, value in enumerate( cursor.iternext_nodup()):keys.append(key)values.append(cursor.value())ft = np.zeros((window_num, int(sys.argv[4])))for im_idx in range(window_num):datum.ParseFromString(values[im_idx])ft[im_idx, :] = datum.float_dataprint 'time 1: %f' %(time.time() - start)sio.savemat(sys.argv[5], {'feats':ft})print 'time 2: %f' %(time.time() - start)print 'done!'if __name__ == '__main__':import sysmain(sys.argv)

備注:用 caffe 的 python 接口提取和保存特征到text文本下

features = net.blobs['conv5'].data # 提取卷積層 5 的特征 np.savetxt('conv5_feature.txt', features) # 將特征存儲(chǔ)到本文文件中

(2) 在caffe 根目錄下創(chuàng)建腳本文件extract_feature_example1.sh, 并執(zhí)行,將在examples/_temp文件夾下得到lmdb文件(features_conv1)和.mat文件(features_conv1.mat)

下載已經(jīng)生成的模型

sudo gedit ./examples/imagenet/get_caffe_reference_imagenet_model.sh

添加編輯內(nèi)容如下:

#!/usr/bin/env sh # This scripts downloads the caffe reference imagenet model # for ilsvrc image classification and deep feature extractionMODEL=caffe_reference_imagenet_model CHECKSUM=bf44bac4a59aa7792b296962fe483f2bif [ -f $MODEL ]; thenecho "Model already exists. Checking md5..."os=`uname -s`if [ "$os" = "Linux" ]; thenchecksum=`md5sum $MODEL | awk '{ print $1 }'`elif [ "$os" = "Darwin" ]; thenchecksum=`cat $MODEL | md5`fiif [ "$checksum" = "$CHECKSUM" ]; thenecho "Model checksum is correct. No need to download."exit 0elseecho "Model checksum is incorrect. Need to download again."fi fiecho "Downloading..."wget --no-check-certificate https://www.dropbox.com/s/n3jups0gr7uj0dv/$MODELecho "Done. Please run this command again to verify that checksum = $CHECKSUM." cd caffe-root sudo gedit extract_feature_example1.sh

需要添加的內(nèi)容如下:

#!/usr/bin/env sh # args for EXTRACT_FEATURE TOOL=./build/tools MODEL=./examples/imagenet/caffe_reference_imagenet_model #下載得到的caffe model PROTOTXT=./examples/_temp/imagenet_val.prototxt # 網(wǎng)絡(luò)定義 LAYER=conv1 # 提取層的名字,如提取fc7等 LEVELDB=./examples/_temp/features_conv1 # 保存的leveldb路徑 BATCHSIZE=10# args for LEVELDB to MAT DIM=290400 # 需要手工計(jì)算feature長(zhǎng)度 OUT=./examples/_temp/features_conv1.mat #.mat文件保存路徑 BATCHNUM=1 # 有多少個(gè)batch, 本例只有兩張圖, 所以只有一個(gè)batch$TOOL/extract_features.bin $MODEL $PROTOTXT $LAYER $LEVELDB $BATCHSIZE lmdb python lmdb2mat.py $LEVELDB $BATCHNUM $BATCHSIZE $DIM $OUT

執(zhí)行之后,

cd caffe-root sh extract_feature_example1.sh

你會(huì)在/examples/_temp/ 下發(fā)現(xiàn)多了兩個(gè)文件:文件夾 features_conv1,文件features_conv1.mat

如果執(zhí)行出現(xiàn)lmdb2mat.py的相關(guān)問(wèn)題,有可能是沒(méi)有安裝lmdb,可在caffe 根目錄下執(zhí)行下面的程式安裝。具體問(wèn)題具體分析。
Lmdb的安裝

pip install lmdb

特別備注:在執(zhí)行一次 sh extract_feature_example1.sh 之后,在文件夾 _temp里面就會(huì)出現(xiàn)文件夾features_conv1和文件features_conv1.mat。若再次執(zhí)行一次,會(huì)出現(xiàn)報(bào)錯(cuò),可將文件夾 _temp中的文件夾features_conv1和文件features_conv1.mat 都刪除,即可通過(guò)編譯。

(3). 參考UFLDL里的display_network函數(shù),對(duì)mat文件里的特征進(jìn)行可視化。
在/examples/_temp/ 中創(chuàng)建 display_network.m

cd ./examples/_temp/ sudo gedit display_network.m

需要添加的內(nèi)容如下:
display_network.m

function [h, array] = display_network(A, opt_normalize, opt_graycolor, cols, opt_colmajor) % This function visualizes filters in matrix A. Each column of A is a % filter. We will reshape each column into a square image and visualizes % on each cell of the visualization panel. % All other parameters are optional, usually you do not need to worry % about it. % opt_normalize: whether we need to normalize the filter so that all of % them can have similar contrast. Default value is true. % opt_graycolor: whether we use gray as the heat map. Default is true. % cols: how many columns are there in the display. Default value is the % squareroot of the number of columns in A. % opt_colmajor: you can switch convention to row major for A. In that % case, each row of A is a filter. Default value is false. warning off allif ~exist('opt_normalize', 'var') || isempty(opt_normalize)opt_normalize= true; endif ~exist('opt_graycolor', 'var') || isempty(opt_graycolor)opt_graycolor= true; endif ~exist('opt_colmajor', 'var') || isempty(opt_colmajor)opt_colmajor = false; end% rescale A = A - mean(A(:));if opt_graycolor, colormap(gray); end% compute rows, cols [L M]=size(A); sz=sqrt(L); buf=1; if ~exist('cols', 'var')if floor(sqrt(M))^2 ~= Mn=ceil(sqrt(M));while mod(M, n)~=0 && n<1.2*sqrt(M), n=n+1; endm=ceil(M/n);elsen=sqrt(M);m=n;end elsen = cols;m = ceil(M/n); endarray=-ones(buf+m*(sz+buf),buf+n*(sz+buf));if ~opt_graycolorarray = 0.1.* array; endif ~opt_colmajork=1;for i=1:mfor j=1:nif k>M, continue; endclim=max(abs(A(:,k)));if opt_normalizearray(buf+(i-1)*(sz+buf)+(1:sz),buf+(j-1)*(sz+buf)+(1:sz))=reshape(A(:,k),sz,sz)'/clim;elsearray(buf+(i-1)*(sz+buf)+(1:sz),buf+(j-1)*(sz+buf)+(1:sz))=reshape(A(:,k),sz,sz)'/max(abs(A(:)));endk=k+1;endend elsek=1;for j=1:nfor i=1:mif k>M, continue; endclim=max(abs(A(:,k)));if opt_normalizearray(buf+(i-1)*(sz+buf)+(1:sz),buf+(j-1)*(sz+buf)+(1:sz))=reshape(A(:,k),sz,sz)'/clim;elsearray(buf+(i-1)*(sz+buf)+(1:sz),buf+(j-1)*(sz+buf)+(1:sz))=reshape(A(:,k),sz,sz)';endk=k+1;endend endif opt_graycolorh=imagesc(array); elseh=imagesc(array,'EraseMode','none',[-1 1]); end axis image offdrawnow;warning on all

(4)在matlab里運(yùn)行以下代碼:
首先要進(jìn)入 /examples/_temp/ 在執(zhí)行下面的matlab程序。
在caffe 根目錄下輸入

cd ./examples/_temp/ matlab

在matlab 中輸入下面的命令

nsample = 3;num_output = 96; % conv1 % num_output = 256; % conv5 %num_output = 4096; % fc7load features_conv1.mat width = size(feats, 2); nmap = width / num_output;for i = 1 : nsamplefeat = feats(i, :);feat = reshape(feat, [nmap num_output]);figure('name', sprintf('image #%d', i));display_network(feat); end

執(zhí)行之后將會(huì)出現(xiàn)一下結(jié)果:




在python中讀取mat文件

在python中,使用scipy.io.loadmat()即可讀取mat文件,返回一個(gè)dict()。

import scipy.io matfile = 'features_conv1.mat' data = scipy.io.loadmat(matfile)

下面給出第二個(gè)例子:

(1) 在caffe 根目錄下創(chuàng)建腳本文件extract_feature_example2.sh, 并執(zhí)行,將在examples/_temp文件夾下得到lmdb文件(features_fc7)和.mat文件(features_fc7.mat)

cd caffe-root sudo gedit extract_feature_example2.sh

需要添加的內(nèi)容如下:

#!/usr/bin/env sh # args for EXTRACT_FEATURE TOOL=./build/tools MODEL=./models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel #下載得到的caffe model PROTOTXT=./examples/_temp/imagenet_val.prototxt # 網(wǎng)絡(luò)定義 LAYER=fc7 # 提取層的名字,如提取fc7等 LEVELDB=./examples/_temp/features_fc7 # 保存的leveldb路徑 BATCHSIZE=10# DIM=290400 # feature長(zhǎng)度,conv1 # DIM=43264 # conv5 # args for LEVELDB to MAT DIM=4096 # 需要手工計(jì)算feature長(zhǎng)度 OUT=./examples/_temp/features_fc7.mat #.mat文件保存路徑 BATCHNUM=1 # 有多少個(gè)batch, 本例只有兩張圖, 所以只有一個(gè)batch$TOOL/extract_features.bin $MODEL $PROTOTXT $LAYER $LEVELDB $BATCHSIZE lmdb python lmdb2mat.py $LEVELDB $BATCHNUM $BATCHSIZE $DIM $OUT

執(zhí)行之后,

cd caffe-root sh extract_feature_example2.sh

執(zhí)行之后,你會(huì)在 examples/_temp/ 下多出一個(gè)文件夾 features-fc7,里面含有data.mdb, lock.mdb 兩個(gè)文件,還會(huì)得到features-fc7.mat,如下圖所示

(2). 參考UFLDL里的display_network函數(shù),對(duì)mat文件里的特征進(jìn)行可視化。
在/examples/_temp/ 中創(chuàng)建 display_network.m

cd ./examples/_temp/ sudo gedit display_network.m

(3)在matlab里運(yùn)行以下代碼:
首先要進(jìn)入 /examples/_temp/ 在執(zhí)行下面的matlab程序。
在caffe 根目錄下輸入

cd ./examples/_temp/ matlab

在matlab 中輸入下面的命令

nsample = 2; % num_output = 96; % conv1 % num_output = 256; % conv5 num_output = 4096; % fc7load features_fc7.mat width = size(feats, 2); nmap = width / num_output;for i = 1 : nsamplefeat = feats(i, :);feat = reshape(feat, [nmap num_output]);figure('name', sprintf('image #%d', i));display_network(feat); end

執(zhí)行之后將會(huì)出現(xiàn)一下結(jié)果:

在python中讀取mat文件

在python中,使用scipy.io.loadmat()即可讀取mat文件,返回一個(gè)dict()。

import scipy.io
matfile = ‘features_fc7.mat’
data = scipy.io.loadmat(matfile)

使用自己的網(wǎng)絡(luò)

只需把前面列出來(lái)的文件與參數(shù)修改成自定義的即可。

使用Model Zoo里的網(wǎng)絡(luò)

根據(jù) https://github.com/BVLC/caffe/wiki/Model-Zoo 的介紹,選擇自己所需的網(wǎng)絡(luò),并下載到相應(yīng)位置即可。

如VGG-16:

./scripts/download_model_from_gist.sh 211839e770f7b538e2d8 mv ./models/211839e770f7b538e2d8 ./models/VGG_ILSVRC_16_layers ./scripts/download_model_binary.py ./models/VGG_ILSVRC_16_layers

總結(jié)

以上是生活随笔為你收集整理的caffe 提取特征并可视化(已测试可执行)及在线可视化的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

国外成人在线视频网站 | 亚洲一级黄色大片 | 综合久久网 | 中文字幕精品一区二区精品 | 99综合影院在线 | 亚洲永久精品一区 | av一级片在线观看 | 国产美女无遮挡永久免费 | 婷婷久久久 | 成人av一区二区三区 | 91爱爱免费观看 | 国产成人a亚洲精品 | 91精品久久久久久久99蜜桃 | 久久电影中文字幕视频 | 国产精品国产三级国产aⅴ入口 | 丁香婷婷综合五月 | 免费在线 | 亚洲精品久久久久久国 | 国产成人久 | 99热这里只有精品久久 | 久久综合国产伦精品免费 | 91九色成人蝌蚪首页 | 久久精品视频网 | 欧美小视频在线 | 国产在线色 | 黄色免费在线视频 | 亚洲精品视频中文字幕 | 天天综合网~永久入口 | 亚洲精品tv久久久久久久久久 | www.黄色片网站 | 欧洲视频一区 | www免费看片com| 色哟哟国产精品 | 最近中文字幕在线中文高清版 | 国产第一页在线播放 | 亚洲电影一区二区 | 日韩视频中文 | 99久久精品电影 | 一区二区三区在线观看 | 中文字幕久久精品一区 | 色五月情| 亚洲精品乱码久久久久久按摩 | 亚洲成aⅴ人在线观看 | 黄色毛片视频免费观看中文 | 国产一区欧美在线 | 国产精品久久久久久妇 | 亚洲一区网站 | 国产精品久久久久毛片大屁完整版 | 欧美日韩视频免费 | 综合久久久久久 | 久久精品人人做人人综合老师 | 亚洲高清久久久 | 欧美日韩成人 | 久草在线免费看视频 | 久久精品1区| 毛片一级免费一级 | 91免费试看| 狠狠狠狠干 | 色播五月激情五月 | 国产美女视频免费观看的网站 | av大全免费在线观看 | 91最新网址 | 国产又粗又硬又爽视频 | 国产最顶级的黄色片在线免费观看 | 久久久久久网址 | 国产精品网站一区二区三区 | 日韩欧美xxx | 日本公乱妇视频 | 欧美成人在线免费观看 | 日韩伦理片一区二区三区 | 一性一交视频 | 五月激情在线 | 国内精品久久久久久久影视简单 | 欧美国产亚洲精品久久久8v | 日韩欧美在线综合网 | 中文字幕久久久精品 | 狠狠婷婷 | 99精品欧美一区二区三区黑人哦 | 久久精品91久久久久久再现 | 91视频成人免费 | 97精品在线视频 | av在线电影网站 | 日韩欧美视频一区二区 | 亚洲高清在线精品 | 日韩精品影视 | 国产亚洲aⅴaaaaaa毛片 | 中文字幕亚洲高清 | 亚洲乱码在线 | 婷婷五月色综合 | 日韩剧情 | 日韩剧 | 久久久噜噜噜久久久 | 国产精品美女久久久久久久久久久 | 色七七亚洲影院 | 国产91影视 | 奇米影视四色8888 | 亚洲成av人片在线观看www | 国产在线第三页 | 婷婷六月综合亚洲 | 国产精品久久久久久久久搜平片 | 97在线观看免费观看 | 日韩av免费观看网站 | 久草在线视频新 | 欧美日韩精品免费观看 | 天天草天天色 | 久久久久久久久久久免费视频 | 亚洲精品九九 | 51久久夜色精品国产麻豆 | 国产午夜三级一区二区三桃花影视 | 一级片在线 | 久久久国产网站 | 中文字幕中文字幕在线中文字幕三区 | 亚洲狠狠操 | 二区三区精品 | 天天干.com | 麻豆av一区二区三区在线观看 | 中文字幕欧美日韩va免费视频 | 亚洲精品456在线播放 | 午夜精品久久久久久中宇69 | 国产手机在线观看 | 激情综合五月婷婷 | 欧美人人 | 亚洲五月六月 | 国产视频久久久 | 欧美国产日韩在线视频 | 免费在线观看av片 | 波多野结衣综合网 | av大片免费| 日日射av| 久久国产一区二区 | h视频在线看 | 国产亚洲精品久久久久秋 | 成年在线观看 | 久久久久久片 | 91av原创| 精品国产乱码 | 日韩高清片 | 香蕉视频国产在线观看 | 日韩在线免费电影 | 国产在线精品福利 | 97碰在线| 国产精品中文久久久久久久 | 人人舔人人射 | 四虎在线视频 | 黄色片网站 | 人人搞人人爽 | 久久久久国产免费免费 | 日韩a在线观看 | 久久精品视频在线观看免费 | 精品福利在线 | 最新色站 | 亚洲精品国产精品乱码不99热 | 91av免费看 | 91黄色小视频 | 999久久 | 日韩欧美在线综合网 | 国产日产高清dvd碟片 | 91色蜜桃 | 91久久国产自产拍夜夜嗨 | 亚洲欧美精品一区 | 在线亚洲免费视频 | 一区二区视频在线看 | 久久一区二区三区国产精品 | 久草在线视频看看 | 久久精品在线免费观看 | 四虎国产永久在线精品 | 精品国产成人av在线免 | 在线观看www.| 中文字幕久久精品 | 久久久国产电影 | 天天爽夜夜爽精品视频婷婷 | 国产午夜视频在线观看 | 国产亚洲婷婷免费 | 综合激情网 | 在线观看免费视频你懂的 | 亚洲精品美女视频 | 18岁免费看片 | 91久久精品一区二区三区 | 91传媒在线看 | 日日干激情五月 | 国产小视频你懂的在线 | 九九九热精品免费视频观看网站 | 成人91在线 | 久久视频精品 | 最新超碰在线 | 亚洲热久久 | 在线视频在线观看 | 九九导航 | 国产97在线看 | 色婷婷五 | a天堂中文在线 | 天堂av免费看 | 在线亚洲欧美日韩 | 国产精品久久 | 久久久久久激情 | 黄色片免费看 | 久久久久久久精 | 91字幕 | 97超碰伊人 | 免费成人av网站 | 一本一本久久a久久精品综合 | 91视频在线免费看 | 又黄又爽又湿又无遮挡的在线视频 | 天天色天天射天天干 | se视频网址 | 99视屏| 亚洲精品一区二区久 | 亚洲人成人99网站 | 亚洲综合成人婷婷小说 | 免费在线中文字幕 | 国产一级大片在线观看 | 国产精品精品国产婷婷这里av | 久久免费精品国产 | 超碰97网站| 亚洲综合激情小说 | 91成版人在线观看入口 | 天天干天天射天天操 | 欧美一区二区三区在线观看 | 69久久夜色精品国产69 | 日韩xxx视频 | 精品一区中文字幕 | 人人干人人添 | 欧美日韩亚洲在线 | 91久久人澡人人添人人爽欧美 | 久久天天躁夜夜躁狠狠85麻豆 | 日韩资源在线观看 | 天天操操操操操操 | 国产精品视频永久免费播放 | 国产视频亚洲 | 青青河边草免费观看 | 日韩h在线观看 | 久久精品欧美一 | 久久你懂的 | 日韩在线免费看 | 91av短视频 | 色91在线视频 | 亚洲一区日韩 | www久久| 久久高清视频免费 | 看国产黄色片 | 国产一区免费观看 | 国产精品福利在线播放 | 五月天婷婷综合 | 日韩精品久久久久久中文字幕8 | 亚洲精品在线观看中文字幕 | 日日草av| 国产色网 | 日日夜av| 国产91丝袜在线播放动漫 | 一区二区三区在线免费观看视频 | 欧美精品一区二区在线观看 | 五月天丁香| 精品国模一区二区 | 91丝袜美腿| 久久九九久久精品 | 久久久久久看片 | 伊人久久国产 | 久久久久久久久久久网站 | 在线看小早川怜子av | 国产日韩欧美在线 | 少妇激情久久 | 国产精品igao视频网网址 | 综合网色| 国产欧美精品xxxx另类 | 麻豆久久一区二区 | 国产伦理久久精品久久久久_ | 首页国产精品 | 中文字幕有码在线观看 | 97超碰人人模人人人爽人人爱 | 一区二区三区日韩在线 | 成人在线视频网 | 欧美aa在线观看 | 国产又粗又猛又黄又爽 | 国产免码va在线观看免费 | 亚洲三级黄色 | 国产一性一爱一乱一交 | 亚洲国产精品女人久久久 | 日韩av电影一区 | 玖玖在线看 | 在线观看日本高清mv视频 | 欧美极品一区二区三区 | 久久91久久久久麻豆精品 | 日韩色av色资源 | 丁香六月在线观看 | 黄a在线 | 国产91九色视频 | 91久久久久久国产精品 | 激情小说网站亚洲综合网 | 成人h电影在线观看 | 欧美国产精品久久久久久免费 | 天天色天天综合 | 成人国产精品一区 | 天天久久夜夜 | www.久久婷婷 | 国产婷婷久久 | 黄色成人小视频 | 亚洲视频专区在线 | 在线影院 国内精品 | 亚洲爱爱视频 | 伊人天天狠天天添日日拍 | 国产日韩欧美网站 | 国产高清av免费在线观看 | 日本精品二区 | 99爱精品视频 | 欧美日韩3p| 国产精品美女久久久久久免费 | 久久国产精品一区二区三区 | 97超级碰碰 | 成人黄色大片 | 国产一级淫片免费看 | 草在线| 黄色毛片网站在线观看 | av免费在线看网站 | 最新婷婷色 | 五月婷婷综合在线 | 久久精品99国产精品日本 | 在线黄色av | 91精品国产欧美一区二区成人 | 久久久久久久久久网站 | 国产黄 | 欧美黑吊大战白妞欧美 | 精品91| 69夜色精品国产69乱 | 97视频在线| 五月天激情综合网 | a极黄色片 | 久久狠狠干 | 亚洲资源在线 | www·22com天天操 | 国产精品久久久久久69 | 精品国产123 | 久久综合狠狠综合久久综合88 | 成x99人av在线www | 国产精品久久久区三区天天噜 | 亚洲综合在线播放 | 日日干日日色 | 天天插天天狠 | 激情五月看片 | 国产高清不卡av | 亚洲日韩欧美视频 | 日本精品一二区 | 黄色精品一区二区 | 狠狠狠色 | 国产精品久久中文字幕 | 黄色免费网站大全 | 久久精品欧美一区二区三区麻豆 | 亚洲国产成人在线 | 久草在线观看资源 | 九九久久久久久久久激情 | 久久久电影 | 亚洲精品欧美专区 | 国产手机免费视频 | 成人一级片视频 | 日韩在线观看视频免费 | 日韩午夜网站 | 免费黄a| 日韩有码在线播放 | 四虎海外影库www4hu | 中文字幕免费播放 | 亚洲欧美在线视频免费 | 日本中文字幕网址 | 99久久婷婷国产一区二区三区 | 久久99精品国产99久久 | 日韩欧美在线观看一区 | 精品视频成人 | 一本—道久久a久久精品蜜桃 | 香蕉视频最新网址 | 亚洲精品在线观看中文字幕 | 久久天天拍 | 欧美一二三区播放 | 九九九九热精品免费视频点播观看 | 日日麻批40分钟视频免费观看 | 五月婷婷,六月丁香 | 91久色蝌蚪 | 国产在线视频一区二区 | 在线久热 | 久青草电影 | 久久少妇av | 在线观看国产v片 | 久久国产精品99久久久久 | 日韩二级毛片 | 91看片在线播放 | 成人夜晚看av | 亚洲男男gⅴgay双龙 | 伊人官网 | 国色天香在线 | 天天干天天操天天干 | 三级黄色在线观看 | av网站播放 | av线上看 | 粉嫩av一区二区三区入口 | 最近中文字幕完整视频高清1 | 午夜精品视频福利 | 日韩午夜在线播放 | 国产99久久精品 | 久久欧美在线电影 | 伊人丁香| 九九热中文字幕 | 亚洲精品免费在线观看视频 | 天天操天天舔天天干 | 992tv在线观看网站 | 天天色成人 | 丁香六月在线观看 | 人人爽影院 | 综合久久久久久久 | 97精品国产一二三产区 | 人人干干人人 | 色综合久久精品 | 欧美日韩一区二区三区在线免费观看 | 国产精品一区免费在线观看 | 综合激情婷婷 | 久久无码精品一区二区三区 | 天天综合成人网 | 日本中文字幕在线电影 | 婷婷视频 | 色婷婷激情四射 | 福利视频第一页 | 在线观看中文字幕一区二区 | 亚洲精品乱码久久久久久写真 | 手机看片中文字幕 | 在线观看久草 | 91免费观看视频网站 | 成人av免费在线看 | 人人艹人人 | 亚洲精选视频在线 | 超碰精品在线 | 国产一区二区综合 | 成人免费看片网址 | 伊人亚洲精品 | 免费毛片一区二区三区久久久 | 日韩精品大片 | 91日韩免费| 久久一久久 | 国产精品18久久久久vr手机版特色 | 高清不卡一区二区三区 | 久久色在线播放 | 国产尤物在线视频 | 91视频成人免费 | 五月开心色 | 国产一级免费观看视频 | 欧美日韩国产网站 | 美女视频永久黄网站免费观看国产 | 高清av不卡| 超碰在线成人 | 婷婷黄色片| 91热在线 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 午夜精品视频免费在线观看 | 天天曰天天 | 天天干天天看 | 波多野结衣在线视频一区 | 香蕉97视频观看在线观看 | 婷婷亚洲五月色综合 | 国产精品免费一区二区三区 | 亚洲精品乱码久久久久久蜜桃不爽 | 992tv人人网tv亚洲精品 | 黄色影院在线播放 | 国产视频网站在线观看 | www.久久免费| 国产精品成人久久久 | 午夜影院一级片 | 国产麻豆剧传媒免费观看 | 日本护士撒尿xxxx18 | 国产成人久久精品亚洲 | 人人添人人澡人人澡人人人爽 | 免费男女羞羞的视频网站中文字幕 | 日本精品视频在线观看 | 久久久免费视频播放 | 97超碰.com| 天天干视频在线 | 麻豆视频免费在线播放 | 亚洲精品久久在线 | 亚洲第一色 | 最新av网址大全 | 国产无遮挡猛进猛出免费软件 | 日韩精品无码一区二区三区 | 黄色毛片视频免费观看中文 | 亚洲国产视频网站 | www黄| 亚洲成av人片在线观看香蕉 | 久久av观看 | 日本中文字幕高清 | av 一区二区三区 | 亚洲伦理精品 | 综合五月 | 国产成人精品久久久久 | 欧美色图88 | 国产精品2019 | 国产一卡二卡在线 | 日韩精品在线看 | 99精品视频在线播放免费 | 国产视频一区在线播放 | 日韩在线视频免费播放 | 麻豆视频网址 | 天天爱天天操 | 久久精品精品 | 永久免费av在线播放 | 亚洲日韩中文字幕 | 免费观看黄 | 国产婷婷视频在线 | 91爱看片| 成人黄色短片 | 成人wwwxxx视频 | 欧美爽爽爽 | 午夜久久久久久久久久久 | 国产精品国产三级在线专区 | 成人欧美亚洲 | 久精品视频| 天天看天天干 | 91大神dom调教在线观看 | 国产99在线播放 | 欧美激情h| 岛国大片免费视频 | 91喷水| 91禁看片 | 日韩精品中文字幕久久臀 | 久久久久久久久久影视 | 久久久久久久久久久网 | 久av在线| 亚洲欧美日韩精品久久奇米一区 | 国产精品成人自产拍在线观看 | 久久精品亚洲综合专区 | 亚洲国产成人精品在线观看 | av在线色 | 99激情网 | 天天天天射 | 国产日韩中文字幕 | 久久精品79国产精品 | 久久久久成人精品免费播放动漫 | 天堂视频中文在线 | av综合站 | 国产一区观看 | 亚洲天堂va | 五月婷婷播播 | 国产精品免费人成网站 | 91在线播放综合 | 日韩av专区| 在线国产中文 | 91精品亚洲影视在线观看 | 亚洲h在线播放在线观看h | 精品一区在线看 | 成年人免费电影 | 久久人人添人人爽添人人88v | 少妇bbb搡bbbb搡bbbb′ | 久久96国产精品久久99软件 | 99re8这里有精品热视频免费 | 精品国产免费一区二区三区五区 | 麻豆国产精品va在线观看不卡 | 国产高清免费av | 亚洲丝袜一区二区 | 精品网站999www| 麻豆av一区二区三区在线观看 | 国产精品k频道 | 国产精品久久久av | 狠狠操天天射 | 国产一级电影在线 | www.久久91| 国产一级免费在线观看 | 国产麻豆果冻传媒在线观看 | 最新极品jizzhd欧美 | 天天干天天干 | 亚洲视频电影在线 | 久草视频在线免费播放 | 国产剧情av在线播放 | 日本久久久久久久久久久 | 国产色婷婷精品综合在线手机播放 | 国产高清成人 | 99精品久久久久 | 99精品视频免费在线观看 | 最新av在线免费观看 | 在线播放第一页 | 日韩国产精品毛片 | 97香蕉久久国产在线观看 | 国产夫妻av在线 | 91免费高清视频 | 久久精品久久久精品美女 | 久久免费在线视频 | 伊人六月 | 日本夜夜草视频网站 | 97精品免费视频 | 91一区在线观看 | 毛片基地黄久久久久久天堂 | 国产色视频网站2 | 韩国一区视频 | 国产精品久久久久久久久久久久久久 | 最近中文字幕在线播放 | 亚洲伦理一区二区 | 福利视频一区二区 | 成人国产精品电影 | 国产精品久久久久久电影 | 日韩一区视频在线 | 久久资源在线 | 免费人人干 | 国产喷水在线 | 日韩系列 | 麻豆久久精品 | 国产亚洲精品免费 | 亚洲影院天堂 | 蜜臀av.com | 91人人爽久久涩噜噜噜 | 成人高清在线 | 日本久久不卡视频 | 一级黄色毛片 | 91成人在线观看喷潮 | 久草五月| 日韩视频在线一区 | 免费网站v| 精品美女久久久久久免费 | 天天爱天天舔 | 亚洲精品国产精品国 | 香蕉日日 | 亚洲va在线va天堂 | 丁五月婷婷 | 天天操夜夜摸 | 欧美另类交人妖 | 日韩激情av在线 | 欧美一级片免费 | 国产精品a成v人在线播放 | 国产精品一区二区三区观看 | 人人插人人费 | 国产精品视频久久久 | www.黄色网.com | 极品美女被弄高潮视频网站 | wwwwww色| 狠狠色丁香 | 尤物九九久久国产精品的分类 | 人人爽人人爱 | 日韩免费电影一区二区 | 黄色成人免费电影 | 波多野结衣视频一区二区三区 | 婷婷丁香花 | 午夜 免费| 欧美一区二区免费在线观看 | 日日夜夜精品免费观看 | 色综合久久88色综合天天 | 国产色久 | 午夜精品久久久久久久久久久久久久 | 成人黄在线观看 | 97av视频 | 91精品国产99久久久久 | 日韩免费av网址 | 午夜色场 | 国产无遮挡又黄又爽在线观看 | 香蕉影院在线播放 | 国产精品9999久久久久仙踪林 | 欧美狠狠色 | 91精品在线麻豆 | 国产成人一区二区三区电影 | 日韩亚洲在线观看 | wwwav视频| 天天色天天爱天天射综合 | 天堂av免费观看 | 欧美日韩久久久 | 91高清免费在线观看 | 91精品国自产在线偷拍蜜桃 | 日韩有码专区 | 91视频免费 | 亚洲精品国产精品99久久 | 美女久久久 | 久久99视频精品 | 亚洲黄色免费在线 | 91一区啪爱嗯打偷拍欧美 | 亚洲美女视频网 | 日本中文在线观看 | 四虎在线免费视频 | 天天干天天做天天操 | 婷婷激情综合网 | 亚洲做受高潮欧美裸体 | 天天爱天天爽 | 亚洲成av人片在线观看 | 久久黄色免费观看 | 国产又粗又硬又长又爽的视频 | 国产精品免费一区二区三区 | 色久综合| 日韩有码在线观看视频 | 96亚洲精品久久 | 最近的中文字幕大全免费版 | 日韩在线观看a | 911国产精品 | 天天干夜夜操视频 | 91在线看片| 精品爱爱 | 日本中文字幕在线电影 | 成人免费网站视频 | 亚洲综合视频在线播放 | 亚洲欧美日韩精品一区二区 | 亚洲精品自在在线观看 | 国产精品免费观看视频 | 97在线精品 | 国产自在线观看 | 综合伊人av | av片无限看 | 欧美成a人片在线观看久 | 91视频免费看网站 | 国产成人av综合色 | 久久天堂网站 | 一区二区三区播放 | 在线免费观看黄 | 国产精品黄网站在线观看 | 日韩午夜电影 | 中文字幕av免费观看 | 久久免费av电影 | 免费观看一区二区 | 综合伊人久久 | 欧美一级久久久 | 欧美精品在线观看免费 | 久久免费精品一区二区三区 | 少妇精品久久久一区二区免费 | 国产精品久久久久久久久久久久午 | 九九九九免费视频 | 香蕉视频亚洲 | 日韩3区| 欧美日韩高清一区二区 | 国产精品视频永久免费播放 | 午夜骚影 | 最近中文字幕mv免费高清在线 | 这里只有精品视频在线 | 天天综合色网 | 国产亚洲精品久久 | 久久久综合九色合综国产精品 | 激情中文字幕 | 日日干夜夜爱 | 国产精品理论片在线播放 | 久久综合九色综合欧美就去吻 | 国产 一区二区三区 在线 | 天天综合人人 | 精品久久久久久久久久久久久久久久 | a在线一区| 亚洲一级片在线观看 | 日韩免费电影一区二区 | 成人黄色免费观看 | 狠狠操精品 | 成人av日韩| 开心激情五月婷婷 | 不卡的av片 | 国产黄| www99久久 | 久久天天躁夜夜躁狠狠躁2022 | 五月婷在线观看 | av免费网站观看 | 日韩免费三级 | 三级在线视频观看 | 91视频免费网站 | 亚洲精品乱码白浆高清久久久久久 | 五月激情在线 | 中文字幕av一区二区三区四区 | 久久久久人人 | 成人午夜av电影 | 中文久草 | 一区二区视频在线播放 | 香蕉视频国产在线观看 | 久久短视频| 国产999精品视频 | 在线免费观看视频一区 | 中文字幕一区二区三区久久 | 亚洲最新av | 激情影音先锋 | 亚色视频在线观看 | 国产精品毛片久久久久久 | 五月天.com | 日韩在线观看一区二区三区 | 精品视频国产一区 | 日韩av在线看 | 日韩午夜在线观看 | 中文字幕av免费观看 | 97在线观看免费高清 | 99在线视频播放 | 久久久久久久久久久福利 | 国产一区高清在线观看 | 国产精品麻豆99久久久久久 | 五月婷在线| 亚洲精品xxx | 视频一区在线免费观看 | 深夜精品福利 | 国产精品久久久久久久久久妇女 | 久久久久婷 | 女人18片毛片90分钟 | av亚洲产国偷v产偷v自拍小说 | 91污视频在线观看 | 99精品一级欧美片免费播放 | 91精品久久香蕉国产线看观看 | 久久99亚洲网美利坚合众国 | 久久久久久久久久久久电影 | 婷婷丁香花 | 免费视频三区 | 精品一区二区精品 | 国产午夜麻豆影院在线观看 | 久久国产精品视频免费看 | 亚洲国产精品va在线看 | 日韩免费观看一区二区 | 亚洲成人av电影在线 | 麻豆视频免费在线观看 | 国产久草在线 | 91av视频| 精品国产一区二区三区噜噜噜 | 国产免费亚洲 | 精品久久久久久亚洲综合网 | 日日摸日日爽 | 国产成人亚洲在线观看 | 亚洲国产中文字幕在线视频综合 | 不卡中文字幕av | 国产91免费在线 | 字幕网在线观看 | 日韩电影中文字幕在线观看 | 特级西西444www高清大视频 | 美女在线免费观看视频 | 99久久日韩精品免费热麻豆美女 | 九九九免费视频 | 国产永久网站 | 99久久精品久久久久久清纯 | 久久久www成人免费毛片麻豆 | 嫩模bbw搡bbbb搡bbbb | 国产一在线精品一区在线观看 | 国产亚洲一区二区三区 | 中文字幕乱视频 | 国产999精品久久久久久麻豆 | 国产99久久九九精品免费 | 久久伦理影院 | 国产一区二区高清不卡 | 国产精品白虎 | 免费欧美精品 | 免费人成网 | 一级性av | 九九在线视频免费观看 | 欧美精品乱码久久久久久按摩 | 91视频免费观看 | 美女视频免费一区二区 | 婷婷激情在线 | 中文成人字幕 | 超碰在线97免费 | 亚洲精品伦理在线 | 成人一级 | 久久三级视频 | 国产污视频在线观看 | 国产91精品久久久久久 | 久久经典国产 | 亚洲高清激情 | 亚洲性少妇性猛交wwww乱大交 | 国内精品久久久久影院优 | 国产精品国产三级国产aⅴ9色 | 91日韩在线播放 | 色综合久久99 | 1000部国产精品成人观看 | 欧美精品一区二区免费 | 久久久久久麻豆 | 韩国一区二区在线观看 | 国产三级精品在线 | 日韩免费观看一区二区三区 | 91在线视频观看 | 国产成人精品久久久久 | 欧美巨大荫蒂茸毛毛人妖 | av福利在线免费观看 | 久久久久久久综合色一本 | 欧美看片| 人人看人人做人人澡 | 久久任你操 | 日韩区视频 | 国产精品 视频 | 韩国精品在线 | 蜜桃传媒一区二区 | 91伊人久久大香线蕉蜜芽人口 | 亚洲视频在线免费看 | 亚洲精品久久激情国产片 | 这里只有精品视频在线观看 | 亚洲精品777 | 97超碰人人模人人人爽人人爱 | 在线观看av片 | 福利视频一区二区 | 日韩精品一区二区三区三炮视频 | 国产亚洲成人网 | 特黄免费av | 国产精品麻豆果冻传媒在线播放 | 99精品国产一区二区三区不卡 | 一区二区三区四区不卡 | 成人毛片一区二区三区 | av日韩不卡 | 国产一二三四在线视频 | 亚洲毛片一区二区三区 | 国产九色在线播放九色 | 在线只有精品 | 韩国精品在线观看 | 亚洲国产精品va在线看黑人动漫 | 久久免费视频国产 | 久久久久久久国产精品 | 狠狠色丁香婷婷综合视频 | 精品欧美一区二区三区久久久 | 99久久久| 亚洲欧美婷婷六月色综合 | 免费成人av | 中文字幕在线日 | 久久视奸 | 精品国产伦一区二区三区观看方式 | 久久av不卡 | 亚洲第一中文网 | 国产精品一区二区美女视频免费看 | 国产黑丝一区二区三区 | 婷婷五月在线视频 | 久久天天躁夜夜躁狠狠躁2022 | 久久综合亚洲鲁鲁五月久久 | 久久精品视频中文字幕 | 欧美精品久久人人躁人人爽 | 99久久精品无免国产免费 | 欧美日韩精品在线观看视频 | 国产区av在线 | 国产视频2区 | 97精品国产97久久久久久 | 亚洲影视九九影院在线观看 | 婷婷新五月 | 中文永久免费观看 | 久久久精品日本 | 超碰午夜 | 99r在线视频 | 国产日产高清dvd碟片 | 天天色天天操综合 | 91色视频| 日韩在线网 | 久久久国产在线视频 | 日韩视频免费播放 | 韩国一区二区三区在线观看 | 久久99亚洲热视 | 九九日韩 | 一级免费观看 | 国产精品久久久久久久久毛片 | 亚洲人成综合 | 免费久久片| 国产高清免费在线观看 | 天天射天天干天天爽 | 在线 国产 亚洲 欧美 | 黄色一级大片免费看 | 一级黄色在线免费观看 | 亚洲精品日韩一区二区电影 | 亚洲综合精品在线 | 国产成人亚洲在线观看 | 午夜123| 欧美国产日韩久久 | 99精品黄色片免费大全 | 人人插人人艹 | 久久人人射 | 久久午夜网| 天天插伊人| 欧美韩国在线 | 在线国产福利 | 亚洲 成人 欧美 | 久久精品免费 | 在线成人免费电影 | 91国内在线视频 | 中文字幕在线影视资源 | 国产精品一区二区在线 | 在线观看视频国产一区 | 欧美黑人巨大xxxxx | 97国产小视频 | 国产在线更新 | 高清av中文在线字幕观看1 | 69中文字幕 | av电影亚洲 | 少妇搡bbbb搡bbb搡忠贞 | 97视频亚洲 | 国产一级二级三级在线观看 | www最近高清中文国语在线观看 | 亚洲无吗av | 韩日av在线| 99在线观看视频网站 | aⅴ精品av导航 | 欧美日韩伦理一区 | 91精品久久久久久综合乱菊 | 国产精品9999久久久久仙踪林 | 日韩国产精品久久久久久亚洲 | 成年人国产视频 | 99精品久久久久 | 国产精品视频线看 | 国产四虎在线 | 久久精品国产亚洲aⅴ | 狠狠色噜噜狠狠狠狠 | 久久五月天婷婷 | 综合激情 | 亚洲精品美女久久久久 | 亚洲夜夜综合 | 在线日韩中文 | 三上悠亚一区二区在线观看 | 中文字幕亚洲综合久久五月天色无吗'' | av丝袜在线 | 狠狠地日 | 色中射 | 亚洲精品玖玖玖av在线看 | 大胆欧美gogo免费视频一二区 | 亚洲成人国产精品 | 91网站观看 | 成年人在线免费看视频 | 91香蕉视频好色先生 | 欧美天天综合 | 成人教育av | 麻豆精品91 | 国产人成免费视频 | 国产精品成人免费精品自在线观看 | 天天色天天爱天天射综合 | 中文一区在线观看 | 久久夜色精品国产欧美乱极品 | 欧美日比视频 |