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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

百度paddle框架学习(二):使用经典VGG网络完成人脸口罩判别

發布時間:2023/12/13 综合教程 40 生活家
生活随笔 收集整理的這篇文章主要介紹了 百度paddle框架学习(二):使用经典VGG网络完成人脸口罩判别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、數據集來源

百度AI Studio平臺口罩人臉分類數據集:https://aistudio.baidu.com/aistudio/datasetdetail/22392

二、目錄結構與項目環境

1、目錄結構

2、項目環境

import os
import json
import random
import paddle
import zipfile
import numpy as np
import paddle.fluid as fluid
import matplotlib.pyplot as plt

from PIL import Image

三、數據處理與參數配置

1、參數配置

"""參數配置
"""
train_parameters = {
    "input_size": [3, 224, 224],            # 輸入圖片的shape
    "class_dim": -1,                        # 分類數
    "src_path": './maskDetect.zip',         # 原始數據集路徑
    "target_path": './',                    # 要解壓的路徑
    "train_list_path": './train.txt',       # train.txt路徑
    "eval_list_path": './eval.txt',         # eval.txt路徑
    "readme_path": './readme.json',         # readme.json路徑
    "label_dict": {},                       # 標簽字典
    "num_epochs": 5,                        # 訓練迭代次數
    "train_batch_size": 5,                  # 訓練時每次喂入批次大小
    "learning_strategy": {                  # 優化時相關參數配置
        "lr": 0.001                         # 學習率
    }
}

"""參數初始化
"""
src_path = train_parameters['src_path']
target_path = train_parameters['target_path']
train_list_path = train_parameters['train_list_path']
eval_list_path = train_parameters['eval_list_path']
batch_size = train_parameters['train_batch_size']

2、數據處理

· 解壓數據集

def unzip_data(src_path, traget_path):
    """解壓原始數據集
    """
    if not os.path.isdir(traget_path + "maskDetect"):
        z = zipfile.ZipFile(src_path, 'r')
        z.extractall(path=traget_path)
        z.close()

unzip_data(src_path, target_path)

· 生成數據列表

