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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

使用Resnet网络对人脸图像分类识别出男女性别(包含数据集制作+训练+测试)

發布時間:2023/12/20 pytorch 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Resnet网络对人脸图像分类识别出男女性别(包含数据集制作+训练+测试) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 目標檢測+分類數據集大全[https://blog.csdn.net/DeepLearning_/article/details/127276492?spm=1001.2014.3001.5502](https://blog.csdn.net/DeepLearning_/article/details/127276492?spm=1001.2014.3001.5502):
  • 前言
  • 一、數據預處理
    • 1.分類數據存放
    • 2.生成train.txt與val.txt
  • 二、更改配置文件
    • 1.自定義修改
  • 三、定義resnet網絡
  • 四、train.py訓練
  • 五、預測predict.py實現
  • 六、預測結果
  • 七、完整項目代碼+數據集(大于1500張)
  • 總結


目標檢測+分類數據集大全https://blog.csdn.net/DeepLearning_/article/details/127276492?spm=1001.2014.3001.5502:

前言

本打算昨天寫這篇博客的,推遲到今天晚上。實際上,上午我已經把模型訓練完了,迭代100次,最后準確率可達到95%,考慮到用的臺式機沒有裝顯卡,所以使用的數據集一共只有340張。分布情況如下。
【訓練集】女性:150張; 男性:150張
【驗證集】女性:20張; 男性:20張
數據集預覽

女性數據

男性數據


提示:以下是本篇文章正文內容,下面案例可供參考

一、數據預處理

1.分類數據存放

分類數據是不需要像目標檢測數據樣,每張圖片去打標簽,我們唯一需要做的就是把同類照片放到一個文件夾。如我們新建一個名字為“0”的文件夾,用于存放所有用于訓練的150張女性圖片,新建一個名字為“1”的文件夾,用于存放所有用于訓練的150張男性圖片。同理,驗證集也如此排布。如下圖所示,為我的數據排布情況,數據集存放在gender_data文件夾里。

2.生成train.txt與val.txt

圖片數據排布完后,還需要做的就是使用腳本工具,分別生成訓練集和驗證集的存儲路徑及對應標簽(0或者1)。這一步至關重要,必不可少。因為訓練時,就是通過讀取這兩個txt文件里的路徑,來讀取訓練集和驗證集的圖片,并輸送給網絡,同時給對應的標簽類別。
腳本命名Build_all_classes_path_to_txt.py
**注意:**需要分兩次執行,分別創建train.txt與val.txt,記得更改路徑

import os import os.pathdef listfiles(rootDir, txtfile, foldnam =''):ftxtfile = open(txtfile, 'a')list_dirs = os.walk(rootDir)#foldnam = FolderName[0]#print(foldnam)count = 0dircount = 0for root,dirs,files in list_dirs:for d in dirs:#print(os.path.join(root, d))dircount += 1for f in files:#print(os.path.join(root, f))ftxtfile.write(os.path.join(root, f) + ' ' + foldnam + '\n')count += 1#print(rootDir + ' has ' + str(count) + ' files')#獲取路徑下所有文件夾的完整路徑,用于讀取文件用 def GetFileFromThisRootDir(dir):allfolder = []folder_name = ''for root,dirs,files in os.walk(dir):allfolder.append(root)"""for filespath in files:filepath = os.path.join(root, filespath)#print(filepath)extension = os.path.splitext(filepath)[1][1:]if needExtFilter and extension in ext:allfiles.append(filepath)elif not needExtFilter:allfiles.append(filepath) """All_folder = allfolder#print(All_folder)for folder_num in All_folder[1:]:#print(folder_num)folder_name = folder_num.split('/')[:]print (folder_name)listfiles(folder_num, txtfile_path, folder_name[-1])return#def Generate_path_to_txt(FolderPath=[]): # print(FolderPath)if __name__=='__main__':folder_path = 'F:/Study_code/classification-pytorch/Classification-MaleFemale-pytorch/gender_data/val/' #val and train foldertxtfile_path = 'F:/Study_code/classification-pytorch/Classification-MaleFemale-pytorch/gender_data/val.txt'folder_path = GetFileFromThisRootDir(folder_path)

生成的.txt文件內容如下

二、更改配置文件

1.自定義修改

實際上很多可以修改,如loss選擇、梯度下降方法、學習率、衰減率等等。

代碼如下(示例):

class Config(object):num_classes = 2loss = 'softmax' #focal_losstest_root = 'gender_data/'test_list = 'gender_data/val.txt'train_batch_size = 16 # batch sizetrain_root = 'gender_data/'train_list = 'gender_data/train.txt'finetune = Falseload_model_path = 'checkpoints/model-epoch-1.pth'save_interval = 1input_shape = (3, 112, 112)optimizer = 'sgd' # optimizer should be sgd, adamnum_workers = 4 # how many workers for loading dataprint_freq = 10 # print info every N batchmilestones = [60, 100] # adjust lr lr = 0.1 # initial learning ratemax_epoch = 100 # max epochlr_decay = 0.95 # when val_loss increase, lr = lr*lr_decayweight_decay = 5e-4

三、定義resnet網絡

實際上resnet網絡pytorch內部經典網絡中已存在,但作者還是參考開源代碼自己構建了一個resnet網絡的py文件resnet.py。這個可直接拿來使用。本次訓練使用的是resnet18.
代碼如下(示例):

"""resnet in pytorch[1] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun.Deep Residual Learning for Image Recognitionhttps://arxiv.org/abs/1512.03385v1 """import torch import torch.nn as nnclass Flatten(nn.Module):def forward(self, input):#print(input.view(input.size(0), -1).shape)return input.view(input.size(0), -1)class BasicBlock(nn.Module):"""Basic Block for resnet 18 and resnet 34"""expansion = 1def __init__(self, in_channels, out_channels, stride=1):super().__init__()#residual functionself.residual_function = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=stride, padding=1, bias=False),nn.BatchNorm2d(out_channels),nn.ReLU(inplace=True),nn.Conv2d(out_channels, out_channels * BasicBlock.expansion, kernel_size=3, padding=1, bias=False),nn.BatchNorm2d(out_channels * BasicBlock.expansion))#shortcutself.shortcut = nn.Sequential()#the shortcut output dimension is not the same with residual function#use 1*1 convolution to match the dimensionif stride != 1 or in_channels != BasicBlock.expansion * out_channels:self.shortcut = nn.Sequential(nn.Conv2d(in_channels, out_channels * BasicBlock.expansion, kernel_size=1, stride=stride, bias=False),nn.BatchNorm2d(out_channels * BasicBlock.expansion))def forward(self, x):return nn.ReLU(inplace=True)(self.residual_function(x) + self.shortcut(x))class BottleNeck(nn.Module):"""Residual block for resnet over 50 layers"""expansion = 4def __init__(self, in_channels, out_channels, stride=1):super().__init__()self.residual_function = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size=1, bias=False),nn.BatchNorm2d(out_channels),nn.ReLU(inplace=True),nn.Conv2d(out_channels, out_channels, stride=stride, kernel_size=3, padding=1, bias=False),nn.BatchNorm2d(out_channels),nn.ReLU(inplace=True),nn.Conv2d(out_channels, out_channels * BottleNeck.expansion, kernel_size=1, bias=False),nn.BatchNorm2d(out_channels * BottleNeck.expansion),)self.shortcut = nn.Sequential()if stride != 1 or in_channels != out_channels * BottleNeck.expansion:self.shortcut = nn.Sequential(nn.Conv2d(in_channels, out_channels * BottleNeck.expansion, stride=stride, kernel_size=1, bias=False),nn.BatchNorm2d(out_channels * BottleNeck.expansion))def forward(self, x):return nn.ReLU(inplace=True)(self.residual_function(x) + self.shortcut(x))class ResNet(nn.Module):def __init__(self, block, num_block, scale=0.25, num_classes=2):super().__init__()self.in_channels = int(64 * scale)self.conv1 = nn.Sequential(nn.Conv2d(3, int(64 * scale), kernel_size=3, padding=1, bias=False),nn.BatchNorm2d(int(64 * scale)),nn.ReLU(inplace=True))#we use a different inputsize than the original paper#so conv2_x's stride is 1self.conv2_x = self._make_layer(block, int( 64 * scale), num_block[0], 2)self.conv3_x = self._make_layer(block, int(128 * scale), num_block[1], 2)self.conv4_x = self._make_layer(block, int(256 * scale), num_block[2], 2)self.conv5_x = self._make_layer(block, int(512 * scale), num_block[3], 2)self.output = nn.Sequential(nn.Conv2d(int(512*scale), int(512*scale), kernel_size=(7, 7), stride=1, groups=int(512*scale), bias=False),nn.BatchNorm2d(int(512*scale)),Flatten(),#nn.Linear(int(32768 * scale), num_classes)nn.Linear(int(512 * scale), num_classes))def _make_layer(self, block, out_channels, num_blocks, stride):"""make resnet layers(by layer i didnt mean this 'layer' was the same as a neuron netowork layer, ex. conv layer), one layer may contain more than one residual block Args:block: block type, basic block or bottle neck blockout_channels: output depth channel number of this layernum_blocks: how many blocks per layerstride: the stride of the first block of this layerReturn:return a resnet layer"""# we have num_block blocks per layer, the first block # could be 1 or 2, other blocks would always be 1strides = [stride] + [1] * (num_blocks - 1)layers = []for stride in strides:layers.append(block(self.in_channels, out_channels, stride))self.in_channels = out_channels * block.expansionreturn nn.Sequential(*layers)def forward(self, x):output = self.conv1(x)output = self.conv2_x(output)output = self.conv3_x(output)output = self.conv4_x(output)output = self.conv5_x(output)output = self.output(output)return output def resnet18():""" return a ResNet 18 object"""return ResNet(BasicBlock, [2, 2, 2, 2])def resnet34():""" return a ResNet 34 object"""return ResNet(BasicBlock, [3, 4, 6, 3])def resnet50():""" return a ResNet 50 object"""return ResNet(BottleNeck, [3, 4, 6, 3])def resnet101():""" return a ResNet 101 object"""return ResNet(BottleNeck, [3, 4, 23, 3])def resnet152():""" return a ResNet 152 object"""return ResNet(BottleNeck, [3, 8, 36, 3])from thop import profile from thop import clever_format if __name__=='__main__':input = torch.Tensor(1, 3, 112, 112)model = resnet18()#print(model)flops, params = profile(model, inputs=(input, ))flops, params = clever_format([flops, params], "%.3f")#print(model)print('VoVNet Flops:', flops, ',Params:' ,params)

四、train.py訓練

訓練代碼及書寫邏輯也是個常規操作,很好理解,關鍵點在于如何去加載數據,并做預處理變換。
代碼如下(示例),僅供參考:

import torch from torch.utils import data import os import time import numpy as np from models.resnet import * #resnet34 from models.mobilenetv2 import mobilenetv2 #from models.mobilenetv3 import * #from models.repvgg import * from data.dataset import Dataset from config.config import Config from loss.focal_loss import FocalLoss from utils.cosine_lr_scheduler import CosineDecayLR #from torch.autograd import Variable def train(model, criterion, optimizer, scheduler, trainloader, epoch):model.train()for ii, data in enumerate(trainloader):start = time.time()iters = epoch * len(trainloader) + iischeduler.step(iters + 1)data_input, label = data#print(data_input, label)#data_input, label = Variable(data_input), Variable(label)-1data_input = data_input.to(device)label = label.to(device).long()output = model(data_input)#print(output)#print(label)loss = criterion(output, label)optimizer.zero_grad()loss.backward()optimizer.step()if iters % opt.print_freq == 0:output = output.data.cpu().numpy()output = np.argmax(output, axis=1)label = label.data.cpu().numpy()acc = np.mean((output == label).astype(int))speed = opt.print_freq / (time.time() - start)time_str = time.asctime(time.localtime(time.time()))print(time_str, 'epoch', epoch, 'iters', iters, 'speed', speed, 'lr',optimizer.param_groups[0]['lr'], 'loss', loss.cpu().detach().numpy(), 'acc', acc)def eval_train(model, criterion, testloader):model.eval()test_loss = 0.0 # cost function errorcorrect = 0.0with torch.no_grad():for (datas, labels) in testloader:datas = datas.to(device)labels = labels.to(device).long()outputs = model(datas)loss = criterion(outputs, labels)test_loss += loss.item()_, preds = outputs.max(1)correct += preds.eq(labels).sum()print('Test set: Average loss: {:.4f}, Accuracy: {:.4f}'.format(test_loss / len(testloader),correct.float() / len(testloader)))if __name__ == '__main__':opt = Config()#os.environ['CUDA_VISIBLE_DEVICES'] = '0'#device = torch.device("cuda" if torch.cuda.is_available() else "cpu")device = torch.device("cpu")test_dataset = Dataset(opt.test_root, opt.test_list, phase='test', input_shape=opt.input_shape)testloader = data.DataLoader(test_dataset,shuffle=False,pin_memory=True,num_workers=opt.num_workers)train_dataset = Dataset(opt.train_root, opt.train_list, phase='train', input_shape=opt.input_shape)trainloader = data.DataLoader(train_dataset,batch_size=opt.train_batch_size,shuffle=True,pin_memory=True,num_workers=opt.num_workers)if opt.loss == 'focal_loss':criterion = FocalLoss(gamma=2)else:criterion = torch.nn.CrossEntropyLoss()model = resnet18()#model = get_RepVGG_func_by_name('RepVGG-B0')#model = mobilenetv2()if opt.finetune == True:model.load_state_dict(torch.load(opt.load_model_path))model = torch.nn.DataParallel(model)model.to(device)total_batch = len(trainloader)NUM_BATCH_WARM_UP = total_batch * 5optimizer = torch.optim.SGD(model.parameters(), lr=opt.lr, weight_decay=opt.weight_decay)scheduler = CosineDecayLR(optimizer, opt.max_epoch * total_batch, opt.lr, 1e-6, NUM_BATCH_WARM_UP)print('{} train iters per epoch in dataset'.format(len(trainloader)))for epoch in range(0, opt.max_epoch):train(model, criterion, optimizer, scheduler, trainloader, epoch)if epoch % opt.save_interval == 0 or epoch == (opt.max_epoch - 1):torch.save(model.module.state_dict(), 'checkpoints/model-epoch-'+str(epoch) + '.pth')eval_train(model, criterion, testloader)


訓練過程日志打印如下,最后的預測準確率還不錯:

五、預測predict.py實現

代碼如下(示例),僅供參考:

from torch.autograd import Variable from torchvision import datasets, models, transforms import matplotlib.pyplot as plt # plt 用于顯示圖片 from PIL import Image, ImageDraw, ImageFont import cv2 import numpy as np from models.resnet import * from config.config import Config from models.mobilenetv2 import *def show_infer_result(result):font = ImageFont.truetype('data/font/HuaWenXinWei-1.ttf', 50)plt.rcParams['font.sans-serif'] = ['SimHei'] # 中文亂碼plt.subplot(121)plt.imshow(image)plt.title('測試圖片')#不顯示坐標軸plt.axis('off')#子圖2plt.subplot(122)img2_2 = cv2.imread('./test2.jpg')cv2img = cv2.cvtColor(img2_2, cv2.COLOR_BGR2RGB)img_PIL = Image.fromarray(cv2img)draw = ImageDraw.Draw(img_PIL)label = ''if result == 0:label = '女性'else:label = '男性'draw.text((170, 150), label, fill=(255, 0, 255), font=font, align='center')cheng = cv2.cvtColor(np.array(img_PIL), cv2.COLOR_RGB2BGR)plt.imshow(cheng)plt.title('預測結果')plt.axis('off')# #設置子圖默認的間距plt.tight_layout()#顯示圖像plt.show()def model_infer(img, model_path):data_transforms = transforms.Compose([transforms.Resize([112, 112]),transforms.ToTensor(),transforms.Normalize([0.5, 0.5, 0.5], [0.5, 0.5, 0.5])])# net = resnet18().cuda().eval() # 實例化自己的模型;net = resnet18().eval() # resnet模型net.load_state_dict((torch.load(model_path)), False)imgblob = data_transforms(img).unsqueeze(0).type(torch.FloatTensor).cpu()#print(imgblob)imgblob = Variable(imgblob)torch.no_grad()output = net(imgblob)_, pred = output.max(1)# print("output ---> ",output)predict_result = pred.numpy()show_infer_result(predict_result)return predict_resultif __name__ == "__main__":imagepath = './gender_data/val/1/14901.png'image = Image.open(imagepath)model_path = "./checkpoints/model-epoch-99.pth"model_infer(image, model_path)print("====infer over!")

六、預測結果

女性圖片測試

男性圖片測試

七、完整項目代碼+數據集(大于1500張)

源碼(訓練代碼及預測代碼)+模型+數據集下載:https://download.csdn.net/download/DeepLearning_/87190601
覺得有用的,感謝先點贊+收藏+關注吧,
如何快速搭建神經網絡并訓練,請參考另外博客:五步教你使用Pytorch搭建神經網絡并訓練


總結

本文屬于使用resnet網絡+pytorch深度學習框架,實現男女性別識別分類模型的訓練+預測,當然還包括了分類數據集制作,公開了項目部分代碼僅供參考學習,后續會補上多組對比實驗和代碼模型。敬請關注!

總結

以上是生活随笔為你收集整理的使用Resnet网络对人脸图像分类识别出男女性别(包含数据集制作+训练+测试)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产国语在线 | 久99精品| zzijzzij亚洲日本少妇熟睡 | 婷婷狠狠操 | 亚洲高清视频一区二区三区 | 日日麻批40分钟视频免费观看 | 久久久夜色 | 国产精品久久久久久久久久久久 | 欧美精品一二三 | 久久精品视频在线播放 | 欧美日韩亚洲国产一区 | 久草视频精品 | 99c视频高清免费观看 | 国产精品一区二区白浆 | 亚洲情感电影大片 | 成人四虎 | 在线观看91精品视频 | 国产精品久久久久久久久久尿 | 国产午夜小视频 | 国产91精品看黄网站 | 激情婷婷av | 国产一级二级在线观看 | 九九免费在线观看视频 | 国产a高清 | 黄色网址中文字幕 | 国产精品久久久久婷婷二区次 | 四虎www com| 97色在线观看免费视频 | 黄色三级在线 | 天天操夜夜干 | 99久久久久久久久久 | 五月婷婷色丁香 | 亚洲黄色在线播放 | www.久草.com | 日韩电影中文字幕在线观看 | 久久国产精品色av免费看 | 日韩中文字幕视频在线观看 | 黄色片免费看 | 五月花激情| 91精品久久久久久久久久久久久 | wwwwww色 | 久久久久久久久久久福利 | 亚洲成人av片 | 麻豆国产精品一区二区三区 | 激情综合五月天 | 粉嫩av一区二区三区四区在线观看 | 婷香五月 | 一区二区中文字幕在线 | 成片免费观看视频大全 | 欧美精品在线观看免费 | 伊人精品影院 | 在线视频在线观看 | 国产高清av在线播放 | 日韩在线电影一区 | 欧美一区二区免费在线观看 | 免费三及片 | 成人国产精品电影 | 中文字幕黄色网 | 欧美精品久久人人躁人人爽 | 在线观看 亚洲 | 日韩不卡高清视频 | 九九热免费在线观看 | 色伊人网 | 狠狠久久婷婷 | 日韩av一区二区三区四区 | 99一区二区三区 | 国产又粗又猛又黄又爽 | 精品视频免费观看 | 国产精品18久久久久vr手机版特色 | 超碰免费公开 | 久久精品欧美 | 欧美激情精品久久久久久免费印度 | 国产精品久久久久久久久久久久午夜 | www.久久久精品 | 国产在线91在线电影 | www五月天婷婷 | 91豆花在线 | 亚洲精品日韩在线观看 | 久久精选视频 | 91手机视频| 天天射射天天 | 91亚·色 | 精品久久国产一区 | 日韩欧美99 | 成人va在线观看 | 欧美吞精| 日日爱999| 最新av在线免费观看 | 精精国产xxxx视频在线播放 | 亚洲资源网 | 在线观看黄色小视频 | 国产精品高潮久久av | 国产精品嫩草55av | 亚洲免费观看在线视频 | 久久亚洲免费 | 成人在线视频免费看 | 国产黄色在线网站 | 亚洲综合五月 | 日韩av片免费在线观看 | 九九久久国产 | 免费精品国产va自在自线 | 九九热99视频 | 久草香蕉在线视频 | 国产一卡久久电影永久 | 日韩精品一区电影 | 久久国产经典视频 | 亚洲国产无| 久久99免费视频 | 亚洲小视频在线观看 | 99精品视频在线免费观看 | 色综合色综合色综合 | 超碰在线色 | 久久久久久久久久免费 | 国产午夜精品一区二区三区四区 | 久久人人爽人人爽人人片av免费 | 久久久96| 偷拍精品一区二区三区 | 日韩中文字幕免费电影 | 国产91粉嫩白浆在线观看 | 国产伦理精品一区二区 | 久久精品美女视频网站 | 亚洲乱码一区 | 国产精品 中文在线 | 天天爽夜夜爽人人爽曰av | 国产一级大片在线观看 | 色婷婷欧美 | 91片网 | 日韩二区在线 | 久久高清视频免费 | 国产精品视频 | 一区二区三区四区久久 | 精品国产精品国产偷麻豆 | 天天干中文字幕 | 国产片网站 | 黄色毛片观看 | 国产精品久久久久久超碰 | 国产精品3区 | 日韩v在线91成人自拍 | 99亚洲精品在线 | 国产美女被啪进深处喷白浆视频 | 狠狠久久综合 | 亚洲视屏| 久久高清国产视频 | 看片黄网站 | 色狠狠婷婷 | 国产在线毛片 | 成人精品国产免费网站 | 在线成人观看 | 亚洲第二色 | 久久99精品国产麻豆婷婷 | 日韩区欧美久久久无人区 | av噜噜噜在线播放 | 三级在线视频观看 | 日本中文字幕网 | 久久综合综合久久综合 | 97超碰人人模人人人爽人人爱 | 欧美综合色 | 国产理论片在线观看 | 日韩欧美一区二区三区免费观看 | 91精品免费看 | 丁香婷婷久久久综合精品国产 | 日韩av图片 | 天天天插 | 日韩.com | 1区2区3区在线观看 三级动图 | 97超级碰碰| 黄色免费电影网站 | 五月宗合网 | 日日干av | 日韩二区三区在线 | 超碰国产人人 | www91在线| 日日干网址 | 亚洲人在线7777777精品 | 精品一区 在线 | 97免费中文视频在线观看 | 成年人黄色av | 国产精品99久久久久久小说 | 中文字幕在线观看你懂的 | 91精彩在线视频 | 日韩av网站在线播放 | 一区二区三区四区不卡 | 日韩成人不卡 | 午夜影院日本 | 正在播放国产91 | 91麻豆精品国产91久久久久久 | 亚洲国产精品久久久久婷婷884 | 欧美在线视频一区二区 | 国产精品中文字幕在线播放 | 欧洲亚洲国产视频 | 久久午夜精品影院一区 | 日本精a在线观看 | 中文字幕在线播放一区二区 | 亚洲日韩欧美一区二区在线 | 日本精a在线观看 | 久久色在线观看 | .国产精品成人自产拍在线观看6 | 久久激情婷婷 | 精品国产乱码久久久久久久 | 中文字幕美女免费在线 | 香蕉视频在线免费 | 国产一级片不卡 | 97人人人人 | 午夜精品久久久久久久99热影院 | 亚洲黄色免费在线 | 91精品天码美女少妇 | 婷婷国产在线 | 五月天伊人 | 欧美精品在线观看免费 | 亚洲欧美日韩精品一区二区 | 免费看一级片 | 国产又黄又硬又爽 | 国产va饥渴难耐女保洁员在线观看 | 日韩99热| 伊人伊成久久人综合网小说 | 在线观看日韩专区 | 亚洲免费精品一区二区 | 中文字幕一二三区 | 丁香视频全集免费观看 | 日韩在线一级 | 亚洲电影久久 | 婷婷激情在线 | 国产v在线 | 婷婷六月激情 | 国产在线播放一区二区三区 | 欧美亚洲一级片 | 四虎影视精品永久在线观看 | 美女视频又黄又免费 | 色国产精品一区在线观看 | 成人在线黄色 | 中文字幕在线视频一区二区三区 | 久久成人18免费网站 | 免费男女羞羞的视频网站中文字幕 | 国产日韩欧美在线 | 欧美激情综合五月色丁香 | 伊人黄 | 天天干,天天射,天天操,天天摸 | 日韩av专区 | 久草在线视频新 | 狠狠网亚洲精品 | 亚洲国产视频a | 天天操天天摸天天干 | 日韩在线观看第一页 | 色夜视频| 国产精品毛片久久久久久久久久99999999 | 成人免费在线看片 | 一区二区三区四区免费视频 | 最新在线你懂的 | 亚洲精品视频在线观看网站 | 午夜男人影院 | 亚洲小视频在线观看 | 亚洲欧美国产视频 | 亚洲精品视频网站在线观看 | 在线播放91 | 精品亚洲视频在线 | 97色婷婷成人综合在线观看 | 久草资源免费 | 九九热免费精品视频 | 美女黄频在线观看 | 国产成人高清 | 91电影福利| 欧美在线视频二区 | 91高清一区| 亚洲我射av | 男女激情麻豆 | 久久精品视频2 | 毛片随便看 | 久久精品99国产国产精 | 在线看小早川怜子av | 91精品一区在线观看 | 日韩成人在线一区二区 | 黄色小说视频网站 | 精品91视频 | 91精品视频免费看 | 99精品国产在热久久下载 | 人人爽人人爽人人片av免 | 爱情影院aqdy鲁丝片二区 | 亚洲免费在线视频 | 三上悠亚一区二区在线观看 | 中文字幕一区二区三区乱码在线 | 亚洲欧美精品一区二区 | 免费看黄色大全 | 欧美日韩国内在线 | 中文字幕久久亚洲 | 天天爱天天操天天爽 | 美女视频黄色免费 | www.com在线观看 | 欧美日本中文字幕 | 成人三级网址 | 久久久黄视频 | a色视频 | 欧美极品少妇xbxb性爽爽视频 | 亚洲最新av网址 | 日韩免费一区二区 | 久草在线观看视频免费 | 999热线在线观看 | 国产剧情一区在线 | 日本最新一区二区三区 | aaa免费毛片 | 久草网站在线观看 | 亚洲精品美女久久 | 四虎精品成人免费网站 | 天天爽夜夜爽人人爽一区二区 | 欧美日韩中文字幕视频 | 亚洲禁18久人片 | 久久久香蕉视频 | 国产精品初高中精品久久 | 91在线视频导航 | 国产色视频网站2 | 人人玩人人添人人 | 天天操天天爽天天干 | 人人干干人人 | 精品一区二三区 | 青春草视频| 国产精品久久久区三区天天噜 | 欧美日韩国产网站 | 一区二区三区四区在线 | 免费国产亚洲视频 | 91视频91蝌蚪 | 欧美久久久久久久久久久久 | 综合国产在线 | 91久草视频 | 国产丝袜制服在线 | 黄色软件在线观看 | 国产成人精品久久亚洲高清不卡 | 婷婷中文字幕在线观看 | 中文字幕第 | 亚洲精品观看 | 亚洲资源网 | 精品国偷自产在线 | 精品成人a区在线观看 | 日韩在线激情 | 日本久久精品 | 国产自在线 | 黄色国产高清 | 色开心| 欧洲一区二区在线观看 | 国产一级视频在线免费观看 | 全久久久久久久久久久电影 | 天天av在线播放 | 在线观看亚洲精品 | 粉嫩av一区二区三区四区 | 婷婷六月综合网 | 国产黄色免费电影 | 国产字幕av | 国产视频黄 | 精品久久久久久久久久岛国gif | 一级大片在线观看 | 九色精品免费永久在线 | 激情综合站 | 成人国产精品入口 | www.国产视频 | 成年人天堂com | 午夜av在线| 国产人免费人成免费视频 | 亚洲天堂视频在线 | 色com | 天天操天天射天天 | 国产视频 亚洲精品 | 麻豆国产精品va在线观看不卡 | 国产精品久久一区二区三区不卡 | 一区二区三区日韩在线 | 国产在线欧美在线 | 久久久久亚洲国产精品 | 最近中文字幕免费大全 | 日韩在线观看视频免费 | 国产主播99 | 国产精品99久久久久久久久 | 亚洲综合视频在线 | 在线看黄色av | 国产资源 | 人人爱爱| 麻豆传媒一区二区 | 国内精品久久久 | 97香蕉视频 | 日日碰狠狠躁久久躁综合网 | 91精品国产91久久久久 | 久久亚洲婷婷 | 开心激情久久 | 免费精品久久久 | 亚洲精品国偷拍自产在线观看 | 久久在现| 国产成人精品亚洲日本在线观看 | 久久精品亚洲精品国产欧美 | 国产精品免费在线视频 | 日韩在线第一区 | 最近能播放的中文字幕 | 国产网站在线免费观看 | 日韩免费av片| 手机成人在线电影 | 午夜精品久久久久久久久久久久久久 | 9999精品| 爱爱av网| 日韩一二区在线观看 | 日韩av免费在线电影 | 在线观看国产区 | 国产精品a成v人在线播放 | 国产精品成久久久久 | 超碰人人超 | 一区二区三区精品在线 | 国产精品久久久久久久久久 | 久久免费片 | 黄色大片国产 | 国产黑丝一区二区 | 免费观看成人网 | 欧美精品亚洲精品 | 91九色成人 | 国产精品女教师 | 成人免费xyz网站 | 日韩免费视频播放 | 四虎永久免费网站 | 亚洲精品乱码久久久久久蜜桃91 | 日韩欧美精品在线 | 91在线免费观看网站 | 亚洲婷久久 | 天天草天天插 | 中文字幕丝袜制服 | 精品福利在线视频 | 精品一二三四五区 | 91av免费观看 | 91精品国产九九九久久久亚洲 | 天堂av高清 | 国产精品久久9 | 日韩免费b | 丁香婷婷色综合亚洲电影 | 久久不见久久见免费影院 | 中文在线最新版天堂 | av一区二区三区在线观看 | www.xxxx变态.com| 欧美与欧洲交xxxx免费观看 | av电影免费观看 | 日本久久久久久久久久久 | 99re亚洲国产精品 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产视频久久 | 91精品久久久久久久91蜜桃 | 美女免费网站 | 国产美女视频一区 | 日韩一区二区免费播放 | 五月婷婷丁香色 | 日韩av中文在线观看 | 国产精品久久久久毛片大屁完整版 | 欧美一区,二区 | 欧美日韩精品在线观看视频 | 91九色视频网站 | 91久久精品一区二区三区 | 国产无套视频 | 国产成人久久精品 | 超碰精品在线观看 | 久久精品伊人 | 精品国产乱码久久久久 | 亚洲国产偷| 黄色免费网 | 中文在线a在线 | 深爱五月激情五月 | 国产理论片在线观看 | 国产91九色视频 | 精品国产三级 | 美女网站黄在线观看 | 一区二区在线不卡 | 一区二区电影网 | 丁香婷婷自拍 | 日韩av资源在线观看 | 丁香婷婷基地 | 亚洲国产中文在线观看 | 欧美在线99 | 日韩黄色在线电影 | 国产私拍在线 | 日韩精品久久久免费观看夜色 | 亚洲视频一区二区三区在线观看 | 日韩一区二区三区视频在线 | 国产一区在线播放 | 日本护士三级少妇三级999 | 五月的婷婷 | 国产视频久久久 | 国产精品毛片一区二区三区 | 国产 一区二区三区 在线 | av在线成人 | 亚洲精品视频在线播放 | 成人午夜电影免费在线观看 | a天堂免费| 国产精品久久久久久久久久久久午夜 | 青草视频在线 | 日韩免费三区 | 午夜精品成人一区二区三区 | 中文国产成人精品久久一 | 9ⅰ精品久久久久久久久中文字幕 | zzijzzij亚洲日本少妇熟睡 | 91九色视频国产 | 色婷婷 亚洲 | 欧美日比视频 | 欧美极品少妇xbxb性爽爽视频 | av黄色在线播放 | 五月婷婷黄色 | 一级黄色片在线观看 | 婷婷激情网站 | 午夜精品久久久久 | 日韩av电影一区 | 日韩中文字幕免费视频 | 久久久天堂 | 99婷婷| 欧美午夜久久 | 久久视频国产精品免费视频在线 | 久久在线播放 | 成人教育av | 福利电影久久 | 久久成人综合 | 日韩免费高清在线观看 | av一本久道久久波多野结衣 | 在线免费观看国产 | 亚洲自拍偷拍色图 | 免费婷婷 | 狠狠插狠狠干 | 国产成人一区二 | 精品国产1区2区 | 91精品国产99久久久久久红楼 | 久久99国产综合精品免费 | 免费av在线网 | 91精品久久久久久综合乱菊 | 久久国产精品一区二区三区四区 | 97精品国产91久久久久久 | 国产免费激情久久 | 国产精品一区二区中文字幕 | 国产黄在线观看 | 日韩手机视频 | 最新中文字幕 | 日韩激情中文字幕 | 日精品| 91av超碰| 久久99久久精品 | 色午夜 | 精品9999| 探花在线观看 | 日本爱爱免费 | 99精品视频免费在线观看 | 久久情网| 天天操婷婷 | 人人超碰人人 | 欧美性久久久久久 | 精品一区二区免费在线观看 | 97视频在线播放 | 久久亚洲私人国产精品 | 久久免费公开视频 | 欧美性久久久 | 欧美日韩国产综合网 | 在线免费av网 | 天天搞天天干 | 插婷婷| av大全在线看 | 国产精品久久久久aaaa | 美女网站视频免费都是黄 | 久久久久日本精品一区二区三区 | 天天干天天摸天天操 | 婷婷激情小说网 | 久久精品免费电影 | 怡红院成人在线 | 欧美成人a在线 | 久久久久人人 | 亚洲日韩中文字幕在线播放 | 久久国产精品色婷婷 | 日日干夜夜草 | 亚洲一区二区三区91 | 久久久久久免费视频 | 日韩在线免费视频 | 国产精品剧情在线亚洲 | 国产一区二区在线播放 | 日韩精品大片 | 国产高清视频在线播放 | av手机在线播放 | 亚洲综合精品视频 | 久久国产精品久久久 | 九九热免费在线视频 | 欧美精品黑人性xxxx | 国产女人40精品一区毛片视频 | 免费久久久久久 | 激情视频在线高清看 | 久久久99国产精品免费 | 999久久久国产精品 高清av免费观看 | 国产爽视频| 国产一区视频免费在线观看 | 亚洲精品乱码久久久久久9色 | 精品久久电影 | 欧美一级专区免费大片 | 中文字幕亚洲不卡 | 国产黄色av网站 | 91尤物国产尤物福利在线播放 | 日韩在线观看一区二区 | 91av观看| 婷婷精品在线 | 欧美日韩免费一区二区 | 午夜精品视频在线 | 国产成人久久av977小说 | 久久久精品亚洲 | 国产在线精品一区二区 | 日韩精品视频免费在线观看 | 黄色片视频免费 | 中文字幕在线观看视频一区二区三区 | 在线高清av | 国产视频黄 | 精品国产乱码一区二区三区在线 | 综合激情久久 | 久久涩涩网站 | 伊人色播 | 国产福利一区二区三区在线观看 | 久久久久影视 | 色中射| 亚洲精品国偷自产在线91正片 | av福利在线 | 国产色道 | 欧美一区二区三区激情视频 | 欧美激情另类文学 | 天天色天天草天天射 | 国产黄色电影 | 亚洲精品国产区 | 高清有码中文字幕 | av丝袜天堂 | 人人模人人爽 | 日韩三级精品 | 久久精品久久久久电影 | 日韩丝袜 | 丁香婷婷在线观看 | 97狠狠操 | 五月激情五月激情 | 久久99日韩 | 国产一级特黄毛片在线毛片 | 色婷婷综合久久久久 | 综合天天久久 | www.av在线.com | 91黄色影视 | 亚洲在线精品视频 | 国产成人精品午夜在线播放 | 91av色| 日本精品视频在线观看 | 黄色小说网站在线 | 久久av免费电影 | 久久久久免费精品视频 | 久草久热 | 免费中文字幕 | 视频一区二区在线 | 91人人射| 天天操天天干天天插 | 欧美一区二区日韩一区二区 | 福利一区二区在线 | 免费一级片视频 | 亚洲精品久久久久999中文字幕 | 久久国产欧美日韩 | 日韩精品电影在线播放 | 五月婷婷深开心 | 亚洲男人天堂a | 激情综合网五月婷婷 | 97碰碰精品嫩模在线播放 | 香蕉精品视频在线观看 | 婷婷国产在线 | 欧美巨乳网 | av在线官网 | 国产午夜精品理论片在线 | 婷婷丁香九月 | 精品在线你懂的 | 五月天免费网站 | 9999毛片| 操综合| 日本久久久久久科技有限公司 | 日韩精品免费在线观看 | 99视频99| 激情五月婷婷激情 | 亚洲视频中文 | 欧美另类xxx | 亚洲高清久久久 | 91在线精品播放 | 草久电影 | 精品影院一区二区久久久 | 欧美一级日韩免费不卡 | 日韩69视频| 午夜免费在线观看 | 激情片av| 一区av在线播放 | 国产一区免费观看 | 色综合天天狠天天透天天伊人 | 国产一二三区av | 久久视频国产精品免费视频在线 | 天天草天天 | 丁香六月欧美 | 精品免费久久久久 | 久久婷婷色综合 | 三级黄色片在线观看 | 手机在线免费av | 丝袜美女在线观看 | 国产久视频 | 91一区啪爱嗯打偷拍欧美 | 免费黄色网址大全 | 伊人伊成久久人综合网小说 | 欧美精品午夜 | 欧美一区二区三区在线 | 国产精品免费观看久久 | 国产精品完整版 | 香蕉视频久久久 | 国产一区在线视频 | 最近中文字幕mv | 黄色软件视频大全免费下载 | 91免费视频国产 | 青春草视频在线播放 | 成人97视频一区二区 | 国产精品国内免费一区二区三区 | 久久蜜臀av | 99视频导航 | 亚洲 欧洲 国产 日本 综合 | 久久视频在线观看免费 | 亚洲国产精品999 | 999久久久久久| 欧美激情视频在线观看免费 | 中文字幕一区二区三 | 一区久久久 | 又粗又长又大又爽又黄少妇毛片 | 国产在线一卡 | 五月天网页 | 亚洲人av免费网站 | 亚洲免费在线观看视频 | 美国三级黄色大片 | 毛片精品免费在线观看 | 粉嫩一区二区三区粉嫩91 | 成人av直播| 免费av在线网站 | 99久久精品国产一区 | 日日狠狠 | 四虎免费在线观看视频 | 欧美精品国产综合久久 | 欧美一区在线观看视频 | 国内精品久久久久影院优 | 国产精品视频大全 | 国产高清久久 | 精品国产亚洲一区二区麻豆 | 久久久麻豆精品一区二区 | 精品国产一区二区三区四 | 2021国产精品视频 | 伊人五月天 | 亚洲蜜桃在线 | 久久精品99久久 | 久草在线资源免费 | www.激情五月.com| 国产精品精品国产婷婷这里av | 国产又粗又猛又爽又黄的视频先 | 99999精品| 欧美另类v | www.夜色.com| 精品视频在线看 | 99午夜| 亚洲精品久久久久999中文字幕 | 国产亚洲精品久久久久久电影 | 最新日韩在线观看视频 | www.888av| 久久久久久久久久久福利 | 96久久精品| 香蕉视频国产在线观看 | 日韩一区二区三区在线看 | 欧美精品三级在线观看 | 99在线高清视频在线播放 | 国产特级毛片aaaaaa | 在线免费试看 | 2024av| 色综合久久综合 | 特级aaa毛片 | 亚洲专区免费观看 | 97夜夜澡人人双人人人喊 | 免费观看成年人视频 | 亚洲午夜精品久久久久久久久 | 国产午夜精品一区二区三区欧美 | 日韩中文字幕免费在线观看 | 日韩黄色大片在线观看 | 天天综合网国产 | 久久精品91视频 | 97色在线观看免费视频 | 91麻豆精品国产91久久久无限制版 | 少妇bbbb搡bbbb搡bbbb | 天天久久综合 | 日韩久久久久久 | 国产成人久久 | 亚洲精品视频免费观看 | 亚洲国产免费av | 久久国产精品视频 | 日本精油按摩3 | 婷婷激情五月 | 日韩毛片在线播放 | 91高清不卡 | 国产原创在线视频 | 国精产品999国精产 久久久久 | av福利超碰网站 | 午夜精品久久久久久中宇69 | 91视频在线国产 | 中文字幕在线看视频国产 | 国产成人精品在线观看 | 婷色在线 | 亚洲日韩中文字幕在线播放 | 狠狠干天天射 | 中文字幕2021| 久久超| 午夜影视av | 91视频国产高清 | 伊人手机在线 | 日精品| 免费国产黄线在线观看视频 | 国产色女 | 国产精品久久久久久久久软件 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 久草在线视频首页 | 久久久久国产精品www | 欧美,日韩 | 国产香蕉视频在线播放 | 日本一区二区三区免费看 | 国产性天天综合网 | 国产手机在线观看 | 韩国一区二区三区视频 | 最近乱久中文字幕 | 九九色综合 | 五月婷婷在线综合 | 欧美激情视频一区二区三区免费 | japanese黑人亚洲人4k | 国产日韩欧美在线影视 | 日韩欧美电影 | 亚洲精品乱码久久久久久 | 精品亚洲在线 | 亚洲国产免费网站 | 成人免费av电影 | 成人免费在线网 | 不卡中文字幕av | 人人草在线观看 | 亚洲 精品在线视频 | 美女在线黄| 精品免费久久久久久 | 97网站| 国产精品视频最多的网站 | 天天曰天天爽 | www在线观看国产 | 免费在线观看一区 | 国产视频1| www.色午夜| 美女在线免费观看视频 | 国产99久久久欧美黑人 | 免费观看视频黄 | 日本中文字幕网址 | 在线观看的黄色 | 亚洲国产福利视频 | 国产精品2区 | 99热国产在线中文 | 久久超碰在线 | 欧美日韩免费观看一区二区三区 | 黄色网www | 国产精品mv在线观看 | 久久99亚洲精品久久 | 色噜噜日韩精品欧美一区二区 | 在线韩国电影免费观影完整版 | 亚洲国产资源 | 国产又粗又猛又黄又爽 | 亚洲国产精品视频在线观看 | 91九色自拍 | 日韩在线三级 | av免费观看在线 | 四虎免费在线观看视频 | 丁香久久婷婷 | 在线视频1卡二卡三卡 | 国产精品久久久99 | 欧美黄色特级片 | 成人小视频在线免费观看 | 免费a v观看| 大胆欧美gogo免费视频一二区 | 91看片网址| 黄色在线观看免费网站 | 2019免费中文字幕 | 特级西西444www大精品视频免费看 | 日韩久久午夜一级啪啪 | 亚洲激情久久 | 天天操福利视频 | 啪啪资源| 日日夜夜精品视频天天综合网 | 国产三级午夜理伦三级 | 在线视频一区二区 | 中文字幕色婷婷在线视频 | 超碰97中文| 精品久久久久久一区二区里番 | 成人欧美一区二区三区在线观看 | 亚洲国产高清视频 | 欧美另类tv| 97视频一区 | 黄色大全免费网站 | 成人精品一区二区三区中文字幕 | 日韩精品一区二区免费视频 | 午夜视频99| 国产欧美综合在线观看 | 日韩在线播放欧美字幕 | 毛片网在线观看 | 少妇超碰在线 | 久久99深爱久久99精品 | 精品国产免费一区二区三区五区 | 国产精品一区二区av日韩在线 | 欧美人体xx| 91麻豆精品国产自产在线游戏 | 99久久超碰中文字幕伊人 | 日韩在线免费不卡 | 欧美性性网 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 国产在线色 | 午夜视频免费播放 | 在线中文字幕av观看 | 欧美作爱视频 | 日本h视频在线观看 | 欧美日本高清视频 | 麻豆免费精品视频 | 日韩av线观看 | 91mv.cool在线观看 | 国产精品麻豆免费版 | 成人在线播放视频 | 美女激情影院 | 亚洲一区日韩精品 | 成年人av在线播放 | 亚洲国产精品一区二区久久,亚洲午夜 | 欧美一级裸体视频 | 免费av高清| 久久久精品成人 | 国产高清在线精品 | 少妇bbw搡bbbb搡bbb | 中文字幕在线视频免费播放 | 一区二区三区视频网站 | 在线电影 一区 | 黄色成品视频 | 久草精品视频在线播放 | 日韩91av | 在线视频日韩 | 色在线免费| 日日麻批40分钟视频免费观看 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 精品久久久久久久久久 | 性色av免费看 | 国产精品一区二区三区视频免费 | 精品国产一区二区三区久久影院 | 四虎成人精品 | 日本爱爱片 | 在线观看亚洲国产 | 亚洲va欧洲va国产va不卡 | av大全在线免费观看 | 五月婷婷影院 | 天天干,天天插 | 成人久久久久久久久久 | 超碰在线免费福利 | 在线观看视频黄色 | 中文字幕成人在线 | 97av色| 免费看精品久久片 | 欧美精品生活片 | 黄污视频大全 | 久爱精品在线 | 精品国产乱码久久久久 | 91成人午夜 | 日韩精品视频一二三 | 久久精选视频 | 99精品欧美一区二区三区黑人哦 | 五月天激情婷婷 | 久久神马影院 | 精品国产免费一区二区三区五区 | a久久久久| 天天弄天天操 | 日韩精品久久久久久久电影竹菊 | 国产99久久99热这里精品5 | 日日夜夜狠狠操 | 欧美黄色成人 | 狠狠干婷婷 | 婷婷亚洲综合五月天小说 | 黄色网在线播放 | 国产精品人人做人人爽人人添 | 激情视频一区 | 日韩在线观看网址 | 久久伊人五月天 | 麻豆视频大全 | 日韩高清免费无专码区 | 久久国产精品久久精品国产演员表 | 国产日产高清dvd碟片 | www黄在线| 午夜三级在线 | 国产精品免费一区二区 | 在线成人一区二区 | 99久热在线精品视频成人一区 | 6080yy午夜一二三区久久 | 色www精品视频在线观看 | 在线99 | 国产精品美女网站 | 国产日韩视频在线播放 | 亚洲伊人天堂 | 中文字幕人成人 | 久久久国产精品免费 | 草久草久| 伊人国产女 | 日韩成人免费在线观看 | av+在线播放在线播放 | 久久激情视频 久久 | 中文字幕av影院 | 香蕉视频在线视频 | 超碰公开在线观看 | 欧美日本一区 | 香蕉视频亚洲 | 精品国产精品久久一区免费式 |