久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

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

生活随笔

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

编程问答

【Pytorch神经网络实战案例】29 【代码汇总】GitSet模型进行步态与身份识别(CASIA-B数据集)

發(fā)布時(shí)間:2024/7/5 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Pytorch神经网络实战案例】29 【代码汇总】GitSet模型进行步态与身份识别(CASIA-B数据集) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

1 GaitSet_DataLoader.py

import numpy as np # 引入基礎(chǔ)庫(kù) import os import torch.utils.data as tordata from PIL import Image from tqdm import tqdm import random# 1.1定義函數(shù),加載文件夾的文件名稱# load_data函數(shù), 分為3個(gè)步驟:# def load_data(dataset_path,imgresize,label_train_num,label_shuffle): # 完成了整體數(shù)據(jù)集的封裝# 主要分為三個(gè)步驟# ①以人物作為標(biāo)簽,將完整的數(shù)據(jù)集分為兩部分,分別用于訓(xùn)練和測(cè)試。# ②分別根據(jù)訓(xùn)練集和測(cè)試集中的人物標(biāo)簽遍歷文件夾,獲得對(duì)應(yīng)的圖片文件名稱。# ③用torch.utils.data接口將圖片文件名稱轉(zhuǎn)化為數(shù)據(jù)集, 使其能夠?qū)D片載入并返回。label_str = sorted(os.listdir(dataset_path)) # 以人物為標(biāo)簽# 將不完整的樣本忽略,只載入完整樣本removelist = ['005','026','037','079','109','088','068','048'] # 對(duì)數(shù)據(jù)集中樣本不完整的人物標(biāo)簽進(jìn)行過(guò)濾,留下可用樣本。代碼中不完整的人物標(biāo)簽可以通過(guò)調(diào)用load_dir函數(shù)來(lái)查找。for removename in removelist:if removename in label_str:label_str.remove(removename)print("label_str",label_str) # -start--------根據(jù)亂序標(biāo)志來(lái)處理樣本標(biāo)簽順序,并將其分為訓(xùn)練集和測(cè)試集----label_index = np.arange(len(label_str)) # 序列數(shù)組if label_shuffle:np.random.seed(0)# 打亂數(shù)組順序label_shuffle_index = np.random.permutation( len(label_str) )train_list = label_shuffle_index[0:label_train_num]test_list = label_shuffle_index[label_train_num:]else:train_list = label_index[0:label_train_num]test_list = label_index[label_train_num:] # -end--------根據(jù)亂序標(biāo)志來(lái)處理樣本標(biāo)簽順序,并將其分為訓(xùn)練集和測(cè)試集----print("train_list",test_list)# 加載人物列表中的圖片文件名稱data_seq_dir,data_label,meta_data = load_dir(dataset_path,train_list,label_str) # 代碼調(diào)用load_dir函數(shù),將標(biāo)簽列表所對(duì)應(yīng)的圖片文件名稱載入。①test_data_seq_dir, test_data_label, test_meta_data = load_dir(dataset_path, test_list, label_str) # 代碼調(diào)用load_dir函數(shù),將標(biāo)簽列表所對(duì)應(yīng)的圖片文件名稱載入。②# 將圖片文件名稱轉(zhuǎn)化為數(shù)據(jù)集train_source = DataSet(data_seq_dir, data_label, meta_data, imgresize,True) # 調(diào)用自定義類DataSet, 返回PyTorch支持的數(shù)據(jù)集對(duì)象,且只對(duì)訓(xùn)練集進(jìn)行緩存處理,測(cè)試集不做緩存處理。①# test數(shù)據(jù)不緩存test_source = DataSet(test_data_seq_dir, test_data_label, test_meta_data, imgresize, False) # 調(diào)用自定義類DataSet, 返回PyTorch支持的數(shù)據(jù)集對(duì)象,且只對(duì)訓(xùn)練集進(jìn)行緩存處理,測(cè)試集不做緩存處理。②return train_source,test_source# 1.2 實(shí)現(xiàn)load_dir函數(shù)加載圖片文件名稱, def load_dir(dataset_path,label_index,label_str):# 在load_dir函數(shù)中, 通過(guò)文件夾的逐級(jí)遍歷, 將標(biāo)簽列表中每個(gè)人物的圖片文件名稱載入。# 該函數(shù)返回3個(gè)列表對(duì)象:圖片文件名稱、圖片文件名稱對(duì)應(yīng)的標(biāo)簽索引、圖片文件名稱對(duì)應(yīng)的元數(shù)據(jù)(人物、行走條件、拍攝角度)data_seq_dir,data_label,meta_data = [],[],[]for i_label in label_index: # 獲取樣本個(gè)體label_path = os.path.join(dataset_path, label_str[i_label]) # 拼接目錄for _seq_type in sorted(os.listdir(label_path)): # 獲取樣本類型,普通條件、穿大衣、攜帶物品seq_type_path = os.path.join(label_path, _seq_type) # 拼接目錄for _view in sorted(os.listdir(seq_type_path)): # 獲取拍攝角度_seq_dir = os.path.join(seq_type_path, _view) # 拼接圖片目錄if len(os.listdir(_seq_dir)) > 0: # 有圖片data_seq_dir.append(_seq_dir) # 圖片目錄data_label.append(i_label) # 圖片目錄對(duì)應(yīng)的標(biāo)簽meta_data.append((label_str[i_label], _seq_type, _view))else:print("No files:", _seq_dir) # 輸出數(shù)據(jù)集中樣本不完整的標(biāo)簽。# 當(dāng)發(fā)現(xiàn)某個(gè)標(biāo)簽文件夾中沒(méi)有圖片時(shí)會(huì)將該標(biāo)簽輸出。在使用時(shí),可以先用load_dir函數(shù)將整個(gè)數(shù)據(jù)集遍歷一遍, 并根據(jù)輸出樣本不完整的標(biāo)簽,回填到第18行代碼。return data_seq_dir, data_label, meta_data # 返回結(jié)果# 1.3 實(shí)現(xiàn)定義數(shù)據(jù)類DataSet # PyTorch提供了一個(gè)torch.utils.data接口,可以用來(lái)對(duì)數(shù)據(jù)集進(jìn)行封裝。 # 在實(shí)現(xiàn)時(shí),只需要繼承torch.utils.data.Dataset類,并重載其__getitem__方法。 # 在使用時(shí),框架會(huì)向getitem方法傳入索引index。在__getitem__方法內(nèi)部,根據(jù)指定index加載數(shù)據(jù)。 class DataSet(tordata.DataLoader):def __init__(self,data_seq_dir,data_label,meta_data,imgresize,cache=True): # 初始化self.data_seq_dir = data_seq_dir # 存儲(chǔ)圖片文件名稱self.data = [None] * len(self.data_seq_dir) # 存放圖片self.cache = cache # 緩存標(biāo)志self.meta_data = meta_data # 數(shù)據(jù)的元信息self.data_label = np.asarray(data_label) # 存放標(biāo)簽self.imgresize = int(imgresize) # 載入的圖片大小self.cut_padding = int(float(imgresize)/64*10) # 指定圖片裁剪的大小def load_all_data(self): # 加載所有數(shù)據(jù)for i in tqdm(range(len(self.data_seq_dir))):self.__getitem__(i)def __loader__(self,path): # 讀取圖片并裁剪frame_imgs = self.img2xarray(path)/255.0# 將圖片橫軸方向的前10列與后10列去掉frame_imgs = frame_imgs[:,:,self.cut_padding:-self.cut_padding]return frame_imgsdef __getitem__(self, index): # 加載指定索引數(shù)據(jù)if self.data[index] is None: # 第一次加載data = self.__loader__(self.data_seq_dir[index])else:data = self.data[index]if self.cache : # 保存到緩存里self.data[index] = datareturn data,self.meta_data[index],self.data_label[index]def img2xarray(self,file_path): # 讀取指定路徑的數(shù)據(jù)frame_list = [] # 存放圖片數(shù)據(jù)imgs = sorted(list(os.listdir(file_path)))for _img in imgs : # 讀取圖片,放到數(shù)組里_img_path = os.path.join(file_path, _img)if os.path.isfile(_img_path):img = np.asarray(Image.open(_img_path).resize((self.imgresize, self.imgresize)))if len(img.shape) == 3: # 加載預(yù)處理后的圖片frame_list.append(img[..., 0])else:frame_list.append(img)return np.asarray(frame_list, dtype=np.float) # [幀數(shù),高,寬]def __len__(self): # 計(jì)算數(shù)據(jù)集長(zhǎng)度return len(self.data_seq_dir)# 1.5 實(shí)現(xiàn)自定義采集器 # 步態(tài)識(shí)別模型需要通過(guò)三元損失進(jìn)行訓(xùn)練。三元損失可以輔助模型特征提取的取向,使相同標(biāo)簽的特征距離更近,不同標(biāo)簽的特征距離更遠(yuǎn)。 # 由于三元損失需要輸入的批次數(shù)據(jù)中,要包含不同標(biāo)簽(這樣才可以使用矩陣方式進(jìn)行正/負(fù)樣本的采樣),需要額外對(duì)數(shù)據(jù)集進(jìn)行處理。 # 這里使用自定義采樣器完成含有不同標(biāo)簽數(shù)據(jù)的采樣功能。# torch.utils.data.sampler類需要配合torch.utils.data.Data Loader模塊一起使用。# torch.utils.data.DataLoader是PyTorch中的數(shù)據(jù)集處理接口。# 根據(jù)torch.utils.data.sampler類的采樣索引,在數(shù)據(jù)源中取出指定的數(shù)據(jù),并放到collate_fn中進(jìn)行二次處理,最終返回所需要的批次數(shù)據(jù)。# 實(shí)現(xiàn)自定義采樣器TripletSampler類,來(lái)從數(shù)據(jù)集中選取不同標(biāo)簽的索引,并將其返回。# 再將兩個(gè)collate_fn函數(shù)collate_fn_for_train、collate_fn_for_test分別用于對(duì)訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)的二次處理。class TripletSample(tordata.sampler.Sampler): # 繼承torch.utils.data.sampler類,實(shí)現(xiàn)自定義采樣器。# TripletSampler類的實(shí)現(xiàn),在該類的初始化函數(shù)中,支持兩個(gè)參數(shù)傳入:數(shù)集與批次參數(shù)。其中批次參數(shù)包含兩個(gè)維度的批次大小,分別是標(biāo)簽個(gè)數(shù)與樣本個(gè)數(shù)。def __init__(self,dataset,batch_size):self.dataset = dataset # 獲得數(shù)據(jù)集self.batch_size = batch_size # 獲得批次參數(shù),形狀為(標(biāo)簽個(gè)數(shù),樣本個(gè)數(shù))self.label_set = list(set(dataset.data_label)) # 標(biāo)簽集合def __iter__(self): # 實(shí)現(xiàn)采樣器的取值過(guò)程:從數(shù)據(jù)集中隨機(jī)抽取指定個(gè)數(shù)的標(biāo)簽,并在每個(gè)標(biāo)簽中抽取指定個(gè)數(shù)的樣本,最終以生成器的形式返回。while(True):sample_indices = []# 隨機(jī)抽取指定個(gè)數(shù)的標(biāo)簽label_list = random.sample(self.label_set,self.batch_size[0])# 在每個(gè)標(biāo)簽中抽取指定個(gè)數(shù)的樣本for _label in label_list: # 按照標(biāo)簽個(gè)數(shù)循環(huán)data_index = np.where(self.dataset.data_label == _label)[0]index = np.random.choice(data_index,self.batch_size[1],replace=False)sample_indices += index.tolist()yield np.asarray(sample_indices) # 以生成器的形式返回def __len__(self):return len(self.dataset) # 計(jì)算長(zhǎng)度# 用于訓(xùn)練數(shù)據(jù)的采樣器處理函數(shù) def collate_fn_train(batch,frame_num):# collate_fn_train函數(shù)會(huì)對(duì)采樣器傳入的批次數(shù)據(jù)進(jìn)行重組,并對(duì)每條數(shù)據(jù)按照指定幀數(shù)frame_num進(jìn)行抽取。# 同時(shí)也要保證每條數(shù)據(jù)的帖數(shù)都大于等于幀數(shù)frame_num。如果幀數(shù)小于frame_num,則為其添加重復(fù)幀。batch_data, batch_label,batch_meta = [],[],[]batch_size = len(batch) #獲得數(shù)據(jù)條數(shù)for i in range(batch_size) : # 依次對(duì)每條數(shù)據(jù)進(jìn)行處理batch_label.append(batch[i][2]) # 添加數(shù)據(jù)的標(biāo)簽batch_meta.append(batch[i][1]) # 添加數(shù)據(jù)的元信息data = batch[i][0] # 獲取該數(shù)據(jù)的樣本信息if data.shape[0] < frame_num: # 如果幀數(shù)較少,則隨機(jī)加入幾個(gè)# 復(fù)制幀,用于幀數(shù)很少的情況multy = (frame_num - data.shape[0])//data.shape[0] + 1# 額外隨機(jī)加入的幀的個(gè)數(shù)choicenum = (frame_num - data.shape[0])%data.shape[0]choice_index = np.random(data.shape[0],choicenum,replace = False)choice_index = list(range(0,data.shape[9])) * multy + choice_index.tolist()else: # 隨機(jī)抽取指定個(gè)數(shù)的幀choice_index = np.random.choice(data.shape[0],frame_num,replace = False)batch_data.append(data[choice_index]) # 增加指定個(gè)數(shù)的幀數(shù)據(jù)# 重新組合合成用于訓(xùn)練的樣本數(shù)據(jù)batch = [np.asarray(batch_data),batch_meta,batch_label]return batchdef collate_fn_for_test(batch,frame_num): # 用于測(cè)試數(shù)據(jù)的采樣器處理函數(shù)# collate_fn_for_test函數(shù)會(huì)對(duì)采樣器傳入的批次數(shù)據(jù)進(jìn)行重組,并按照批次數(shù)據(jù)中最大幀數(shù)進(jìn)行補(bǔ)0對(duì)齊。# 同時(shí)也要保證母條數(shù)據(jù)的幀數(shù)都大于等于幀數(shù)frame_num。如果幀數(shù)小于frame_num,則為其添加重復(fù)幀。batch_size = len(batch) # 獲得數(shù)據(jù)的條數(shù)batch_frames = np.zeros(batch_size,np.int)batch_data,batch_label,batch_meta = [],[],[]for i in range(batch_size): # 依次對(duì)每條數(shù)據(jù)進(jìn)行處理batch_label.append(batch[i][2]) # 添加數(shù)據(jù)的標(biāo)簽batch_meta.append(batch[i][1]) # 添加數(shù)據(jù)的元信息data = batch[i][0] # 獲取該數(shù)據(jù)的幀樣本信息if data.shape[0] < frame_num: # 如果幀數(shù)較少,隨機(jī)加入幾個(gè)print(batch_meta, data.shape[0])multy = (frame_num - data.shape[0]) // data.shape[0] + 1choicenum = (frame_num - data.shape[0]) % data.shape[0]choice_index = np.random.choice(data.shape[0], choicenum, replace=False)choice_index = list(range(0, data.shape[0])) * multy + choice_index.tolist()data = np.asarray(data[choice_index])batch_frames[i] = data.shape[0] # 保證所有的都大于等于frame_numbatch_data.append(data)max_frame = np.max(batch_frames) # 獲得最大的幀數(shù)# 對(duì)其他幀進(jìn)行補(bǔ)0填充batch_data = np.asarray([np.pad(batch_data[i], ((0, max_frame - batch_data[i].shape[0]), (0, 0), (0, 0)),'constant', constant_values=0)for i in range(batch_size)])# 重新組合成用于訓(xùn)練的樣本數(shù)據(jù)batch = [batch_data, batch_meta, batch_label]return batch