def get_data_list(target_path, train_list_path, eval_list_path):
    """生成數據列表
    """
    # 存放所有類別信息
    class_detail = []
    # 獲取所有類別保存的文件夾名
    data_list_path = target_path + 'maskDetect/'
    class_dirs = os.listdir(data_list_path)
    # 總的圖像數量
    all_class_images = 0
    # 存放類別標簽
    class_label = 0
    # 存放類別數目
    class_dim = 0
    # 存儲要寫進eval.txt和train.txt中的內容
    trainer_list = []
    eval_list = []
    # 讀取每個類別,['maskimages', 'nomaskimages']
    for class_dir in class_dirs:
        if class_dir != '.DS_Store':
            class_dim += 1
            # 每個類別的信息
            class_detail_list = {}
            eval_sum = 0
            trainer_sum = 0
            # 統計每個類別有多少張圖片
            class_sum = 0
            # 獲取類別路徑
            path = data_list_path + class_dir
            # 獲取所有圖片
            img_paths = os.listdir(path)
            # 遍歷文件夾下每個圖片
            for img_path in img_paths:
                name_path = path + '/' +img_path    # 每張圖片路徑
                # 每10張圖片取一次圖片做驗證集
                if class_sum % 10 == 0:
                    # 驗證集數目+1
                    eval_sum += 1
                    eval_list.append(name_path + '	%d' % class_label + '
')
                else:
                    trainer_sum += 1    # 訓練集數目
                    trainer_list.append(name_path + '	%d' % class_label + '
')
                # 類別數目
                class_sum += 1
                # 所有類別圖片數目
                all_class_images += 1
            # 說明的json文件的class_detail數據
            class_detail_list['class_name'] = class_dir                 # 類別名稱
            class_detail_list['class_label'] = class_label              # 類別標簽
            class_detail_list['class_eval_images'] = eval_sum           # 該類數據的測試集數目
            class_detail_list['class_trainer_images'] = trainer_sum     # 該類數據的訓練集數目
            class_detail.append(class_detail_list)
            # 初始化標簽列表
            train_parameters['label_dict'][str(class_label)] = class_dir
            class_label += 1
    # 初始化分類數
    train_parameters['class_dim'] = class_dim

    # 亂序
    random.shuffle(eval_list)
    with open(eval_list_path, 'a') as f:
        for eval_image in eval_list:
            f.write(eval_image)

    random.shuffle(trainer_list)
    with open(train_list_path, 'a') as ff:
        for train_image in trainer_list:
            ff.write(train_image)

    # 用于說明的json文件信息
    readjson = {'all_class_name': data_list_path,
                'all_class_images': all_class_images,
                'class_detail': class_detail}
    jsons = json.dumps(readjson, sort_keys=True, indent=4, separators=(',', ': '))
    with open(train_parameters['readme_path'], 'w') as f:
        f.write(jsons)
    print('生成數據列表完成.')

# 劃分訓練集和數據集,亂序并生成數據列表
# 每次生成數據列表前先清空train.txt和eval.txt
# 防止train.txt和eval.txt疊加寫入數據
with open(train_list_path, 'w') as f:
    f.seek(0)       # 游標移至文件頭
    f.truncate()    # 截斷游標后的字符
with open(eval_list_path, 'w') as ff:
    ff.seek(0)
    ff.truncate()

# 生成數據列表
get_data_list(target_path, train_list_path, eval_list_path)

生成的readme.json文件內容:

{
    "all_class_images": 185,
    "all_class_name": "./maskDetect/",
    "class_detail": [
        {
            "class_eval_images": 12,
            "class_label": 0,
            "class_name": "maskimages",
            "class_trainer_images": 103
        },
        {
            "class_eval_images": 7,
            "class_label": 1,
            "class_name": "nomaskimages",
            "class_trainer_images": 63
        }
    ]
}

生成的train.txt文件內容:

生成的eval.txt文件內容:

· 定義并構造數據提供器

def custom_reader(file_list):
    """自定義reader
    """
    def reader():
        with open(file_list, 'r') as f:
            lines = [line.strip() for line in f]
            for line in lines:
                img_path, lab = line.strip().split('	')
                img = Image.open(img_path)
                if img.mode != 'RGB':       # 統一色彩空間(防止部分圖像為RGBA色彩空間,程序報錯)
                    img = img.convert('RGB')
                img = img.resize((224, 224), Image.BILINEAR)
                img = np.array(img).astype('float32')
                img = img.transpose((2, 0, 1))      # HWC to CHW
                img = img / 255     # 歸一化
                yield img, int(lab)
    return reader

# 構造數據提供器
train_reader = paddle.batch(reader=custom_reader(train_list_path),
                            batch_size=batch_size,
                            drop_last=True)
eval_reader = paddle.batch(reader=custom_reader(eval_list_path),
                           batch_size=batch_size,
                           drop_last=True)

說明:數據預處理已合并在數據提供器定義函數之中,詳細情況請參考上述代碼的注釋部分。

四、網絡模型構建

1、VGG16模型結構

2、池化-卷積類構建

# 池化-卷積類
class ConvPool(fluid.dygraph.Layer):
    def __init__(self,
                 num_channels,      # 通道數
                 num_filters,       # 卷積核個數
                 filter_size,       # 卷積核尺寸
                 pool_size,         # 池化核尺寸
                 pool_stride,       # 池化步長
                 groups,            # 卷積組數(連續卷積個數)
                 conv_stride=1,
                 conv_padding=1,
                 act=None,          # 激活函數類型
                 pool_type='max'):
        super(ConvPool, self).__init__()
        self._conv2d_list = []
        for i in range(groups):
            # add_sublayer方法:返回一個由所有子層組成的列表
            conv2d = self.add_sublayer('bb_%d' % i,
                                       fluid.dygraph.Conv2D(num_channels=num_channels,  # 通道數
                                                            num_filters=num_filters,    # 卷積核個數
                                                            filter_size=filter_size,    # 卷積核大小
                                                            stride=conv_stride,         # 步長
                                                            padding=conv_padding,       # padding大小,默認為0
                                                            act=act)
                                       )
            num_channels = num_filters
            self._conv2d_list.append(conv2d)

        self._pool2d = fluid.dygraph.Pool2D(pool_size=pool_size,        # 池化核大小
                                            pool_type=pool_type,        # 池化類型,默認是最大池化
                                            pool_stride=pool_stride)    # 池化步長

    def forward(self, inputs):
        x = inputs
        for conv in self._conv2d_list:
            x = conv(x)
        x = self._pool2d(x)
        return x

說明:由于vgg16結構存在連續卷積,并且連續卷積后都跟有一池化層,結構比較有規律,因此使用一個池化-卷積類封裝卷積和池化層詳細參數請參考上述代碼及注釋。

3、網絡模型構建

# VGG16網絡
class VGGNet(fluid.dygraph.Layer):
    def __init__(self):
        super(VGGNet, self).__init__()
        """
        ConvPool方法調用參數說明(以convpool01定義為例):
        3 - 通道數為3
        64 - 卷積核個數64
        3 - 卷積核大小3×3
        2 - 池化核大小2×2
        2 - 池化步長2
        2 - 連續卷積個數為2
        """
        self.convpool01 = ConvPool(3, 64, 3, 2, 2, 2, act='relu')
        self.convpool02 = ConvPool(64, 128, 3, 2, 2, 2, act='relu')
        self.convpool03 = ConvPool(128, 256, 3, 2, 2, 3, act='relu')
        self.convpool04 = ConvPool(256, 512, 3, 2, 2, 3, act='relu')
        self.convpool05 = ConvPool(512, 512, 3, 2, 2, 3, act='relu')
        # 全連接層定義
        self.pool_5_shape = 512 * 7 * 7
        self.fc01 = fluid.dygraph.Linear(self.pool_5_shape, 4096, act='relu')
        self.fc02 = fluid.dygraph.Linear(4096, 4096, act='relu')
        self.fc03 = fluid.dygraph.Linear(4096, 2, act='softmax')

    def forward(self, inputs, label=None):
        y = self.convpool01(inputs)
        y = self.convpool02(y)
        y = self.convpool03(y)
        y = self.convpool04(y)
        y = self.convpool05(y)

        y = fluid.layers.reshape(y, shape=[-1, 512*7*7])
        y = self.fc01(y)
        y = self.fc02(y)
        y = self.fc03(y)

        if label is not None:
            acc = fluid.layers.accuracy(input=y, label=label)
            return y, acc
        else:
            return y

五、模型訓練中的參數可視化

1、定義參數容器

all_train_iter = 0
all_train_iters = []
all_train_costs = []      # 代價列表
all_train_accs = []       # 準確率列表

2、參數可視化函數定義

# 參數變化的可視化
def draw_train_process(title, iters, costs, accs, label_cost, label_acc):
    plt.title(title, fontsize=24)
    plt.xlabel('iter', fontsize=20)
    plt.ylabel('cost/acc', fontsize=20)
    plt.plot(iters, costs, color='red', label=label_cost)
    plt.plot(iters, accs, color='green', label=label_acc)
    plt.legend()
    plt.grid()
    plt.show()

def draw_process(title, color, iters, data, label):
    plt.title(title, fontsize=24)
    plt.xlabel('iter', fontsize=20)
    plt.ylabel(label, fontsize=20)
    plt.plot(iters, data, color=color, label=label)
    plt.legend()
    plt.grid()
    plt.show()

說明:有關參數可視化函數的調用,將在訓練部分代碼中展示,稍安勿躁。

六、模型訓練與評估

1、模型訓練

# 訓練
with fluid.dygraph.guard():
    print(train_parameters['class_dim'])
    print(train_parameters['label_dict'])
    vgg = VGGNet()
    vgg.train()
    optimizer = fluid.optimizer.AdamOptimizer(learning_rate=train_parameters['learning_strategy']['lr'],
                                              parameter_list=vgg.parameters())
    for epoch_num in range(train_parameters["num_epochs"]):
        for batch_id, data in enumerate(train_reader()):
            dy_x_data = np.array([x[0] for x in data]).astype('float32')
            y_data = np.array([x[1] for x in data]).astype('int64')
            y_data = y_data[:, np.newaxis]
            # 將Numpy格式數據轉換成dygraph接收的輸入
            img = fluid.dygraph.to_variable(dy_x_data)
            label = fluid.dygraph.to_variable(y_data)

            out, acc = vgg(img, label)
            loss = fluid.layers.cross_entropy(out, label)
            avg_loss = fluid.layers.mean(loss)
            # 使用backward()方法執行反向傳播
            avg_loss.backward()
            optimizer.minimize(avg_loss)
            # 將參數梯度清零保證下一輪訓練的正確性
            vgg.clear_gradients()
            # 記錄訓練中計算的數據,用于可視化
            all_train_iter = all_train_iter + train_parameters["train_batch_size"]
            all_train_iters.append(all_train_iter)
            all_train_costs.append(loss.numpy()[0])
            all_train_accs.append(acc.numpy()[0])

            if batch_id % 10 == 0:
                print('Loss at epoch {} step {}: {}, acc: {}'.format(epoch_num,
                                                                     batch_id,
                                                                     avg_loss.numpy(),
                                                                     acc.numpy()))
    # 調用參數可視化函數進行參數可視化
    draw_train_process('training', all_train_iters, all_train_costs, all_train_accs, 'training cost', 'traing_acc')
    draw_process('training loss', 'red', all_train_iters, all_train_costs, 'training loss')
    draw_process('training acc', 'green', all_train_iters, all_train_accs, 'training acc')

    # 保存模型參數
    fluid.save_dygraph(vgg.state_dict(), 'vgg')
    print('Final loss: {}'.format(avg_loss.numpy()), '
End of training')

參數可視化:



2、模型校驗

# 模型校驗
with fluid.dygraph.guard():
    model, _ = fluid.load_dygraph('vgg')
    vgg = VGGNet()
    vgg.load_dict(model)
    vgg.eval()
    accs = []
    for batch_id, data in enumerate(eval_reader()):
        dy_x_data = np.array([x[0] for x in data]).astype('float32')
        y_data = np.array([x[1] for x in data]).astype('int64')
        y_data = y_data[:, np.newaxis]
        img = fluid.dygraph.to_variable(dy_x_data)
        label = fluid.dygraph.to_variable(y_data)
        out, acc = vgg(img, label)
        lab = np.argsort(out.numpy())
        accs.append(acc.numpy()[0])
    print('驗證集平均準確率: ', np.mean(accs))

七、模型預測

1、預測圖像預處理

def load_image(img_path):
    # 預測圖像預處理
    img = Image.open(img_path)
    if img.mode != 'RGB':
        img = img.convert('RGB')
    img = img.resize((224, 224), Image.BILINEAR)
    img = np.array(img).astype('float32')
    img = img.transpose((2, 0, 1))
    img = img / 255
    return img

2、載入模型預測結果

label_dict = train_parameters['label_dict']

with fluid.dygraph.guard():
    model, _ = fluid.dygraph.load_dygraph('vgg')
    vgg = VGGNet()
    vgg.load_dict(model)
    vgg.eval()

    # 可視化預測圖片
    infer_path = './2.jpg'
    img = Image.open(infer_path)
    plt.imshow(img)
    plt.show()

    # 對預測圖像進行處理
    infer_imgs = [load_image(infer_path)]
    infer_imgs = np.array(infer_imgs)

    for i in range(len(infer_imgs)):
        data = infer_imgs[i]
        dy_x_data = np.array(data).astype('float32')
        dy_x_data = dy_x_data[np.newaxis, :, :, :]
        img = fluid.dygraph.to_variable(dy_x_data)
        out = vgg(img)
        lab = np.argmax(out.numpy)  # argmax()返回最大數的索引
        print('第{}個樣本,被預測為: {}'.format(i+1, label_dict[str(lab)]))
    print('預測結束')

測試圖像:

訓練過程與結果預測:

說明:相對于數據集(較小)來言,vgg16網絡模型是一個十分復雜的模型,所以模型訓練的最終結果并不理想,如果使用更大的數據集會得到更可觀的訓練效果。

總結

以上是生活随笔為你收集整理的百度paddle框架学习(二):使用经典VGG网络完成人脸口罩判别的全部內容,希望文章能夠幫你解決所遇到的問題。

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

亚洲精品小区久久久久久 | 中文字幕一区二区三区四区在线视频 | 欧美日韩免费在线观看视频 | 欧美激情精品久久久久久免费印度 | 精品久久网站 | 免费视频成人 | 中文字幕一区2区3区 | 99热在| 国产一级在线观看视频 | 在线观看亚洲专区 | 波多野结衣最新 | 午夜在线国产 | 91刺激视频 | 国产精品成人免费 | 伊人亚洲综合 | 日韩中文字幕免费在线观看 | 国产区在线视频 | 久久综合久久综合这里只有精品 | 这里只有精品视频在线观看 | 国产精品视频在线看 | 国产一区欧美在线 | 成人动图| 久久一区二区三区超碰国产精品 | 亚洲毛片视频 | 欧美视频在线二区 | 91久久精品一区 | 人人澡人人爽欧一区 | 韩日三级av| 久久国产精品二国产精品中国洋人 | 在线观看视频国产 | 午夜国产福利在线观看 | 亚洲 欧美日韩 国产 中文 | 欧美激情精品 | 日韩电影一区二区三区在线观看 | 精品毛片久久久久久 | 四虎在线影视 | 亚洲人人网 | 在线观看av大片 | 国产精品v欧美精品 | 国产美女免费看 | 人人爽人人爽人人片av | 免费a视频 | 99这里只有精品99 | 99久久精品无码一区二区毛片 | 欧美色精品天天在线观看视频 | 精品国产日本 | 伊人伊成久久人综合网小说 | 91精品国产亚洲 | 成人9ⅰ免费影视网站 | 狠狠干夜夜爽 | 久久精品人 | 91免费高清 | 一区在线观看 | 就操操久久 | 福利片免费看 | 黄色大全在线观看 | 香蕉看片| 国产99久久久精品 | 亚洲国产精品资源 | 久草www| 亚洲一区二区黄色 | 久久五月婷婷综合 | 成人毛片在线观看 | 国产精品手机在线播放 | 欧美日韩在线播放 | 天天插天天干天天操 | 在线91视频 | av免费在线观 | 91在线区| 9草在线 | 日韩欧美电影在线观看 | 国产色区| 黄色电影网站在线观看 | 99热在线免费观看 | 成人羞羞视频在线观看免费 | 国产91免费观看 | 在线蜜桃视频 | 成人黄色大片网站 | 精品久久久久一区二区国产 | 玖玖玖国产精品 | 美女国内精品自产拍在线播放 | 欧美一级小视频 | 激情五月色播五月 | 国产精品美女www爽爽爽视频 | 国产美女视频网站 | 天天插天天 | 日本精品一区二区三区在线播放视频 | 午夜久久久久 | 日韩激情在线视频 | 免费av成人在线 | 亚洲乱码国产乱码精品天美传媒 | 91在线区 | 日韩视频在线不卡 | 中文字幕 国产精品 | 福利视频导航网址 | 人人精品久久 | 精品国产网址 | 美女久久久久久久 | 婷婷色视频 | 久操久 | 成人免费观看在线视频 | 成人黄色电影视频 | 亚洲精品资源在线 | 欧美一级片在线 | 国产精品一区二区在线播放 | 亚洲人xxx| 亚洲精品视频网 | 久草在线视频资源 | 久久免费播放 | 久久免费国产精品 | 在线 你懂 | 日韩中文字幕亚洲一区二区va在线 | 日韩av在线免费播放 | www.777奇米 | 国产成人精品一区二区三区免费 | 午夜婷婷在线播放 | 999久久久久久久久久久 | 999久久久| 天天曰视频 | 久久69av | 日本论理电影 | 一区二区伦理 | 香蕉视频导航 | 久久精品香蕉 | 国产片免费在线观看视频 | 久久国产经典 | 国产婷婷vvvv激情久 | 日本中文在线观看 | 国产亚洲精品xxoo | 免费成人黄色av | 久草视频在线看 | 天天狠狠干| 亚洲日本在线视频观看 | 欧美 亚洲 另类 激情 另类 | 91九色蝌蚪国产 | 夜夜操夜夜干 | 中文字幕在线第一页 | 亚洲黄色在线观看 | 亚洲一级国产 | 婷婷在线综合 | 成人av影视在线 | 探花视频在线观看 | 国产一级二级在线播放 | 黄网站污 | 黄色一级大片在线观看 | 日本精品视频在线观看 | 色在线高清| 91人人澡人人爽人人精品 | 中文字幕av全部资源www中文字幕在线观看 | 天天爽天天爽天天爽 | 午夜在线观看一区 | 精品v亚洲v欧美v高清v | 高清不卡毛片 | 亚洲人毛片 | 久草免费福利在线观看 | 国产一级高清视频 | 一区二区三区精品在线视频 | 日韩av福利在线 | 国产视频网站在线观看 | 亚洲三级在线免费观看 | 亚洲va天堂va欧美ⅴa在线 | 亚洲国产中文字幕在线观看 | 黄色网在线免费观看 | 伊人五月天 | 黄色网址在线播放 | 久精品一区 | avcom在线 | 欧美综合在线观看 | www国产亚洲精品久久麻豆 | 国产大片黄色 | 色综合天天综合网国产成人网 | 免费网站色 | 五月天亚洲婷婷 | 激情丁香婷婷 | 精品福利网站 | av片子在线观看 | 日本大尺码专区mv | 久久综合五月天 | 日本乱视频 | av在线电影播放 | 狠狠躁夜夜av | 久久久久久久久久久影院 | 欧美日韩国产高清视频 | 欧美性生交大片免网 | 深爱五月网 | 中文字幕免费观看全部电影 | 99在线观看视频 | 久久综合九色99 | 在线观看岛国片 | 亚洲国产中文字幕在线 | 日韩高清dvd| 在线观看日韩专区 | 91麻豆免费视频 | 干干夜夜 | 国产精品不卡在线播放 | 天天草天天草 | 精品亚洲男同gayvideo网站 | 成人在线免费av | 91精品区| 亚洲小视频在线 | 97色涩| 成人午夜在线电影 | 在线观看亚洲成人 | 欧美日韩免费一区二区三区 | 亚洲第一香蕉视频 | 国产短视频在线播放 | 欧美巨乳网| 亚洲婷婷在线 | 视频二区在线 | 亚洲黄色在线免费观看 | 婷婷综合久久 | 日韩毛片在线免费观看 | 免费日韩一区二区三区 | 日韩免费一区二区在线观看 | 亚洲男人天堂2018 | 欧美精品一区二区三区四区在线 | 黄色一级大片免费看 | 欧美日韩在线网站 | 欧美日韩视频在线观看一区二区 | 久久久久久久久久久久国产精品 | 亚洲精品av中文字幕在线在线 | 久久99国产一区二区三区 | 国产麻豆剧传媒免费观看 | 九九激情视频 | japanesexxxxfreehd乱熟 | 麻豆91精品91久久久 | 久碰视频在线观看 | 亚洲国产精品视频在线观看 | 久久九九久久九九 | 亚洲欧美日韩国产精品一区午夜 | 伊人中文网 | 在线免费av网站 | 91网在线看| 免费a现在观看 | 天天狠狠操 | 国产精品久久久久久久免费大片 | 亚洲精品美女在线 | 999国产在线 | 看片网站黄色 | 一级一片免费看 | 精品国产一区二区三区久久久久久 | 免费日韩av电影 | 亚洲 欧美 成人 | 日日夜夜草 | 伊人久久影视 | 天天操夜夜逼 | 99热在线免费观看 | 99热999| 国产成人av在线 | 韩日电影在线观看 | 91精品区 | 激情 亚洲 | 久久综合成人网 | 美女久久久久久久 | 国产在线黄 | 国产自产在线视频 | 亚洲一区二区视频在线 | 天天射网 | 久久欧洲视频 | 国产在线观看91 | 麻豆国产精品一区二区三区 | 国产黄色视 | 亚洲成人免费在线 | 亚洲最新av网站 | 日日日天天天 | 日韩理论在线视频 | 天天综合久久综合 | 激情五月婷婷 | 射久久久| 色综合久久久久综合体 | 激情丁香综合五月 | 人人干网| 欧美一区二区在线免费观看 | 精品国产一区二区久久 | 欧美日韩成人一区 | 色婷婷狠狠操 | 久一在线 | 日韩欧美一区二区三区黑寡妇 | 久99久在线视频 | 成人片在线播放 | 色国产精品一区在线观看 | 天天综合中文 | 看片黄网站 | 亚洲欧美偷拍另类 | 国产一区二区在线观看免费 | 国产精品国产精品 | 亚洲午夜精品一区二区三区电影院 | 国产精品露脸在线 | 在线观看资源 | 黄色精品一区二区 | 人人干天天射 | 成年人视频免费在线播放 | 久久精品视频一 | 国内小视频在线观看 | 久久精品国产成人 | 99久精品 | 国产免费久久av | 韩国一区二区三区在线观看 | 99久久精品国产免费看不卡 | 免费观看全黄做爰大片国产 | 久久国产午夜精品理论片最新版本 | 美女搞黄国产视频网站 | 亚洲精品乱码 | 国产原创91| 精品国产伦一区二区三区 | 国产精品毛片久久久久久 | 九色视频网站 | 国产精品永久免费视频 | 在线观看免费视频 | 成年人视频免费在线播放 | 人人澡人人舔 | 中文字幕在线乱 | 91完整视频| 亚洲成人资源 | 免费午夜视频在线观看 | www.夜色.com | 午夜国产在线观看 | 99久热精品 | www.午夜 | 国产精品激情偷乱一区二区∴ | 十八岁免进欧美 | 日韩乱色精品一区二区 | 久草在线最新免费 | 久久久国产精品成人免费 | 久久精品男人的天堂 | 91传媒91久久久| 中文av影院 | 国产资源在线免费观看 | 香蕉在线视频观看 | 国产在线观看污片 | 日韩精品久久一区二区 | 最近日本中文字幕a | 亚洲春色成人 | 涩涩在线 | av 在线观看 | 亚洲永久精品在线观看 | 久久久久久久久艹 | av电影 一区二区 | av免费在线观看网站 | 成人av在线直播 | 国产99久久久久久免费看 | 天天色天天爱天天射综合 | 97人人爽| 麻豆一精品传二传媒短视频 | 亚洲免费黄色 | 96精品高清视频在线观看软件特色 | 国产在线最新 | 久久久久综合视频 | 91网在线 | 最新亚洲视频 | 视频一区视频二区在线观看 | 久久视频精品在线 | 国产一线二线三线在线观看 | 精品1区二区 | 91精品一 | 99看视频在线观看 | 五月激情av | 奇米影视在线99精品 | 欧美成年性 | 四虎亚洲精品 | 最近免费观看的电影完整版 | 久久理伦片 | 欧美日韩在线看 | 免费在线观看一级片 | 国产精华国产精品 | 国产99免费视频 | 国产精品剧情在线亚洲 | 激情综合六月 | 一区在线观看 | 久久无码av一区二区三区电影网 | 在线观看v片 | 人人人爽 | 91在线色| 99久久精品国产一区二区三区 | 欧美精品二 | 欧美巨大荫蒂茸毛毛人妖 | 精品麻豆入口免费 | 日韩成人中文字幕 | 国产精品美女久久久久久免费 | 超碰在线亚洲 | 国产精品久久一区二区三区不卡 | 亚洲成人黄色在线观看 | 狠狠干婷婷色 | 波多野结衣在线播放视频 | 国产精品观看在线亚洲人成网 | 国产精品视频最多的网站 | 亚洲 欧洲 国产 精品 | 91自拍视频在线观看 | 国产在线观看不卡 | 国产极品尤物在线 | 日韩天堂网 | 黄色网址av| 亚洲免费av一区二区 | 九色精品免费永久在线 | 最近中文国产在线视频 | 成人在线观看av | 国产黑丝一区二区 | 五月婷婷视频在线 | 国产精品理论片在线播放 | 日韩在线观看不卡 | 粉嫩av一区二区三区四区在线观看 | www.天天草 | 九九免费在线观看视频 | 激情久久久久久久久久久久久久久久 | 日韩av免费网站 | 亚洲精品乱码久久久久久9色 | 在线看小早川怜子av | 精品自拍av | 精品国产一区二区三区男人吃奶 | 国产亚洲精品电影 | 91手机视频在线 | 国产麻豆视频免费观看 | 日本久久久精品视频 | 五月婷婷伊人网 | 亚洲精品xx| 色婷婷导航 | 免费h精品视频在线播放 | 黄色网免费 | 欧美激情在线看 | 麻豆系列在线观看 | 国产精品一区二区三区在线免费观看 | 日韩一区二区三区在线观看 | 亚洲免费激情 | 韩国av一区 | 99久久婷婷国产 | 中文字幕免费一区 | 精品久久网 | 久久久久久久久爱 | 97超碰人人干 | 精品国产aⅴ麻豆 | 免费污片 | 久久国内精品视频 | 99久久精品免费 | 97在线看片| 久久综合中文字幕 | 国产美女精品视频免费观看 | 999视频网站| 最近免费中文字幕 | 夜夜骑首页 | 免费观看性生交大片3 | 欧美成人在线免费 | 国产不卡一区二区视频 | 中文字幕精品一区二区三区电影 | 伊在线视频 | 精品福利网 | 国内视频在线 | www激情久久 | 一区二区激情视频 | 国产精品区二区三区日本 | 亚洲在线网址 | 久久久在线视频 | 天天干天天做天天操 | www.久久91| 美女视频黄,久久 | 久久久久看片 | 久久夜夜夜 | 97色婷婷成人综合在线观看 | 99爱国产精品 | 一级黄色在线免费观看 | 91精品专区 | 91桃花视频| 精品国产一区二区三区久久久蜜臀 | 免费看网站在线 | 99九九99九九九视频精品 | 激情网站免费观看 | 日韩一区二区久久 | 视频三区 | 国产国语在线 | 日本精品久久久一区二区三区 | 最近2019中文免费高清视频观看www99 | 久久久2o19精品 | 91豆花在线观看 | 国产黑丝一区二区三区 | 99一区二区三区 | 午夜免费视频网站 | 久久精品一区二区三区国产主播 | 91精品国产综合久久福利 | 麻豆一精品传二传媒短视频 | 欧美成人精品在线 | 国产高清免费av | www.xxxx变态.com | 91精品久久久久久综合乱菊 | 最新中文字幕视频 | 国产91九色蝌蚪 | 久久久久国产精品厨房 | 欧美永久视频 | 日韩精品一区二区三区免费观看视频 | 国产尤物在线视频 | 亚洲成a人片综合在线 | 婷婷在线视频观看 | 亚州天堂| 天天操天天操天天 | 99久久精品免费看国产一区二区三区 | aaa毛片视频 | 成人aaa毛片 | 手机在线看片日韩 | 夜夜看av| 国产在线 一区二区三区 | 一区二区三区在线电影 | 成年人免费看的视频 | 免费日韩电影 | 亚洲精品短视频 | 国产精品久久一区二区三区不卡 | 波多野结衣视频一区 | 亚洲资源一区 | 美女视频黄网站 | 久久精彩免费视频 | 欧美一级视频一区 | 丁香激情婷婷 | 欧美精品一区二区性色 | 国产专区在线 | 字幕网资源站中文字幕 | 亚洲视频播放 | 狠狠躁日日躁 | 久草精品视频在线看网站免费 | 亚洲精品国产日韩 | 久久亚洲婷婷 | 91传媒视频在线观看 | 在线观看视频精品 | 色偷偷人人澡久久超碰69 | 奇米影视四色8888 | 国产日本亚洲高清 | 手机av在线网站 | 国产黄网站在线观看 | 在线亚洲观看 | 色婷婷 亚洲 | 精品久久久久久亚洲综合网站 | 国产艹b视频 | 免费看v片网站 | 久久电影网站中文字幕 | 777视频在线观看 | 日本三级全黄少妇三2023 | 免费高清在线观看成人 | 免费午夜视频在线观看 | www日日 | 成人毛片a | 成人av高清在线 | 国产精品美女久久久久久2018 | 人人视频网站 | 狠狠网 | 成人精品视频 | 91av社区| 亚洲永久精品在线观看 | 亚洲成人资源在线 | 国产精品久久久久久一二三四五 | 免费看久久久 | 婷婷久久久| 91中文字幕在线 | 伊人伊成久久人综合网站 | 在线观看黄av | 在线久久| 久久免费视频99 | 黄色小说视频网站 | 欧美日韩中文国产一区发布 | 在线视频电影 | 手机看片久久 | 精品在线观看一区二区 | 美女一级毛片视频 | 国产成人在线观看免费 | 中文字幕人成人 | 欧美激情第28页 | 国产原创91 | 色a资源在线 | 高清av中文字幕 | 亚洲国产精品va在线 | 中文字幕在线观看的网站 | 亚洲午夜久久久久 | 五月激情丁香图片 | 色噜噜日韩精品一区二区三区视频 | 四虎成人精品 | 9在线观看免费高清完整版 玖玖爱免费视频 | 亚洲综合色视频在线观看 | 欧美成人理伦片 | 色网影音先锋 | 日日干夜夜操视频 | 久久久久久久久久网站 | 日韩av黄 | 日韩黄色免费看 | 综合网天天射 | 97超碰.com | 成人影视免费看 | 久久精品综合网 | 亚洲精品成人av在线 | 国产亚洲婷婷 | 去干成人网 | 亚洲香蕉在线观看 | 色综合久久88 | 日日躁你夜夜躁你av蜜 | 国产精品美女在线观看 | 国产精品午夜在线 | 在线观看免费91 | 精品国产色 | 免费在线激情电影 | 99热这里只有精品在线观看 | 国产亚洲精品久久久久久久久久 | 久久午夜免费观看 | 国产精品久久亚洲 | 91麻豆免费看 | 国产精品情侣视频 | 久久久国内精品 | 国产高清av免费在线观看 | 天天综合亚洲 | 久久草在线视频国产 | 中文字幕在线播出 | 免费看久久 | 欧美日韩一区二区在线观看 | 中文字幕九九 | 免费福利在线视频 | 色狠狠综合天天综合综合 | 97人人视频 | 国产精品久久久久影院 | 久久免费高清 | 天天综合网久久综合网 | 麻豆果冻剧传媒在线播放 | 成人黄色大片网站 | 97在线免费观看 | 亚洲在线激情 | 日本黄色免费观看 | 日韩免费看视频 | 精品福利网站 | 99精品免费观看 | 婷婷色伊人 | 91在线最新 | 免费在线中文字幕 | 久久久久福利视频 | 精品国产一区二区三区四区在线观看 | 亚洲人成精品久久久久 | 国产婷婷一区二区 | 天天伊人网 | 国产激情小视频在线观看 | 不卡的av在线 | 久久精品中文 | 香蕉视频在线免费 | 中文字幕国产一区 | 在线av资源 | 久艹视频在线免费观看 | aⅴ精品av导航 | 成人va视频 | 69欧美视频| 国产精品久久久久久久久久久杏吧 | 日韩aa视频 | 99在线免费观看视频 | 午夜视频在线观看一区二区三区 | 国产精品久久二区 | 天天色天天综合网 | 91字幕| 亚洲成人av在线电影 | 久久99国产精品二区护士 | 中文一二区 | 免费日韩一区二区三区 | 久久a v电影 | 在线观看www视频 | 亚洲日韩中文字幕在线播放 | 九九日九九操 | 欧美精品一二三 | 中文字幕在线视频精品 | 福利一区二区 | 国产亚洲精品久久久久久无几年桃 | 精品爱爱 | 最近中文字幕高清字幕免费mv | 亚洲精品玖玖玖av在线看 | 日韩三级在线观看 | 欧美 日韩 国产 中文字幕 | 亚洲精品国产视频 | 在线视频欧美日韩 | 中文字幕日韩无 | 久热av在线 | 国产黄色大片 | 亚洲激情一区二区三区 | 欧美一级艳片视频免费观看 | 一区二区三区手机在线观看 | 天堂av网址 | 91精品国产自产老师啪 | 亚洲精品视频免费在线 | 午夜精品一区二区三区免费 | 久艹在线免费观看 | 日日干激情五月 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 国产成人亚洲在线观看 | 日韩av电影网站在线观看 | 人人要人人澡人人爽人人dvd | 四川妇女搡bbbb搡bbbb搡 | 久久久激情视频 | 综合激情av | 日韩精品大片 | 亚洲永久精品视频 | 少妇精品久久久一区二区免费 | 99高清视频有精品视频 | 日本精品久久久一区二区三区 | 精品国产网址 | 色99中文字幕 | 99精品视频在线观看免费 | 成 人 黄 色 视频 免费观看 | 97国产精品免费 | 黄色a一级视频 | 91桃色在线播放 | 日韩精品免费 | 久久精品视频免费播放 | 草久在线观看 | 天天射夜夜爽 | 国产高清视频在线免费观看 | 亚洲一区二区视频在线 | 日韩激情第一页 | 一区二区三区四区在线免费观看 | 五月婷网站 | 中文字幕色婷婷在线视频 | av一级片 | 色悠悠久久综合 | 四虎5151久久欧美毛片 | 日韩激情中文字幕 | 一级黄色免费 | 久久免费精彩视频 | 4438全国亚洲精品在线观看视频 | 欧洲亚洲女同hd | 麻豆传媒视频观看 | 成人xxxx | 成人黄色国产 | 国产精品久久久久久电影 | 天天爱天天射 | 99操视频 | 成人毛片在线观看 | 欧美另类性 | 国产亚洲视频在线观看 | 国产精品久久久久久久久久久久冷 | 天天色天天色 | 日本中文字幕在线电影 | 日本成址在线观看 | 欧美激情视频一区二区三区 | 探花视频网站 | 69国产在线观看 | 在线播放视频一区 | 黄色av网站在线观看免费 | 亚洲欧美视频一区二区三区 | 亚洲欧洲精品一区二区精品久久久 | 国产拍揄自揄精品视频麻豆 | 久久线视频 | 天天玩天天干天天操 | 国产又粗又硬又爽的视频 | 成人wwwxxx视频 | 日韩精品在线视频免费观看 | 天天躁日日躁狠狠躁 | 国产精品永久久久久久久www | 大胆欧美gogo免费视频一二区 | 在线免费av播放 | www激情com | 国产精品涩涩屋www在线观看 | 久久久久国产精品免费 | 麻豆91在线看| 婷婷六月天在线 | 久久久www成人免费精品张筱雨 | 中文字幕乱码亚洲精品一区 | 久久精品第一页 | 婷婷综合亚洲 | av久久久 | 国产美女在线免费观看 | 精品欧美一区二区在线观看 | 免费成人看片 | 日本久草电影 | 人人澡人人添人人爽一区二区 | 人人干人人添 | 69国产精品视频 | 欧美性黑人 | 国产不卡在线观看 | 激情偷乱人伦小说视频在线观看 | 亚洲人人网| 天堂在线视频中文网 | 玖玖在线视频观看 | 探花视频免费观看 | 国产中文字幕91 | 国产一区二区在线播放 | 日韩精品久久久免费观看夜色 | 人人涩 | 国产精品免费在线播放 | 欧美日韩亚洲一 | 天天爱天天操天天干 | 国产在线精品国自产拍影院 | 欧美亚洲另类在线视频 | 成人午夜电影网站 | 国产精品久久久久久999 | 欧美粗又大 | www黄色com | www免费视频com━ | 九九影视理伦片 | 国产欧美精品一区二区三区四区 | 国产一二三四在线观看视频 | 欧美99热| 午夜精品久久久久99热app | 久久夜av| 91视视频在线直接观看在线看网页在线看 | 日韩在线免费高清视频 | 激情婷婷亚洲 | 日韩 精品 一区 国产 麻豆 | 99在线精品视频 | 欧美成人xxx | 欧美精品乱码久久久久久 | 欧美精品在线一区二区 | 人人射人人爱 | 九九热在线精品视频 | 天天人人 | 国产视频中文字幕在线观看 | 中文字幕888| 久久草| 天天射射天天 | 天天色天天草天天射 | 国产一级片直播 | 人成在线免费视频 | 天天干中文字幕 | 亚洲精区二区三区四区麻豆 | 日韩区欠美精品av视频 | 亚洲一区二区精品视频 | 国产玖玖在线 | 国产系列 在线观看 | 久久免费视频精品 | 久久tv视频| 免费看黄20分钟 | 国产精品视频地址 | 午夜av剧场 | 久久伊人综合 | 亚洲高清不卡av | 久久久精品国产一区二区电影四季 | 国产在线欧美在线 | 日韩欧美黄色网址 | 国产少妇在线观看 | 欧美不卡视频在线 | 91亚洲国产成人 | 91精品国产成人观看 | 久久精品成人欧美大片古装 | av中文在线播放 | 亚洲国产成人在线观看 | 黄色av三级在线 | 97精品久久 | 午夜久久久精品 | 丁香综合av | 精品99在线视频 | 精品国产乱码久久久久久1区2匹 | 欧美精品久久久久a | 日韩特黄av | 久久综合99| 一级特黄av | 日韩在线资源 | 久久黄色免费视频 | 97人人射| 天天艹天天 | 久久免费的视频 | 亚洲精品午夜aaa久久久 | www.色国产| av电影免费在线播放 | 99在线视频观看 | 久久国产视屏 | 日韩av区| 亚洲综合色婷婷 | 久久er99热精品一区二区三区 | 成人综合婷婷国产精品久久免费 | 国产精成人品免费观看 | 免费福利片2019潦草影视午夜 | 中文字幕色在线视频 | 97超碰精品| 一级a性色生活片久久毛片波多野 | 亚洲精选在线 | 在线观看精品 | 美女久久久久久久久久 | 国产精品成人一区二区 | 欧美激情xxxx| 久久久久免费精品国产小说色大师 | 日本精品久久久久中文字幕5 | 久久免费视频在线观看 | 九九精品久久久 | 日本久久高清视频 | 中文字幕之中文字幕 | 久久人人爽 | 免费三级网 | 久久久久久久久久久免费视频 | 91在线91 | 2021国产精品 | 午夜视频一区二区 | www色| 日韩精品免费专区 | 欧美日韩亚洲一 | 精品国产_亚洲人成在线 | 久久久不卡影院 | 亚洲涩涩涩涩涩涩 | 日日草av | 日日操网 | 色丁香婷婷 | 欧美一级性生活视频 | 天天射天天艹 | 四虎在线观看精品视频 | 日韩专区中文字幕 | 91在线在线观看 | 日韩视频中文字幕 | 手机看片午夜 | 亚洲激情 欧美激情 | 天天操天天爱天天爽 | 美女很黄免费网站 | 日韩xxxbbb| 国产精品黑丝在线观看 | 最近中文字幕免费视频 | 欧美激情精品久久久 | 日本中文字幕在线免费观看 | 999电影免费在线观看 | 国产精品免费观看国产网曝瓜 | 亚洲区精品视频 | 日韩乱码中文字幕 | 欧美精品亚洲精品日韩精品 | 五月婷婷丁香激情 | 在线色资源 | 国产精品视频永久免费播放 | 天天弄天天干 | 日韩精品国产一区 | 伊人激情网 | 国产精品一区二区久久精品 | 在线91精品 | 国产在线欧美日韩 | 久草视频国产 | 精品一区二区久久久久久久网站 | 成人在线超碰 | 欧美精品v国产精品v日韩精品 | 国产精品成人久久久久久久 | 午夜影院日本 | 欧美综合在线视频 | 天天射综合网站 | 激情开心站 | 二区三区av | 中文字幕一区二区三区四区久久 | 99精品欧美一区二区蜜桃免费 | 国产久草在线 | 国产精品永久在线 | 成人v| 探花视频在线观看免费 | 亚洲v精品 | 狠狠躁夜夜躁人人爽超碰91 | 国产成人精品一区二区三区在线观看 | 国产韩国精品一区二区三区 | 中文字幕精品一区二区精品 | 97成人在线观看视频 | 国产成人精品一区在线 | 最近久乱中文字幕 | 久久超碰99 | 三级视频片 | 国产成人免费观看 | 91免费在线视频 | 久久久www成人免费毛片麻豆 | 国产精品美乳一区二区免费 | 成人影视免费 | 久久久精品国产一区二区三区 | 久久精品亚洲一区二区三区观看模式 | 99精品视频免费 | 国产精品21区 | 午夜精品一区二区三区可下载 | 丁香花中文字幕 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 天天操比 | 美女免费视频一区 | www.xxxx变态.com| 国产涩涩在线观看 | 性色av香蕉一区二区 | 国产精品18久久久 | 一级一片免费观看 | 免费一级片在线观看 | 欧美在线1区 | 亚洲天堂va | 青青草国产成人99久久 | 色综合国产 | 韩日电影在线 | 成年人免费av | 婷婷午夜天 | 五月亚洲 | 成人av动漫在线 | 91香蕉视频 mp4 | 一区二区视频在线免费观看 | www.色午夜 | 午夜视频免费 | 九九免费在线看完整版 | 五月天九九 | 午夜天使 | 欧美综合国产 | 99久久久久久久久 | 97色在线| 亚洲成aⅴ人在线观看 | 久久一区国产 | 在线亚洲观看 | 超碰在线99 | 亚洲夜夜网| 国产精品久久久久久超碰 | 欧美日韩色婷婷 | 国产中文字幕在线看 | 国产高清中文字幕 | 久久综合网色—综合色88 | 蜜桃av人人夜夜澡人人爽 | 亚洲一区二区天堂 | 日一日干一干 | se视频网址| 成人高清av在线 | 久久96国产精品久久99漫画 | 亚洲一区二区三区四区精品 | 久久免费看毛片 | 中文字幕韩在线第一页 | 免费日韩 精品中文字幕视频在线 |