2?train.py

import os import numpy as np from datetime import datetime import sys from functools import partial import matplotlib.pyplot as plt import torchvision import torch.nn as nn import torch import torch.utils.data as tordata from ranger import *# 1.4 測(cè)試數(shù)據(jù)集 # 在完成數(shù)據(jù)集的制作之后,對(duì)其進(jìn)行測(cè)試。 # 將樣本文件夾perdata放到當(dāng)前目錄下,并編寫(xiě)代碼生成數(shù)據(jù)集對(duì)象。 # 從數(shù)據(jù)集對(duì)象中取出一條數(shù)據(jù),并顯示該數(shù)據(jù)的詳細(xì)內(nèi)容。 from GaitSet_DataLoader import load_data # 加載項(xiàng)目模塊# 輸出當(dāng)前CPU-GPU print("torch V",torch.__version__,"cuda V",torch.version.cuda) pathstr = './data/perdata/perdata' label_train_num = 10 # 訓(xùn)練集的個(gè)數(shù)。剩下是測(cè)試集 batch_size = (3, 6) frame_num = 8 hidden_dim = 64 # label_train_num = 70 # 訓(xùn)練數(shù)據(jù)集的個(gè)數(shù),剩下的是測(cè)試數(shù)據(jù)庫(kù)dataconf = { # 方便導(dǎo)入?yún)?shù)'dataset_path':pathstr,'imgresize':'64','label_train_num':label_train_num,'label_shuffle':True, } print("加載訓(xùn)練數(shù)據(jù)...") train_source,test_cource = load_data(**dataconf) # 一次全載入,經(jīng)過(guò)load_data()分別生成訓(xùn)練和測(cè)試數(shù)據(jù)集對(duì)象。 print("訓(xùn)練數(shù)據(jù)集長(zhǎng)度",len(train_source)) # label_num * type10* view11 # 顯示數(shù)據(jù)集里面的標(biāo)簽 train_label_set = set(train_source.data_label) print("數(shù)據(jù)集里面的標(biāo)簽:",train_label_set)dataimg,matedata,lebelimg = train_source.__getitem__(4) # 從數(shù)據(jù)集中獲取一條數(shù)據(jù),并顯示其詳細(xì)信息。print("圖片樣本數(shù)據(jù)形狀:", dataimg.shape," 數(shù)據(jù)的元信息:", matedata," 數(shù)據(jù)標(biāo)簽索引:",lebelimg)plt.imshow(dataimg[0]) # 顯示圖片 plt.axis('off') # 不顯示坐標(biāo)軸 plt.show()def imshow(img):print("圖片形狀",np.shape(img))npimg = img.numpy()plt.axis('off')plt.imshow(np.transpose(npimg, (1, 2, 0)))plt.show()imshow(torchvision.utils.make_grid(torch.from_numpy(dataimg[-10:]).unsqueeze(1),nrow=10)) # 顯示十張圖片# 1.6 測(cè)試采樣器 from GaitSet_DataLoader import TripletSample,collate_fn_trainbatch_size = (4,8) # 定義批次(4個(gè)標(biāo)簽,每個(gè)標(biāo)簽8個(gè)數(shù)據(jù)) frame_num = 32 # 定義幀數(shù) num_workers = torch.cuda.device_count() # 設(shè)置采樣器的線程數(shù)# 在設(shè)置數(shù)據(jù)加載器額外啟動(dòng)進(jìn)程的數(shù)量時(shí),最好要與GPU數(shù)量匹配,即一個(gè)進(jìn)程服務(wù)于一個(gè)GPU。如果額外啟動(dòng)進(jìn)程的數(shù)量遠(yuǎn)遠(yuǎn)大于GPU數(shù)量,則性能瓶頸主要會(huì)卡在GPU運(yùn)行的地方,起不到提升效率的作用。 print("當(dāng)前GPU數(shù)量:",num_workers) if num_workers <= 1 : # 如果只有一塊GPU,或者沒(méi)有GPU,則使用主線程處理num_workers = 0 print("數(shù)據(jù)加載器額外啟動(dòng)進(jìn)程的數(shù)量",num_workers)# 實(shí)例化采樣器:得到對(duì)象triplet_sampler。 triplet_sampler = TripletSample(train_source,batch_size) # 初始化采樣器的處理函數(shù):用偏函數(shù)的方法對(duì)采樣器的處理函數(shù)進(jìn)行初始化。 collate_train = partial(collate_fn_train,frame_num=frame_num)# 定義數(shù)據(jù)加載器:每次迭代,按照采樣器的索引在train_source中取出數(shù)據(jù) # 將對(duì)象triplet_sampler和采樣器的處理函數(shù)collate_train傳入tordata.DataLoader,得到一個(gè)可用于訓(xùn)練的數(shù)據(jù)加載器對(duì)象train_loader。 # 同時(shí)對(duì)數(shù)據(jù)加載器額外啟動(dòng)進(jìn)程的數(shù)量進(jìn)行了設(shè)置,如果額外啟動(dòng)進(jìn)程的數(shù)量num_workers是0,則在加載數(shù)據(jù)時(shí)不額外啟動(dòng)其他進(jìn)程。 train_loader = tordata.DataLoader(dataset=train_source,batch_sampler=triplet_sampler, collate_fn=collate_train,num_workers=num_workers)# 從數(shù)據(jù)加載器中取出一條數(shù)據(jù) batch_data,batch_meta,batch_label = next(iter(train_loader)) print("該批次數(shù)據(jù)的總長(zhǎng)度:",len(batch_data)) # 輸出該數(shù)據(jù)的詳細(xì)信息 print("每條數(shù)據(jù)的形狀為",batch_data.shape) print(batch_label) # 輸出該數(shù)據(jù)的標(biāo)簽# 1.10 訓(xùn)練模型并保存權(quán)重文件:實(shí)例化模型類,并遍歷數(shù)據(jù)加載器,進(jìn)行訓(xùn)練。 from GaitSet import GaitSetNet, TripletLoss, np2varhidden_dim = 256 # 定義樣本的輸出維度 encoder = GaitSetNet(hidden_dim, frame_num).float() encoder = nn.DataParallel(encoder) # 使用多卡并行訓(xùn)練 encoder.cuda() # 將模型轉(zhuǎn)儲(chǔ)到GPU encoder.train() # 設(shè)置模型為訓(xùn)練模型optimizer = Ranger(encoder.parameters(), lr=0.004) # 定義Ranger優(yōu)化器TripletLossmode = 'full' # 設(shè)置三元損失的模式 triplet_loss = TripletLoss(int(np.prod(batch_size)), TripletLossmode, margin=0.2) # 實(shí)例化三元損失 triplet_loss = nn.DataParallel(triplet_loss) # 使用多卡并行訓(xùn)練 triplet_loss.cuda() # 將模型轉(zhuǎn)儲(chǔ)到GPUckp = 'checkpoint' # 設(shè)置模型名稱 os.makedirs(ckp, exist_ok=True) save_name = '_'.join(map(str, [hidden_dim, int(np.prod(batch_size)),frame_num, 'full']))ckpfiles = sorted(os.listdir(ckp)) # 載入預(yù)訓(xùn)練模型 if len(ckpfiles) > 1:modecpk = os.path.join(ckp, ckpfiles[-2])optcpk = os.path.join(ckp, ckpfiles[-1])encoder.module.load_state_dict(torch.load(modecpk)) # 加載模型文件optimizer.load_state_dict(torch.load(optcpk))print("load cpk !!! ", modecpk) # 定義訓(xùn)練參數(shù) hard_loss_metric = [] full_loss_metric = [] full_loss_num = [] dist_list = [] mean_dist = 0.01 restore_iter = 0 total_iter = 1000 # 迭代次數(shù) lastloss = 65535 # 初始的損失值 trainloss = []_time1 = datetime.now() # 計(jì)算迭代時(shí)間 for batch_data, batch_meta, batch_label in train_loader:restore_iter += 1optimizer.zero_grad() # 梯度清零batch_data = np2var(batch_data).float() # torch.cuda.DoubleTensor變?yōu)閠orch.cuda.FloatTensorfeature = encoder(batch_data) # 將標(biāo)簽轉(zhuǎn)為張量# 將標(biāo)簽轉(zhuǎn)化為張量target_label = np2var(np.array(batch_label)).long() # len=32triplet_feature = feature.permute(1, 0, 2).contiguous() # 對(duì)特征結(jié)果進(jìn)行變形,形狀變?yōu)閇62, 32, 256]triplet_label = target_label.unsqueeze(0).repeat(triplet_feature.size(0), 1) # 復(fù)制12份標(biāo)簽,[62, 32]# 計(jì)算三元損失(full_loss_metric_, hard_loss_metric_, mean_dist_, full_loss_num_) = triplet_loss(triplet_feature, triplet_label)if triplet_loss.module.hard_or_full == 'full': #提取損失值loss = full_loss_metric_.mean()else:loss = hard_loss_metric_.mean()trainloss.append(loss.data.cpu().numpy()) # 保存損失值hard_loss_metric.append(hard_loss_metric_.mean().data.cpu().numpy())full_loss_metric.append(full_loss_metric_.mean().data.cpu().numpy())full_loss_num.append(full_loss_num_.mean().data.cpu().numpy())dist_list.append(mean_dist_.mean().data.cpu().numpy())if loss > 1e-9: # 若損失值過(guò)小,則不參加反向傳播loss.backward()optimizer.step()else:print("損失值過(guò)小:", loss)if restore_iter % 1000 == 0:print("restore_iter 1000 time:", datetime.now() - _time1)_time1 = datetime.now()if restore_iter % 100 == 0: # 輸出訓(xùn)練結(jié)果print('iter {}:'.format(restore_iter), end='')print(', hard_loss_metric={0:.8f}'.format(np.mean(hard_loss_metric)), end='')print(', full_loss_metric={0:.8f}'.format(np.mean(full_loss_metric)), end='')print(', full_loss_num={0:.8f}'.format(np.mean(full_loss_num)), end='')print(', mean_dist={0:.8f}'.format(np.mean(dist_list)), end='')print(', lr=%f' % optimizer.param_groups[0]['lr'], end='')print(', hard or full=%r' % TripletLossmode)if lastloss > np.mean(trainloss): # 保存模型print("lastloss:", lastloss, " loss:", np.mean(trainloss), "need save!")lastloss = np.mean(trainloss)modecpk = os.path.join(ckp,'{}-{:0>5}-encoder.pt'.format(save_name, restore_iter))optcpk = os.path.join(ckp,'{}-{:0>5}-optimizer.pt'.format(save_name, restore_iter))torch.save(encoder.module.state_dict(), modecpk) # 一定要用encoder對(duì)象的module中的參數(shù)進(jìn)行保存。否則模型數(shù)的名字中會(huì)含有“module”字符串,使其不能被非并行的模型載入。torch.save(optimizer.state_dict(), optcpk)else:print("lastloss:", lastloss, " loss:", np.mean(trainloss), "don't save")print("__________________")sys.stdout.flush()hard_loss_metric.clear()full_loss_metric.clear()full_loss_num.clear()dist_list.clear()trainloss.clear()if restore_iter == total_iter: # 如果滿足迭代次數(shù),則訓(xùn)練結(jié)束break

3 GaitSet_test.py

import os import numpy as np from datetime import datetime from functools import partial from tqdm import tqdm import torch.nn as nn import torch.nn.functional as F import torch import torch.utils.data as tordata from GaitSet_DataLoader import load_data,collate_fn_for_test from GaitSet import GaitSetNet,np2var # 為了測(cè)試模型識(shí)別步態(tài)的效果不依賴于拍攝角度和行走條件,可以多角度識(shí)別人物步分別取3組行走條件(普通、穿大衣、攜帶包裹)的樣本輸入模型,查看該模型所計(jì)算出的生征與其他行走條件的匹配程度。 # 1.11 測(cè)試模型 print("torch v:",torch.__version__,"cuda v:",torch.version.cuda)pathstr = './data/perdata/perdata' label_train_num = 70 # 訓(xùn)練數(shù)據(jù)集的個(gè)數(shù),剩下是測(cè)試數(shù)據(jù)集 batch_size = (8,16) frame_num = 30 hidden_dim = 256# 設(shè)置處理流程 num_workers = torch.cuda.device_count() print("cuda.device_count",num_workers) if num_workers <= 1: # 僅有一塊GPU或沒(méi)有GPU,則使用CPUnum_workers = 0 print("num_workers",num_workers)dataconf = { # 初始化數(shù)據(jù)集參數(shù)'dataset_path':pathstr,'imgresize':'64','label_train_num':label_train_num, # 訓(xùn)練數(shù)據(jù)集的個(gè)數(shù),剩下的是測(cè)試數(shù)據(jù)集'label_shuffle':True, } train_source,test_source = load_data(**dataconf)sampler_batch_size = 4 # 定義采樣批次 # 初始化采樣數(shù)據(jù)的二次處理函數(shù) collate_train = partial(collate_fn_for_test,frame_num=frame_num) # 定義數(shù)據(jù)加載器:每次迭代,按照采樣器的索引在test_source中取出數(shù)據(jù) test_loader = tordata.DataLoader(dataset=test_source,batch_size=sampler_batch_size,sampler=tordata.sampler.SequentialSampler(test_source),collate_fn=collate_train,num_workers=num_workers)# 實(shí)例化模型 encoder = GaitSetNet(hidden_dim,frame_num).float() encoder = nn.DataParallel(encoder) encoder.cuda() encoder.eval()ckp = './checkpoint' # 設(shè)置模型文件路徑 save_name = '_'.join(map(str,[hidden_dim,int(np.prod( batch_size )),frame_num,'full'])) ckpfiles = sorted(os.listdir(ckp)) # 加載模型 print("ckpfiles::::",ckpfiles) if len(ckpfiles) > 1:# modecpk = ckp + '/'+ckpfiles[-1]modecpk = os.path.join(ckp,ckpfiles[-1])encoder.module.load_state_dict(torch.load(modecpk), False) # 加載模型文件print("load cpk !!! ", modecpk) else:print("No cpk!!!")def cuda_dist(x,y): # 計(jì)算距離x = torch.from_numpy(x).cuda()y = torch.from_numpy(y).cuda()dist = torch.sum(x ** 2, 1).unsqueeze(1) + torch.sum(y ** 2, 1).unsqueeze(1).transpose(0, 1) - 2 * torch.matmul(x, y.transpose(0, 1))dist = torch.sqrt(F.relu(dist))return distdef de_diag(acc,each_angle=False): # 計(jì)算多角度準(zhǔn)確率,計(jì)算與其他拍攝角度相關(guān)的準(zhǔn)確率result = np.sum(acc - np.diag(np.diag(acc)), 1) / 10.0if not each_angle:result = np.mean(result)return resultdef evaluation(data): # 評(píng)估模型函數(shù)feature, meta, label = dataview, seq_type = [], []for i in meta:view.append(i[2])seq_type.append(i[1])label = np.array(label)view_list = list(set(view))view_list.sort()view_num = len(view_list)probe_seq = [['nm-05', 'nm-06'], ['bg-01', 'bg-02'], ['cl-01', 'cl-02']] # 定義采集數(shù)據(jù)的行走條件gallery_seq = [['nm-01', 'nm-02', 'nm-03', 'nm-04']] # 定義比較數(shù)據(jù)的行走條件num_rank = 5 # 取前5個(gè)距離最近的數(shù)據(jù)acc = np.zeros([len(probe_seq), view_num, view_num, num_rank])for (p, probe_s) in enumerate(probe_seq): # 依次將采集的數(shù)據(jù)與比較數(shù)據(jù)相比f(wàn)or gallery_s in gallery_seq:# Start---獲取指定條件的樣本特征后,按照采集數(shù)據(jù)特征與比較數(shù)據(jù)特之間的距離大小匹配對(duì)應(yīng)的標(biāo)簽,并計(jì)算其準(zhǔn)確率。# 步驟如下:# ①計(jì)算采集數(shù)據(jù)特征與比較數(shù)據(jù)特征之間的距離。# ②對(duì)距離進(jìn)行排序,返回最小的前5個(gè)排序索引。# ③按照索引從比較數(shù)據(jù)中取出前5個(gè)標(biāo)簽,并與采集數(shù)據(jù)中的標(biāo)簽做比較。# ④將比較結(jié)果的正確數(shù)量累加起來(lái),使每個(gè)樣本對(duì)應(yīng)5個(gè)記錄,分別代表前5個(gè)果中的識(shí)別正確個(gè)數(shù)。如[True,True,True,False,False],# 累加后結(jié)果為[1,2,3,3,3],表明離采集數(shù)據(jù)最近的前3個(gè)樣本特征中識(shí)別出來(lái)3個(gè)正確結(jié)果,前5個(gè)樣本特征中識(shí)別出來(lái)3個(gè)正確結(jié)果。# ⑤將累加結(jié)果與0比較,并判斷每個(gè)排名中大于0的個(gè)數(shù)。# ⑥將排名1-5的識(shí)別正確個(gè)數(shù)分別除以采集樣本個(gè)數(shù),再乘以100,便得到每個(gè)排名的準(zhǔn)確率for (v1, probe_view) in enumerate(view_list):for (v2, gallery_view) in enumerate(view_list): # 遍歷所有視角gseq_mask = np.isin(seq_type, gallery_s) & np.isin(view, [gallery_view])gallery_x = feature[gseq_mask, :] # 取出樣本特征gallery_y = label[gseq_mask] # 取出標(biāo)簽pseq_mask = np.isin(seq_type, probe_s) & np.isin(view, [probe_view])probe_x = feature[pseq_mask, :] # 取出樣本特征probe_y = label[pseq_mask] # 取出標(biāo)簽if len(probe_x) > 0 and len(gallery_x) > 0:dist = cuda_dist(probe_x, gallery_x) # 計(jì)算特征之間的距離idx = dist.sort(1)[1].cpu().numpy() # 對(duì)距離按照由小到大排序,返回排序后的索引(【0】是排序后的值)# 分別計(jì)算前五個(gè)結(jié)果的精確率:步驟③~⑥r(nóng)ank_data = np.round(np.sum(np.cumsum(np.reshape(probe_y,[-1,1]) == gallery_y[idx[:,0:num_rank]],1)>0,0)*100/dist.shape[0],2)# End---獲取指定條件的樣本特征后,按照采集數(shù)據(jù)特征與比較數(shù)據(jù)特之間的距離大小匹配對(duì)應(yīng)的標(biāo)簽,并計(jì)算其準(zhǔn)確率。acc[p, v1, v2, 0:len(rank_data)] = rank_datareturn accprint('test_loader', len(test_loader)) time = datetime.now() print('開(kāi)始評(píng)估模型...') feature_list = list() view_list = list() seq_type_list = list() label_list = list() batch_meta_list = []# 在遍歷數(shù)據(jù)集前加入了withtorch.nograd()語(yǔ)句。該語(yǔ)句可以使模型在運(yùn)行時(shí),不額外創(chuàng)建梯度相關(guān)的內(nèi)存。 # 在顯存不足的情況下,使用withtorch.nogradO語(yǔ)句非常重要,它可以節(jié)省系統(tǒng)資源。 # 雖然在實(shí)例化模型時(shí),使用了模型的eval方法來(lái)設(shè)置模型的使用方式,但這僅注意是修改模型中具有狀態(tài)分支的處理流程(如dropout或BN等),并不會(huì)省去創(chuàng)建顯存存放梯度的開(kāi)銷。 with torch.no_grad():for i, x in tqdm(enumerate(test_loader)): # 遍歷數(shù)據(jù)集batch_data, batch_meta, batch_label = xbatch_data = np2var(batch_data).float() # [2, 212, 64, 44]feature = encoder(batch_data) # 將數(shù)據(jù)載入模型 [4, 62, 64]feature_list.append(feature.view(feature.shape[0], -1).data.cpu().numpy()) # 保存特征結(jié)果,共sampler_batch_size 個(gè)特征batch_meta_list += batch_metalabel_list += batch_label # 保存樣本標(biāo)簽# 將樣本特征、標(biāo)簽以及對(duì)應(yīng)的元信息組合起來(lái) test = (np.concatenate(feature_list, 0), batch_meta_list, label_list) acc = evaluation(test) # 對(duì)組合數(shù)據(jù)進(jìn)行評(píng)估 print('評(píng)估完成. 耗時(shí):', datetime.now() - time)for i in range(1): # 計(jì)算第一個(gè)的精確率print('===Rank-%d 準(zhǔn)確率===' % (i + 1))print('攜帶包裹: %.3f,\t普通: %.3f,\t穿大衣: %.3f' % (np.mean(acc[0, :, :, i]),np.mean(acc[1, :, :, i]),np.mean(acc[2, :, :, i])))for i in range(1): # 計(jì)算第一個(gè)的精確率(除去自身的行走條件)print('===Rank-%d 準(zhǔn)確率(除去自身的行走條件)===' % (i + 1))print('攜帶包裹: %.3f,\t普通: %.3f,\t穿大衣: %.3f' % (de_diag(acc[0, :, :, i]),de_diag(acc[1, :, :, i]),de_diag(acc[2, :, :, i])))np.set_printoptions(precision=2, floatmode='fixed') # 設(shè)置輸出精度 for i in range(1): # 顯示多拍攝角度的詳細(xì)結(jié)果print('===Rank-%d 的每個(gè)角度準(zhǔn)確率 (除去自身的行走條件)===' % (i + 1))print('攜帶包裹:', de_diag(acc[0, :, :, i], True))print('普通:', de_diag(acc[1, :, :, i], True))print('穿大衣:', de_diag(acc[2, :, :, i], True))

4 GaitSet.py

import torch import torch.nn as nn import torch.autograd as autograd import torch.nn.functional as F# 搭建GaitSet模型: 分為兩部分:基礎(chǔ)卷積(BasicConv2d) 類和GaitSetNet類。 # 1.7 定義基礎(chǔ)卷積類:對(duì)原始卷積函數(shù)進(jìn)行封裝。在卷積結(jié)束后,用Mish激活函數(shù)和批量正則化處理對(duì)特征進(jìn)行二次處理。 class BasicConv2d(nn.Module):def __init__(self,in_channels,out_channels,kernel_size,**kwargs):super(BasicConv2d,self).__init__()self.conv = nn.Conv2d(in_channels,out_channels,kernel_size,bias=False,**kwargs) # 卷積操作self.BatchNorm = nn.BatchNorm2d(out_channels) # BN操作def forward(self,x): # 自定義前向傳播方法x = self.conv(x)x = x * ( torch.tanh(F.softplus(x))) # 實(shí)現(xiàn)Mish激活函數(shù):PyTorch沒(méi)有現(xiàn)成的Mish激活函數(shù),手動(dòng)實(shí)現(xiàn)Mish激活函數(shù),并對(duì)其進(jìn)行調(diào)用。return self.BatchNorm(x) # 返回卷積結(jié)果# 1.8 定義GaitSetNet類: # ①實(shí)現(xiàn)3個(gè)MGP。 # ②對(duì)MGP的結(jié)果進(jìn)行HPM處理。每層MGP的結(jié)構(gòu)是由兩個(gè)卷積層加一次下采樣組成的。在主分支下采樣之后,與輔助分支所提取的幀級(jí)特征加和,傳入下一個(gè)MGP中。 class GaitSetNet(nn.Module):def __init__(self, hidden_dim, frame_num):super(GaitSetNet, self).__init__()self.hidden_dim = hidden_dim # 輸出的特征維度# 定義MGP部分cnls = [1, 32, 64, 128] # 定義卷積層通道數(shù)量self.set_layer1 = BasicConv2d(cnls[0], cnls[1], 5, padding=2)self.set_layer2 = BasicConv2d(cnls[1], cnls[1], 3, padding=1)self.set_layer1_down = BasicConv2d(cnls[1], cnls[1], 2, stride=2) # 下采樣操作,通過(guò)步長(zhǎng)為2的2x2卷積實(shí)現(xiàn)。self.set_layer3 = BasicConv2d(cnls[1], cnls[2], 3, padding=1)self.set_layer4 = BasicConv2d(cnls[2], cnls[2], 3, padding=1)self.set_layer2_down = BasicConv2d(cnls[2], cnls[2], 2, stride=2)# 下采樣操作,通過(guò)步長(zhǎng)為2的2x2卷積實(shí)現(xiàn)。self.gl_layer2_down = BasicConv2d(cnls[2], cnls[2], 2, stride=2)# 下采樣操作,通過(guò)步長(zhǎng)為2的2x2卷積實(shí)現(xiàn)。self.set_layer5 = BasicConv2d(cnls[2], cnls[3], 3, padding=1)self.set_layer6 = BasicConv2d(cnls[3], cnls[3], 3, padding=1)self.gl_layer1 = BasicConv2d(cnls[1], cnls[2], 3, padding=1)self.gl_layer2 = BasicConv2d(cnls[2], cnls[2], 3, padding=1)self.gl_layer3 = BasicConv2d(cnls[2], cnls[3], 3, padding=1)self.gl_layer4 = BasicConv2d(cnls[3], cnls[3], 3, padding=1)self.bin_num = [1, 2, 4, 8, 16] # 定義MGP部分self.fc_bin = nn.ParameterList([nn.Parameter(nn.init.xavier_uniform_(torch.zeros(sum(self.bin_num) * 2, 128, hidden_dim)))])def frame_max(self, x, n): # 用最大特征方法提取幀級(jí)特征:# 調(diào)用torch.max函數(shù),實(shí)現(xiàn)從形狀[批次個(gè)數(shù),幀數(shù),通道數(shù),高度,寬度]的特征中,沿著幀維度,提取最大值,得到形狀[批次個(gè)數(shù),通道數(shù),高度,寬度]的特征提取幀級(jí)特征的過(guò)程。return torch.max(x.view(n, -1, x.shape[1], x.shape[2], x.shape[3]), 1)[0] # 取max后的值def forward(self, xinput): # 定義前向處理方法n = xinput.size()[0] # 形狀為[批次個(gè)數(shù),幀數(shù),高,寬]x = xinput.reshape(-1, 1, xinput.shape[-2], xinput.shape[-1])del xinput # 刪除不用的變量# MGP 第一層x = self.set_layer1(x)x = self.set_layer2(x)x = self.set_layer1_down(x)gl = self.gl_layer1(self.frame_max(x, n)) # 將每一層的幀取最大值# MGP 第二層gl = self.gl_layer2(gl)gl = self.gl_layer2_down(gl)x = self.set_layer3(x)x = self.set_layer4(x)x = self.set_layer2_down(x)# MGP 第三層gl = self.gl_layer3(gl + self.frame_max(x, n))gl = self.gl_layer4(gl)x = self.set_layer5(x)x = self.set_layer6(x)x = self.frame_max(x, n)gl = gl + x# srart-------HPM處理:按照定義的特征尺度self.bin_num,將輸入特征分成不同尺度,并對(duì)每個(gè)尺度的特征進(jìn)行均值和最大化計(jì)算,從而組合成新的特征,放到列表feature中。feature = list() # 用于存放HPM特征n, c, h, w = gl.size()for num_bin in self.bin_num:z = x.view(n, c, num_bin, -1)z = z.mean(3) + z.max(3)[0]feature.append(z)z = gl.view(n, c, num_bin, -1)z = z.mean(3) + z.max(3)[0]feature.append(z)# end-------HPM處理:按照定義的特征尺度self.bin_num,將輸入特征分成不同尺度,并對(duì)每個(gè)尺度的特征進(jìn)行均值和最大化計(jì)算,從而組合成新的特征,放到列表feature中。# 對(duì)HPM特征中的特征維度進(jìn)行轉(zhuǎn)化# srart-------將每個(gè)特征維度由128轉(zhuǎn)化為指定的輸出的特征維度hidden_dim。因?yàn)檩斎霐?shù)據(jù)是三維的,無(wú)法直接使用全連接API,所以使用矩陣相乘的方式實(shí)現(xiàn)三維數(shù)據(jù)按照最后一個(gè)維度進(jìn)行全連接的效果。feature = torch.cat(feature, 2).permute(2, 0, 1).contiguous() # 62 n cfeature = feature.matmul(self.fc_bin[0])feature = feature.permute(1, 0, 2).contiguous()# end-------將每個(gè)特征維度由128轉(zhuǎn)化為指定的輸出的特征維度hidden_dim。因?yàn)檩斎霐?shù)據(jù)是三維的,無(wú)法直接使用全連接API,所以使用矩陣相乘的方式實(shí)現(xiàn)三維數(shù)據(jù)按照最后一個(gè)維度進(jìn)行全連接的效果。return feature # 返回結(jié)果# 1.9 實(shí)現(xiàn) 自定義三元損失類 # 定義三元損失(TripletLoss)類, 實(shí)現(xiàn)三元損失的計(jì)算。具體步驟: # ①對(duì)輸入樣本中的標(biāo)簽進(jìn)行每?jī)蓚€(gè)一組自由組合,生成標(biāo)簽矩陣,從標(biāo)簽矩陣中得到正/負(fù)樣本對(duì)的掩碼 # ②對(duì)輸入樣本中的特征進(jìn)行每?jī)蓚€(gè)一組自由組合,生成特征矩陣,計(jì)算出特征矩陣的歐氏距離。 # ③按照正/負(fù)樣本對(duì)的掩碼,對(duì)帶有距離的特征矩陣進(jìn)行提取,得到正/負(fù)兩種標(biāo)簽的距離。 # ④將正/負(fù)兩種標(biāo)簽的距離相減,再減去間隔值,得到三元損失。 class TripletLoss(nn.Module): # 定義三元損失類def __init__(self,batch_size,hard_or_full,margin): # 初始化super(TripletLoss, self).__init__()self.batch_size = batch_sizeself.margin =margin # 正/負(fù)樣本的三元損失間隔self.hard_or_full = hard_or_full # 三元損失方式def forward(self,feature,label): # 定義前向傳播方法:# 接收的參數(shù)feature為模型根據(jù)輸入樣本所計(jì)算出來(lái)的特征。該參數(shù)的形狀為[n.m.d],n:HPM處理時(shí)的尺度個(gè)數(shù)62。m:樣本個(gè)數(shù)32。d:維度256。# 在計(jì)算過(guò)程中,將三元損失看作n份,用矩陣的方式對(duì)每份m個(gè)樣本、d維度特征做三元損失計(jì)算,最后將這n份平均。n,m,d = feature.size() # 形狀為[n,m,d]# 生成標(biāo)簽矩陣,并從中找出正/負(fù)樣本對(duì)的編碼,輸出形狀[n,m,m]并且展開(kāi)hp_mask = (label.unsqueeze(1) == label.unsqueeze(2)).view(-1)hn_mask = (label.unsqueeze(1) != label.unsqueeze(2)).view(-1)dist = self.batch_dist(feature) # 計(jì)算出特征矩陣的距離mean_dist = dist.mean(1).mean(1) # 計(jì)算所有的平均距離dist = dist.view(-1)# start-----計(jì)算三元損失的hard模式hard_hp_dist = torch.max(torch.masked_select(dist, hp_mask).view(n, m, -1), 2)[0]hard_hn_dist = torch.min(torch.masked_select(dist, hn_mask).view(n, m, -1), 2)[0]hard_loss_metric = F.relu(self.margin + hard_hp_dist - hard_hn_dist).view(n, -1) # 要讓間隔最小化,到0為止# 對(duì)三元損失取均值,得到最終的hard模式loss[n]hard_loss_metric_mean = torch.mean(hard_loss_metric,1)# end-----計(jì)算三元損失的hard模式# start-----計(jì)算三元損失的full模式# 計(jì)算三元損失的full模型full_hp_dist = torch.masked_select(dist, hp_mask).view(n, m, -1, 1) # 按照編碼得到所有正向樣本距離[n,m,正樣本個(gè)數(shù),1] [62, 32, 8, 1]full_hn_dist = torch.masked_select(dist, hn_mask).view(n, m, 1, -1) # 照編碼得到所有負(fù)向樣本距離[n,m,1,負(fù)樣本個(gè)數(shù)] [62, 32, 1, 24]full_loss_metric = F.relu(self.margin + full_hp_dist - full_hn_dist).view(n, -1) # 讓正/負(fù)間隔最小化,到0為止 [62,32*8*24]# 計(jì)算[n]中每個(gè)三元損失的和full_loss_metric_sum = full_loss_metric.sum(1) # 計(jì)算[62]中每個(gè)loss的和# 計(jì)算[n]中每個(gè)三元損失的個(gè)數(shù)(去掉矩陣對(duì)角線以及符合條件的三元損失)full_loss_num = (full_loss_metric != 0).sum(1).float() # 計(jì)算[62]中每個(gè)loss的個(gè)數(shù)# 計(jì)算均值full_loss_metric_mean = full_loss_metric_sum / full_loss_num # 計(jì)算平均值full_loss_metric_mean[full_loss_num == 0] = 0 # 將無(wú)效值設(shè)為0# end-----計(jì)算三元損失的full模式return full_loss_metric_mean, hard_loss_metric_mean, mean_dist, full_loss_num # ,lossdef batch_dist(self, x): # 計(jì)算特征矩陣的距離x2 = torch.sum(x ** 2, 2) # 平方和 [62, 32]# dist [62, 32, 32]dist = x2.unsqueeze(2) + x2.unsqueeze(2).transpose(1, 2) - 2 * torch.matmul(x, x.transpose(1, 2)) # 計(jì)算特征矩陣的距離dist = torch.sqrt(F.relu(dist)) # 對(duì)結(jié)果進(jìn)行開(kāi)平方return distdef ts2var(x):return autograd.Variable(x).cuda()def np2var(x):return ts2var(torch.from_numpy(x))

?

?

總結(jié)

以上是生活随笔為你收集整理的【Pytorch神经网络实战案例】29 【代码汇总】GitSet模型进行步态与身份识别(CASIA-B数据集)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

亚洲色无码一区二区三区 | 久久综合网欧美色妞网 | 亚洲国产综合无码一区 | 一本加勒比波多野结衣 | 久久精品国产99久久6动漫 | 日本熟妇乱子伦xxxx | 国产无套内射久久久国产 | 精品国产麻豆免费人成网站 | 国产av久久久久精东av | 亚洲国产综合无码一区 | 精品日本一区二区三区在线观看 | 丝袜人妻一区二区三区 | 内射白嫩少妇超碰 | 色欲av亚洲一区无码少妇 | 久久久久久久人妻无码中文字幕爆 | 日本在线高清不卡免费播放 | 熟妇女人妻丰满少妇中文字幕 | 国产女主播喷水视频在线观看 | 国精产品一品二品国精品69xx | 久9re热视频这里只有精品 | 欧洲vodafone精品性 | 97夜夜澡人人爽人人喊中国片 | 性生交大片免费看l | 樱花草在线社区www | 国产av一区二区三区最新精品 | 爱做久久久久久 | www国产亚洲精品久久网站 | 中国女人内谢69xxxxxa片 | 国产精品香蕉在线观看 | 国产疯狂伦交大片 | 欧美性猛交内射兽交老熟妇 | 青春草在线视频免费观看 | 中文字幕日韩精品一区二区三区 | 在线成人www免费观看视频 | 国产成人综合美国十次 | 无遮无挡爽爽免费视频 | 久久无码人妻影院 | 台湾无码一区二区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 97无码免费人妻超级碰碰夜夜 | 人妻天天爽夜夜爽一区二区 | 国产精品办公室沙发 | 欧美怡红院免费全部视频 | 欧美激情综合亚洲一二区 | 午夜免费福利小电影 | 国产欧美熟妇另类久久久 | 女人被爽到呻吟gif动态图视看 | 国产精品va在线观看无码 | 在线观看国产午夜福利片 | 欧美人与动性行为视频 | 国产成人亚洲综合无码 | 久久久久亚洲精品男人的天堂 | 色综合久久久无码网中文 | 欧美黑人性暴力猛交喷水 | 久久99国产综合精品 | 疯狂三人交性欧美 | 国产午夜福利亚洲第一 | 免费观看又污又黄的网站 | 九月婷婷人人澡人人添人人爽 | 欧美日韩一区二区免费视频 | 在线成人www免费观看视频 | 呦交小u女精品视频 | 国产av人人夜夜澡人人爽麻豆 | 国产激情无码一区二区 | 亚洲国产精品无码一区二区三区 | 少妇人妻大乳在线视频 | 日日干夜夜干 | 国产一精品一av一免费 | 狠狠亚洲超碰狼人久久 | 欧美三级不卡在线观看 | 黑人巨大精品欧美一区二区 | 欧美 丝袜 自拍 制服 另类 | 亚洲熟妇自偷自拍另类 | 色综合久久中文娱乐网 | 国产真实伦对白全集 | 久久精品国产精品国产精品污 | 老头边吃奶边弄进去呻吟 | 国产艳妇av在线观看果冻传媒 | v一区无码内射国产 | 国产欧美精品一区二区三区 | 88国产精品欧美一区二区三区 | 欧美日韩视频无码一区二区三 | 国产两女互慰高潮视频在线观看 | 成人综合网亚洲伊人 | 综合人妻久久一区二区精品 | 爆乳一区二区三区无码 | 欧美大屁股xxxxhd黑色 | 亚洲国产欧美国产综合一区 | 欧美兽交xxxx×视频 | 强伦人妻一区二区三区视频18 | 未满成年国产在线观看 | 大地资源中文第3页 | 51国偷自产一区二区三区 | 国产69精品久久久久app下载 | 国产av一区二区三区最新精品 | 一本久道久久综合狠狠爱 | 久久久无码中文字幕久... | 内射爽无广熟女亚洲 | 中文字幕无码av激情不卡 | 少妇久久久久久人妻无码 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 曰本女人与公拘交酡免费视频 | 婷婷五月综合激情中文字幕 | 久久99久久99精品中文字幕 | 欧美国产日产一区二区 | 宝宝好涨水快流出来免费视频 | 久久人人爽人人人人片 | 亚洲aⅴ无码成人网站国产app | 国产精品va在线观看无码 | 亚洲国产精品久久久天堂 | 黑人玩弄人妻中文在线 | 久久久国产精品无码免费专区 | 偷窥村妇洗澡毛毛多 | 成人免费视频在线观看 | 人妻互换免费中文字幕 | 日韩 欧美 动漫 国产 制服 | 免费无码肉片在线观看 | 中文字幕人成乱码熟女app | 日日麻批免费40分钟无码 | 国内丰满熟女出轨videos | 天天做天天爱天天爽综合网 | 国产免费久久久久久无码 | 国产性生大片免费观看性 | 扒开双腿疯狂进出爽爽爽视频 | 亚洲爆乳大丰满无码专区 | 成人片黄网站色大片免费观看 | 亚洲欧美综合区丁香五月小说 | 亚洲人成网站色7799 | 亚洲国产成人a精品不卡在线 | 在线精品亚洲一区二区 | 人妻少妇精品无码专区二区 | 国产精品毛片一区二区 | 人妻无码αv中文字幕久久琪琪布 | 中文字幕人妻无码一区二区三区 | 国产成人综合在线女婷五月99播放 | 成在人线av无码免观看麻豆 | 亚洲精品久久久久久久久久久 | 久久久久成人精品免费播放动漫 | 日韩av无码一区二区三区不卡 | 性开放的女人aaa片 | 在线成人www免费观看视频 | 国产精品亚洲专区无码不卡 | 国产片av国语在线观看 | 亚洲国精产品一二二线 | 国产人成高清在线视频99最全资源 | 午夜性刺激在线视频免费 | 国产激情无码一区二区app | 欧美国产亚洲日韩在线二区 | 国产在线精品一区二区三区直播 | 大乳丰满人妻中文字幕日本 | 国内精品九九久久久精品 | 小sao货水好多真紧h无码视频 | 久久综合九色综合97网 | 中文字幕av伊人av无码av | 少妇无码av无码专区在线观看 | 欧美大屁股xxxxhd黑色 | 无码人妻精品一区二区三区下载 | 国产精品高潮呻吟av久久 | 天天躁夜夜躁狠狠是什么心态 | 性做久久久久久久免费看 | 性欧美大战久久久久久久 | 亚洲成色www久久网站 | 狠狠色欧美亚洲狠狠色www | 精品国产一区二区三区av 性色 | 精品无码国产自产拍在线观看蜜 | 免费网站看v片在线18禁无码 | 日韩av无码中文无码电影 | 久久精品国产精品国产精品污 | 国产三级久久久精品麻豆三级 | 亚洲高清偷拍一区二区三区 | 亚洲精品一区二区三区婷婷月 | 亚洲另类伦春色综合小说 | 久久综合给合久久狠狠狠97色 | 东京无码熟妇人妻av在线网址 | 娇妻被黑人粗大高潮白浆 | 大肉大捧一进一出好爽视频 | 精品亚洲成av人在线观看 | 国产精品无套呻吟在线 | 乱中年女人伦av三区 | 又大又硬又爽免费视频 | 日日噜噜噜噜夜夜爽亚洲精品 | 装睡被陌生人摸出水好爽 | 草草网站影院白丝内射 | 精品久久久无码人妻字幂 | 男人扒开女人内裤强吻桶进去 | 亚洲中文字幕久久无码 | 麻豆av传媒蜜桃天美传媒 | 精品一区二区三区无码免费视频 | 大地资源中文第3页 | 国产精品欧美成人 | 黄网在线观看免费网站 | 亚洲一区av无码专区在线观看 | 漂亮人妻洗澡被公强 日日躁 | 成人精品一区二区三区中文字幕 | 色老头在线一区二区三区 | 免费无码一区二区三区蜜桃大 | 日本饥渴人妻欲求不满 | 九月婷婷人人澡人人添人人爽 | 亚洲综合精品香蕉久久网 | 熟妇人妻激情偷爽文 | 99视频精品全部免费免费观看 | 中文字幕乱码人妻二区三区 | 又大又紧又粉嫩18p少妇 | 成人欧美一区二区三区黑人 | 熟妇人妻无码xxx视频 | 久久精品国产99精品亚洲 | 99精品视频在线观看免费 | 四虎永久在线精品免费网址 | 午夜精品久久久内射近拍高清 | 国产免费观看黄av片 | 少妇无码一区二区二三区 | 中文字幕无码免费久久99 | 熟妇人妻无码xxx视频 | 精品人妻人人做人人爽 | 亚洲成av人片天堂网无码】 | 国产凸凹视频一区二区 | 久久综合九色综合97网 | 国产熟女一区二区三区四区五区 | 无码人妻av免费一区二区三区 | 亚洲精品国产精品乱码视色 | 久久综合网欧美色妞网 | 午夜无码人妻av大片色欲 | 欧美老熟妇乱xxxxx | 中文字幕人妻无码一区二区三区 | 亚洲欧美中文字幕5发布 | 大乳丰满人妻中文字幕日本 | 老熟女重囗味hdxx69 | 高潮毛片无遮挡高清免费 | 国产精品第一国产精品 | 日韩精品久久久肉伦网站 | 日日橹狠狠爱欧美视频 | 亚洲色欲色欲欲www在线 | 久久这里只有精品视频9 | 亚洲成a人片在线观看无码3d | 亚洲午夜福利在线观看 | 少妇愉情理伦片bd | 国产无遮挡又黄又爽又色 | 人人澡人人透人人爽 | 国产 精品 自在自线 | 大地资源网第二页免费观看 | 亚洲乱码国产乱码精品精 | a国产一区二区免费入口 | 亚洲性无码av中文字幕 | 国产亚洲精品久久久久久国模美 | 亚洲国产精品一区二区第一页 | 少妇高潮一区二区三区99 | 日本护士毛茸茸高潮 | 久久精品国产99久久6动漫 | 国产国语老龄妇女a片 | 日日摸日日碰夜夜爽av | 又紧又大又爽精品一区二区 | 欧美人与善在线com | 亚洲自偷精品视频自拍 | 亚洲熟熟妇xxxx | 亚洲一区二区三区香蕉 | 狠狠噜狠狠狠狠丁香五月 | 欧美zoozzooz性欧美 | 玩弄中年熟妇正在播放 | 精品无码国产一区二区三区av | 亚洲码国产精品高潮在线 | 久久99久久99精品中文字幕 | 人人妻人人澡人人爽人人精品 | 亚洲精品无码人妻无码 | 国产肉丝袜在线观看 | 77777熟女视频在线观看 а天堂中文在线官网 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 蜜桃视频插满18在线观看 | 亚洲 日韩 欧美 成人 在线观看 | 日韩视频 中文字幕 视频一区 | 国产明星裸体无码xxxx视频 | 中文字幕无码av波多野吉衣 | 精品无码av一区二区三区 | 特级做a爰片毛片免费69 | 亚洲精品国产第一综合99久久 | 狠狠色欧美亚洲狠狠色www | 免费观看的无遮挡av | 亚洲精品国产精品乱码不卡 | 少妇性l交大片 | 精品国产一区二区三区四区在线看 | 男女猛烈xx00免费视频试看 | 亚洲成a人片在线观看无码 | 精品国产乱码久久久久乱码 | 丰满人妻翻云覆雨呻吟视频 | 成人一区二区免费视频 | 国产午夜手机精彩视频 | 丝袜 中出 制服 人妻 美腿 | 99国产欧美久久久精品 | 国产成人av免费观看 | 国产精品无码一区二区桃花视频 | 久久久久久av无码免费看大片 | 国产激情无码一区二区 | 人人妻人人澡人人爽欧美精品 | ass日本丰满熟妇pics | 国产又爽又猛又粗的视频a片 | 纯爱无遮挡h肉动漫在线播放 | 中文字幕人妻无码一区二区三区 | 无套内射视频囯产 | 水蜜桃av无码 | 亚洲大尺度无码无码专区 | 国产精品a成v人在线播放 | 中文无码伦av中文字幕 | 女人被男人爽到呻吟的视频 | 成熟女人特级毛片www免费 | 中文字幕亚洲情99在线 | 日本高清一区免费中文视频 | 国产莉萝无码av在线播放 | 亚洲一区二区三区国产精华液 | av无码久久久久不卡免费网站 | 天堂亚洲免费视频 | 伊在人天堂亚洲香蕉精品区 | 久久国语露脸国产精品电影 | 亚洲成av人片天堂网无码】 | 久久天天躁狠狠躁夜夜免费观看 | 免费观看激色视频网站 | 国产99久久精品一区二区 | 国产成人综合在线女婷五月99播放 | 国产一区二区不卡老阿姨 | 亚洲精品国产a久久久久久 | 天天做天天爱天天爽综合网 | 久久无码人妻影院 | 日本在线高清不卡免费播放 | 高清不卡一区二区三区 | 少妇久久久久久人妻无码 | 夜夜躁日日躁狠狠久久av | 丰满肥臀大屁股熟妇激情视频 | 日本一本二本三区免费 | 国产精品福利视频导航 | 东京无码熟妇人妻av在线网址 | 67194成是人免费无码 | 亚洲一区av无码专区在线观看 | 少妇人妻av毛片在线看 | 丰腴饱满的极品熟妇 | 一个人看的视频www在线 | 午夜精品久久久久久久 | 国产精品办公室沙发 | 大肉大捧一进一出好爽视频 | 内射巨臀欧美在线视频 | av香港经典三级级 在线 | 久精品国产欧美亚洲色aⅴ大片 | 无码国内精品人妻少妇 | 国产片av国语在线观看 | www国产精品内射老师 | 丝袜 中出 制服 人妻 美腿 | 精品国产av色一区二区深夜久久 | 久久国产36精品色熟妇 | 麻豆国产丝袜白领秘书在线观看 | 内射欧美老妇wbb | 在线观看国产一区二区三区 | 国产午夜无码精品免费看 | 日产精品高潮呻吟av久久 | 色一情一乱一伦一区二区三欧美 | 天天躁日日躁狠狠躁免费麻豆 | 激情五月综合色婷婷一区二区 | 精品无码成人片一区二区98 | 最新版天堂资源中文官网 | 帮老师解开蕾丝奶罩吸乳网站 | 在线精品国产一区二区三区 | 在教室伦流澡到高潮hnp视频 | 丰满人妻被黑人猛烈进入 | 任你躁国产自任一区二区三区 | 国产成人久久精品流白浆 | 久久综合九色综合97网 | 亚洲中文字幕在线无码一区二区 | 丰满少妇弄高潮了www | 漂亮人妻洗澡被公强 日日躁 | 狠狠色噜噜狠狠狠7777奇米 | 老熟女重囗味hdxx69 | 奇米影视7777久久精品 | 精品久久综合1区2区3区激情 | 天天爽夜夜爽夜夜爽 | 日韩无码专区 | 老子影院午夜精品无码 | 人人妻人人澡人人爽人人精品浪潮 | 国内少妇偷人精品视频免费 | 国语精品一区二区三区 | 亚洲精品无码国产 | 亚洲va中文字幕无码久久不卡 | 亚洲国产精品无码一区二区三区 | 日韩欧美中文字幕在线三区 | 中文字幕无线码免费人妻 | 无遮挡国产高潮视频免费观看 | 欧美怡红院免费全部视频 | 国产成人精品三级麻豆 | 99久久精品午夜一区二区 | 精品人人妻人人澡人人爽人人 | 51国偷自产一区二区三区 | 国产精品亚洲а∨无码播放麻豆 | 99国产欧美久久久精品 | 丰满少妇人妻久久久久久 | 永久免费精品精品永久-夜色 | 日韩人妻无码一区二区三区久久99 | 日本丰满护士爆乳xxxx | 给我免费的视频在线观看 | 国产真实伦对白全集 | 中文字幕久久久久人妻 | 精品欧美一区二区三区久久久 | 亚洲乱码中文字幕在线 | 中文无码伦av中文字幕 | 久久久精品成人免费观看 | 内射爽无广熟女亚洲 | 无码吃奶揉捏奶头高潮视频 | 成人三级无码视频在线观看 | 亚洲の无码国产の无码影院 | 亚洲一区二区三区国产精华液 | 成 人 免费观看网站 | 国产精品无码永久免费888 | 国产99久久精品一区二区 | 国产国产精品人在线视 | 久久久久久久人妻无码中文字幕爆 | 国产人成高清在线视频99最全资源 | 亚洲国产精品久久久天堂 | 国产精品.xx视频.xxtv | 欧美变态另类xxxx | 精品国产aⅴ无码一区二区 | 97色伦图片97综合影院 | 国产美女极度色诱视频www | 亚洲精品鲁一鲁一区二区三区 | 久久久久亚洲精品男人的天堂 | 西西人体www44rt大胆高清 | 领导边摸边吃奶边做爽在线观看 | 无码免费一区二区三区 | 欧美阿v高清资源不卡在线播放 | 亚洲爆乳精品无码一区二区三区 | 撕开奶罩揉吮奶头视频 | 亚洲の无码国产の无码步美 | 熟妇女人妻丰满少妇中文字幕 | 一本久久a久久精品vr综合 | 日本丰满熟妇videos | 成人动漫在线观看 | 天下第一社区视频www日本 | 日本熟妇浓毛 | 日韩精品无码一本二本三本色 | 亚洲男人av天堂午夜在 | 人人妻人人澡人人爽人人精品 | 成人免费视频在线观看 | 色偷偷人人澡人人爽人人模 | 奇米影视7777久久精品人人爽 | a片免费视频在线观看 | 亚洲七七久久桃花影院 | a在线亚洲男人的天堂 | 大地资源网第二页免费观看 | 国产人妻人伦精品1国产丝袜 | 无码精品国产va在线观看dvd | 成人片黄网站色大片免费观看 | 国产在线一区二区三区四区五区 | 99精品无人区乱码1区2区3区 | 日本高清一区免费中文视频 | 奇米影视888欧美在线观看 | 欧洲欧美人成视频在线 | 久久精品国产99精品亚洲 | 国产艳妇av在线观看果冻传媒 | 成人精品天堂一区二区三区 | 国产综合色产在线精品 | 99视频精品全部免费免费观看 | 草草网站影院白丝内射 | 日本一卡2卡3卡四卡精品网站 | 国产精品丝袜黑色高跟鞋 | 性色av无码免费一区二区三区 | 久久久精品国产sm最大网站 | 国产精品无套呻吟在线 | 熟女少妇人妻中文字幕 | 好男人社区资源 | 成人精品天堂一区二区三区 | 国产精品理论片在线观看 | 高潮毛片无遮挡高清免费 | 67194成是人免费无码 | 国产真实乱对白精彩久久 | 狠狠亚洲超碰狼人久久 | 国产内射老熟女aaaa | 精品偷自拍另类在线观看 | 九九在线中文字幕无码 | 国内丰满熟女出轨videos | 久久国内精品自在自线 | 国产麻豆精品精东影业av网站 | 正在播放老肥熟妇露脸 | 国产成人av免费观看 | 成人亚洲精品久久久久软件 | 荫蒂添的好舒服视频囗交 | 成 人 免费观看网站 | 精品少妇爆乳无码av无码专区 | 婷婷六月久久综合丁香 | 狠狠综合久久久久综合网 | 日韩视频 中文字幕 视频一区 | 性欧美牲交在线视频 | 国产sm调教视频在线观看 | 亚洲の无码国产の无码影院 | 亚洲天堂2017无码中文 | 亚洲熟熟妇xxxx | 狂野欧美性猛交免费视频 | 99久久精品国产一区二区蜜芽 | 国语自产偷拍精品视频偷 | 日本护士毛茸茸高潮 | 麻豆精品国产精华精华液好用吗 | 高潮毛片无遮挡高清免费视频 | 日本欧美一区二区三区乱码 | 亚洲国产av精品一区二区蜜芽 | 日韩欧美中文字幕公布 | 国产超碰人人爽人人做人人添 | 亚洲成色在线综合网站 | 国产精品久久久一区二区三区 | 成人欧美一区二区三区黑人免费 | 久久99精品久久久久久 | 成人一在线视频日韩国产 | a在线亚洲男人的天堂 | 51国偷自产一区二区三区 | 国产一区二区三区四区五区加勒比 | 午夜丰满少妇性开放视频 | 欧美freesex黑人又粗又大 | 国产av无码专区亚洲a∨毛片 | 精品无人区无码乱码毛片国产 | 国产精品久久久久9999小说 | 国产精品久久久久久久9999 | 黑人巨大精品欧美黑寡妇 | 国内揄拍国内精品人妻 | 国产 浪潮av性色四虎 | 亚洲成av人影院在线观看 | 久久精品人人做人人综合试看 | av人摸人人人澡人人超碰下载 | 国产精品无码mv在线观看 | 中文字幕 人妻熟女 | 国产熟女一区二区三区四区五区 | 日本成熟视频免费视频 | 久久国内精品自在自线 | 亚洲国产精品一区二区第一页 | 99久久99久久免费精品蜜桃 | 无码av最新清无码专区吞精 | 久久综合香蕉国产蜜臀av | 国产亚洲精品久久久久久久 | 久久久久成人精品免费播放动漫 | 国产凸凹视频一区二区 | 婷婷五月综合缴情在线视频 | 少妇无码吹潮 | 精品国产一区二区三区四区在线看 | 女人被爽到呻吟gif动态图视看 | 性欧美牲交在线视频 | 又大又硬又黄的免费视频 | 99视频精品全部免费免费观看 | 免费观看又污又黄的网站 | 激情人妻另类人妻伦 | 国产一区二区不卡老阿姨 | 内射爽无广熟女亚洲 | 99久久无码一区人妻 | 女人被男人爽到呻吟的视频 | 丰满肥臀大屁股熟妇激情视频 | 中文字幕中文有码在线 | 精品人人妻人人澡人人爽人人 | 精品无码一区二区三区爱欲 | 国产精品无码mv在线观看 | 亚洲gv猛男gv无码男同 | 黑人巨大精品欧美一区二区 | 国产成人午夜福利在线播放 | 丰满岳乱妇在线观看中字无码 | 中文字幕人妻无码一区二区三区 | 国产午夜亚洲精品不卡下载 | 欧美日韩亚洲国产精品 | 狂野欧美性猛xxxx乱大交 | 国产免费久久精品国产传媒 | 成人一区二区免费视频 | 亚洲熟妇色xxxxx欧美老妇y | 国产精品久久久久影院嫩草 | 亚洲 激情 小说 另类 欧美 | 丰满岳乱妇在线观看中字无码 | 午夜免费福利小电影 | 一区二区三区乱码在线 | 欧洲 | 欧美兽交xxxx×视频 | 无码帝国www无码专区色综合 | 少妇被黑人到高潮喷出白浆 | 老熟妇乱子伦牲交视频 | 国产无av码在线观看 | 欧美精品国产综合久久 | 小泽玛莉亚一区二区视频在线 | 牲欲强的熟妇农村老妇女视频 | 国色天香社区在线视频 | 色窝窝无码一区二区三区色欲 | 未满小14洗澡无码视频网站 | 日本一区二区三区免费播放 | 久久久久久av无码免费看大片 | 少妇性俱乐部纵欲狂欢电影 | 色五月丁香五月综合五月 | 日韩欧美群交p片內射中文 | 三级4级全黄60分钟 | 久久人人爽人人人人片 | 两性色午夜免费视频 | 色综合久久久无码网中文 | 国产精品毛片一区二区 | 荫蒂被男人添的好舒服爽免费视频 | 欧美人与物videos另类 | 国产乱码精品一品二品 | 亚洲欧美日韩综合久久久 | av无码不卡在线观看免费 | 偷窥村妇洗澡毛毛多 | 性史性农村dvd毛片 | 日日天日日夜日日摸 | 天堂在线观看www | 国产精品亚洲а∨无码播放麻豆 | 亚洲日韩乱码中文无码蜜桃臀网站 | 夜夜夜高潮夜夜爽夜夜爰爰 | 成在人线av无码免观看麻豆 | 久久久国产精品无码免费专区 | 性欧美牲交xxxxx视频 | 久久www免费人成人片 | 国内精品人妻无码久久久影院 | 麻豆国产人妻欲求不满谁演的 | 欧美刺激性大交 | 久久久久亚洲精品男人的天堂 | 国产口爆吞精在线视频 | 无码国模国产在线观看 | 内射后入在线观看一区 | 国产一精品一av一免费 | 精品久久久中文字幕人妻 | 欧美野外疯狂做受xxxx高潮 | 成人一区二区免费视频 | 国产精品理论片在线观看 | 男人扒开女人内裤强吻桶进去 | yw尤物av无码国产在线观看 | 内射爽无广熟女亚洲 | 99久久精品无码一区二区毛片 | 国产激情无码一区二区app | 波多野结衣乳巨码无在线观看 | 亚洲а∨天堂久久精品2021 | 一本一道久久综合久久 | 少妇无套内谢久久久久 | 少妇性l交大片欧洲热妇乱xxx | 免费视频欧美无人区码 | 国产精品福利视频导航 | 久久国产自偷自偷免费一区调 | 亚洲日韩av片在线观看 | 青青青手机频在线观看 | 18无码粉嫩小泬无套在线观看 | 亚洲欧美日韩综合久久久 | 老太婆性杂交欧美肥老太 | 久久99精品久久久久婷婷 | 色老头在线一区二区三区 | 野外少妇愉情中文字幕 | 帮老师解开蕾丝奶罩吸乳网站 | 性做久久久久久久免费看 | av无码不卡在线观看免费 | av无码久久久久不卡免费网站 | 国产人妻精品一区二区三区 | 日本va欧美va欧美va精品 | 国产无套粉嫩白浆在线 | 亚洲高清偷拍一区二区三区 | 西西人体www44rt大胆高清 | 亚洲欧洲中文日韩av乱码 | 日本va欧美va欧美va精品 | 免费观看又污又黄的网站 | 中文字幕无码免费久久9一区9 | 精品国产av色一区二区深夜久久 | av无码久久久久不卡免费网站 | 国产人妻精品一区二区三区不卡 | 成人亚洲精品久久久久 | 久久久成人毛片无码 | 久久国语露脸国产精品电影 | 亚洲精品无码人妻无码 | 久久久国产精品无码免费专区 | 亚洲熟妇色xxxxx亚洲 | 日本爽爽爽爽爽爽在线观看免 | 娇妻被黑人粗大高潮白浆 | 中文字幕无码人妻少妇免费 | 欧美大屁股xxxxhd黑色 | 67194成是人免费无码 | 日韩精品乱码av一区二区 | 国产人妻人伦精品1国产丝袜 | 美女毛片一区二区三区四区 | 一二三四在线观看免费视频 | 色偷偷人人澡人人爽人人模 | 伦伦影院午夜理论片 | 欧美日韩一区二区免费视频 | 久久99精品久久久久久 | 国产麻豆精品精东影业av网站 | 国产亚洲视频中文字幕97精品 | 日本一区二区三区免费高清 | 亚洲熟妇色xxxxx亚洲 | 日产精品高潮呻吟av久久 | 亚洲中文字幕va福利 | 亚洲aⅴ无码成人网站国产app | 1000部夫妻午夜免费 | 婷婷综合久久中文字幕蜜桃三电影 | 色 综合 欧美 亚洲 国产 | 婷婷综合久久中文字幕蜜桃三电影 | 亚洲综合在线一区二区三区 | 久久久久99精品成人片 | 久久久av男人的天堂 | 久久亚洲精品中文字幕无男同 | 荫蒂被男人添的好舒服爽免费视频 | 鲁鲁鲁爽爽爽在线视频观看 | 成人综合网亚洲伊人 | 无码人妻久久一区二区三区不卡 | 久久久国产精品无码免费专区 | 国产精品美女久久久久av爽李琼 | 欧美熟妇另类久久久久久多毛 | 成人aaa片一区国产精品 | 国产精品对白交换视频 | 久久国产自偷自偷免费一区调 | 色婷婷香蕉在线一区二区 | 曰本女人与公拘交酡免费视频 | 激情五月综合色婷婷一区二区 | 樱花草在线社区www | 高清不卡一区二区三区 | 中文无码伦av中文字幕 | 国产精品久久久午夜夜伦鲁鲁 | 亚洲欧美日韩成人高清在线一区 | 亚洲中文字幕乱码av波多ji | 少妇人妻大乳在线视频 | 国内少妇偷人精品视频免费 | 亚洲一区二区三区四区 | 亚洲第一无码av无码专区 | 免费播放一区二区三区 | 国产精品18久久久久久麻辣 | 亚洲日本一区二区三区在线 | 老熟妇仑乱视频一区二区 | 伊在人天堂亚洲香蕉精品区 | 国产手机在线αⅴ片无码观看 | 在线精品亚洲一区二区 | 国产精品久久久久无码av色戒 | 又粗又大又硬又长又爽 | 亚洲成av人在线观看网址 | 国产精品久久久午夜夜伦鲁鲁 | 欧美xxxx黑人又粗又长 | 精品 日韩 国产 欧美 视频 | 男女爱爱好爽视频免费看 | 亚洲男人av香蕉爽爽爽爽 | 久久久久99精品成人片 | 中文字幕人妻丝袜二区 | 亚洲成av人片天堂网无码】 | 在线 国产 欧美 亚洲 天堂 | 久久久亚洲欧洲日产国码αv | 国产成人午夜福利在线播放 | 九九热爱视频精品 | 在线观看国产一区二区三区 | 牲交欧美兽交欧美 | 对白脏话肉麻粗话av | 曰韩少妇内射免费播放 | 精品久久久久久人妻无码中文字幕 | 少妇无码av无码专区在线观看 | 色欲人妻aaaaaaa无码 | 秋霞成人午夜鲁丝一区二区三区 | 少妇被粗大的猛进出69影院 | 露脸叫床粗话东北少妇 | 亚洲精品中文字幕久久久久 | 国产成人综合美国十次 | 内射巨臀欧美在线视频 | 免费无码肉片在线观看 | 成人一在线视频日韩国产 | 曰本女人与公拘交酡免费视频 | 久久综合狠狠综合久久综合88 | 精品成在人线av无码免费看 | 无码毛片视频一区二区本码 | 性欧美疯狂xxxxbbbb | 少妇性l交大片欧洲热妇乱xxx | 亚洲区欧美区综合区自拍区 | 蜜桃视频插满18在线观看 | 国产在线无码精品电影网 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 丁香花在线影院观看在线播放 | 国产熟妇另类久久久久 | 欧美 日韩 人妻 高清 中文 | 精品夜夜澡人妻无码av蜜桃 | 国产无av码在线观看 | 国产人妻精品午夜福利免费 | 亚洲高清偷拍一区二区三区 | 人妻中文无码久热丝袜 | 2020久久超碰国产精品最新 | 久久国产精品萌白酱免费 | 亚洲色大成网站www | 久久久久av无码免费网 | 波多野结衣aⅴ在线 | 国产农村乱对白刺激视频 | 国产一区二区三区四区五区加勒比 | 亚洲成av人影院在线观看 | 丝袜人妻一区二区三区 | 男女猛烈xx00免费视频试看 | 九九久久精品国产免费看小说 | 国模大胆一区二区三区 | 高潮毛片无遮挡高清免费视频 | 女人和拘做爰正片视频 | 国产又粗又硬又大爽黄老大爷视 | 97精品人妻一区二区三区香蕉 | 风流少妇按摩来高潮 | 免费国产成人高清在线观看网站 | 中文字幕 亚洲精品 第1页 | 99精品无人区乱码1区2区3区 | 欧美性猛交内射兽交老熟妇 | 美女毛片一区二区三区四区 | 欧洲vodafone精品性 | 婷婷六月久久综合丁香 | √天堂中文官网8在线 | 亚洲国产精品成人久久蜜臀 | 欧美国产日产一区二区 | 激情内射亚州一区二区三区爱妻 | 色欲人妻aaaaaaa无码 | 精品国偷自产在线视频 | 久久精品女人的天堂av | 一二三四在线观看免费视频 | 日韩成人一区二区三区在线观看 | 国产sm调教视频在线观看 | 美女毛片一区二区三区四区 | 两性色午夜视频免费播放 | 色欲人妻aaaaaaa无码 | 丰满人妻被黑人猛烈进入 | 成 人影片 免费观看 | 亚洲精品久久久久avwww潮水 | 国产精品无码mv在线观看 | 麻豆国产人妻欲求不满谁演的 | 呦交小u女精品视频 | 欧美日韩亚洲国产精品 | 精品无码一区二区三区的天堂 | 荫蒂被男人添的好舒服爽免费视频 | 国产艳妇av在线观看果冻传媒 | 2020最新国产自产精品 | 亚洲中文字幕无码一久久区 | 久久久久亚洲精品男人的天堂 | 国产成人无码av片在线观看不卡 | 性啪啪chinese东北女人 | 国产精品沙发午睡系列 | 国产精品人人爽人人做我的可爱 | 久久99国产综合精品 | 亚洲精品综合五月久久小说 | 4hu四虎永久在线观看 | 夜夜影院未满十八勿进 | 亚洲精品成人福利网站 | 免费看男女做好爽好硬视频 | 激情人妻另类人妻伦 | 成人免费视频在线观看 | 亚洲人交乣女bbw | www国产亚洲精品久久网站 | 99久久久国产精品无码免费 | 在线亚洲高清揄拍自拍一品区 | 综合人妻久久一区二区精品 | 久久午夜无码鲁丝片秋霞 | 精品无码一区二区三区的天堂 | 色诱久久久久综合网ywww | 奇米影视7777久久精品 | 亚洲成av人片在线观看无码不卡 | 2020最新国产自产精品 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲男女内射在线播放 | 中文久久乱码一区二区 | 最近中文2019字幕第二页 | 骚片av蜜桃精品一区 | 97夜夜澡人人双人人人喊 | 国产亚洲欧美日韩亚洲中文色 | 国内老熟妇对白xxxxhd | 国产 浪潮av性色四虎 | 亚洲一区二区观看播放 | 亚洲国产精品毛片av不卡在线 | 一本久久a久久精品vr综合 | 青青青爽视频在线观看 | 国产精品人人妻人人爽 | 日本熟妇人妻xxxxx人hd | 六月丁香婷婷色狠狠久久 | 欧美一区二区三区视频在线观看 | 国产亚洲精品久久久ai换 | 亚洲精品成人av在线 | 狠狠色噜噜狠狠狠狠7777米奇 | 97久久超碰中文字幕 | 奇米影视7777久久精品人人爽 | 久久精品人人做人人综合试看 | 欧洲美熟女乱又伦 | 国产成人精品优优av | 天堂久久天堂av色综合 | 色综合久久88色综合天天 | 国产成人精品三级麻豆 | 内射后入在线观看一区 | 日韩精品无码一本二本三本色 | 国产激情无码一区二区 | 丰满少妇女裸体bbw | 免费国产成人高清在线观看网站 | 中文字幕人成乱码熟女app | 国产精品欧美成人 | 男女性色大片免费网站 | 九九久久精品国产免费看小说 | 久久久精品人妻久久影视 | 在线а√天堂中文官网 | 精品夜夜澡人妻无码av蜜桃 | 亚洲日本一区二区三区在线 | 性啪啪chinese东北女人 | 国产xxx69麻豆国语对白 | 久久成人a毛片免费观看网站 | 水蜜桃色314在线观看 | 久久99精品国产.久久久久 | 亚洲乱码中文字幕在线 | 呦交小u女精品视频 | 国产成人av免费观看 | 国内少妇偷人精品视频 | 荫蒂被男人添的好舒服爽免费视频 | 国产美女极度色诱视频www | 男女下面进入的视频免费午夜 | 无码人妻精品一区二区三区下载 | 日本大乳高潮视频在线观看 | 麻豆精品国产精华精华液好用吗 | 久久国产36精品色熟妇 | 婷婷综合久久中文字幕蜜桃三电影 | 老司机亚洲精品影院无码 | 中文字幕无码免费久久99 | 国产又粗又硬又大爽黄老大爷视 | 精品久久久无码人妻字幂 | 国产香蕉尹人视频在线 | 少妇太爽了在线观看 | 亚洲精品成人福利网站 | 国产手机在线αⅴ片无码观看 | 欧美成人高清在线播放 | 丰满少妇弄高潮了www | 亚洲国产高清在线观看视频 | 婷婷六月久久综合丁香 | 99久久精品日本一区二区免费 | 内射老妇bbwx0c0ck | 亚洲精品久久久久久一区二区 | 少妇厨房愉情理9仑片视频 | 7777奇米四色成人眼影 | 亚洲国产精品无码一区二区三区 | 超碰97人人做人人爱少妇 | 亚洲国产av美女网站 | 欧美freesex黑人又粗又大 | 国产成人无码av一区二区 | 色婷婷综合激情综在线播放 | 久久精品人人做人人综合试看 | 天天爽夜夜爽夜夜爽 | 女人被男人躁得好爽免费视频 | 日日碰狠狠躁久久躁蜜桃 | 欧美高清在线精品一区 | 国产激情精品一区二区三区 | 又粗又大又硬毛片免费看 | 欧美日韩一区二区三区自拍 | 大地资源网第二页免费观看 | 欧美变态另类xxxx | 男人和女人高潮免费网站 | 中文精品无码中文字幕无码专区 | 亚洲国产精品毛片av不卡在线 | 女人被爽到呻吟gif动态图视看 | 特大黑人娇小亚洲女 | 奇米影视7777久久精品人人爽 | 中文字幕乱妇无码av在线 | 日本熟妇大屁股人妻 | 国产麻豆精品一区二区三区v视界 | 日日摸日日碰夜夜爽av | 无码人中文字幕 | 狠狠色噜噜狠狠狠狠7777米奇 | 亚洲爆乳精品无码一区二区三区 | 国产香蕉97碰碰久久人人 | 漂亮人妻洗澡被公强 日日躁 | 中文精品久久久久人妻不卡 | 精品国产精品久久一区免费式 | 欧洲vodafone精品性 | 三级4级全黄60分钟 | 日本一卡二卡不卡视频查询 | 99久久婷婷国产综合精品青草免费 | 内射白嫩少妇超碰 | 无遮无挡爽爽免费视频 | 日韩人妻无码中文字幕视频 | 日韩无套无码精品 | 国产莉萝无码av在线播放 | 亚洲一区二区三区在线观看网站 | 性欧美牲交在线视频 | 色婷婷综合激情综在线播放 | 日本精品人妻无码77777 天堂一区人妻无码 | 欧美激情一区二区三区成人 | 久久综合九色综合欧美狠狠 | 日欧一片内射va在线影院 | 东京热无码av男人的天堂 | 亚洲一区二区三区含羞草 | 中文字幕av日韩精品一区二区 | 亚洲人成人无码网www国产 | 未满成年国产在线观看 | 无码福利日韩神码福利片 | 欧美 日韩 亚洲 在线 | 国产精品久久久av久久久 | 久久精品人妻少妇一区二区三区 | 18禁黄网站男男禁片免费观看 | 男女下面进入的视频免费午夜 | 少妇高潮一区二区三区99 | 秋霞成人午夜鲁丝一区二区三区 | 伊在人天堂亚洲香蕉精品区 | 国产97人人超碰caoprom | 中文字幕无码乱人伦 | 男人的天堂2018无码 | 乱码av麻豆丝袜熟女系列 | 欧洲美熟女乱又伦 | 国产黄在线观看免费观看不卡 | 欧美日韩一区二区三区自拍 | 日日橹狠狠爱欧美视频 | 亚洲精品午夜无码电影网 | 日日碰狠狠躁久久躁蜜桃 | 久久国产36精品色熟妇 | 亚洲熟妇色xxxxx欧美老妇 | 国产乱人无码伦av在线a | 亚洲色大成网站www国产 | 性欧美熟妇videofreesex | 波多野结衣一区二区三区av免费 | 成人亚洲精品久久久久软件 | 最近的中文字幕在线看视频 | 国产精品资源一区二区 | 精品人人妻人人澡人人爽人人 | 国产精品永久免费视频 | 国产亚av手机在线观看 | 亚洲色偷偷男人的天堂 | 人妻插b视频一区二区三区 | 狠狠综合久久久久综合网 | 中文字幕无码视频专区 | 日本熟妇人妻xxxxx人hd | 亚洲色大成网站www | 国产亚洲视频中文字幕97精品 | 国产精品久久国产三级国 | 精品一区二区不卡无码av | 国产小呦泬泬99精品 | 久久99精品久久久久婷婷 | 国产热a欧美热a在线视频 | 久久久久成人片免费观看蜜芽 | 久久综合香蕉国产蜜臀av | 国产精品久久国产精品99 | 国产精品美女久久久 | 熟女俱乐部五十路六十路av | 麻豆果冻传媒2021精品传媒一区下载 | 色婷婷综合激情综在线播放 | 国产美女精品一区二区三区 | 中文字幕亚洲情99在线 | 欧美一区二区三区视频在线观看 | 亚洲第一无码av无码专区 | 欧美日韩在线亚洲综合国产人 | 亚洲va中文字幕无码久久不卡 | 日本在线高清不卡免费播放 | 亚洲理论电影在线观看 | 国产精品第一区揄拍无码 | 日日碰狠狠躁久久躁蜜桃 | 亚洲gv猛男gv无码男同 | 在线播放亚洲第一字幕 | 精品国产青草久久久久福利 | 婷婷色婷婷开心五月四房播播 | 欧美老熟妇乱xxxxx | 日韩欧美成人免费观看 | 东京一本一道一二三区 | 3d动漫精品啪啪一区二区中 | 野狼第一精品社区 | 波多野结衣高清一区二区三区 | 青草视频在线播放 | 一本色道久久综合狠狠躁 | 国产情侣作爱视频免费观看 | 中文字幕人成乱码熟女app | 国产成人无码区免费内射一片色欲 | 亚洲精品一区二区三区大桥未久 | 日本www一道久久久免费榴莲 | 亚洲人亚洲人成电影网站色 | 东京热男人av天堂 | 天天躁日日躁狠狠躁免费麻豆 | 国产两女互慰高潮视频在线观看 | 兔费看少妇性l交大片免费 | 亚洲国产精品久久久天堂 | 国产精品久久久久久亚洲影视内衣 | 亚洲 a v无 码免 费 成 人 a v | 麻花豆传媒剧国产免费mv在线 | 国内精品久久毛片一区二区 | 99精品无人区乱码1区2区3区 | 欧美日韩一区二区综合 | 国产精品久久久一区二区三区 | 久久久久免费看成人影片 | 精品久久8x国产免费观看 | 在线欧美精品一区二区三区 | 国产在线精品一区二区三区直播 | 国产三级久久久精品麻豆三级 | 波多野结衣av在线观看 | 人人妻人人澡人人爽人人精品浪潮 | 国产精品亚洲综合色区韩国 | 精品一区二区三区波多野结衣 | 国产亚洲tv在线观看 | 麻豆国产人妻欲求不满谁演的 | 日本护士毛茸茸高潮 | 人妻少妇精品无码专区动漫 | 18精品久久久无码午夜福利 | 88国产精品欧美一区二区三区 | 熟女俱乐部五十路六十路av | 国产激情无码一区二区app | 狠狠色色综合网站 | 国产免费久久久久久无码 | 久久国语露脸国产精品电影 | 久久综合给合久久狠狠狠97色 | 永久免费观看美女裸体的网站 | 日本爽爽爽爽爽爽在线观看免 | 日本在线高清不卡免费播放 | 综合网日日天干夜夜久久 | 极品嫩模高潮叫床 | 色五月丁香五月综合五月 | 亚洲小说春色综合另类 | 人人妻人人澡人人爽欧美一区九九 | 美女极度色诱视频国产 | 在线看片无码永久免费视频 | 色五月五月丁香亚洲综合网 | 亚洲一区av无码专区在线观看 | 图片小说视频一区二区 | 成人无码影片精品久久久 | 色窝窝无码一区二区三区色欲 | 无码人妻丰满熟妇区毛片18 | 一区二区传媒有限公司 | 亚洲熟妇色xxxxx亚洲 | 国产在线精品一区二区三区直播 | 亚洲最大成人网站 | 大胆欧美熟妇xx | 久久久无码中文字幕久... | 国产亚洲日韩欧美另类第八页 | 亚洲人成人无码网www国产 | 捆绑白丝粉色jk震动捧喷白浆 | 丝袜 中出 制服 人妻 美腿 | 亚洲小说图区综合在线 | 久久久婷婷五月亚洲97号色 | 7777奇米四色成人眼影 | 无遮挡国产高潮视频免费观看 | 丰满肥臀大屁股熟妇激情视频 | 人人妻人人澡人人爽人人精品 | 精品人妻av区 | 97久久精品无码一区二区 | 亚洲 高清 成人 动漫 | 成人精品视频一区二区三区尤物 | 性生交大片免费看女人按摩摩 | 四虎国产精品免费久久 | 玩弄中年熟妇正在播放 | 精品久久久久久人妻无码中文字幕 | 国产无套内射久久久国产 | 国产精品久久国产三级国 | 狂野欧美性猛xxxx乱大交 | 日韩亚洲欧美中文高清在线 | 1000部夫妻午夜免费 | 老太婆性杂交欧美肥老太 | 欧美xxxx黑人又粗又长 | 国产亚洲人成a在线v网站 | 中国女人内谢69xxxxxa片 | 亚洲精品一区二区三区婷婷月 | 乱码av麻豆丝袜熟女系列 | 国产精品多人p群无码 | 日韩视频 中文字幕 视频一区 | 亚洲国精产品一二二线 | 日韩av无码一区二区三区 | 国产一区二区三区日韩精品 | 激情国产av做激情国产爱 | 一本久久伊人热热精品中文字幕 | 好男人www社区 | 久久久久亚洲精品中文字幕 | 国产无套粉嫩白浆在线 | 国产精品第一区揄拍无码 | 国内精品人妻无码久久久影院 | 亚洲中文字幕无码中字 | 亚洲日韩中文字幕在线播放 | 亚洲中文字幕在线观看 | 国产成人无码av片在线观看不卡 | 免费观看激色视频网站 | 色窝窝无码一区二区三区色欲 | www国产亚洲精品久久久日本 | 撕开奶罩揉吮奶头视频 | 亚洲国产av美女网站 | 国产成人人人97超碰超爽8 | 女人被男人躁得好爽免费视频 | 欧美喷潮久久久xxxxx | 人人妻人人藻人人爽欧美一区 | 成人影院yy111111在线观看 | 国产sm调教视频在线观看 | 日本www一道久久久免费榴莲 | 中文字幕av伊人av无码av | 婷婷丁香五月天综合东京热 | 亚洲s码欧洲m码国产av | 国产精品无码一区二区三区不卡 | 久久久精品欧美一区二区免费 | 丁香啪啪综合成人亚洲 | 俄罗斯老熟妇色xxxx | 300部国产真实乱 | 偷窥日本少妇撒尿chinese | 人人爽人人爽人人片av亚洲 | 亚洲精品国产精品乱码视色 | 国产精品18久久久久久麻辣 | 狠狠色丁香久久婷婷综合五月 | 人人爽人人澡人人高潮 | 国产一区二区三区日韩精品 | 色婷婷香蕉在线一区二区 | 亚洲第一无码av无码专区 | 三级4级全黄60分钟 | 中文字幕 人妻熟女 | 国产偷国产偷精品高清尤物 | 精品成在人线av无码免费看 | 国产人妻久久精品二区三区老狼 | 国产熟妇另类久久久久 | 97久久超碰中文字幕 | 亚洲人成影院在线无码按摩店 | 欧美亚洲日韩国产人成在线播放 | 夜先锋av资源网站 | 精品欧洲av无码一区二区三区 | 2020最新国产自产精品 | 欧美老熟妇乱xxxxx | 天天躁日日躁狠狠躁免费麻豆 | 激情爆乳一区二区三区 | 亚洲精品一区二区三区四区五区 | 丰满少妇熟乱xxxxx视频 | 在线成人www免费观看视频 | 久久久久久久久888 | 精品久久久久香蕉网 | 国产精品资源一区二区 | 久精品国产欧美亚洲色aⅴ大片 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 最近中文2019字幕第二页 | 妺妺窝人体色www婷婷 | 亚洲成在人网站无码天堂 | 2020久久香蕉国产线看观看 | 久久久精品国产sm最大网站 | 乌克兰少妇性做爰 | 成人欧美一区二区三区黑人免费 | 蜜臀av无码人妻精品 | av人摸人人人澡人人超碰下载 | 午夜男女很黄的视频 | 午夜精品一区二区三区的区别 | ass日本丰满熟妇pics | 四十如虎的丰满熟妇啪啪 | 国内少妇偷人精品视频免费 | 大地资源中文第3页 | 人人妻人人澡人人爽人人精品浪潮 | 人人澡人摸人人添 | 国产无遮挡又黄又爽又色 | 夜夜影院未满十八勿进 | 内射后入在线观看一区 | 国产 精品 自在自线 | 成人影院yy111111在线观看 | 久久久久久国产精品无码下载 | 国产午夜福利100集发布 | 国产真实夫妇视频 | 超碰97人人做人人爱少妇 | 亚洲毛片av日韩av无码 | 中文字幕乱妇无码av在线 | 老熟女重囗味hdxx69 | 精品人妻av区 | 欧美阿v高清资源不卡在线播放 | 夜夜高潮次次欢爽av女 | 一本久道久久综合狠狠爱 | 国产成人av免费观看 | 婷婷色婷婷开心五月四房播播 | 久久亚洲精品中文字幕无男同 | 免费看男女做好爽好硬视频 | 无码成人精品区在线观看 | 无码成人精品区在线观看 | 日韩人妻少妇一区二区三区 | 国产精品高潮呻吟av久久4虎 | 丝袜足控一区二区三区 | 久久99精品久久久久久 | 欧美真人作爱免费视频 | 成人无码精品1区2区3区免费看 | 天堂а√在线地址中文在线 | 免费国产黄网站在线观看 | 日本丰满护士爆乳xxxx | 欧美成人家庭影院 | 国产 精品 自在自线 | 99精品久久毛片a片 | 国产美女极度色诱视频www | 亚洲爆乳大丰满无码专区 | 伊人久久大香线焦av综合影院 | 999久久久国产精品消防器材 | 亚洲熟妇色xxxxx欧美老妇 | 亚洲经典千人经典日产 | 曰韩无码二三区中文字幕 | 无人区乱码一区二区三区 | 蜜桃av抽搐高潮一区二区 | 玩弄人妻少妇500系列视频 | 欧美熟妇另类久久久久久多毛 | 国产午夜手机精彩视频 | 4hu四虎永久在线观看 | 中文字幕+乱码+中文字幕一区 | 99riav国产精品视频 | 国产亚洲精品精品国产亚洲综合 | 成人精品一区二区三区中文字幕 | 免费无码的av片在线观看 | 日本精品久久久久中文字幕 | 黑人玩弄人妻中文在线 | 全球成人中文在线 | 久久综合香蕉国产蜜臀av | 俄罗斯老熟妇色xxxx | 亚洲自偷自偷在线制服 | 67194成是人免费无码 | 亚洲乱码日产精品bd | 麻豆国产97在线 | 欧洲 | 欧美猛少妇色xxxxx | 人妻尝试又大又粗久久 | 午夜时刻免费入口 | 97资源共享在线视频 | 国产一精品一av一免费 | 99久久人妻精品免费一区 | 丰满护士巨好爽好大乳 | 又大又硬又黄的免费视频 | 国产情侣作爱视频免费观看 | 国内少妇偷人精品视频 | 国产午夜无码精品免费看 | 色欲综合久久中文字幕网 | 国产激情精品一区二区三区 | 欧美日本精品一区二区三区 | 亚洲日韩av一区二区三区中文 | 国产97人人超碰caoprom | 极品尤物被啪到呻吟喷水 | 亚洲色欲色欲欲www在线 | 亚洲精品国偷拍自产在线观看蜜桃 | 欧美丰满少妇xxxx性 | 亚洲国产日韩a在线播放 | 国产婷婷色一区二区三区在线 | 成熟妇人a片免费看网站 | 欧美 日韩 人妻 高清 中文 | 久久综合九色综合欧美狠狠 | 国产午夜精品一区二区三区嫩草 | 亚洲色偷偷男人的天堂 | 日本精品久久久久中文字幕 | 扒开双腿吃奶呻吟做受视频 | 色欲综合久久中文字幕网 | 荫蒂添的好舒服视频囗交 | 超碰97人人做人人爱少妇 | 欧美三级不卡在线观看 | 精品无码一区二区三区的天堂 | 无码av免费一区二区三区试看 | 国产精品爱久久久久久久 | 黑人粗大猛烈进出高潮视频 | 久久99精品国产麻豆 | 国产精品久久久久久久9999 | 国产精品毛片一区二区 | 欧洲vodafone精品性 | 野外少妇愉情中文字幕 | 熟妇女人妻丰满少妇中文字幕 | 奇米影视7777久久精品人人爽 | 亚洲精品久久久久avwww潮水 | 久久久久久av无码免费看大片 | 国产精品怡红院永久免费 | 久久久久久a亚洲欧洲av冫 | 欧美日韩一区二区免费视频 | 亚洲人成影院在线无码按摩店 | 人妻无码久久精品人妻 | 亚洲中文字幕无码中字 | 亚洲综合久久一区二区 | 男女性色大片免费网站 | 荫蒂被男人添的好舒服爽免费视频 | 国产精品99爱免费视频 | 日本乱人伦片中文三区 | 久久久久99精品国产片 | 欧美成人高清在线播放 | 夜先锋av资源网站 | 老司机亚洲精品影院 | 少女韩国电视剧在线观看完整 | 强奷人妻日本中文字幕 | 国产乱人伦av在线无码 | 无码一区二区三区在线 | 九九在线中文字幕无码 | 成 人 网 站国产免费观看 | 国产成人精品必看 | 日本又色又爽又黄的a片18禁 | 国产熟女一区二区三区四区五区 | 自拍偷自拍亚洲精品被多人伦好爽 | 成人综合网亚洲伊人 | 国产精品毛片一区二区 | 好爽又高潮了毛片免费下载 | 西西人体www44rt大胆高清 | 精品国产一区二区三区四区在线看 | 日韩精品无码一区二区中文字幕 | 亚洲综合色区中文字幕 | 娇妻被黑人粗大高潮白浆 | 日韩av无码中文无码电影 | 奇米影视7777久久精品人人爽 | 亚洲成a人片在线观看无码 | 熟妇人妻激情偷爽文 | √天堂中文官网8在线 | 无码精品人妻一区二区三区av | 国产做国产爱免费视频 | 久久精品国产一区二区三区 | 国产内射老熟女aaaa | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 亚洲精品欧美二区三区中文字幕 | 久久精品99久久香蕉国产色戒 | 丝袜足控一区二区三区 | 午夜福利不卡在线视频 | 国产乱人偷精品人妻a片 | 妺妺窝人体色www婷婷 | 激情亚洲一区国产精品 | 无码国模国产在线观看 | 亚洲中文字幕av在天堂 | 性欧美熟妇videofreesex | 精品国产精品久久一区免费式 | 午夜精品一区二区三区的区别 | 久久久久久九九精品久 | 一区二区三区乱码在线 | 欧洲 | 色狠狠av一区二区三区 | 日韩成人一区二区三区在线观看 | 亚洲自偷自拍另类第1页 | 亚洲 欧美 激情 小说 另类 | 妺妺窝人体色www婷婷 | 无码帝国www无码专区色综合 | 成人无码视频免费播放 | 久久人人爽人人人人片 | 国产成人人人97超碰超爽8 | 国产一区二区三区影院 | 亚洲中文字幕av在天堂 | 波多野结衣av一区二区全免费观看 | 欧美国产日韩久久mv | 天天综合网天天综合色 | 3d动漫精品啪啪一区二区中 | 丰满岳乱妇在线观看中字无码 | 亚洲精品午夜国产va久久成人 | 少妇一晚三次一区二区三区 | 捆绑白丝粉色jk震动捧喷白浆 | 国产精品18久久久久久麻辣 | 亚洲色在线无码国产精品不卡 | 国内老熟妇对白xxxxhd | 国产人妻人伦精品1国产丝袜 | 精品 日韩 国产 欧美 视频 | 亚洲乱码中文字幕在线 | 国产人妻大战黑人第1集 | 色综合久久久无码网中文 | 国产亚洲tv在线观看 | 丰满岳乱妇在线观看中字无码 | 色婷婷香蕉在线一区二区 | 亚洲中文字幕无码中文字在线 | 久久国产自偷自偷免费一区调 | 国产艳妇av在线观看果冻传媒 | 日本一区二区三区免费播放 | 亚洲日韩一区二区三区 | 99久久精品国产一区二区蜜芽 | 夜夜夜高潮夜夜爽夜夜爰爰 | 亚洲国产精华液网站w | 国产色精品久久人妻 | 丝袜美腿亚洲一区二区 | 波多野结衣 黑人 | 初尝人妻少妇中文字幕 | 强伦人妻一区二区三区视频18 | 麻豆av传媒蜜桃天美传媒 | 欧美国产亚洲日韩在线二区 | 日韩人妻系列无码专区 | 人妻无码αv中文字幕久久琪琪布 | 一本大道伊人av久久综合 | 99久久久国产精品无码免费 | 国产综合色产在线精品 | 久久精品女人天堂av免费观看 | 在教室伦流澡到高潮hnp视频 | 亚洲经典千人经典日产 | 国产精品国产自线拍免费软件 | 丰满人妻翻云覆雨呻吟视频 | 午夜福利试看120秒体验区 | 精品欧洲av无码一区二区三区 | 久久午夜无码鲁丝片午夜精品 | 国产成人无码区免费内射一片色欲 | 午夜精品一区二区三区在线观看 | 国精品人妻无码一区二区三区蜜柚 | 少妇性l交大片 | 波多野结衣av一区二区全免费观看 | 亚洲国产精品无码一区二区三区 | 国产香蕉尹人综合在线观看 | 蜜桃臀无码内射一区二区三区 | 国内精品人妻无码久久久影院蜜桃 | 中文字幕亚洲情99在线 | 中文字幕色婷婷在线视频 | 久久精品中文字幕大胸 | 麻豆人妻少妇精品无码专区 | 无码毛片视频一区二区本码 | 99精品无人区乱码1区2区3区 | 久久国产精品精品国产色婷婷 | 亚洲熟妇色xxxxx欧美老妇 | 成熟妇人a片免费看网站 | 亚洲区小说区激情区图片区 | аⅴ资源天堂资源库在线 | 亚洲国产精品无码一区二区三区 | 欧美亚洲日韩国产人成在线播放 | 性色av无码免费一区二区三区 | 2019午夜福利不卡片在线 | 97无码免费人妻超级碰碰夜夜 | 国产97色在线 | 免 | 少妇邻居内射在线 | 欧美老人巨大xxxx做受 | 日本肉体xxxx裸交 | 亚洲a无码综合a国产av中文 | 色一情一乱一伦一区二区三欧美 | 中文字幕人妻丝袜二区 | 丰满人妻精品国产99aⅴ | 成人免费视频视频在线观看 免费 | 国产亚洲精品久久久久久久 | 国产农村妇女高潮大叫 | 国产精品美女久久久久av爽李琼 | 国产成人人人97超碰超爽8 | 对白脏话肉麻粗话av | 人人爽人人爽人人片av亚洲 | 51国偷自产一区二区三区 | 全黄性性激高免费视频 | 少妇性俱乐部纵欲狂欢电影 | 国产精品99爱免费视频 | 波多野结衣高清一区二区三区 | 精品人人妻人人澡人人爽人人 | 国产精品沙发午睡系列 | 久久久久久av无码免费看大片 | 亚洲成色www久久网站 | 日韩人妻系列无码专区 | 无码国产乱人伦偷精品视频 | 亚洲一区二区观看播放 | 99久久人妻精品免费二区 | 少妇被黑人到高潮喷出白浆 | 无遮挡国产高潮视频免费观看 | 小泽玛莉亚一区二区视频在线 | 日韩亚洲欧美中文高清在线 | 久久久久国色av免费观看性色 | 欧美人妻一区二区三区 | 国产美女极度色诱视频www | 精品厕所偷拍各类美女tp嘘嘘 | 国产亚洲精品精品国产亚洲综合 | 国产亚洲精品久久久久久国模美 | 人妻有码中文字幕在线 | 日韩欧美中文字幕公布 | 内射后入在线观看一区 | 久久午夜夜伦鲁鲁片无码免费 | 欧美人与善在线com | 久久亚洲a片com人成 | 亚洲中文字幕久久无码 | 理论片87福利理论电影 | 嫩b人妻精品一区二区三区 | 丰满少妇熟乱xxxxx视频 | 久久99精品国产麻豆 | 亚洲国产精品久久久久久 | 亚洲一区av无码专区在线观看 | 性生交大片免费看女人按摩摩 | 中文精品久久久久人妻不卡 | 欧美性生交活xxxxxdddd | 中文字幕无码免费久久9一区9 | 精品偷拍一区二区三区在线看 | 狠狠亚洲超碰狼人久久 | 日日躁夜夜躁狠狠躁 | 无码播放一区二区三区 | 国产成人精品久久亚洲高清不卡 | 亚洲gv猛男gv无码男同 | 精品欧美一区二区三区久久久 | 亚洲精品国产品国语在线观看 | 国产人妻久久精品二区三区老狼 | 欧美熟妇另类久久久久久不卡 | 日韩精品无码一本二本三本色 | 无遮挡啪啪摇乳动态图 | 日日摸天天摸爽爽狠狠97 | 欧美黑人性暴力猛交喷水 | 久久综合激激的五月天 | 国产精品久久久久久亚洲毛片 | 亚洲色大成网站www | 中文字幕av伊人av无码av | 国产福利视频一区二区 | 日本大香伊一区二区三区 | 麻豆md0077饥渴少妇 | 人人妻人人澡人人爽人人精品 | 乱中年女人伦av三区 | 久久久久亚洲精品男人的天堂 | 日日碰狠狠躁久久躁蜜桃 | 少妇太爽了在线观看 | 国产明星裸体无码xxxx视频 | 精品夜夜澡人妻无码av蜜桃 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 小鲜肉自慰网站xnxx | 亚洲欧美综合区丁香五月小说 | 亚洲国产一区二区三区在线观看 | 中文字幕无码人妻少妇免费 | 少妇激情av一区二区 | 十八禁视频网站在线观看 | 免费国产黄网站在线观看 | 久久久成人毛片无码 | 成 人影片 免费观看 | 男女超爽视频免费播放 | 久久天天躁狠狠躁夜夜免费观看 | 欧美日本免费一区二区三区 | 双乳奶水饱满少妇呻吟 | 成 人 免费观看网站 | 国产一区二区不卡老阿姨 | 精品欧洲av无码一区二区三区 | 欧美成人高清在线播放 | 骚片av蜜桃精品一区 | 欧美日本精品一区二区三区 | 欧美国产日韩亚洲中文 | 亚洲狠狠婷婷综合久久 | 国产精品人妻一区二区三区四 | 成人性做爰aaa片免费看不忠 | 成人试看120秒体验区 | 国产在线精品一区二区三区直播 | 亚洲国产综合无码一区 | 亚洲精品美女久久久久久久 | 国产精品无码久久av | 国产小呦泬泬99精品 | 国产绳艺sm调教室论坛 | 国产精品第一国产精品 | 无套内谢的新婚少妇国语播放 | 未满小14洗澡无码视频网站 | 人妻无码αv中文字幕久久琪琪布 | 成人精品视频一区二区 | 国产熟妇另类久久久久 | 2019nv天堂香蕉在线观看 | 乱人伦中文视频在线观看 | yw尤物av无码国产在线观看 | a在线观看免费网站大全 | 18精品久久久无码午夜福利 | 婷婷色婷婷开心五月四房播播 | 国产两女互慰高潮视频在线观看 | 老太婆性杂交欧美肥老太 | 欧洲美熟女乱又伦 | 亚洲日韩av一区二区三区中文 | 精品人人妻人人澡人人爽人人 | 亚洲一区二区观看播放 | 999久久久国产精品消防器材 | 人妻天天爽夜夜爽一区二区 | 日本精品高清一区二区 | 中文字幕人妻无码一区二区三区 | 国产精品va在线观看无码 | 国产香蕉尹人综合在线观看 | 欧美一区二区三区 | 久久久久久久久蜜桃 | 青青青手机频在线观看 | 天天躁日日躁狠狠躁免费麻豆 | 99精品国产综合久久久久五月天 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 亚洲成在人网站无码天堂 | 亚无码乱人伦一区二区 | 亚洲国产成人av在线观看 | 人妻少妇精品无码专区动漫 | 亚洲另类伦春色综合小说 | 亚洲人成人无码网www国产 | 7777奇米四色成人眼影 | 国产精品丝袜黑色高跟鞋 | 中文字幕人妻无码一区二区三区 | 天天躁夜夜躁狠狠是什么心态 | 色 综合 欧美 亚洲 国产 | 老太婆性杂交欧美肥老太 | 久久伊人色av天堂九九小黄鸭 | 中文字幕人妻无码一夲道 | 日日碰狠狠丁香久燥 | 两性色午夜免费视频 | 人妻体内射精一区二区三四 | 亚洲成av人影院在线观看 | 精品国产乱码久久久久乱码 | 精品国产麻豆免费人成网站 | 免费网站看v片在线18禁无码 | 国产卡一卡二卡三 | 欧美野外疯狂做受xxxx高潮 | 天堂亚洲免费视频 | 亚洲乱码中文字幕在线 | 国产av一区二区精品久久凹凸 | 国产精品自产拍在线观看 | 天堂一区人妻无码 | 无码人妻久久一区二区三区不卡 | 亚洲va中文字幕无码久久不卡 | 男人的天堂2018无码 | 澳门永久av免费网站 | 在线观看国产一区二区三区 | 高潮毛片无遮挡高清免费视频 | 又色又爽又黄的美女裸体网站 | 中文字幕无码av激情不卡 | 久久综合九色综合欧美狠狠 | 国产精品高潮呻吟av久久4虎 | 午夜福利一区二区三区在线观看 | 999久久久国产精品消防器材 | 性色av无码免费一区二区三区 | 国产尤物精品视频 | 欧美国产日产一区二区 | 一本色道婷婷久久欧美 | 日本丰满护士爆乳xxxx | 日产精品高潮呻吟av久久 | 噜噜噜亚洲色成人网站 | 国产精品亚洲а∨无码播放麻豆 | 日韩少妇内射免费播放 | 久久99国产综合精品 | 野狼第一精品社区 | 久久精品女人天堂av免费观看 | 亚洲自偷自偷在线制服 | 精品一区二区不卡无码av | 亚洲成av人影院在线观看 | 欧洲熟妇色 欧美 | 国产无遮挡又黄又爽免费视频 | 欧美精品一区二区精品久久 | 欧美日韩视频无码一区二区三 | 国产国语老龄妇女a片 | 四虎4hu永久免费 | 一本久道久久综合婷婷五月 | 丰满少妇熟乱xxxxx视频 | 欧美三级a做爰在线观看 | 乱人伦人妻中文字幕无码久久网 | 色欲av亚洲一区无码少妇 | 日韩在线不卡免费视频一区 | 国产美女精品一区二区三区 | 日韩视频 中文字幕 视频一区 | 人人妻人人澡人人爽人人精品浪潮 | 亚洲综合无码一区二区三区 | 欧美真人作爱免费视频 | 亚洲中文字幕在线观看 | 俄罗斯老熟妇色xxxx |