国产无遮挡裸体免费直播视频,久久精品国产蜜臀av,动漫在线视频一区二区,欧亚日韩一区二区三区,久艹在线 免费视频,国产精品美女网站免费,正在播放 97超级视频在线观看,斗破苍穹年番在线观看免费,51最新乱码中文字幕

Python+pyqt5實(shí)現(xiàn)一個圖像變形工具

 更新時間:2025年11月11日 09:56:57   作者:努力還債的學(xué)術(shù)嗎嘍  
FacePrank?是一個功能強(qiáng)大的圖像變形工具,使用Python和PyQt5開發(fā),下面小編就為大家介紹一下如何編寫一個圖像變形工具,實(shí)現(xiàn)捏臉效果吧

效果展示

在此處插入: 整蠱后的照片

用FacePrank可以輕松實(shí)現(xiàn):放大眼睛、縮小鼻子、扭曲表情、旋轉(zhuǎn)漩渦等各種搞笑效果!

項(xiàng)目簡介

FacePrank 是一個功能強(qiáng)大的圖像變形工具,使用Python和PyQt5開發(fā)。無需復(fù)雜的PS技能,只需鼠標(biāo)點(diǎn)擊拖拽,就能對照片進(jìn)行各種有趣的變形處理。無論是惡搞朋友、制作表情包,還是進(jìn)行創(chuàng)意設(shè)計,這個工具都能滿足你的需求!

核心特性

  • 簡單易用:純鼠標(biāo)操作,無需專業(yè)技能
  • 五大工具:放大、縮小、拖拽扭曲、旋轉(zhuǎn)、橡皮擦
  • 拖拽上傳:支持直接拖拽圖片到窗口
  • Ctrl+滾輪縮放:精確查看和編輯細(xì)節(jié)
  • 右鍵拖拽視圖:自由移動查看區(qū)域
  • 參數(shù)可調(diào):畫筆半徑、變化強(qiáng)度隨心調(diào)節(jié)
  • 中文路徑支持:完美支持中文文件名和路徑
  • 實(shí)時預(yù)覽:所見即所得的編輯體驗(yàn)

環(huán)境配置

方式一:使用Conda創(chuàng)建虛擬環(huán)境(推薦)

第一步:創(chuàng)建虛擬環(huán)境

conda create -n faceprank python=3.8

第二步:激活環(huán)境

conda activate faceprank

第三步:配置清華鏡像源(提速)

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

第四步:安裝依賴

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5>=5.15.0 opencv-python>=4.5.0 numpy>=1.19.0

或者使用requirements.txt安裝:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

方式二:使用pip直接安裝

如果你不使用Conda,也可以直接用pip安裝:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5>=5.15.0 opencv-python>=4.5.0 numpy>=1.19.0

依賴說明

庫名稱版本要求用途
PyQt5≥5.15.0圖形界面框架
opencv-python≥4.5.0圖像處理核心
numpy≥1.19.0數(shù)值計算和數(shù)組操作

快速啟動

克隆或下載項(xiàng)目

# 如果你有g(shù)it
git clone <項(xiàng)目地址>
cd FacePrank

# 或者直接下載ZIP解壓

運(yùn)行程序

python main.py

啟動成功后,會看到一個現(xiàn)代化的深色主題界面,中央有提示文字:“?? 點(diǎn)擊上傳圖片按鈕 或 拖拽圖片到此處”

使用指南

基本操作流程

上傳圖片

  • 方法一:點(diǎn)擊工具欄的 上傳圖片 按鈕,選擇圖片文件
  • 方法二:直接拖拽圖片文件到窗口中(推薦!更方便)

支持的格式:PNG、JPG、JPEG、BMP、GIF

選擇工具

在頂部工具欄選擇你需要的變形工具:

工具圖標(biāo)工具名稱快捷說明
??放大工具點(diǎn)擊位置向外擴(kuò)展,產(chǎn)生凸起效果
??縮小工具點(diǎn)擊位置向內(nèi)收縮,產(chǎn)生凹陷效果
?拖拽扭曲拖拽鼠標(biāo)實(shí)現(xiàn)推拉扭曲效果
??旋轉(zhuǎn)工具點(diǎn)擊產(chǎn)生螺旋漩渦效果
??橡皮擦擦除變形,恢復(fù)原圖

調(diào)整參數(shù)

1.畫筆半徑:控制影響范圍(10-800像素,默認(rèn)170)

  • 滑塊拖動或直接輸入數(shù)值
  • 較小半徑適合精細(xì)調(diào)整
  • 較大半徑適合大范圍變形

2.變化強(qiáng)度:控制變形程度(0.01-1.0,默認(rèn)0.20)

  • 數(shù)值越大,變形越明顯
  • 建議從小值開始嘗試

3.旋轉(zhuǎn)方向:僅旋轉(zhuǎn)工具有效

  • ? 順時針
  • ? 逆時針

查看與導(dǎo)航

1.Ctrl + 滾輪:放大縮小圖像(0.1x - 10x)

  • 鼠標(biāo)位置為縮放中心
  • 適合查看和編輯細(xì)節(jié)

2.右鍵拖拽:移動視圖位置

  • 按住鼠標(biāo)右鍵拖動
  • 配合縮放功能精確編輯

開始編輯

1.放大/縮小/旋轉(zhuǎn):左鍵點(diǎn)擊圖像位置

  • 按住不放會持續(xù)累積效果
  • 移動鼠標(biāo)位置會跟隨

2.拖拽扭曲:按住鼠標(biāo)左鍵拖動

拖拽路徑上的像素會隨鼠標(biāo)移動

3.橡皮擦:按住鼠標(biāo)左鍵拖動

經(jīng)過區(qū)域恢復(fù)為原始圖像

保存結(jié)果

點(diǎn)擊 保存 按鈕,選擇保存路徑和格式(PNG或JPG)

使用技巧

  • 拖拽上傳最方便:直接把圖片拖到窗口,有綠色高亮提示
  • 放大查看細(xì)節(jié):Ctrl+滾輪放大圖像,可以看清每個像素
  • 小畫筆精細(xì)調(diào)整:處理眼睛、鼻子等小部位時,減小畫筆半徑
  • 強(qiáng)度從小到大:先用小強(qiáng)度測試效果,再逐步加大
  • 按住鼠標(biāo)累積:需要明顯效果時,按住鼠標(biāo)不放
  • 多次點(diǎn)擊加強(qiáng):在同一位置多次點(diǎn)擊可以加強(qiáng)效果
  • 局部恢復(fù)原圖:用橡皮擦可以只修正某些過度變形的區(qū)域
  • 一鍵重置:點(diǎn)擊重置按鈕恢復(fù)原圖(包括縮放和偏移)

創(chuàng)意玩法

  • 放大眼睛:使用放大工具點(diǎn)擊眼睛位置,制作大眼萌照
  • 縮小鼻子:使用縮小工具點(diǎn)擊鼻子,打造精致小臉
  • 扭曲表情:使用拖拽工具拉扯嘴角,制作搞笑表情
  • 漩渦背景:使用旋轉(zhuǎn)工具點(diǎn)擊背景,營造魔幻效果
  • 組合變形:多種工具配合使用,創(chuàng)造獨(dú)特效果

五大核心工具詳解

工具一:放大工具

作用原理:點(diǎn)擊的區(qū)域像素會向外擴(kuò)展擠壓,產(chǎn)生凸起效果

適用場景

  • 放大眼睛,制作大眼萌照
  • 放大嘴巴,制作夸張表情
  • 突出某個特定部位

使用方法

  • 選擇  放大 工具
  • 調(diào)整畫筆半徑(建議50-150)
  • 左鍵點(diǎn)擊要放大的位置
  • 按住不放可以持續(xù)放大

效果示例:眼睛從正常大小變成圓圓的大眼睛

工具二:縮小工具

作用原理:半徑內(nèi)的像素向中心靠攏收縮,產(chǎn)生凹陷效果

適用場景

  • 縮小鼻子,打造小巧鼻梁
  • 縮小臉頰,制作瓜子臉
  • 減小某些突出部位

使用方法

  • 選擇 縮小 工具
  • 調(diào)整畫筆半徑(建議40-120)
  • 左鍵點(diǎn)擊要縮小的位置
  • 按住不放可以持續(xù)縮小

提示:縮小工具與放大工具效果相反,可以互相配合使用

工具三:拖拽扭曲工具

作用原理:路徑上的像素會隨著鼠標(biāo)移動而拖拽變形

適用場景

  • 推、拉、扭曲面部特征
  • 制作各種搞怪表情
  • 自由變形任何區(qū)域

使用方法

  • 選擇 拖拽扭曲 工具
  • 調(diào)整畫筆半徑和強(qiáng)度
  • 按住鼠標(biāo)左鍵拖動
  • 拖拽路徑會產(chǎn)生變形效果

技巧:這是最靈活的工具,可以實(shí)現(xiàn)各種創(chuàng)意變形

工具四:旋轉(zhuǎn)工具

作用原理:周圍像素會以點(diǎn)擊點(diǎn)為軸進(jìn)行螺旋旋轉(zhuǎn)

適用場景

  • 制作漩渦特效
  • 營造魔幻氛圍
  • 創(chuàng)造藝術(shù)效果

使用方法

  • 選擇 旋轉(zhuǎn) 工具
  • 選擇旋轉(zhuǎn)方向(?順時針 或 ?逆時針)
  • 調(diào)整畫筆半徑(建議100-300)
  • 左鍵點(diǎn)擊要旋轉(zhuǎn)的位置
  • 按住不放產(chǎn)生更強(qiáng)烈的旋轉(zhuǎn)效果

創(chuàng)意玩法:在眼睛位置使用旋轉(zhuǎn)工具,制作催眠效果

工具五:橡皮擦工具

作用原理:擦除變形效果,將修改的區(qū)域還原為原始圖像

適用場景

  • 修正過度變形的區(qū)域
  • 局部恢復(fù)原圖
  • 精細(xì)調(diào)整效果

使用方法

  • 選擇橡皮擦 工具
  • 調(diào)整畫筆半徑(擦除范圍)
  • 按住鼠標(biāo)左鍵拖動
  • 經(jīng)過的區(qū)域會恢復(fù)原樣

特點(diǎn)

  • 支持邊緣羽化,過渡自然
  • 只恢復(fù)經(jīng)過路徑和畫筆范圍內(nèi)的像素
  • 可以配合其他工具實(shí)現(xiàn)精細(xì)控制

核心技術(shù)實(shí)現(xiàn)

技術(shù)架構(gòu)

FacePrank
├── 界面層 (PyQt5)
│   ├── 主窗口 (QMainWindow)
│   ├── 工具欄 (QToolBar)
│   ├── 畫布組件 (QLabel)
│   └── 控制面板 (QSlider + QLineEdit)

├── 圖像處理層 (OpenCV)
│   ├── 圖像加載與保存
│   ├── 格式轉(zhuǎn)換 (BGR ↔ RGB)
│   └── 重映射與插值

└── 算法層 (NumPy)
    ├── 網(wǎng)格映射變形
    ├── 距離場計算
    ├── 雙線性插值
    └── 向量化運(yùn)算

變形算法原理

1. 放大/縮小算法

核心思想:基于距離的像素位移

# 計算到中心點(diǎn)的距離
distances = np.sqrt(dx**2 + dy**2)

# 計算影響因子(越近影響越大)
factor = 1.0 - (distances / brush_radius)
factor = factor ** 2  # 平滑過渡

# 放大:像素向內(nèi)收縮
scale = 1.0 - strength * factor * mask
new_x = cx + dx * scale
new_y = cy + dy * scale

# 縮?。合袼叵蛲鈹U(kuò)展
scale = 1.0 + strength * factor * mask
new_x = cx + dx * scale
new_y = cy + dy * scale

關(guān)鍵點(diǎn)

  • 使用平方函數(shù)實(shí)現(xiàn)平滑過渡
  • mask確保只影響半徑內(nèi)像素
  • strength控制變形強(qiáng)度

2. 旋轉(zhuǎn)算法

核心思想:極坐標(biāo)旋轉(zhuǎn)變換

# 計算旋轉(zhuǎn)角度(距離越近旋轉(zhuǎn)越多)
angle = (1.0 - distances / brush_radius) * π * strength * direction

# 旋轉(zhuǎn)矩陣變換
cos_angle = np.cos(angle)
sin_angle = np.sin(angle)

new_x = cx + dx * cos_angle - dy * sin_angle
new_y = cy + dx * sin_angle + dy * cos_angle

關(guān)鍵點(diǎn)

  • 使用旋轉(zhuǎn)矩陣進(jìn)行坐標(biāo)變換
  • direction參數(shù)控制順時針/逆時針
  • 角度隨距離衰減,產(chǎn)生漩渦效果

3. 拖拽扭曲算法

核心思想:路徑方向的力場扭曲

# 計算拖拽向量
drag_x = end_x - start_x
drag_y = end_y - start_y

# 計算影響因子
factor = (1.0 - distances / brush_radius) ** 2

# 應(yīng)用拖拽位移
new_x = x_indices - drag_x * factor * mask * strength
new_y = y_indices - drag_y * factor * mask * strength

關(guān)鍵點(diǎn)

  • 基于鼠標(biāo)移動方向計算位移向量
  • 使用力場衰減實(shí)現(xiàn)自然過渡
  • 支持連續(xù)拖拽的流暢效果

4. 橡皮擦算法(向量化優(yōu)化)

核心思想:權(quán)重混合原圖與變形圖

# 計算距離和混合因子
distances = np.sqrt((x_coords - cx)**2 + (y_coords - cy)**2)
factor = (1.0 - distances / brush_radius) ** 0.5

# 向量化混合
blended = current_image * (1 - factor) + original_image * factor

關(guān)鍵點(diǎn)

  • 使用NumPy向量化代替雙重循環(huán),性能提升10倍以上
  • 邊緣羽化實(shí)現(xiàn)自然過渡
  • 只混合mask為True的區(qū)域

雙線性插值

所有變形算法最后都使用OpenCV的remap函數(shù)進(jìn)行雙線性插值

new_image = cv2.remap(image, 
                      new_x.astype(np.float32),
                      new_y.astype(np.float32), 
                      cv2.INTER_LINEAR)

這確保了變形后圖像的平滑性和視覺質(zhì)量。

交互優(yōu)化

Ctrl+滾輪縮放實(shí)現(xiàn)

def wheelEvent(self, event):
    if event.modifiers() == Qt.ControlModifier:
        # 獲取鼠標(biāo)位置對應(yīng)的圖像坐標(biāo)
        old_image_pos = self.get_image_pos(event.pos())
        
        # 計算縮放增量
        zoom_factor = 1.1 if delta > 0 else 0.9
        self.zoom_scale *= zoom_factor
        
        # 調(diào)整偏移以保持鼠標(biāo)位置下的圖像點(diǎn)不變
        # ... 坐標(biāo)變換計算 ...

關(guān)鍵點(diǎn)

  • 檢測Ctrl鍵修飾符
  • 鼠標(biāo)位置為中心進(jìn)行縮放
  • 自動調(diào)整偏移量,保持縮放中心不變

右鍵拖拽視圖

def mouseMoveEvent(self, event):
    if self.is_panning:
        delta = event.pos() - self.pan_start_pos
        self.offset_x += delta.x()
        self.offset_y += delta.y()
        # 限制偏移范圍...

持續(xù)效果實(shí)現(xiàn)

使用QTimer定時器實(shí)現(xiàn)按住鼠標(biāo)持續(xù)變形:

def start_continuous_effect(self):
    self.continuous_timer = QTimer(self)
    self.continuous_timer.timeout.connect(self.apply_continuous_effect)
    self.continuous_timer.start(50)  # 每50ms應(yīng)用一次

中文路徑支持

使用NumPy的文件IO函數(shù)支持中文路徑:

# 加載圖像
image_data = np.fromfile(file_path, dtype=np.uint8)
image = cv2.imdecode(image_data, cv2.IMREAD_COLOR)

# 保存圖像
_, encoded_img = cv2.imencode('.png', image)
encoded_img.tofile(file_path)

項(xiàng)目結(jié)構(gòu)

FacePrank/
├── main.py              # 主程序文件(1098行)
│   ├── ImageCanvas類    # 圖像畫布和交互處理
│   │   ├── 圖像加載與顯示
│   │   ├── 鼠標(biāo)事件處理
│   │   ├── 五大變形算法
│   │   ├── 縮放和平移
│   │   └── 拖拽上傳支持
│   │
│   └── FaceWarpApp類   # 主窗口和UI
│       ├── 工具欄創(chuàng)建
│       ├── 控制面板
│       ├── 參數(shù)調(diào)節(jié)
│       └── 文件操作

├── requirements.txt     # Python依賴
├── README.md           # 項(xiàng)目說明
└── face.jpg            # 示例圖片

完整源代碼

主程序:main.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
捏臉APP - 簡單的圖像變形工具
支持放大、縮小、拖拽扭曲、旋轉(zhuǎn)等變形效果
"""

import sys
import numpy as np
from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QVBoxLayout, 
                             QHBoxLayout, QPushButton, QLabel, QSlider, 
                             QFileDialog, QToolBar, QAction, QSizePolicy)
from PyQt5.QtCore import Qt, QPoint, QRect
from PyQt5.QtGui import QImage, QPixmap, QPainter, QPen, QColor
import cv2


class ImageCanvas(QLabel):
    """圖像畫布類,處理圖像顯示和鼠標(biāo)交互"""
    
    def __init__(self, parent=None):
        super().__init__(parent)
        self.parent_window = parent
        self.image = None
        self.display_image = None
        self.original_image = None
        
        self.current_tool = None  # 當(dāng)前工具: 'enlarge', 'shrink', 'drag', 'rotate', 'eraser'
        self.brush_radius = 170  # 默認(rèn)畫筆半徑
        self.effect_strength = 0.20  # 變化強(qiáng)度,范圍0.01-1.0,默認(rèn)0.20
        self.rotate_direction = 1  # 旋轉(zhuǎn)方向:1為順時針,-1為逆時針
        
        self.is_drawing = False
        self.last_point = None
        
        # 用于持續(xù)效果的定時器
        self.continuous_timer = None
        self.continuous_pos = None
        
        # 圖像縮放和平移
        self.zoom_scale = 1.0  # 縮放比例
        self.offset_x = 0  # X軸偏移
        self.offset_y = 0  # Y軸偏移
        self.is_panning = False  # 是否正在拖拽視圖
        self.pan_start_pos = None  # 拖拽起始位置
        
        self.setMinimumSize(800, 600)
        self.setAlignment(Qt.AlignCenter)
        self.setStyleSheet("""
            QLabel { 
                background-color: #2b2b2b; 
                color: #9E9E9E;
                font-size: 24px;
                font-weight: bold;
                border: 3px dashed #555;
                border-radius: 10px;
            }
        """)
        self.setText('?? 點(diǎn)擊"上傳圖片"按鈕\n或\n拖拽圖片到此處')
        
        # 啟用拖放功能
        self.setAcceptDrops(True)
        
    def load_image(self, file_path):
        """加載圖像(支持中文路徑)"""
        try:
            # 使用np.fromfile()讀取文件,支持中文路徑
            image_data = np.fromfile(file_path, dtype=np.uint8)
            self.original_image = cv2.imdecode(image_data, cv2.IMREAD_COLOR)
            
            if self.original_image is None:
                return False
                
            # BGR轉(zhuǎn)RGB
            self.original_image = cv2.cvtColor(self.original_image, cv2.COLOR_BGR2RGB)
            self.image = self.original_image.copy()
            self.display_image = self.image.copy()
            
            self.update_display()
            return True
        except Exception as e:
            print(f"加載圖片失敗: {e}")
            return False
        
    def update_display(self):
        """更新顯示的圖像(支持縮放和平移)"""
        if self.image is None:
            return
            
        # 圖片加載后移除虛線邊框
        self.setStyleSheet("""
            QLabel { 
                background-color: #2b2b2b; 
            }
        """)
            
        h, w, ch = self.image.shape
        bytes_per_line = ch * w
        q_image = QImage(self.image.data, w, h, bytes_per_line, QImage.Format_RGB888)
        
        # 創(chuàng)建pixmap
        pixmap = QPixmap.fromImage(q_image)
        
        # 應(yīng)用縮放
        if self.zoom_scale != 1.0:
            # 先按原始比例縮放到窗口
            base_scaled = pixmap.scaled(self.size(), Qt.KeepAspectRatio, Qt.SmoothTransformation)
            # 再應(yīng)用用戶縮放
            new_width = int(base_scaled.width() * self.zoom_scale)
            new_height = int(base_scaled.height() * self.zoom_scale)
            scaled_pixmap = pixmap.scaled(new_width, new_height, Qt.KeepAspectRatio, Qt.SmoothTransformation)
        else:
            scaled_pixmap = pixmap.scaled(self.size(), Qt.KeepAspectRatio, Qt.SmoothTransformation)
        
        # 如果圖像大于窗口,需要裁剪并應(yīng)用偏移
        if scaled_pixmap.width() > self.width() or scaled_pixmap.height() > self.height():
            # 計算裁剪區(qū)域
            x = max(0, min(-self.offset_x, scaled_pixmap.width() - self.width()))
            y = max(0, min(-self.offset_y, scaled_pixmap.height() - self.height()))
            w = min(self.width(), scaled_pixmap.width())
            h = min(self.height(), scaled_pixmap.height())
            
            # 裁剪
            scaled_pixmap = scaled_pixmap.copy(x, y, w, h)
        
        self.setPixmap(scaled_pixmap)
        
    def get_image_pos(self, widget_pos):
        """將窗口坐標(biāo)轉(zhuǎn)換為圖像坐標(biāo)(考慮縮放和偏移)"""
        if self.image is None:
            return None
            
        h, w = self.image.shape[:2]
        
        # 計算基礎(chǔ)縮放(適應(yīng)窗口)
        widget_aspect = self.width() / self.height()
        image_aspect = w / h
        
        if widget_aspect > image_aspect:
            base_height = self.height()
            base_width = int(base_height * image_aspect)
        else:
            base_width = self.width()
            base_height = int(base_width / image_aspect)
        
        # 應(yīng)用用戶縮放
        display_width = int(base_width * self.zoom_scale)
        display_height = int(base_height * self.zoom_scale)
        
        # 計算圖像在widget中的位置(考慮偏移)
        if display_width <= self.width():
            x_offset = (self.width() - display_width) // 2
        else:
            x_offset = self.offset_x
            
        if display_height <= self.height():
            y_offset = (self.height() - display_height) // 2
        else:
            y_offset = self.offset_y
        
        # 轉(zhuǎn)換為顯示圖像坐標(biāo)
        img_x = widget_pos.x() - x_offset
        img_y = widget_pos.y() - y_offset
        
        if img_x < 0 or img_y < 0 or img_x >= display_width or img_y >= display_height:
            return None
            
        # 縮放到原始圖像尺寸
        scale_x = w / display_width
        scale_y = h / display_height
        
        orig_x = int(img_x * scale_x)
        orig_y = int(img_y * scale_y)
        
        # 確保在圖像范圍內(nèi)
        orig_x = max(0, min(orig_x, w - 1))
        orig_y = max(0, min(orig_y, h - 1))
        
        return QPoint(orig_x, orig_y)
        
    def mousePressEvent(self, event):
        """鼠標(biāo)按下事件"""
        if event.button() == Qt.LeftButton and self.image is not None and self.current_tool:
            # 左鍵:使用工具
            self.is_drawing = True
            pos = self.get_image_pos(event.pos())
            if pos:
                self.last_point = pos
                self.continuous_pos = pos
                if self.current_tool in ['enlarge', 'shrink', 'rotate']:
                    self.apply_effect(pos)
                    # 啟動定時器實(shí)現(xiàn)持續(xù)效果
                    self.start_continuous_effect()
                elif self.current_tool == 'eraser':
                    # 橡皮擦:開始擦除
                    self.apply_eraser(pos)
        elif event.button() == Qt.RightButton and self.image is not None:
            # 右鍵:拖拽視圖
            self.is_panning = True
            self.pan_start_pos = event.pos()
            self.setCursor(Qt.ClosedHandCursor)
                    
    def mouseMoveEvent(self, event):
        """鼠標(biāo)移動事件"""
        if self.is_panning and self.pan_start_pos:
            # 右鍵拖拽視圖
            delta = event.pos() - self.pan_start_pos
            self.offset_x += delta.x()
            self.offset_y += delta.y()
            
            # 限制偏移范圍
            if self.image is not None:
                h, w = self.image.shape[:2]
                widget_aspect = self.width() / self.height()
                image_aspect = w / h
                
                if widget_aspect > image_aspect:
                    base_height = self.height()
                    base_width = int(base_height * image_aspect)
                else:
                    base_width = self.width()
                    base_height = int(base_width / image_aspect)
                
                display_width = int(base_width * self.zoom_scale)
                display_height = int(base_height * self.zoom_scale)
                
                # 限制偏移
                max_offset_x = max(0, display_width - self.width())
                max_offset_y = max(0, display_height - self.height())
                
                self.offset_x = max(-max_offset_x, min(0, self.offset_x))
                self.offset_y = max(-max_offset_y, min(0, self.offset_y))
            
            self.pan_start_pos = event.pos()
            self.update_display()
            
        elif self.is_drawing and self.image is not None and self.current_tool:
            # 左鍵使用工具
            pos = self.get_image_pos(event.pos())
            if pos:
                if self.current_tool == 'drag':
                    self.apply_drag_effect(self.last_point, pos)
                    self.last_point = pos
                elif self.current_tool == 'eraser':
                    # 橡皮擦:沿路徑擦除
                    if self.last_point:
                        self.apply_eraser_path(self.last_point, pos)
                    self.last_point = pos
                elif self.current_tool in ['enlarge', 'shrink', 'rotate']:
                    # 移動時更新持續(xù)效果的位置
                    self.continuous_pos = pos
                    self.last_point = pos
                
    def mouseReleaseEvent(self, event):
        """鼠標(biāo)釋放事件"""
        if event.button() == Qt.LeftButton:
            self.is_drawing = False
            self.last_point = None
            self.continuous_pos = None
            # 停止持續(xù)效果
            self.stop_continuous_effect()
        elif event.button() == Qt.RightButton:
            self.is_panning = False
            self.pan_start_pos = None
            self.setCursor(Qt.ArrowCursor)
            
    def start_continuous_effect(self):
        """啟動持續(xù)效果定時器"""
        from PyQt5.QtCore import QTimer
        if self.continuous_timer is None:
            self.continuous_timer = QTimer(self)
            self.continuous_timer.timeout.connect(self.apply_continuous_effect)
        self.continuous_timer.start(50)  # 每50ms應(yīng)用一次效果
        
    def stop_continuous_effect(self):
        """停止持續(xù)效果定時器"""
        if self.continuous_timer is not None:
            self.continuous_timer.stop()
            
    def apply_continuous_effect(self):
        """持續(xù)應(yīng)用效果"""
        if self.continuous_pos and self.current_tool in ['enlarge', 'shrink', 'rotate']:
            self.apply_effect(self.continuous_pos)
    
    def apply_effect(self, center):
        """應(yīng)用效果(放大、縮小、旋轉(zhuǎn))"""
        if self.image is None:
            return
            
        h, w = self.image.shape[:2]
        cx, cy = center.x(), center.y()
        
        # 確保中心點(diǎn)在圖像范圍內(nèi)
        if cx < 0 or cy < 0 or cx >= w or cy >= h:
            return
            
        # 創(chuàng)建網(wǎng)格
        y_indices, x_indices = np.mgrid[0:h, 0:w]
        
        # 計算到中心點(diǎn)的距離
        dx = x_indices - cx
        dy = y_indices - cy
        distances = np.sqrt(dx**2 + dy**2)
        
        # 創(chuàng)建影響掩碼(在半徑內(nèi)的像素)
        mask = distances <= self.brush_radius
        
        if self.current_tool == 'enlarge':
            # 放大效果:像素向內(nèi)收縮(修正:原來的shrink邏輯)
            factor = 1.0 - (distances / self.brush_radius)
            factor = np.clip(factor, 0, 1)
            factor = factor ** 2  # 平滑過渡
            
            # 使用effect_strength控制強(qiáng)度
            scale = 1.0 - self.effect_strength * factor * mask
            new_x = cx + dx * scale
            new_y = cy + dy * scale
            
        elif self.current_tool == 'shrink':
            # 縮小效果:像素向外擴(kuò)展(修正:原來的enlarge邏輯)
            factor = 1.0 - (distances / self.brush_radius)
            factor = np.clip(factor, 0, 1)
            factor = factor ** 2
            
            # 使用effect_strength控制強(qiáng)度
            scale = 1.0 + self.effect_strength * factor * mask
            new_x = cx + dx * scale
            new_y = cy + dy * scale
            
        elif self.current_tool == 'rotate':
            # 旋轉(zhuǎn)效果:像素螺旋旋轉(zhuǎn)
            # rotate_direction: 1為順時針,-1為逆時針
            angle = np.where(mask, (1.0 - distances / self.brush_radius) * np.pi * self.effect_strength * self.rotate_direction, 0)
            
            cos_angle = np.cos(angle)
            sin_angle = np.sin(angle)
            
            new_x = cx + dx * cos_angle - dy * sin_angle
            new_y = cy + dx * sin_angle + dy * cos_angle
        else:
            return
            
        # 限制坐標(biāo)范圍
        new_x = np.clip(new_x, 0, w - 1)
        new_y = np.clip(new_y, 0, h - 1)
        
        # 使用雙線性插值進(jìn)行重映射
        new_image = cv2.remap(self.image, new_x.astype(np.float32), 
                              new_y.astype(np.float32), cv2.INTER_LINEAR)
        
        self.image = new_image
        self.update_display()
        
    def apply_eraser(self, center, update_display=True):
        """應(yīng)用橡皮擦效果(恢復(fù)原始圖像)- 使用NumPy向量化優(yōu)化"""
        if self.image is None or self.original_image is None:
            return
            
        h, w = self.image.shape[:2]
        cx, cy = center.x(), center.y()
        
        # 確保中心點(diǎn)在圖像范圍內(nèi)
        if cx < 0 or cy < 0 or cx >= w or cy >= h:
            return
        
        # 計算畫筆范圍
        x1 = max(0, cx - self.brush_radius)
        y1 = max(0, cy - self.brush_radius)
        x2 = min(w, cx + self.brush_radius)
        y2 = min(h, cy + self.brush_radius)
        
        # 使用NumPy向量化操作代替雙重循環(huán)
        y_coords, x_coords = np.ogrid[y1:y2, x1:x2]
        
        # 計算距離矩陣
        distances = np.sqrt((x_coords - cx)**2 + (y_coords - cy)**2)
        
        # 創(chuàng)建圓形遮罩
        mask = distances <= self.brush_radius
        
        if not mask.any():
            return
        
        # 計算混合因子(邊緣羽化)
        factor = np.zeros_like(distances)
        factor[mask] = 1.0 - (distances[mask] / self.brush_radius)
        factor = factor ** 0.5  # 平滑過渡曲線
        
        # 擴(kuò)展factor到3通道
        factor_3d = factor[:, :, np.newaxis]
        
        # 向量化混合操作
        region = self.image[y1:y2, x1:x2]
        original_region = self.original_image[y1:y2, x1:x2]
        
        # 只混合mask為True的區(qū)域
        mask_3d = mask[:, :, np.newaxis]
        blended = region * (1 - factor_3d) + original_region * factor_3d
        self.image[y1:y2, x1:x2] = np.where(mask_3d, blended, region).astype(np.uint8)
        
        if update_display:
            self.update_display()
    
    def apply_eraser_path(self, start_pos, end_pos):
        """沿路徑應(yīng)用橡皮擦效果(優(yōu)化版)"""
        if self.image is None or self.original_image is None or start_pos is None:
            return
        
        # 計算路徑上的點(diǎn)
        sx, sy = start_pos.x(), start_pos.y()
        ex, ey = end_pos.x(), end_pos.y()
        
        # 計算距離和步數(shù)
        dist = np.sqrt((ex - sx)**2 + (ey - sy)**2)
        if dist < 1:
            return
        
        # 根據(jù)畫筆半徑調(diào)整步數(shù),大畫筆可以用更少的步數(shù)
        step_size = max(self.brush_radius // 4, 3)
        steps = max(int(dist / step_size), 1)
        
        # 沿路徑插值多個點(diǎn),批量處理,不每次都刷新
        for i in range(steps + 1):
            t = i / steps if steps > 0 else 0
            px = int(sx + (ex - sx) * t)
            py = int(sy + (ey - sy) * t)
            # 只在最后一個點(diǎn)才刷新顯示
            self.apply_eraser(QPoint(px, py), update_display=(i == steps))
    
    
    def apply_drag_effect(self, start_pos, end_pos):
        """應(yīng)用拖拽扭曲效果"""
        if self.image is None or start_pos is None:
            return
            
        h, w = self.image.shape[:2]
        sx, sy = start_pos.x(), start_pos.y()
        ex, ey = end_pos.x(), end_pos.y()
        
        # 計算拖拽向量
        drag_x = ex - sx
        drag_y = ey - sy
        
        if drag_x == 0 and drag_y == 0:
            return
            
        # 創(chuàng)建網(wǎng)格
        y_indices, x_indices = np.mgrid[0:h, 0:w]
        
        # 計算到起始點(diǎn)的距離
        dx = x_indices - sx
        dy = y_indices - sy
        distances = np.sqrt(dx**2 + dy**2)
        
        # 創(chuàng)建影響掩碼
        mask = distances <= self.brush_radius
        
        # 計算影響因子(距離越近影響越大)
        factor = np.where(distances < self.brush_radius,
                         1.0 - (distances / self.brush_radius),
                         0)
        factor = factor ** 2  # 平滑過渡
        
        # 應(yīng)用拖拽位移,使用effect_strength控制強(qiáng)度
        new_x = x_indices - drag_x * factor * mask * self.effect_strength
        new_y = y_indices - drag_y * factor * mask * self.effect_strength
        
        # 限制坐標(biāo)范圍
        new_x = np.clip(new_x, 0, w - 1)
        new_y = np.clip(new_y, 0, h - 1)
        
        # 重映射
        new_image = cv2.remap(self.image, new_x.astype(np.float32),
                              new_y.astype(np.float32), cv2.INTER_LINEAR)
        
        self.image = new_image
        self.update_display()
        
    def reset_image(self):
        """重置圖像到原始狀態(tài)"""
        if self.original_image is not None:
            self.image = self.original_image.copy()
            # 重置縮放和偏移
            self.zoom_scale = 1.0
            self.offset_x = 0
            self.offset_y = 0
            self.update_display()
            
    def wheelEvent(self, event):
        """鼠標(biāo)滾輪事件(Ctrl+滾輪縮放)"""
        if self.image is None:
            return
            
        # 檢測Ctrl鍵
        modifiers = QApplication.keyboardModifiers()
        if modifiers == Qt.ControlModifier:
            # 獲取鼠標(biāo)位置對應(yīng)的圖像坐標(biāo)
            mouse_pos = event.pos()
            old_image_pos = self.get_image_pos(mouse_pos)
            
            # 計算縮放增量
            delta = event.angleDelta().y()
            zoom_factor = 1.1 if delta > 0 else 0.9
            
            # 更新縮放比例
            old_zoom = self.zoom_scale
            self.zoom_scale *= zoom_factor
            
            # 限制縮放范圍
            self.zoom_scale = max(0.1, min(10.0, self.zoom_scale))
            
            # 如果縮放真的改變了,調(diào)整偏移以保持鼠標(biāo)位置下的圖像點(diǎn)不變
            if old_zoom != self.zoom_scale and old_image_pos:
                # 計算新的顯示尺寸
                h, w = self.image.shape[:2]
                widget_aspect = self.width() / self.height()
                image_aspect = w / h
                
                if widget_aspect > image_aspect:
                    base_height = self.height()
                    base_width = int(base_height * image_aspect)
                else:
                    base_width = self.width()
                    base_height = int(base_width / image_aspect)
                
                old_display_width = int(base_width * old_zoom)
                old_display_height = int(base_height * old_zoom)
                new_display_width = int(base_width * self.zoom_scale)
                new_display_height = int(base_height * self.zoom_scale)
                
                # 計算鼠標(biāo)在顯示圖像中的相對位置
                if old_display_width <= self.width():
                    old_x_offset = (self.width() - old_display_width) // 2
                else:
                    old_x_offset = self.offset_x
                    
                if old_display_height <= self.height():
                    old_y_offset = (self.height() - old_display_height) // 2
                else:
                    old_y_offset = self.offset_y
                
                img_x_in_display = mouse_pos.x() - old_x_offset
                img_y_in_display = mouse_pos.y() - old_y_offset
                
                # 計算新的偏移以保持鼠標(biāo)下的點(diǎn)不變
                ratio_x = img_x_in_display / old_display_width if old_display_width > 0 else 0.5
                ratio_y = img_y_in_display / old_display_height if old_display_height > 0 else 0.5
                
                new_x_in_display = ratio_x * new_display_width
                new_y_in_display = ratio_y * new_display_height
                
                if new_display_width > self.width():
                    self.offset_x = mouse_pos.x() - new_x_in_display
                else:
                    self.offset_x = 0
                    
                if new_display_height > self.height():
                    self.offset_y = mouse_pos.y() - new_y_in_display
                else:
                    self.offset_y = 0
                
                # 限制偏移范圍
                max_offset_x = max(0, new_display_width - self.width())
                max_offset_y = max(0, new_display_height - self.height())
                
                self.offset_x = max(-max_offset_x, min(0, self.offset_x))
                self.offset_y = max(-max_offset_y, min(0, self.offset_y))
            
            self.update_display()
            
            # 更新狀態(tài)欄顯示縮放比例
            if self.parent_window:
                self.parent_window.statusBar().showMessage(f"縮放: {self.zoom_scale:.1f}x")
            
            event.accept()
        else:
            event.ignore()
            
    def dragEnterEvent(self, event):
        """拖拽進(jìn)入事件"""
        if event.mimeData().hasUrls():
            # 檢查是否是圖片文件
            urls = event.mimeData().urls()
            if urls:
                file_path = urls[0].toLocalFile()
                if file_path.lower().endswith(('.png', '.jpg', '.jpeg', '.bmp', '.gif')):
                    event.acceptProposedAction()
                    # 顯示拖拽提示
                    self.setStyleSheet("""
                        QLabel { 
                            background-color: #1a4d2e; 
                            color: #4CAF50;
                            font-size: 24px;
                            font-weight: bold;
                            border: 3px dashed #4CAF50;
                            border-radius: 10px;
                        }
                    """)
                    if self.image is None:
                        self.setText('? 松開鼠標(biāo)即可上傳圖片')
                        
    def dragLeaveEvent(self, event):
        """拖拽離開事件"""
        if self.image is None:
            # 恢復(fù)原始樣式
            self.setStyleSheet("""
                QLabel { 
                    background-color: #2b2b2b; 
                    color: #9E9E9E;
                    font-size: 24px;
                    font-weight: bold;
                    border: 3px dashed #555;
                    border-radius: 10px;
                }
            """)
            self.setText('?? 點(diǎn)擊"上傳圖片"按鈕\n或\n拖拽圖片到此處')
            
    def dropEvent(self, event):
        """拖拽放下事件"""
        if event.mimeData().hasUrls():
            urls = event.mimeData().urls()
            if urls:
                file_path = urls[0].toLocalFile()
                if file_path.lower().endswith(('.png', '.jpg', '.jpeg', '.bmp', '.gif')):
                    # 加載圖片
                    if self.load_image(file_path):
                        if self.parent_window:
                            self.parent_window.statusBar().showMessage(f"已加載: {file_path}")
                        event.acceptProposedAction()
                    else:
                        if self.parent_window:
                            self.parent_window.statusBar().showMessage("加載圖片失?。?)
                        # 恢復(fù)提示
                        self.setStyleSheet("""
                            QLabel { 
                                background-color: #2b2b2b; 
                                color: #9E9E9E;
                                font-size: 24px;
                                font-weight: bold;
                                border: 3px dashed #555;
                                border-radius: 10px;
                            }
                        """)
                        self.setText('?? 點(diǎn)擊"上傳圖片"按鈕\n或\n拖拽圖片到此處')
    
    def resizeEvent(self, event):
        """窗口大小改變時重新顯示圖像"""
        super().resizeEvent(event)
        self.update_display()


class FaceWarpApp(QMainWindow):
    """捏臉APP主窗口"""
    
    def __init__(self):
        super().__init__()
        self.init_ui()
        
    def init_ui(self):
        """初始化用戶界面"""
        self.setWindowTitle("捏臉APP - 圖像變形工具")
        self.setGeometry(100, 100, 1600, 900)
        self.setMinimumSize(1600, 800)  # 設(shè)置最小窗口尺寸,確保所有按鈕可見
        
        # 創(chuàng)建中心部件
        central_widget = QWidget()
        self.setCentralWidget(central_widget)
        
        # 主布局
        main_layout = QVBoxLayout(central_widget)
        main_layout.setSpacing(15)
        main_layout.setContentsMargins(15, 15, 15, 15)
        
        # 創(chuàng)建工具欄
        self.create_toolbar()
        
        # 創(chuàng)建圖像畫布
        self.canvas = ImageCanvas(self)
        main_layout.addWidget(self.canvas)
        
        # 創(chuàng)建控制面板
        control_panel = self.create_control_panel()
        main_layout.addLayout(control_panel)
        
        # 設(shè)置樣式
        self.setStyleSheet("""
            QMainWindow {
                background-color: #1a1a1a;
            }
            QWidget {
                font-family: "Microsoft YaHei UI", "Segoe UI", Arial;
            }
            QPushButton {
                background-color: #2196F3;
                color: white;
                border: none;
                padding: 10px 20px;
                border-radius: 6px;
                font-size: 15px;
                font-weight: bold;
                min-width: 100px;
                min-height: 42px;
            }
            QPushButton:hover {
                background-color: #42A5F5;
            }
            QPushButton:pressed {
                background-color: #1976D2;
            }
            QPushButton:checked {
                background-color: #4CAF50;
            }
            QLabel {
                color: #E0E0E0;
                font-size: 16px;
                font-weight: bold;
            }
            QSlider::groove:horizontal {
                height: 10px;
                background: #424242;
                border-radius: 5px;
            }
            QSlider::handle:horizontal {
                background: #2196F3;
                width: 22px;
                height: 22px;
                margin: -6px 0;
                border-radius: 11px;
            }
            QSlider::handle:horizontal:hover {
                background: #42A5F5;
            }
            QToolBar {
                background-color: #2d2d2d;
                border: none;
                spacing: 10px;
                padding: 10px;
            }
            QToolButton {
                background-color: #2196F3;
                color: white;
                border: none;
                padding: 10px 18px;
                border-radius: 6px;
                font-size: 15px;
                font-weight: bold;
                min-width: 95px;
                min-height: 42px;
            }
            QToolButton:hover {
                background-color: #42A5F5;
            }
            QToolButton:pressed {
                background-color: #1976D2;
            }
            QToolButton:checked {
                background-color: #4CAF50;
            }
            QStatusBar {
                background-color: #2d2d2d;
                color: #E0E0E0;
                font-size: 14px;
            }
        """)
        
    def create_toolbar(self):
        """創(chuàng)建工具欄"""
        from PyQt5.QtCore import QSize
        
        toolbar = QToolBar()
        toolbar.setMovable(False)
        toolbar.setIconSize(QSize(28, 28))
        toolbar.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
        toolbar.setStyleSheet("""
            QToolBar {
                spacing: 8px;
            }
        """)
        self.addToolBar(toolbar)
        
        # 上傳圖片按鈕
        upload_action = QAction("?? 上傳圖片", self)
        upload_action.triggered.connect(self.load_image)
        toolbar.addAction(upload_action)
        
        toolbar.addSeparator()
        
        # 工具按鈕
        self.enlarge_btn = QAction("?? 放大", self)
        self.enlarge_btn.setCheckable(True)
        self.enlarge_btn.triggered.connect(lambda: self.set_tool('enlarge'))
        toolbar.addAction(self.enlarge_btn)
        
        self.shrink_btn = QAction("?? 縮小", self)
        self.shrink_btn.setCheckable(True)
        self.shrink_btn.triggered.connect(lambda: self.set_tool('shrink'))
        toolbar.addAction(self.shrink_btn)
        
        self.drag_btn = QAction("? 拖拽扭曲", self)
        self.drag_btn.setCheckable(True)
        self.drag_btn.triggered.connect(lambda: self.set_tool('drag'))
        toolbar.addAction(self.drag_btn)
        
        self.rotate_btn = QAction("?? 旋轉(zhuǎn)", self)
        self.rotate_btn.setCheckable(True)
        self.rotate_btn.triggered.connect(lambda: self.set_tool('rotate'))
        toolbar.addAction(self.rotate_btn)
        
        self.eraser_btn = QAction("?? 橡皮擦", self)
        self.eraser_btn.setCheckable(True)
        self.eraser_btn.triggered.connect(lambda: self.set_tool('eraser'))
        toolbar.addAction(self.eraser_btn)
        
        toolbar.addSeparator()
        
        # 重置按鈕
        reset_action = QAction("? 重置", self)
        reset_action.triggered.connect(self.reset_image)
        toolbar.addAction(reset_action)
        
        # 保存按鈕
        save_action = QAction("?? 保存", self)
        save_action.triggered.connect(self.save_image)
        toolbar.addAction(save_action)
        
        self.tool_buttons = [self.enlarge_btn, self.shrink_btn, self.drag_btn, self.rotate_btn, self.eraser_btn]
        
    def create_control_panel(self):
        """創(chuàng)建控制面板"""
        from PyQt5.QtWidgets import QButtonGroup, QRadioButton, QGroupBox, QLineEdit
        from PyQt5.QtGui import QIntValidator, QDoubleValidator
        
        layout = QHBoxLayout()
        layout.setSpacing(20)
        
        # 畫筆半徑控制
        radius_label = QLabel("畫筆半徑:")
        layout.addWidget(radius_label)
        
        self.radius_slider = QSlider(Qt.Horizontal)
        self.radius_slider.setMinimum(10)
        self.radius_slider.setMaximum(800)  # 提高到800
        self.radius_slider.setValue(170)  # 默認(rèn)170
        self.radius_slider.setMinimumWidth(250)
        self.radius_slider.valueChanged.connect(self.update_brush_radius_from_slider)
        layout.addWidget(self.radius_slider)
        
        self.radius_value_label = QLabel("170 px")
        self.radius_value_label.setMinimumWidth(70)
        layout.addWidget(self.radius_value_label)
        
        # 畫筆半徑輸入框
        self.radius_input = QLineEdit()
        self.radius_input.setText("170")
        self.radius_input.setMaximumWidth(60)
        self.radius_input.setValidator(QIntValidator(10, 800))
        self.radius_input.setStyleSheet("""
            QLineEdit {
                background-color: #3d3d3d;
                color: #E0E0E0;
                border: 2px solid #555;
                border-radius: 4px;
                padding: 5px;
                font-size: 15px;
            }
            QLineEdit:focus {
                border: 2px solid #2196F3;
            }
        """)
        self.radius_input.returnPressed.connect(self.update_brush_radius_from_input)
        self.radius_input.editingFinished.connect(self.update_brush_radius_from_input)
        layout.addWidget(self.radius_input)
        
        layout.addSpacing(30)
        
        # 變化強(qiáng)度控制
        strength_label = QLabel("變化強(qiáng)度:")
        layout.addWidget(strength_label)
        
        self.strength_slider = QSlider(Qt.Horizontal)
        self.strength_slider.setMinimum(1)  # 0.01
        self.strength_slider.setMaximum(100)  # 1.0
        self.strength_slider.setValue(20)  # 默認(rèn)0.20
        self.strength_slider.setMinimumWidth(250)
        self.strength_slider.valueChanged.connect(self.update_effect_strength_from_slider)
        layout.addWidget(self.strength_slider)
        
        self.strength_value_label = QLabel("0.20")
        self.strength_value_label.setMinimumWidth(50)
        layout.addWidget(self.strength_value_label)
        
        # 變化強(qiáng)度輸入框
        self.strength_input = QLineEdit()
        self.strength_input.setText("0.20")
        self.strength_input.setMaximumWidth(60)
        # 允許輸入0.01-1.0,最多3位小數(shù)(如0.001)
        strength_validator = QDoubleValidator(0.01, 1.0, 3)
        strength_validator.setNotation(QDoubleValidator.StandardNotation)
        self.strength_input.setValidator(strength_validator)
        self.strength_input.setStyleSheet("""
            QLineEdit {
                background-color: #3d3d3d;
                color: #E0E0E0;
                border: 2px solid #555;
                border-radius: 4px;
                padding: 5px;
                font-size: 15px;
            }
            QLineEdit:focus {
                border: 2px solid #2196F3;
            }
        """)
        self.strength_input.returnPressed.connect(self.update_effect_strength_from_input)
        self.strength_input.editingFinished.connect(self.update_effect_strength_from_input)
        layout.addWidget(self.strength_input)
        
        layout.addSpacing(30)
        
        # 旋轉(zhuǎn)方向控制
        rotate_group_box = QGroupBox("旋轉(zhuǎn)方向")
        rotate_group_box.setStyleSheet("""
            QGroupBox {
                color: #E0E0E0;
                font-size: 16px;
                font-weight: bold;
                border: 2px solid #424242;
                border-radius: 8px;
                margin-top: 10px;
                padding-top: 10px;
            }
            QGroupBox::title {
                subcontrol-origin: margin;
                left: 15px;
                padding: 0 5px;
            }
            QRadioButton {
                color: #E0E0E0;
                font-size: 15px;
                spacing: 8px;
            }
            QRadioButton::indicator {
                width: 20px;
                height: 20px;
            }
            QRadioButton::indicator:unchecked {
                border: 2px solid #666;
                border-radius: 10px;
                background: #2d2d2d;
            }
            QRadioButton::indicator:checked {
                border: 2px solid #2196F3;
                border-radius: 10px;
                background: #2196F3;
            }
        """)
        
        rotate_layout = QHBoxLayout()
        rotate_layout.setSpacing(15)
        
        self.clockwise_radio = QRadioButton("? 順時針")
        self.clockwise_radio.setChecked(True)
        self.clockwise_radio.toggled.connect(lambda: self.set_rotate_direction(1))
        
        self.counterclockwise_radio = QRadioButton("? 逆時針")
        self.counterclockwise_radio.toggled.connect(lambda: self.set_rotate_direction(-1))
        
        rotate_layout.addWidget(self.clockwise_radio)
        rotate_layout.addWidget(self.counterclockwise_radio)
        rotate_group_box.setLayout(rotate_layout)
        
        layout.addWidget(rotate_group_box)
        
        layout.addStretch()
        
        return layout
        
    def set_tool(self, tool_name):
        """設(shè)置當(dāng)前工具"""
        # 取消其他工具的選中狀態(tài)
        for btn in self.tool_buttons:
            btn.setChecked(False)
            
        # 設(shè)置當(dāng)前工具
        if tool_name == 'enlarge':
            self.enlarge_btn.setChecked(True)
        elif tool_name == 'shrink':
            self.shrink_btn.setChecked(True)
        elif tool_name == 'drag':
            self.drag_btn.setChecked(True)
        elif tool_name == 'rotate':
            self.rotate_btn.setChecked(True)
        elif tool_name == 'eraser':
            self.eraser_btn.setChecked(True)
            
        self.canvas.current_tool = tool_name
        
    def update_brush_radius_from_slider(self, value):
        """從滑塊更新畫筆半徑"""
        self.canvas.brush_radius = value
        self.radius_value_label.setText(f"{value} px")
        self.radius_input.setText(str(value))
        
    def update_brush_radius_from_input(self):
        """從輸入框更新畫筆半徑"""
        try:
            value = int(self.radius_input.text())
            value = max(10, min(800, value))  # 限制范圍
            self.canvas.brush_radius = value
            self.radius_slider.setValue(value)
            self.radius_value_label.setText(f"{value} px")
            self.radius_input.setText(str(value))
        except ValueError:
            # 輸入無效,恢復(fù)當(dāng)前值
            self.radius_input.setText(str(self.canvas.brush_radius))
        
    def update_effect_strength_from_slider(self, value):
        """從滑塊更新變化強(qiáng)度"""
        strength = value / 100.0  # 轉(zhuǎn)換為0.01-1.0
        self.canvas.effect_strength = strength
        self.strength_value_label.setText(f"{strength:.2f}")
        self.strength_input.setText(f"{strength:.2f}")
        
    def update_effect_strength_from_input(self):
        """從輸入框更新變化強(qiáng)度"""
        try:
            value = float(self.strength_input.text())
            value = max(0.01, min(1.0, value))  # 限制范圍
            self.canvas.effect_strength = value
            self.strength_slider.setValue(int(value * 100))
            self.strength_value_label.setText(f"{value:.2f}")
            self.strength_input.setText(f"{value:.2f}")
        except ValueError:
            # 輸入無效,恢復(fù)當(dāng)前值
            self.strength_input.setText(f"{self.canvas.effect_strength:.2f}")
        
    def set_rotate_direction(self, direction):
        """設(shè)置旋轉(zhuǎn)方向"""
        self.canvas.rotate_direction = direction
        
    def load_image(self):
        """加載圖像"""
        file_path, _ = QFileDialog.getOpenFileName(
            self, "選擇圖片", "", 
            "圖片文件 (*.png *.jpg *.jpeg *.bmp);;所有文件 (*.*)"
        )
        
        if file_path:
            if self.canvas.load_image(file_path):
                self.statusBar().showMessage(f"已加載: {file_path}")
            else:
                self.statusBar().showMessage("加載圖片失??!")
                
    def reset_image(self):
        """重置圖像"""
        self.canvas.reset_image()
        self.statusBar().showMessage("已重置圖像")
        
    def save_image(self):
        """保存圖像(支持中文路徑)"""
        if self.canvas.image is None:
            self.statusBar().showMessage("沒有可保存的圖像!")
            return
            
        file_path, _ = QFileDialog.getSaveFileName(
            self, "保存圖片", "", 
            "PNG文件 (*.png);;JPEG文件 (*.jpg);;所有文件 (*.*)"
        )
        
        if file_path:
            try:
                # RGB轉(zhuǎn)BGR
                image_bgr = cv2.cvtColor(self.canvas.image, cv2.COLOR_RGB2BGR)
                
                # 使用cv2.imencode()和tofile()保存,支持中文路徑
                # 根據(jù)文件擴(kuò)展名確定編碼格式
                ext = file_path.lower().split('.')[-1]
                if ext in ['jpg', 'jpeg']:
                    encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), 95]
                    _, encoded_img = cv2.imencode('.jpg', image_bgr, encode_param)
                else:
                    _, encoded_img = cv2.imencode('.png', image_bgr)
                
                encoded_img.tofile(file_path)
                self.statusBar().showMessage(f"已保存: {file_path}")
            except Exception as e:
                self.statusBar().showMessage(f"保存失敗: {str(e)}")


def main():
    app = QApplication(sys.argv)
    window = FaceWarpApp()
    window.show()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

代碼亮點(diǎn)

  • 1098行完整代碼
  • 詳細(xì)中文注釋
  • 面向?qū)ο笤O(shè)計
  • 模塊化結(jié)構(gòu)
  • 支持中文路徑

系統(tǒng)要求

項(xiàng)目要求
操作系統(tǒng)Windows / macOS / Linux
Python版本≥ 3.6
內(nèi)存建議 2GB 以上
磁盤空間約 500MB(含依賴庫)
支持格式PNG, JPG, JPEG, BMP, GIF

常見問題 FAQ

Q1: 運(yùn)行時提示"No module named ‘PyQt5’"

解決方案

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5

Q2: 圖片變形后畫質(zhì)下降怎么辦?

原因:使用了過大的畫筆半徑和強(qiáng)度

建議

  • 使用較小的畫筆半徑(50-150)
  • 降低變化強(qiáng)度(0.1-0.3)
  • 多次小幅度變形,避免一次性大幅度變形

Q3: 支持哪些圖片格式?

支持常見的圖片格式:PNG、JPG、JPEG、BMP、GIF

Q4: 如何撤銷操作?

目前沒有逐步撤銷功能,但可以:

  • 使用 橡皮擦 工具局部恢復(fù)原圖
  • 點(diǎn)擊 重置 按鈕恢復(fù)到原始狀態(tài)

Q5: Windows下運(yùn)行報錯"DLL load failed"

解決方案

# 重新安裝opencv-python
pip uninstall opencv-python
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

Q6: 中文路徑下無法加載圖片?

本工具已經(jīng)完美支持中文路徑!使用了 np.fromfile()tofile() 方法。

Q7: 能處理多大的圖片?

理論上沒有限制,但建議:

  • 普通照片:≤ 4000×3000 像素
  • 高分辨率圖片:可能會變慢,建議先縮小

未來改進(jìn)方向

  • 撤銷/重做功能:支持多步撤銷
  • 圖層系統(tǒng):支持多圖層編輯
  • 更多工具:添加模糊、銳化等濾鏡
  • 預(yù)設(shè)效果:一鍵應(yīng)用常見變形
  • 批量處理:支持批量處理多張圖片
  • 動畫導(dǎo)出:導(dǎo)出變形過程為GIF或視頻
  • AI輔助:自動識別人臉關(guān)鍵點(diǎn)
  • 性能優(yōu)化:GPU加速處理

總結(jié)

FacePrank 是一個功能豐富、使用簡單的照片整蠱工具。通過五大核心變形工具,你可以輕松制作各種搞笑照片。無論是惡搞朋友、制作表情包,還是進(jìn)行創(chuàng)意設(shè)計,這個工具都能滿足你的需求!

核心優(yōu)勢

  • ? 純Python實(shí)現(xiàn),代碼簡潔易懂
  • ? 基于NumPy向量化運(yùn)算,性能優(yōu)秀
  • ? 現(xiàn)代化UI設(shè)計,操作流暢
  • ? 完美支持中文路徑
  • ? 開箱即用,無需復(fù)雜配置

附錄:requirements.txt

PyQt5>=5.15.0
opencv-python>=4.5.0
numpy>=1.19.0

安裝命令(使用清華鏡像源)

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

單獨(dú)安裝各個包

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5>=5.15.0
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python>=4.5.0
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy>=1.19.0

以上就是Python+pyqt5實(shí)現(xiàn)一個圖像變形工具的詳細(xì)內(nèi)容,更多關(guān)于Python圖像變形的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python?Pandas實(shí)現(xiàn)將嵌套JSON數(shù)據(jù)轉(zhuǎn)換DataFrame

    Python?Pandas實(shí)現(xiàn)將嵌套JSON數(shù)據(jù)轉(zhuǎn)換DataFrame

    對于復(fù)雜的JSON數(shù)據(jù)進(jìn)行分析時,通常的做法是將JSON數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為Pandas?DataFrame,所以本文就來看看將嵌套JSON數(shù)據(jù)轉(zhuǎn)換為Pandas?DataFrame的具體方法吧
    2024-01-01
  • Python Pytest裝飾器@pytest.mark.parametrize詳解

    Python Pytest裝飾器@pytest.mark.parametrize詳解

    本文主要介紹了Python Pytest裝飾器@pytest.mark.parametrize詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Python繪圖系統(tǒng)之自定義一個坐標(biāo)設(shè)置控件

    Python繪圖系統(tǒng)之自定義一個坐標(biāo)設(shè)置控件

    這篇文章主要為大家詳細(xì)介紹了Python如何編寫一個繪圖系統(tǒng),可以實(shí)現(xiàn)自定義一個坐標(biāo)設(shè)置控件,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2023-08-08
  • Python利用memory_profiler查看內(nèi)存占用情況

    Python利用memory_profiler查看內(nèi)存占用情況

    memory_profiler是第三方模塊,用于監(jiān)視進(jìn)程的內(nèi)存消耗以及python程序內(nèi)存消耗的逐行分析。本文將利用memory_profiler查看代碼運(yùn)行占用內(nèi)存情況,感興趣的可以了解一下
    2022-06-06
  • Python生成任意波形并存為txt的實(shí)現(xiàn)

    Python生成任意波形并存為txt的實(shí)現(xiàn)

    本文主要介紹了Python生成任意波形并存為txt的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Python簡明入門教程

    Python簡明入門教程

    這篇文章主要介紹了Python簡明入門教程,較為詳細(xì)的分析了Python的基本概念及語法基礎(chǔ),有助于Python初學(xué)者更好的掌握Python的基本語法與使用技巧,需要的朋友可以參考下
    2015-08-08
  • python+selenium的web自動化上傳操作的實(shí)現(xiàn)

    python+selenium的web自動化上傳操作的實(shí)現(xiàn)

    這篇文章主要介紹了python+selenium的web自動化上傳操作的實(shí)現(xiàn),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • 詳解python中的異常和文件讀寫

    詳解python中的異常和文件讀寫

    這篇文章主要介紹了python中的異常和文件讀寫的的相關(guān)資料,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01
  • 圖解Python中深淺copy(通俗易懂)

    圖解Python中深淺copy(通俗易懂)

    這篇文章主要介紹了圖解Python中深淺copy(通俗易懂),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • python腳本定時發(fā)送郵件

    python腳本定時發(fā)送郵件

    這篇文章主要為大家詳細(xì)介紹了python腳本定時發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12

最新評論

熟女人妻三十路四十路人妻斩| 中文字幕亚洲久久久| www日韩a级s片av| 日本中文字幕一二区视频| 强行扒开双腿猛烈进入免费版| 国产亚州色婷婷久久99精品| 91九色porny蝌蚪国产成人| 国产精彩对白一区二区三区| 97a片免费在线观看| 亚洲欧美国产综合777| 亚洲成人精品女人久久久| 黑人变态深video特大巨大| 中文字幕在线乱码一区二区| 91片黄在线观看喷潮| 中文字幕人妻av在线观看| 国产aⅴ一线在线观看| 日韩午夜福利精品试看| 亚洲精品三级av在线免费观看| 亚洲人妻国产精品综合| 中文字幕日韩无敌亚洲精品| 亚洲国产精品免费在线观看| 亚洲福利精品视频在线免费观看 | 国产精品久久综合久久| 操日韩美女视频在线免费看| 动漫av网站18禁| 人妻最新视频在线免费观看| 乱亲女秽乱长久久久| 一区二区三区视频,福利一区二区| 5528327男人天堂| 把腿张开让我插进去视频| 中文字幕免费福利视频6| 国产精品黄大片在线播放| 午夜精品一区二区三区4| 欧美亚洲偷拍自拍色图| 天天日夜夜操天天摸| 91片黄在线观看喷潮| 欧美日本在线观看一区二区| 一二三区在线观看视频| 91麻豆精品91久久久久同性| 97精品综合久久在线| 久草视频在线看免费| 美女张开腿让男生操在线看| 欧美黄色录像免费看的| 青青青青在线视频免费观看| 欧美日韩激情啪啪啪| 又大又湿又爽又紧A视频| 极品性荡少妇一区二区色欲| 久草视频在线看免费| 日韩精品中文字幕福利| 精品一线二线三线日本| 久久久久只精品国产三级| 成人av久久精品一区二区| 黄色男人的天堂视频| 91大神福利视频网| 美女 午夜 在线视频| 国产a级毛久久久久精品| 熟女在线视频一区二区三区| 2018在线福利视频| AV天堂一区二区免费试看| 爱爱免费在线观看视频| 国产乱弄免费视频观看| 亚洲精品麻豆免费在线观看| 黄色片黄色片wyaa| 欧美xxx成人在线| 日日摸夜夜添夜夜添毛片性色av| 欧美久久久久久三级网| 夜夜操,天天操,狠狠操| 扒开让我视频在线观看| 成人综合亚洲欧美一区| 亚洲色偷偷综合亚洲AV伊人| 2022中文字幕在线| 日本一二三中文字幕| 超级av免费观看一区二区三区| 经典亚洲伊人第一页| 国产精品福利小视频a| 北条麻妃肉色丝袜视频| 亚洲高清免费在线观看视频| 伊人成人综合开心网| 无码中文字幕波多野不卡| 欧美va不卡视频在线观看| 亚洲男人让女人爽的视频| 亚洲欧美激情中文字幕| 免费在线看的黄网站| 福利片区一区二体验区| 姐姐的朋友2在线观看中文字幕 | 老司机免费福利视频网| 久久国产精品精品美女| 最新的中文字幕 亚洲| 在线观看视频网站麻豆| 日本熟妇喷水xxx| 国产高清精品极品美女| 精品亚洲国产中文自在线| 老司机免费视频网站在线看| 欧美精品国产综合久久| 日美女屁股黄邑视频| 天堂av在线官网中文| 护士小嫩嫩又紧又爽20p| 亚洲欧美激情人妻偷拍| 社区自拍揄拍尻屁你懂的| 自拍偷区二区三区麻豆| 青娱乐蜜桃臀av色| 国产日韩欧美美利坚蜜臀懂色| 大胆亚洲av日韩av| 超污视频在线观看污污污| 国产日韩欧美视频在线导航 | 国产又粗又硬又猛的毛片视频| 国产精品手机在线看片| 家庭女教师中文字幕在线播放| 国产精品日韩欧美一区二区| 淫秽激情视频免费观看| 啊啊好大好爽啊啊操我啊啊视频 | 任你操视频免费在线观看| 51国产偷自视频在线播放| 国产 在线 免费 精品| 亚洲高清视频在线不卡| 2021久久免费视频| 亚洲推理片免费看网站| 男人插女人视频网站| 中文字幕 人妻精品| 国产一区二区视频观看| 精品亚洲在线免费观看| 2022国产综合在线干| 国产欧美精品不卡在线| 日本成人不卡一区二区| 亚洲伊人av天堂有码在线| 99精品国自产在线人| 成人24小时免费视频| 91亚洲精品干熟女蜜桃频道| 大鸡吧插入女阴道黄色片| 日韩人妻在线视频免费| 亚洲av无硬久久精品蜜桃| 美女张开腿让男生操在线看| 色综合久久五月色婷婷综合| eeuss鲁片一区二区三区| 成年午夜免费无码区| 污污小视频91在线观看| 在线视频这里只有精品自拍| 天天射夜夜操狠狠干| 国产精品一区二区av国| 91社福利《在线观看| 美女张开腿让男生操在线看| 一区二区三区欧美日韩高清播放| 狠狠躁夜夜躁人人爽天天久天啪| 亚洲变态另类色图天堂网| 国产福利小视频免费观看| 亚洲av日韩av第一区二区三区| 中国黄片视频一区91| av大全在线播放免费| 天天日夜夜干天天操| 在线免费观看国产精品黄色| 天天操,天天干,天天射| 日韩在线中文字幕色| 99精品久久久久久久91蜜桃| 自拍偷拍,中文字幕| 欧美亚洲少妇福利视频| 五十路av熟女松本翔子| 国产美女一区在线观看| 综合色区亚洲熟妇shxstz| 日韩影片一区二区三区不卡免费| 日韩精品中文字幕播放| 九色porny九色9l自拍视频| 天天日天天干天天要| 爆乳骚货内射骚货内射在线| 色综合久久五月色婷婷综合| 中文字幕一区二区三区蜜月| 亚洲卡1卡2卡三卡四老狼| 少妇被强干到高潮视频在线观看| 宅男噜噜噜666免费观看| 2022国产精品视频| 国产精品久久综合久久| 91人妻精品久久久久久久网站| 亚洲av日韩av网站| 国产老熟女伦老熟妇ⅹ| av新中文天堂在线网址| 国产+亚洲+欧美+另类| 午夜国产福利在线观看| 99久久久无码国产精品性出奶水| 青娱乐蜜桃臀av色| 美女福利视频网址导航| 深田咏美亚洲一区二区 | 日韩在线中文字幕色| 美女视频福利免费看| 久久久久久国产精品| 93精品视频在线观看| 亚洲欧美成人综合视频| 岛国免费大片在线观看| 国产又粗又黄又硬又爽| 欧美日韩精品永久免费网址| 在线免费观看黄页视频| 福利国产视频在线观看| 中国熟女@视频91| 亚洲推理片免费看网站| 亚洲一区二区激情在线| a v欧美一区=区三区| 97年大学生大白天操逼| 欧美成人黄片一区二区三区 | 人人妻人人人操人人人爽| 一个色综合男人天堂| 精品人人人妻人人玩日产欧| av日韩在线免费播放| 青青青青视频在线播放| 欧美精品免费aaaaaa| 久久香蕉国产免费天天| 男人的天堂在线黄色| 少妇人妻二三区视频| 中字幕人妻熟女人妻a62v网| 涩涩的视频在线观看视频| 夜夜嗨av蜜臀av| 11久久久久久久久久久| 亚洲自拍偷拍综合色| 一区二区麻豆传媒黄片| 姐姐的朋友2在线观看中文字幕 | 国产成人精品一区在线观看| 3344免费偷拍视频| 天天日天天爽天天爽| 亚洲成人黄色一区二区三区| 亚洲成人熟妇一区二区三区| 国产成人精品福利短视频| 国产精品黄色的av| 欧美亚洲少妇福利视频| 极品性荡少妇一区二区色欲| 天干天天天色天天日天天射| av网站色偷偷婷婷网男人的天堂| 亚洲精品成人网久久久久久小说 | 成人蜜桃美臀九一一区二区三区| 一区二区三区视频,福利一区二区| 91一区精品在线观看| 午夜激情高清在线观看| 精品美女福利在线观看| 欧洲国产成人精品91铁牛tv| 综合色区亚洲熟妇shxstz| 国产又粗又黄又硬又爽| 久久永久免费精品人妻专区| 午夜场射精嗯嗯啊啊视频| 亚洲一区制服丝袜美腿| 欧美成人黄片一区二区三区| 亚洲中文精品人人免费| 在线 中文字幕 一区| 五十路在线观看完整版| 国产一区二区神马久久| 19一区二区三区在线播放| 在线观看日韩激情视频| 亚洲一区二区久久久人妻| 97超碰国语国产97超碰| 国产成人午夜精品福利| 亚洲成人线上免费视频观看| 深夜男人福利在线观看| 91亚洲精品干熟女蜜桃频道| 一区二区三区四区五区性感视频| 精品一区二区三区三区色爱| 喷水视频在线观看这里只有精品| 丰满少妇翘臀后进式| 91桃色成人网络在线观看| 首之国产AV医生和护士小芳| 1024久久国产精品| 黄色大片男人操女人逼| 日本人竟这样玩学生妹| 一区二区三区在线视频福利| 51国产偷自视频在线播放| 经典国语激情内射视频| 激情啪啪啪啪一区二区三区 | 久草视频在线免播放| 午夜蜜桃一区二区三区| 国产成人精品av网站| 欲满人妻中文字幕在线| 欧美日韩激情啪啪啪| 欧美3p在线观看一区二区三区| 一区二区久久成人网| 综合国产成人在线观看| chinese国产盗摄一区二区| 日本美女性生活一级片| 国产精品自拍在线视频| 国产97视频在线精品| 美女视频福利免费看| 九色porny九色9l自拍视频| 成人18禁网站在线播放| 午夜激情高清在线观看| 亚洲免费av在线视频| aⅴ精产国品一二三产品| 日本阿v视频在线免费观看| 午夜精品久久久久久99热 | 天天干夜夜操啊啊啊| 亚洲午夜伦理视频在线| 午夜大尺度无码福利视频| 98精产国品一二三产区区别| 91在线视频在线精品3| 午夜精品一区二区三区4| 偷拍自拍亚洲美腿丝袜| 人人妻人人人操人人人爽| 粉嫩av蜜乳av蜜臀| 天天干天天操天天摸天天射| 天码人妻一区二区三区在线看| 老熟妇凹凸淫老妇女av在线观看| 亚洲女人的天堂av| 宅男噜噜噜666免费观看| 自拍偷拍一区二区三区图片| 天天日天天添天天爽| 五月天久久激情视频| 性生活第二下硬不起来| www骚国产精品视频| 日本精品美女在线观看| 99热国产精品666| 9l人妻人人爽人人爽| 日本www中文字幕| 国内资源最丰富的网站| 中文字幕午夜免费福利视频| 大香蕉日本伊人中文在线| 一级黄片大鸡巴插入美女| 日韩美女精品视频在线观看网站 | 日本熟妇丰满厨房55| 亚洲午夜伦理视频在线 | 成年人免费看在线视频| 日本一道二三区视频久久| 影音先锋女人av噜噜色| 一区二区三区美女毛片| 日本午夜爽爽爽爽爽视频在线观看| 丝袜长腿第一页在线| 婷婷午夜国产精品久久久| 中文字幕高清资源站| 又黄又刺激的午夜小视频| 免费在线看的黄网站| 九九热99视频在线观看97| 爱有来生高清在线中文字幕| 黄色成人在线中文字幕| 91桃色成人网络在线观看| 日本午夜久久女同精女女| 午夜青青草原网在线观看| 大屁股熟女一区二区三区| 亚洲日产av一区二区在线| 91试看福利一分钟| 66久久久久久久久久久| 中文字幕日韩人妻在线三区| 在线观看免费视频网| 最新中文字幕乱码在线| 80电影天堂网官网| 国产女人叫床高潮大片视频| 绝顶痉挛大潮喷高潮无码| 97年大学生大白天操逼| 99精品国产aⅴ在线观看 | 人妻素人精油按摩中出| 久久精品久久精品亚洲人| av在线shipin| 女警官打开双腿沦为性奴| 欧美一区二区三区啪啪同性| 欧美熟妇一区二区三区仙踪林| 十八禁在线观看地址免费| 国产精品黄片免费在线观看| 2019av在线视频| 97人人妻人人澡人人爽人人精品| 青青青青青青青在线播放视频| 亚洲av可乐操首页| 欧美精品一区二区三区xxxx| 亚洲伊人久久精品影院一美女洗澡| 国产欧美日韩在线观看不卡| 97香蕉碰碰人妻国产樱花| 欧美亚洲国产成人免费在线| 97人妻总资源视频| 国产成人小视频在线观看无遮挡| 天天日天天做天天日天天做| 久久久久久久一区二区三| 欧美 亚洲 另类综合| 色综合色综合色综合色| 一区二区三区四区中文| 亚洲欧美人精品高清| 成人国产影院在线观看| h国产小视频福利在线观看| 91精品综合久久久久3d动漫| 欧美精品资源在线观看| 在线免费观看欧美小视频| 欧美地区一二三专区| 久久精品亚洲成在人线a| 亚洲欧美久久久久久久久| 天天操天天弄天天射| 日本免费一级黄色录像| av在线资源中文字幕| 国产性色生活片毛片春晓精品 | 亚洲免费av在线视频| 国产美女午夜福利久久| 人妻丝袜精品中文字幕| 99热99re在线播放| 国产九色91在线视频| 国产剧情演绎系列丝袜高跟| 蜜臀成人av在线播放| 欧美成人精品欧美一级黄色| av手机免费在线观看高潮| 偷偷玩弄新婚人妻h视频| 最近的中文字幕在线mv视频| 视频一区二区三区高清在线| 75国产综合在线视频| 国产久久久精品毛片| 91天堂精品一区二区| 亚洲av自拍偷拍综合| 日本av在线一区二区三区| huangse网站在线观看| 欧美激情精品在线观看| 日本一二三中文字幕| av网址在线播放大全| 成年人中文字幕在线观看| 男生用鸡操女生视频动漫| 午夜精品一区二区三区4| 青青草国内在线视频精选| 亚洲国产中文字幕啊啊啊不行了| 亚洲一级av无码一级久久精品| 青青青青在线视频免费观看| 国产自拍在线观看成人| 日本少妇高清视频xxxxx| 日韩av大胆在线观看| 国产密臀av一区二区三| 自拍偷拍vs一区二区三区| 91成人精品亚洲国产| 性欧美日本大妈母与子| 大屁股肉感人妻中文字幕在线| 人妻少妇av在线观看| 十八禁在线观看地址免费| 久久精品在线观看一区二区| 日韩人妻在线视频免费| 国产视频网站一区二区三区| 青草亚洲视频在线观看| 男人天堂最新地址av| 亚洲免费成人a v| 午夜精品九一唐人麻豆嫩草成人| 天天日天天干天天干天天日| 午夜大尺度无码福利视频| AV天堂一区二区免费试看| 日韩a级黄色小视频| 欧美日韩在线精品一区二区三| 国产91嫩草久久成人在线视频| 精品av国产一区二区三区四区| 亚洲人人妻一区二区三区| 国产成人小视频在线观看无遮挡| 日本韩国免费福利精品| 在线观看视频网站麻豆| 91久久国产成人免费网站| 国产精品久久久黄网站| 激情啪啪啪啪一区二区三区| 美女 午夜 在线视频| 9久在线视频只有精品| 亚洲天堂第一页中文字幕| 天堂va蜜桃一区入口| 欧美黄片精彩在线免费观看| 天堂资源网av中文字幕| 亚洲精品ww久久久久久| 久久h视频在线观看| 大鸡巴插入美女黑黑的阴毛| 91自产国产精品视频| 日韩欧美国产一区不卡| 人人妻人人爽人人添夜| 熟女人妻在线观看视频| 亚欧在线视频你懂的| 人人爽亚洲av人人爽av| 欧亚日韩一区二区三区观看视频| 9色精品视频在线观看| 伊人成人在线综合网| 国产午夜福利av导航| 一区二区免费高清黄色视频| 成人激情文学网人妻| av在线免费观看亚洲天堂| 黑人乱偷人妻中文字幕| 午夜福利资源综合激情午夜福利资| 亚洲va国产va欧美va在线| 久久尻中国美女视频| 亚洲av午夜免费观看| 亚洲欧美一卡二卡三卡| 五十路丰满人妻熟妇| 亚洲av无乱一区二区三区性色| 日本免费视频午夜福利视频| 免费岛国喷水视频在线观看 | 999久久久久999| 国产美女精品福利在线| 2022精品久久久久久中文字幕| 3337p日本欧洲大胆色噜噜| 大鸡巴操b视频在线| 亚洲成人午夜电影在线观看 | 国产女人被做到高潮免费视频| 青娱乐极品视频青青草| 操操网操操伊剧情片中文字幕网| 不卡日韩av在线观看| 欧美老鸡巴日小嫩逼| 欧美精品一二三视频| 天天干天天啪天天舔| 久草电影免费在线观看| 麻豆精品成人免费视频| 色秀欧美视频第一页| 国产午夜激情福利小视频在线| 午夜青青草原网在线观看| 中英文字幕av一区| 国产一区二区在线欧美| 日噜噜噜夜夜噜噜噜天天噜噜噜| 亚洲成av人无码不卡影片一| 婷婷综合亚洲爱久久| 欧美 亚洲 另类综合| 91福利在线视频免费观看| 1000小视频在线| 久久丁香花五月天色婷婷| 适合午夜一个人看的视频| 久久精品国产23696| 国产成人综合一区2区| 色偷偷伊人大杳蕉综合网| 中文人妻AV久久人妻水| 亚洲综合图片20p| 亚洲精品福利网站图片| 爱爱免费在线观看视频| 9色精品视频在线观看| 国际av大片在线免费观看| 亚洲精品午夜aaa久久| 天天做天天干天天操天天射| 国产精品久久久久国产三级试频| 91综合久久亚洲综合| 阴茎插到阴道里面的视频| 欧美亚洲自偷自拍 在线| 国内精品在线播放第一页| 中文字幕乱码av资源| 婷婷色中文亚洲网68| 亚洲 国产 成人 在线| 国产精彩对白一区二区三区| 一区二区三区另类在线| 2021年国产精品自拍| 亚洲国产精品久久久久久6| 国产九色91在线观看精品| 天天干天天操天天插天天日| 91 亚洲视频在线观看| 成人高清在线观看视频| 女同久久精品秋霞网| 亚洲视频在线观看高清| 中文字幕AV在线免费看 | 果冻传媒av一区二区三区| 男人和女人激情视频| 91精品一区二区三区站长推荐| 5528327男人天堂| 中文字幕一区二区自拍| 免费在线观看污污视频网站| 老司机免费视频网站在线看| 80电影天堂网官网| 亚洲成人精品女人久久久| 果冻传媒av一区二区三区| 亚洲精品三级av在线免费观看| 欧美地区一二三专区| 高潮喷水在线视频观看| 新婚人妻聚会被中出| 亚洲图片偷拍自拍区| 亚洲成人线上免费视频观看| 国产又大又黄免费观看| 少妇人妻真实精品视频| 国产普通话插插视频| 精彩视频99免费在线| 国产变态另类在线观看| 亚洲精品国偷自产在线观看蜜桃| 色哟哟国产精品入口| 亚洲成高清a人片在线观看| 中文字幕日韩91人妻在线| 黄色成年网站午夜在线观看| 中文字幕人妻一区二区视频| 日本一道二三区视频久久| 女人精品内射国产99| 国产精品欧美日韩区二区| 日韩人妻丝袜中文字幕| 在线国产日韩欧美视频| 骚逼被大屌狂草视频免费看| 精品一线二线三线日本| 亚洲av色图18p| 91精品国产综合久久久蜜| 午夜激情高清在线观看| 亚洲欧美成人综合在线观看| 视频二区在线视频观看| 超碰在线观看免费在线观看| 日本在线不卡免费视频| 一区二区三区视频,福利一区二区 丰满的子国产在线观看 | 最新中文字幕免费视频| 人妻无码色噜噜狠狠狠狠色| 神马午夜在线观看视频| 自拍偷拍日韩欧美亚洲| 亚洲国产欧美一区二区三区…| 在线免费观看日本伦理| 国产成人精品久久二区91| 美女操逼免费短视频下载链接| 99热这里只有国产精品6| av久久精品北条麻妃av观看| 亚洲伊人色一综合网| 免费岛国喷水视频在线观看| 国产精品一区二区三区蜜臀av| 国产janese在线播放| 欧美亚洲中文字幕一区二区三区| 亚洲高清一区二区三区视频在线| 天天操天天弄天天射| 久草视频 久草视频2| 日本一区二区三区免费小视频| 亚洲av色香蕉一区二区三区| 天天射,天天操,天天说| 亚洲欧美久久久久久久久| 夜色撩人久久7777| 久久久91蜜桃精品ad| 日本脱亚入欧是指什么| 青草久久视频在线观看| 亚洲天堂有码中文字幕视频| 国产日韩欧美视频在线导航| 亚洲视频乱码在线观看| 熟女视频一区,二区,三区| 中英文字幕av一区| 91精品国产麻豆国产| 亚洲视频在线观看高清| av中文字幕网址在线| 性色av一区二区三区久久久| 亚洲熟女久久久36d| 一区二区三区视频,福利一区二区 丰满的子国产在线观看 | 亚洲国产欧美一区二区三区…| 午夜精品一区二区三区福利视频| 大肉大捧一进一出好爽在线视频| 性欧美日本大妈母与子| 天天日天天玩天天摸| 777奇米久久精品一区| 四川五十路熟女av| 国产在线免费观看成人| 久久丁香花五月天色婷婷| www,久久久,com| 沙月文乃人妻侵犯中文字幕在线 | 91亚洲精品干熟女蜜桃频道| 麻豆性色视频在线观看| 日本人竟这样玩学生妹| 日韩在线中文字幕色| 国产妇女自拍区在线观看| 中出中文字幕在线观看| 一区二区三区蜜臀在线| 国产高清在线在线视频| 国产janese在线播放| av视网站在线观看| 99热色原网这里只有精品| 粗大的内捧猛烈进出爽大牛汉子| 东京热男人的av天堂| 精品一区二区三区三区色爱| 亚洲国产免费av一区二区三区| 在线播放国产黄色av| 99re国产在线精品| 中出中文字幕在线观看| 一级a看免费观看网站| 人妻少妇精品久久久久久| 亚洲一区二区三区久久受 | 狠狠操狠狠操免费视频| 91 亚洲视频在线观看| 天天干天天操天天玩天天射| brazzers欧熟精品系列| 精品视频中文字幕在线播放| 男生用鸡操女生视频动漫| 亚洲蜜臀av一区二区三区九色| 91亚洲精品干熟女蜜桃频道| 国产精品国产三级国产午| 91试看福利一分钟| 亚洲少妇人妻无码精品| 1区2区3区不卡视频| 天天插天天色天天日| 中国视频一区二区三区| av高潮迭起在线观看| 大鸡巴后入爆操大屁股美女| 人妻少妇亚洲精品中文字幕| 中文字幕视频一区二区在线观看| 天天操天天干天天日狠狠插| 欧美精产国品一二三区| 大香蕉大香蕉大香蕉大香蕉大香蕉| 久久热久久视频在线观看| 狠狠躁狠狠爱网站视频 | 亚洲国产精品中文字幕网站| av中文字幕网址在线| 99re久久这里都是精品视频| 国产午夜男女爽爽爽爽爽视频| 熟女人妻一区二区精品视频| 日本熟妇喷水xxx| 青青青青青免费视频| 黄片色呦呦视频免费看| 把腿张开让我插进去视频| 大鸡吧插逼逼视频免费看| 午夜在线一区二区免费| 天天摸天天亲天天舔天天操天天爽| 日本一区美女福利视频| 91中文字幕免费在线观看| 97国产在线观看高清| 日韩成人性色生活片| 日韩av有码中文字幕| gogo国模私拍视频| 亚洲熟妇x久久av久久| 51精品视频免费在线观看| 岛国一区二区三区视频在线| 久久久精品国产亚洲AV一| 亚洲国产最大av综合| av中文字幕电影在线看| 人妻激情图片视频小说| 强行扒开双腿猛烈进入免费版| 男人在床上插女人视频| 久草视频 久草视频2| 超碰97免费人妻麻豆| 日比视频老公慢点好舒服啊| 日本韩国免费一区二区三区视频| 日韩精品电影亚洲一区| 亚洲欧美成人综合视频| 91国偷自产一区二区三区精品| 欧美一级视频一区二区| 麻豆性色视频在线观看| 欧美va亚洲va天堂va| 青青青视频自偷自拍38碰| 国际av大片在线免费观看| 偷拍自拍视频图片免费| 久久香蕉国产免费天天| 大香蕉大香蕉大香蕉大香蕉大香蕉 | 精品av久久久久久久| 国产污污污污网站在线| av视屏免费在线播放| 狠狠操狠狠操免费视频| 可以免费看的www视频你懂的| 和邻居少妇愉情中文字幕| 色综合久久无码中文字幕波多| 人妻凌辱欧美丰满熟妇| 国产熟妇人妻ⅹxxxx麻豆| 三级av中文字幕在线观看| 成年人黄色片免费网站| 亚洲午夜精品小视频| 动漫av网站18禁| 99精品视频之69精品视频| 国产女人叫床高潮大片视频| 视频在线亚洲一区二区| 自拍偷拍日韩欧美亚洲| 大香蕉玖玖一区2区| 中文字幕人妻一区二区视频| 黄色片黄色片wyaa| 色狠狠av线不卡香蕉一区二区| 大香蕉大香蕉大香蕉大香蕉大香蕉 | 超碰97人人做人人爱| 91国语爽死我了不卡| 午夜精品亚洲精品五月色| 国产综合精品久久久久蜜臀| 五月精品丁香久久久久福利社| 啊啊好慢点插舔我逼啊啊啊视频 | 高清一区二区欧美系列| 精品乱子伦一区二区三区免费播| 春色激情网欧美成人| 99精品国自产在线人| 人妻3p真实偷拍一二区| 日韩二区视频一线天婷婷五| 成人区人妻精品一区二视频 | 国产综合视频在线看片| 成人在线欧美日韩国产| 中字幕人妻熟女人妻a62v网| 少妇高潮一区二区三区| 一区二区三区蜜臀在线| 日韩在线视频观看有码在线| 亚洲精品 日韩电影| 97年大学生大白天操逼| 风流唐伯虎电视剧在线观看| 亚洲欧美色一区二区| 不戴胸罩引我诱的隔壁的人妻| 美女av色播在线播放| 天天射夜夜操狠狠干| 日韩成人综艺在线播放| 成人av在线资源网站| 视频在线免费观看你懂得| 亚洲天堂第一页中文字幕| av天堂中文免费在线| 亚洲成人午夜电影在线观看| 中文字幕免费在线免费| 91精品国产91青青碰| 伊人网中文字幕在线视频| 亚洲超碰97人人做人人爱| 东京热男人的av天堂| 40道精品招牌菜特色| 成人精品视频99第一页| 97人妻人人澡爽人人精品| 无码中文字幕波多野不卡| 91久久综合男人天堂| 在线观看欧美黄片一区二区三区| 青青草人人妻人人妻| 日本女人一级免费片| 免费观看丰满少妇做受| 亚洲高清免费在线观看视频| 91麻豆精品传媒国产黄色片| 亚洲成人激情视频免费观看了 | 亚洲综合在线观看免费| 国产va在线观看精品| 经典av尤物一区二区| 亚洲欧美福利在线观看| 熟女视频一区,二区,三区| 男女啪啪视频免费在线观看| 大陆av手机在线观看| 免费69视频在线看| 亚洲特黄aaaa片| 晚上一个人看操B片| 91亚洲国产成人精品性色| 99热99这里精品6国产| 成人激情文学网人妻| 在线观看成人国产电影| 91麻豆精品秘密入口在线观看| 天天夜天天日天天日| 亚洲午夜电影在线观看| 日韩成人性色生活片| 欧美性受xx黑人性猛交| 老师让我插进去69AV| 国产高清精品一区二区三区| 午夜的视频在线观看| 一色桃子久久精品亚洲| 人妻少妇一区二区三区蜜桃| 中文字幕高清免费在线人妻| 中文字幕在线乱码一区二区| 香蕉av影视在线观看| 婷婷久久久久深爱网| 啊啊啊想要被插进去视频| 亚洲2021av天堂| 男女啪啪视频免费在线观看 | 欧美精品伦理三区四区| 国产精品中文av在线播放| 精品人妻每日一部精品| 少妇ww搡性bbb91| 80电影天堂网官网| 在线观看国产免费麻豆| 91小伙伴中女熟女高潮| 天天艹天天干天天操| 任我爽精品视频在线播放| 亚洲国产成人最新资源| 97超碰最新免费在线观看| 免费在线观看污污视频网站| 亚洲精品国品乱码久久久久| 亚洲精品成人网久久久久久小说 | 亚洲欧美福利在线观看| 三级等保密码要求条款| 啊慢点鸡巴太大了啊舒服视频| 免费观看成年人视频在线观看 | 在线观看操大逼视频| 男生舔女生逼逼视频| 懂色av蜜桃a v| 欧美另类z0z变态| 国产又粗又猛又爽又黄的视频美国| 人人妻人人爽人人添夜| 在线观看免费视频网| 天天色天天操天天透| 久久久久久97三级| 国产使劲操在线播放| 老有所依在线观看完整版| 亚洲天堂av最新网址| 欧美黑人与人妻精品| 中文字幕日韩人妻在线三区| 国产九色91在线观看精品| 日本啪啪啪啪啪啪啪| 日本啪啪啪啪啪啪啪| 2021天天色天天干| 日韩欧美制服诱惑一区在线| 五月色婷婷综合开心网4438| 亚洲成人精品女人久久久| 黄色片一级美女黄色片| 国产精品大陆在线2019不卡 | 国产日韩欧美视频在线导航| 女同久久精品秋霞网| 久久精品国产23696| av老司机精品在线观看| 播放日本一区二区三区电影| 日韩不卡中文在线视频网站| 香蕉片在线观看av| 色av色婷婷人妻久久久精品高清 | 亚洲精品无码色午夜福利理论片| 插小穴高清无码中文字幕| 手机看片福利盒子日韩在线播放| free性日本少妇| 噜噜色噜噜噜久色超碰| 国语对白xxxx乱大交| 好男人视频在线免费观看网站| 久久精品美女免费视频| 久久热这里这里只有精品| 中文字幕中文字幕人妻| 亚洲激情唯美亚洲激情图片| 国产一线二线三线的区别在哪 | 91精品国产91青青碰| 日本黄在免费看视频| 中文字幕无码一区二区免费| 欧洲黄页网免费观看| 欧美va不卡视频在线观看| 蜜臀成人av在线播放| av男人天堂狠狠干| 好了av中文字幕在线| 日曰摸日日碰夜夜爽歪歪| 中文字幕高清在线免费播放| 亚洲一级av无码一级久久精品 | 人人人妻人人澡人人| 日本精品一区二区三区在线视频。 | 中文字幕免费在线免费| 成人福利视频免费在线| 在线制服丝袜中文字幕| 在线观看操大逼视频| 自拍偷拍日韩欧美一区二区| 在线可以看的视频你懂的| 五十路熟女人妻一区二| 一区二区三区精品日本| 日本最新一二三区不卡在线 | 中文字幕国产专区欧美激情| 国产av国片精品一区二区| 韩国AV无码不卡在线播放| 91老熟女连续高潮对白| 女同互舔一区二区三区| 97青青青手机在线视频| 亚洲av午夜免费观看| 黄片大全在线观看观看| 成人18禁网站在线播放| 五月天中文字幕内射| 国产九色91在线视频| 精品亚洲中文字幕av | jiujiure精品视频在线| 熟女人妻在线中出观看完整版| 美女被肏内射视频网站| 二区中出在线观看老师| 免费费一级特黄真人片| 亚洲免费福利一区二区三区| 天天操天天射天天操天天天| 国产一区二区久久久裸臀| 亚洲精品久久视频婷婷| 18禁美女羞羞免费网站| 国产免费av一区二区凹凸四季| 亚洲成人熟妇一区二区三区 | 动漫精品视频在线观看| 精品久久久久久久久久中文蒉| 在线播放一区二区三区Av无码| 玖玖一区二区在线观看| 人人人妻人人澡人人| 久久尻中国美女视频| 亚洲另类图片蜜臀av| 好吊操视频这里只有精品| 国产精品中文av在线播放| sw137 中文字幕 在线| 午夜av一区二区三区| 国产美女午夜福利久久| 老司机午夜精品视频资源| 熟女人妻三十路四十路人妻斩| 中文字幕综合一区二区| 成人18禁网站在线播放| 日本精品一区二区三区在线视频。 | 老鸭窝日韩精品视频观看| 久久久91蜜桃精品ad| 57pao国产一区二区| 国产精品久久综合久久| 五十路熟女人妻一区二| 中文字幕,亚洲人妻| 国产在线观看黄色视频| 国产精品熟女久久久久浪潮| 亚洲av日韩精品久久久久久hd| 91破解版永久免费| 亚洲一区av中文字幕在线观看| japanese日本熟妇另类| 粉嫩小穴流水视频在线观看| 国产一线二线三线的区别在哪| 日韩特级黄片高清在线看| 久久久久只精品国产三级| 天堂av中文在线最新版| 看一级特黄a大片日本片黑人| 中文字幕国产专区欧美激情| 天天摸天天亲天天舔天天操天天爽| 亚洲精品av在线观看| 日韩人妻丝袜中文字幕| 特一级特级黄色网片| 天天躁日日躁狠狠躁av麻豆| 在线观看视频污一区| 亚洲国产欧美一区二区三区…| 大香蕉玖玖一区2区| japanese日本熟妇另类| 最新中文字幕免费视频| 免费一级特黄特色大片在线观看| 强行扒开双腿猛烈进入免费版| 欧美日韩一区二区电影在线观看| 久久久人妻一区二区| 国产日本精品久久久久久久| 男女啪啪视频免费在线观看| 在线免费观看黄页视频| 国产欧美日韩第三页| 免费国产性生活视频| 人妻少妇av在线观看| 19一区二区三区在线播放| 亚洲激情av一区二区| 日韩亚国产欧美三级涩爱| 又粗又硬又猛又爽又黄的| 可以免费看的www视频你懂的| 欧美日本在线观看一区二区| 亚洲一区二区三区在线高清| 久久久久久久一区二区三| 北条麻妃肉色丝袜视频| 88成人免费av网站| 年轻的人妻被夫上司侵犯| 国产在线拍揄自揄视频网站| 精品老妇女久久9g国产| 国产91久久精品一区二区字幕| 98视频精品在线观看| 天天操天天射天天操天天天| 高清一区二区欧美系列| 福利视频网久久91| 色花堂在线av中文字幕九九| 亚洲精品在线资源站| 久草视频在线看免费| 97香蕉碰碰人妻国产樱花| 久久精品亚洲成在人线a| 天堂女人av一区二区| 午夜大尺度无码福利视频| 中文字幕日本人妻中出| 亚洲欧美成人综合在线观看| 免费黄高清无码国产| 九九热99视频在线观看97| 日视频免费在线观看| 任我爽精品视频在线播放| 真实国模和老外性视频| 亚洲va天堂va国产va久| 久久久久只精品国产三级| 男生舔女生逼逼视频| 国产一线二线三线的区别在哪| gogo国模私拍视频| 2021最新热播中文字幕| 黑人性生活视频免费看| 亚洲欧美清纯唯美另类| 色婷婷综合激情五月免费观看| 日本少妇人妻xxxxxhd| 9久在线视频只有精品| 馒头大胆亚洲一区二区| 亚洲精品福利网站图片| 国产成人精品av网站| 93精品视频在线观看| 日韩中文字幕精品淫| 韩国三级aaaaa高清视频| 91超碰青青中文字幕| 首之国产AV医生和护士小芳| av中文字幕电影在线看| 在线播放国产黄色av| 国产精品国色综合久久| 欧美80老妇人性视频| 亚洲午夜高清在线观看| 五月婷婷在线观看视频免费| 亚洲人妻国产精品综合| 专门看国产熟妇的网站| 国产成人精品午夜福利训2021| 五十路丰满人妻熟妇| 免费大片在线观看视频网站| 93精品视频在线观看| av网址在线播放大全| 99热久久这里只有精品| 人妻丝袜精品中文字幕| 一区二区视频视频视频| 亚洲日本一区二区三区| 日韩美女搞黄视频免费| 无码精品一区二区三区人| 中文字幕中文字幕 亚洲国产| 动漫黑丝美女的鸡巴| 91久久国产成人免费网站| 玩弄人妻熟妇性色av少妇| 欧美一区二区三区乱码在线播放| 日本一区二区三区免费小视频 | 中文字幕无码日韩专区免费| 偷拍自拍亚洲美腿丝袜| 青青青青操在线观看免费| 天天综合天天综合天天网| 中文字幕亚洲久久久| 亚洲精品精品国产综合| 久久人人做人人妻人人玩精品vr| av亚洲中文天堂字幕网| 久久综合老鸭窝色综合久久| 黑人解禁人妻叶爱071| 欧洲精品第一页欧洲精品亚洲| 亚洲欧美在线视频第一页| 婷婷久久久综合中文字幕| 夏目彩春在线中文字幕| 国产高清97在线观看视频| 内射久久久久综合网| 久久国产精品精品美女| 午夜频道成人在线91| 亚洲高清一区二区三区视频在线| av一本二本在线观看| 哥哥姐姐综合激情小说| 一区二区三区国产精选在线播放| 国产九色91在线观看精品| 91精品高清一区二区三区| www天堂在线久久| 青娱乐蜜桃臀av色| 日本一本午夜在线播放| 大香蕉伊人国产在线| 九九视频在线精品播放| 北条麻妃av在线免费观看| 青青伊人一精品视频| 红杏久久av人妻一区| 欧美老妇精品另类不卡片| 人人妻人人人操人人人爽| 绝顶痉挛大潮喷高潮无码 | av大全在线播放免费| 粉嫩av蜜乳av蜜臀| 日韩激情文学在线视频| 黑人性生活视频免费看| 中文字幕日韩精品日本| 国产第一美女一区二区三区四区| 日本熟女50视频免费| 日韩欧美中文国产在线| 92福利视频午夜1000看| 天天插天天色天天日| 精品久久久久久久久久久99| 久草视频在线免播放| 无码中文字幕波多野不卡| 少妇ww搡性bbb91| 天天做天天干天天操天天射| 人妻丰满熟妇综合网| 一区二区三区久久中文字幕| 国产内射中出在线观看| 欧美一区二区三区乱码在线播放| 天堂v男人视频在线观看| 天天操夜夜骑日日摸| 天天射夜夜操综合网| 午夜蜜桃一区二区三区| 四虎永久在线精品免费区二区| 亚洲欧美另类手机在线| 中文字幕免费福利视频6| 又大又湿又爽又紧A视频| 又粗又长 明星操逼小视频 | 久久久麻豆精亚洲av麻花| 直接能看的国产av| 日本高清成人一区二区三区| 日本少妇的秘密免费视频| 瑟瑟视频在线观看免费视频| 青青青激情在线观看视频| 好了av中文字幕在线| 播放日本一区二区三区电影| 中文字幕 码 在线视频| 91国内视频在线观看| 黄色的网站在线免费看| 男人天堂色男人av| 污污小视频91在线观看| 日本在线不卡免费视频| 日韩精品中文字幕播放| 99精品视频之69精品视频| 男生舔女生逼逼视频| 亚洲1区2区3区精华液| 日韩近亲视频在线观看| 人妻少妇精品久久久久久| 亚洲激情唯美亚洲激情图片| 免费观看丰满少妇做受| 久久精品久久精品亚洲人| 1区2区3区4区视频在线观看| 岛国一区二区三区视频在线| 成年人黄色片免费网站| 色婷婷久久久久swag精品| 国产一区二区神马久久| 在线观看国产网站资源| 农村胖女人操逼视频| 人妻少妇精品久久久久久| 在线国产中文字幕视频| 一区二区视频视频视频| 老司机在线精品福利视频| 亚洲激情偷拍一区二区| 91大屁股国产一区二区| 日韩av有码中文字幕| 国产伦精品一区二区三区竹菊| 亚洲激情唯美亚洲激情图片| 亚洲公开视频在线观看| 天天日天天干天天要| 91人妻精品久久久久久久网站| 中文字幕人妻被公上司喝醉在线| 黑人大几巴狂插日本少妇| 一区二区三区久久中文字幕| 亚洲精品三级av在线免费观看| 日本少妇人妻xxxxx18| 国产综合高清在线观看| 大鸡巴后入爆操大屁股美女| 亚洲伊人色一综合网| 91精品国产综合久久久蜜| 又黄又刺激的午夜小视频| 91麻豆精品秘密入口在线观看| 精品视频一区二区三区四区五区| 91综合久久亚洲综合| 强行扒开双腿猛烈进入免费版| 中文字幕国产专区欧美激情| 精品老妇女久久9g国产| 午夜场射精嗯嗯啊啊视频| 黑人进入丰满少妇视频| 欧美成一区二区三区四区| 一区二区三区综合视频| 大香蕉大香蕉在线有码 av| 亚洲国产欧美一区二区三区…| 日本高清成人一区二区三区| 人妻少妇精品久久久久久| 欧美精品 日韩国产| 强行扒开双腿猛烈进入免费版 | 性感美女福利视频网站| 2012中文字幕在线高清| 女同久久精品秋霞网| 11久久久久久久久久久| 欧美黑人与人妻精品| 亚洲最大黄了色网站| 国产高潮无码喷水AV片在线观看| 人妻少妇亚洲一区二区| 黄色男人的天堂视频| 热思思国产99re| 岛国免费大片在线观看 | 日韩一区二区电国产精品| 人妻丰满熟妇综合网| www久久久久久久久久久| 2022天天干天天操| 粉嫩av懂色av蜜臀av| 91极品大一女神正在播放| 一区二区三区四区视频| 青青青青青青青青青青草青青 | 边摸边做超爽毛片18禁色戒| 亚洲精品色在线观看视频| 丝袜亚洲另类欧美变态| 2019av在线视频| 黄色片年轻人在线观看| 天天色天天舔天天射天天爽| 精品久久婷婷免费视频| av中文在线天堂精品| 97年大学生大白天操逼| 99国产精品窥熟女精品| gogo国模私拍视频| av视网站在线观看| 97瑟瑟超碰在线香蕉| 国产使劲操在线播放| 中文字幕中文字幕 亚洲国产| 国产V亚洲V天堂无码欠欠| 欧美一区二区三区久久久aaa| 国产精品黄大片在线播放| 不卡一区一区三区在线| 天天操天天操天天碰| 激情人妻校园春色亚洲欧美| 久草视频 久草视频2| 日韩少妇人妻精品无码专区| 2020中文字幕在线播放| 中英文字幕av一区| 97精品视频在线观看| 美味人妻2在线播放| 超碰中文字幕免费观看| 自拍偷区二区三区麻豆| 少妇露脸深喉口爆吞精| 啊慢点鸡巴太大了啊舒服视频| 九色视频在线观看免费| 日本最新一二三区不卡在线| 十八禁在线观看地址免费| 夏目彩春在线中文字幕| 亚洲欧美色一区二区| 888亚洲欧美国产va在线播放| 精品国产乱码一区二区三区乱| 97欧洲一区二区精品免费| 天天日天天舔天天射进去| 天天色天天爱天天爽| 日视频免费在线观看| 中文字幕免费在线免费| 99久久超碰人妻国产| 亚洲狠狠婷婷综合久久app | 日噜噜噜夜夜噜噜噜天天噜噜噜 | 五十路av熟女松本翔子| 91精品资源免费观看| 国产午夜激情福利小视频在线| 欧美麻豆av在线播放| 欧美激情电影免费在线| 久久丁香花五月天色婷婷| 美女 午夜 在线视频| 美女日逼视频免费观看| 日本一区精品视频在线观看| 91国语爽死我了不卡| 青草青永久在线视频18| 91九色国产porny蝌蚪| 久久午夜夜伦痒痒想咳嗽P| 欲乱人妻少妇在线视频裸| av在线资源中文字幕| 福利午夜视频在线合集| 亚洲免费va在线播放| 亚洲免费av在线视频| 亚洲中文字字幕乱码| 日韩特级黄片高清在线看| 日韩午夜福利精品试看| 久久这里有免费精品| 一级a看免费观看网站| 一二三中文乱码亚洲乱码one| 欧美日韩一级黄片免费观看| 中文字幕AV在线免费看 | 日日日日日日日日夜夜夜夜夜夜| 东游记中文字幕版哪里可以看到| 岛国青草视频在线观看| 亚洲公开视频在线观看| 亚洲麻豆一区二区三区| 日韩午夜福利精品试看| 美女少妇亚洲精选av| 亚洲精品av在线观看| 香蕉片在线观看av| 日本韩国在线观看一区二区| 99久久成人日韩欧美精品| 亚洲男人的天堂a在线| 日本最新一二三区不卡在线| 综合激情网激情五月五月婷婷| 蜜桃精品久久久一区二区| 日韩写真福利视频在线观看| 日韩欧美一级精品在线观看| 亚洲精品麻豆免费在线观看| av高潮迭起在线观看| 亚洲av自拍偷拍综合| 日韩伦理短片在线观看| 日本免费视频午夜福利视频| 亚洲天堂第一页中文字幕| 日本欧美视频在线观看三区| 熟女妇女老妇一二三区| 亚洲精品精品国产综合| 硬鸡巴动态操女人逼视频| sejizz在线视频| 精品久久久久久久久久中文蒉| 国产精品久久久久久久精品视频| 欧美日韩国产一区二区三区三州| 国产精品久久久久久久久福交| 熟女人妻在线中出观看完整版| 欧美成人一二三在线网| 欧美精品国产综合久久| 午夜免费观看精品视频| 2020av天堂网在线观看| 在线免费观看日本片| 97国产福利小视频合集| 人妻爱爱 中文字幕| 超碰97免费人妻麻豆| 国产精品大陆在线2019不卡| 班长撕开乳罩揉我胸好爽| 欧美黑人与人妻精品| 国产成人精品一区在线观看| 精品乱子伦一区二区三区免费播| 国产精品人久久久久久| 国产欧美精品一区二区高清| 超级av免费观看一区二区三区| 天天躁日日躁狠狠躁躁欧美av| 在线观看国产免费麻豆| 香港三日本三韩国三欧美三级| 男人插女人视频网站| www久久久久久久久久久| 日日日日日日日日夜夜夜夜夜夜| 韩国AV无码不卡在线播放 | 亚洲福利午夜久久久精品电影网 | 风流唐伯虎电视剧在线观看 | 国产熟妇乱妇熟色T区| 在线观看免费av网址大全| 在线观看免费视频网| 老鸭窝日韩精品视频观看| 91精品一区二区三区站长推荐| 少妇人妻久久久久视频黄片| 日比视频老公慢点好舒服啊| 欧美精品 日韩国产| 免费观看污视频网站| 91av精品视频在线| 天天射,天天操,天天说| 成人伊人精品色xxxx视频| 国产超码片内射在线| 93视频一区二区三区| 精品美女在线观看视频在线观看| 日本性感美女视频网站| 国产福利小视频二区| 免费黄页网站4188| 天天草天天色天天干| 午夜激情久久不卡一区二区 | 成年人啪啪视频在线观看| 最新国产精品拍在线观看| 制服丝袜在线人妻中文字幕| 天天色天天操天天透| 日韩人妻丝袜中文字幕| 人妻丝袜av在线播放网址| 97超碰最新免费在线观看| 日本男女操逼视频免费看| aaa久久久久久久久| 91国内视频在线观看| 日美女屁股黄邑视频| 99精品视频在线观看免费播放| 欧美日本aⅴ免费视频| 亚洲Av无码国产综合色区| 国产高清97在线观看视频| 青青青青青操视频在线观看| 亚洲福利精品视频在线免费观看| 午夜精品一区二区三区福利视频| 亚洲一区二区三区精品乱码| 人妻久久久精品69系列| 国产精品久久久久久久精品视频| 天天日天天玩天天摸| 韩国女主播精品视频网站| 19一区二区三区在线播放| 91国内精品久久久久精品一| 国产自拍黄片在线观看| 女同性ⅹxx女同h偷拍| 日韩亚国产欧美三级涩爱| 中国黄色av一级片| 欧美一区二区三区高清不卡tv | 天天想要天天操天天干| 欧美一区二区三区啪啪同性| 91免费观看国产免费| 精品区一区二区三区四区人妻 | 欧美国品一二三产区区别| 久久久久久久一区二区三| 亚洲成人情色电影在线观看| 99re国产在线精品| av中文字幕电影在线看| yellow在线播放av啊啊啊| 亚洲最大免费在线观看| 国产精品久久久久久久精品视频| 又大又湿又爽又紧A视频| 一色桃子人妻一区二区三区| 中文字母永久播放1区2区3区| 人妻少妇性色欲欧美日韩| 18禁网站一区二区三区四区| 国产日韩av一区二区在线| 红桃av成人在线观看| 99久久久无码国产精品性出奶水| 内射久久久久综合网| 一级黄片大鸡巴插入美女| tube69日本少妇| 亚洲熟女久久久36d| 99人妻视频免费在线| av无限看熟女人妻另类av| 欧美老妇精品另类不卡片| 亚洲成人午夜电影在线观看| 在线不卡日韩视频播放| 夜色福利视频在线观看| 黄色视频在线观看高清无码| 国产三级精品三级在线不卡| 丁香花免费在线观看中文字幕| 成人色综合中文字幕| av在线免费中文字幕| 久草视频在线一区二区三区资源站| 大香蕉大香蕉大香蕉大香蕉大香蕉| 国产日韩精品免费在线| 在线观看操大逼视频| 青娱乐蜜桃臀av色| 91精品资源免费观看| 亚洲激情偷拍一区二区| 国产精品3p和黑人大战| 大黑人性xxxxbbbb| 日曰摸日日碰夜夜爽歪歪| 日韩欧美亚洲熟女人妻| 蜜桃视频在线欧美一区| 精品人人人妻人人玩日产欧| 97精品综合久久在线| 九九视频在线精品播放| 人妻爱爱 中文字幕| 亚洲自拍偷拍综合色| 精品久久久久久高潮| 天天干夜夜操啊啊啊| 日韩一个色综合导航| 东游记中文字幕版哪里可以看到| 久久国产精品精品美女| 日本少妇在线视频大香蕉在线观看| 一区二区三区av高清免费| 在线国产中文字幕视频| 99国产精品窥熟女精品| 真实国模和老外性视频| 91亚洲精品干熟女蜜桃频道| 中文字幕在线免费第一页| 激情内射在线免费观看| 99久久久无码国产精品性出奶水| 男人天堂av天天操| 天天躁夜夜躁日日躁a麻豆| 国产成人自拍视频播放| 亚洲中文字字幕乱码| 黄色av网站免费在线| 久久久久只精品国产三级| 91香蕉成人app下载| 少妇高潮无套内谢麻豆| 91九色porny国产蝌蚪视频| 99精品一区二区三区的区| 最新欧美一二三视频| 久久精品在线观看一区二区| 中文字幕av第1页中文字幕| 一区二区在线视频中文字幕 | yy96视频在线观看| 欧美一区二区中文字幕电影| 久久久久久性虐视频| 自拍偷拍 国产资源| 日本在线不卡免费视频| 最新欧美一二三视频| 欧美乱妇无乱码一区二区| 日韩熟女系列一区二区三区| 嫩草aⅴ一区二区三区| 91欧美在线免费观看| 亚洲精品麻豆免费在线观看| 在线免费观看靠比视频的网站| 亚洲天堂有码中文字幕视频| 成年美女黄网站18禁久久| 91天堂精品一区二区| 国产av一区2区3区| 亚洲天堂成人在线观看视频网站| 久久久久只精品国产三级| 色综合久久久久久久久中文| 久草电影免费在线观看| 经典国语激情内射视频| 欧美3p在线观看一区二区三区| eeuss鲁片一区二区三区| 国产精品熟女久久久久浪潮| 99亚洲美女一区二区三区| 免费大片在线观看视频网站| 好吊视频—区二区三区| 成人久久精品一区二区三区| 中文字幕av男人天堂| 中文字幕免费在线免费| 99婷婷在线观看视频| 超碰公开大香蕉97| 在线制服丝袜中文字幕| 国产精品人久久久久久| 国产成人午夜精品福利| 888亚洲欧美国产va在线播放| 九色porny九色9l自拍视频| 亚洲 中文字幕在线 日韩| 亚洲蜜臀av一区二区三区九色| 亚洲第一黄色在线观看| 亚洲va天堂va国产va久| 人妻丝袜榨强中文字幕| 国产美女精品福利在线| 特大黑人巨大xxxx| 国产麻豆剧果冻传媒app| 亚洲va国产va欧美精品88| 欧美成人一二三在线网| 91免费黄片可看视频| 国产精品手机在线看片| 天天日天天爽天天爽| 在线观看视频 你懂的| 和邻居少妇愉情中文字幕| 色在线观看视频免费的| 黄色资源视频网站日韩| AV天堂一区二区免费试看| 中文字母永久播放1区2区3区| 美女 午夜 在线视频| 亚洲高清国产拍青青草原| 亚洲天堂成人在线观看视频网站| 欧美aa一级一区三区四区| 国产在线观看免费人成短视频| 中国产一级黄片免费视频播放| 亚洲成人精品女人久久久| 视频一区 视频二区 视频| 成年人黄视频在线观看| 午夜在线观看一区视频| 老司机欧美视频在线看| 天天干天天操天天插天天日| 成人30分钟免费视频| 美洲精品一二三产区区别| 快点插进来操我逼啊视频| 99国内小视频在现欢看| 国产精品国产三级国产精东 | av久久精品北条麻妃av观看| 中文字幕一区二区三区人妻大片| 久久久精品欧洲亚洲av| 亚洲中文精品人人免费| 韩国黄色一级二级三级| 亚洲av男人天堂久久| 色婷婷久久久久swag精品| 任我爽精品视频在线播放| 9久在线视频只有精品| 狠狠嗨日韩综合久久| 青青草原色片网站在线观看| 国产极品精品免费视频| 播放日本一区二区三区电影| 国产高清精品极品美女| 制服丝袜在线人妻中文字幕| 日韩在线中文字幕色| 青青草精品在线视频观看| 97超碰国语国产97超碰| 欧洲欧美日韩国产在线| 亚洲国际青青操综合网站| 亚洲一区二区三区久久受| 国产成人精品福利短视频| 久草视频首页在线观看| japanese五十路熟女熟妇| 成人网18免费视频版国产| 免费高清自慰一区二区三区网站| 欧美成人综合视频一区二区| 中文字幕一区二 区二三区四区| 国产第一美女一区二区三区四区 | 好吊操视频这里只有精品| 日噜噜噜夜夜噜噜噜天天噜噜噜| 不卡一不卡二不卡三| 动色av一区二区三区| 免费大片在线观看视频网站| 亚洲精品国偷自产在线观看蜜桃| 免费看高清av的网站| 大胆亚洲av日韩av| 91精品综合久久久久3d动漫| 国产av一区2区3区| 91极品大一女神正在播放| 亚洲国产精品久久久久久6| AV天堂一区二区免费试看| 精品视频一区二区三区四区五区| 青青青视频自偷自拍38碰| 在线观看911精品国产| 懂色av蜜桃a v| 中文字幕免费福利视频6| 日韩午夜福利精品试看| 国产精品福利小视频a| 欧美3p在线观看一区二区三区| 91国产资源在线视频| 精内国产乱码久久久久久| 欧美xxx成人在线| 九色视频在线观看免费| 91国内精品自线在拍白富美| 午夜久久香蕉电影网| 日韩av有码一区二区三区4| 精品91自产拍在线观看一区| 色av色婷婷人妻久久久精品高清 | 桃色视频在线观看一区二区 | 国产精品黄大片在线播放| 亚洲伊人久久精品影院一美女洗澡| 黄页网视频在线免费观看| 欧亚日韩一区二区三区观看视频| 一区二区三区久久中文字幕| 日本欧美视频在线观看三区| 93视频一区二区三区| 青青青青爽手机在线| 午夜精品一区二区三区城中村| 亚洲1区2区3区精华液| 2022国产综合在线干| 中文字幕人妻三级在线观看 | 一区二区视频在线观看免费观看| 真实国产乱子伦一区二区| 视频一区 视频二区 视频| 自拍偷拍亚洲欧美在线视频| 天天操,天天干,天天射| 日本三极片视频网站观看| 青青青国产免费视频| 操的小逼流水的文章| 五色婷婷综合狠狠爱| 五十路熟女人妻一区二区9933| 中文字幕+中文字幕| 天天摸天天干天天操科普| 黑人3p华裔熟女普通话| 蜜桃视频17c在线一区二区| 亚洲专区激情在线观看视频| 淫秽激情视频免费观看| 中文字幕一区二 区二三区四区| 青青草原色片网站在线观看| 免费观看成年人视频在线观看| 亚洲一区久久免费视频| 激情伦理欧美日韩中文字幕| 精品国产乱码一区二区三区乱| 一区二区三区四区五区性感视频 | 亚洲日本一区二区久久久精品| 国产日韩精品电影7777| aⅴ精产国品一二三产品| 欧美一区二区三区啪啪同性| 97超碰最新免费在线观看| 中文字幕奴隷色的舞台50| 成人亚洲国产综合精品| 国产日本精品久久久久久久| 三级等保密码要求条款| 亚洲 清纯 国产com| 人人妻人人人操人人人爽| 国产精品人妻熟女毛片av久| 一区二区三区久久久91| 国产日韩精品免费在线| 孕妇奶水仑乱A级毛片免费看| xxx日本hd高清| 18禁精品网站久久| 亚洲国际青青操综合网站| 国产av一区2区3区| 亚洲变态另类色图天堂网| 老鸭窝日韩精品视频观看| 91极品新人『兔兔』精品新作| 国产一区av澳门在线观看| 天天躁夜夜躁日日躁a麻豆| 人妻丝袜精品中文字幕| 97成人免费在线观看网站| 色哟哟国产精品入口| 97瑟瑟超碰在线香蕉| 熟妇一区二区三区高清版| 超级碰碰在线视频免费观看| 黑人大几巴狂插日本少妇| 黄片色呦呦视频免费看| 91精品国产麻豆国产| 日本av在线一区二区三区| 成人在线欧美日韩国产| 岛国一区二区三区视频在线| 天天射,天天操,天天说| 精品高潮呻吟久久av| 久草免费人妻视频在线| 亚洲午夜伦理视频在线| 亚洲精品亚洲人成在线导航| 18禁网站一区二区三区四区| 天天日天天透天天操| 亚洲欧洲av天堂综合| 青青草在观免费国产精品| 美女福利视频网址导航| 一级a看免费观看网站| av中文字幕在线观看第三页| 中文字幕无码一区二区免费| 蜜桃视频17c在线一区二区| yellow在线播放av啊啊啊| 欧美视频综合第一页| 五月天中文字幕内射| 日本性感美女视频网站| 97国产在线av精品| av一本二本在线观看| 亚洲一区二区三区精品乱码| 少妇ww搡性bbb91| 天堂资源网av中文字幕| 中文字幕1卡1区2区3区| 和邻居少妇愉情中文字幕| 中文字幕高清免费在线人妻| 一区二区三区麻豆福利视频| 天天日天天干天天舔天天射| 一区二区三区四区中文| 馒头大胆亚洲一区二区| 玖玖一区二区在线观看| 日本一本午夜在线播放| 又粗又硬又猛又爽又黄的| 大香蕉大香蕉大香蕉大香蕉大香蕉| 五十路在线观看完整版| 扒开让我视频在线观看| 1769国产精品视频免费观看| 国产1区,2区,3区| 亚洲一区二区三区久久午夜| 北条麻妃高跟丝袜啪啪| 亚洲成人激情视频免费观看了| 偷拍自拍亚洲视频在线观看| 成年美女黄网站18禁久久| 毛片一级完整版免费| 五月激情婷婷久久综合网| 中文字幕在线观看国产片| 偷青青国产精品青青在线观看| 97精品视频在线观看| 成人综合亚洲欧美一区| 亚洲卡1卡2卡三卡四老狼| 欧美美女人体视频一区| 亚洲欧美久久久久久久久| 在线免费91激情四射 | 日曰摸日日碰夜夜爽歪歪| avjpm亚洲伊人久久| 一区二区在线观看少妇| 亚洲一区二区久久久人妻| av高潮迭起在线观看| 18禁污污污app下载| 欧美精品伦理三区四区| 欧美精品黑人性xxxx| 天天日天天做天天日天天做| 天天日天天鲁天天操| 久久久久久cao我的性感人妻| 亚洲另类在线免费观看| 免费在线观看视频啪啪| 天天日天天操天天摸天天舔| 亚洲av成人免费网站| 国产av一区2区3区| 亚洲成人精品女人久久久| 日韩午夜福利精品试看| 2017亚洲男人天堂| 国产精品视频资源在线播放| 日韩中文字幕精品淫| 午夜青青草原网在线观看| 精品av国产一区二区三区四区| 99精品久久久久久久91蜜桃| 91色秘乱一区二区三区| 国产精品久久久久久久精品视频| 岛国青草视频在线观看| 欧美乱妇无乱码一区二区| 视频啪啪啪免费观看| 97超碰免费在线视频| 丁香花免费在线观看中文字幕| 93精品视频在线观看| 亚洲国产免费av一区二区三区| 欧美日韩情色在线观看| 人人爱人人妻人人澡39| 任你操任你干精品在线视频| 人人妻人人人操人人人爽| 日本人妻少妇18—xx| 日本啪啪啪啪啪啪啪| 精品黑人巨大在线一区| 超碰97人人澡人人| 日本av高清免费网站| 在线观看911精品国产| 亚洲免费成人a v| 久久精品36亚洲精品束缚| av高潮迭起在线观看| 国产免费高清视频视频| 亚洲熟色妇av日韩熟色妇在线| 高潮喷水在线视频观看| 老司机99精品视频在线观看 | 欧美韩国日本国产亚洲| 人人在线视频一区二区| 国产精品自拍偷拍a| 午夜福利资源综合激情午夜福利资| 亚洲久久午夜av一区二区| 日本福利午夜电影在线观看| 久青青草视频手机在线免费观看 | 97年大学生大白天操逼| 青青草成人福利电影| 欧美色呦呦最新网址| 天堂av在线播放免费| 国产精品视频男人的天堂| 久久丁香花五月天色婷婷| 欧洲亚洲欧美日韩综合| 欧美精品一区二区三区xxxx| lutube在线成人免费看| 人妻少妇亚洲一区二区| 啊用力插好舒服视频| 91欧美在线免费观看| 偷拍自拍国产在线视频| 欧美一区二区三区啪啪同性| 久久精品36亚洲精品束缚| 亚洲午夜伦理视频在线 | 一区二区三区日韩久久| 亚洲最大黄 嗯色 操 啊| 亚洲特黄aaaa片| 97成人免费在线观看网站| 亚洲国产欧美一区二区三区久久| 91老师蜜桃臀大屁股| 日本熟女50视频免费| 欧美激情精品在线观看| 9色精品视频在线观看| 欧美日韩不卡一区不区二区| 国产一区自拍黄视频免费观看| 啪啪啪啪啪啪啪免费视频| 国产福利在线视频一区| 91精品国产观看免费| av日韩在线免费播放| av中文字幕国产在线观看| 操操网操操伊剧情片中文字幕网| 欧美另类一区二区视频| 无码国产精品一区二区高潮久久4| 天天日天天爽天天干| 好男人视频在线免费观看网站| 国产乱子伦精品视频潮优女| 青青草原色片网站在线观看| 亚洲一区av中文字幕在线观看| 天堂中文字幕翔田av| 亚洲天堂精品久久久| 天天躁夜夜躁日日躁a麻豆| 天天干夜夜操啊啊啊| 国产福利小视频免费观看| 精品视频一区二区三区四区五区| 成人区人妻精品一区二视频| 天天躁日日躁狠狠躁躁欧美av| 韩国爱爱视频中文字幕| 亚洲Av无码国产综合色区| 亚国产成人精品久久久| 激情五月婷婷综合色啪| 久久人人做人人妻人人玩精品vr| 日本精品一区二区三区在线视频。| 亚洲av午夜免费观看| 日本男女操逼视频免费看| 欧美视频综合第一页| 丰满少妇人妻xxxxx| 99一区二区在线观看| 五十路熟女人妻一区二| 日本免费一级黄色录像| 超碰在线观看免费在线观看| 91久久综合男人天堂| 日本熟女精品一区二区三区| 二区中出在线观看老师| 韩国黄色一级二级三级| 中文字幕视频一区二区在线观看| 亚洲一区二区三区av网站| 日韩av免费观看一区| 福利国产视频在线观看| 1000小视频在线| 又大又湿又爽又紧A视频| 2019av在线视频| 性色蜜臀av一区二区三区| 免费在线观看视频啪啪 | 中文字幕奴隷色的舞台50| 青青青青操在线观看免费| 免费人成黄页网站在线观看国产| 午夜福利资源综合激情午夜福利资| 青青草在观免费国产精品| 97超碰最新免费在线观看| 日韩不卡中文在线视频网站| 激情色图一区二区三区| 老司机免费视频网站在线看| 成人高潮aa毛片免费| 亚洲丝袜老师诱惑在线观看| 天天干天天啪天天舔| 婷婷午夜国产精品久久久| 欧美精品黑人性xxxx| 亚洲成人免费看电影| 欧美中文字幕一区最新网址| 极品粉嫩小泬白浆20p主播| 亚洲欧美激情国产综合久久久| 最新91九色国产在线观看| 亚洲第17页国产精品| 欧美一区二区三区啪啪同性| 蜜桃视频入口久久久| 国产亚洲四十路五十路| 中文字幕欧美日韩射射一| 麻豆性色视频在线观看| 女生自摸在线观看一区二区三区| 成人av电影免费版| 久久久久久久亚洲午夜综合福利 | 免费一级特黄特色大片在线观看| 大香蕉伊人中文字幕| 国产黑丝高跟鞋视频在线播放| 日韩成人免费电影二区| 国产视频一区在线观看| 五月精品丁香久久久久福利社| 黄网十四区丁香社区激情五月天| 最新黄色av网站在线观看| 国产一线二线三线的区别在哪| 激情色图一区二区三区| 亚洲天堂精品久久久| 午夜激情久久不卡一区二区 | 91色网站免费在线观看| 制服丝袜在线人妻中文字幕| 亚洲成人黄色一区二区三区| 天天插天天狠天天操| 久久久久久cao我的性感人妻| 色综合色综合色综合色| 青青在线视频性感少妇和隔壁黑丝| 日比视频老公慢点好舒服啊| 日韩北条麻妃一区在线| 天天躁日日躁狠狠躁av麻豆| 日韩av有码一区二区三区4 | 伊人综合aⅴ在线网| 国产视频一区在线观看| 91桃色成人网络在线观看| 成年女人免费播放视频| 成人亚洲精品国产精品| 亚洲福利天堂久久久久久| 久久久久久国产精品| 中文字幕第一页国产在线| 色天天天天射天天舔| 亚洲综合在线视频可播放| 国产亚洲四十路五十路| 久久农村老妇乱69系列| 天天干天天操天天玩天天射| 91久久精品色伊人6882| 肏插流水妹子在线乐播下载| 欧美一级色视频美日韩| 国产又粗又猛又爽又黄的视频在线| 婷婷综合亚洲爱久久| 青青草亚洲国产精品视频| 中文字幕av第1页中文字幕| 久久久久久久99精品| 日本脱亚入欧是指什么| 91色九色porny| 岛国一区二区三区视频在线| 国产精品免费不卡av| 91麻豆精品传媒国产黄色片| 亚洲国产40页第21页| 在线观看视频污一区| 天天艹天天干天天操| 888亚洲欧美国产va在线播放| 18禁精品网站久久| jul—619中文字幕在线| 加勒比视频在线免费观看| 天天日天天爽天天爽| 五十路老熟女码av| 人妻熟女在线一区二区| 大香蕉伊人中文字幕| 免费在线看的黄网站| 100%美女蜜桃视频| 亚洲天堂第一页中文字幕| 国产精选一区在线播放| 日本av高清免费网站| 中文字幕国产专区欧美激情| gav成人免费播放| 欧美第一页在线免费观看视频| 高清一区二区欧美系列| 欧美成人综合视频一区二区 | 欧美老妇精品另类不卡片| 午夜精品久久久久麻豆影视| 日韩精品中文字幕福利| 青青青青青青草国产| 九色视频在线观看免费| 97人妻色免费视频| 亚洲第一黄色在线观看| 一区二区三区在线视频福利| 日韩欧美制服诱惑一区在线| 在线免费观看99视频| 一区二区三区综合视频| 国产麻豆精品人妻av| 天天艹天天干天天操| 亚洲av琪琪男人的天堂| 久久久精品欧洲亚洲av| 顶级尤物粉嫩小尤物网站| 国产女人叫床高潮大片视频| 中文字幕人妻被公上司喝醉在线| 精品人妻每日一部精品| 久久免费看少妇高潮完整版| 搞黄色在线免费观看| 大鸡巴操b视频在线| 91免费放福利在线观看| 久久久精品精品视频视频| 亚洲av男人的天堂你懂的| 大鸡巴操娇小玲珑的女孩逼| 成年午夜免费无码区| 欧美另类重口味极品在线观看| 精品国产亚洲av一淫| 大鸡吧插逼逼视频免费看| 在线观看一区二区三级| 久久久久久性虐视频| 中文字幕国产专区欧美激情| 日韩精品一区二区三区在线播放| 亚洲第17页国产精品| 亚洲精品午夜久久久久| 中文字幕欧美日韩射射一| 亚洲一区二区激情在线| 9久在线视频只有精品| 成人国产影院在线观看| 婷婷六月天中文字幕| 男人插女人视频网站| 亚洲欧美激情人妻偷拍| 国产白嫩美女一区二区| 2o22av在线视频| 蜜桃视频入口久久久| 人妻熟女中文字幕aⅴ在线| gogo国模私拍视频| 国产黄色片在线收看| 自拍偷拍 国产资源| 久久国产精品精品美女| 亚洲av自拍偷拍综合| 自拍偷拍vs一区二区三区| 3D动漫精品啪啪一区二区下载| 一二三中文乱码亚洲乱码one| 一级A一级a爰片免费免会员| 蜜桃色婷婷久久久福利在线| 欧美日韩亚洲国产无线码| 韩国AV无码不卡在线播放| avjpm亚洲伊人久久| 97精品人妻一区二区三区精品| 超碰在线观看免费在线观看| 啊啊啊想要被插进去视频| 在线观看免费视频色97| 熟女在线视频一区二区三区| 婷婷激情四射在线观看视频| 国产视频网站一区二区三区| 日本阿v视频在线免费观看| 国产污污污污网站在线| 日韩午夜福利精品试看| 天天做天天爽夜夜做少妇| 亚洲2021av天堂| 午夜毛片不卡免费观看视频| 国产成人精品一区在线观看| 国产一线二线三线的区别在哪| 岛国青草视频在线观看| 欧洲黄页网免费观看| 亚洲午夜精品小视频| av网址国产在线观看| 在线免费观看99视频| 一区二区三区综合视频| 欧美日韩一区二区电影在线观看| 国产一级精品综合av| 人妻爱爱 中文字幕| 天天色天天操天天透| 很黄很污很色的午夜网站在线观看 | 丰满熟女午夜福利视频| 中国黄色av一级片| 日韩精品中文字幕在线| 沙月文乃人妻侵犯中文字幕在线 | 综合一区二区三区蜜臀| 午夜毛片不卡在线看| 成人精品视频99第一页| 国产成人精品福利短视频| 天天日天天日天天射天天干| 亚洲图库另类图片区| 美女被肏内射视频网站| 黑人变态深video特大巨大| 激情五月婷婷综合色啪| 国产视频一区二区午夜| 大屁股熟女一区二区三区| 亚洲精品一区二区三区老狼| 天天日天天爽天天爽| 在线成人日韩av电影| 中文字幕最新久久久| 99av国产精品欲麻豆| 国产亚洲天堂天天一区| 2o22av在线视频| 大骚逼91抽插出水视频| 欧美亚洲免费视频观看| 天天干天天操天天爽天天摸| 99精品国产aⅴ在线观看| av中文在线天堂精品| 人妻自拍视频中国大陆| 高潮喷水在线视频观看| 色噜噜噜噜18禁止观看| 国产中文精品在线观看| 天天日天天干天天插舔舔| 天天操天天污天天射| 日韩熟女av天堂系列| 91色网站免费在线观看 | 视频久久久久久久人妻| 日韩一区二区电国产精品| 欧美另类重口味极品在线观看| 欧美精品久久久久久影院| 久久久久久九九99精品| 大香蕉伊人中文字幕| 被大鸡吧操的好舒服视频免费| 国产福利在线视频一区| 亚洲人人妻一区二区三区| 一区二区三区久久中文字幕| 午夜毛片不卡免费观看视频| 精内国产乱码久久久久久| 欧美成人综合色在线噜噜| 青青青青爽手机在线| 99久久成人日韩欧美精品| 欧美日韩一区二区电影在线观看| 久久久精品欧洲亚洲av| 国产又色又刺激在线视频| 欧美 亚洲 另类综合| 亚洲一区制服丝袜美腿| 人人人妻人人澡人人| 蝴蝶伊人久久中文娱乐网| 91成人在线观看免费视频| 高清一区二区欧美系列| 黄色男人的天堂视频| 阿v天堂2014 一区亚洲| 欧美日韩v中文在线| 中国老熟女偷拍第一页| 99热久久极品热亚洲| 男女啪啪啪啪啪的网站| 国产清纯美女al在线| 少妇露脸深喉口爆吞精| 乱亲女秽乱长久久久| 91精品国产观看免费| 久久久人妻一区二区| 91精品综合久久久久3d动漫| 少妇深喉口爆吞精韩国| 亚洲护士一区二区三区| 天天日天天干天天插舔舔| 亚洲成人午夜电影在线观看| 亚洲综合另类欧美久久| 人妻凌辱欧美丰满熟妇| 亚洲成人av一区久久| 亚洲中文字字幕乱码| 粉嫩av蜜乳av蜜臀| 91人妻精品久久久久久久网站| 久草视频首页在线观看| 亚洲最大黄 嗯色 操 啊| 热99re69精品8在线播放| 在线新三级黄伊人网| 欧美精产国品一二三产品区别大吗| 丰满少妇翘臀后进式| 久久精品视频一区二区三区四区| 国产一区成人在线观看视频| 四川五十路熟女av| 97超碰国语国产97超碰| 亚洲超碰97人人做人人爱| 在线不卡日韩视频播放| 九色视频在线观看免费| 国产在线91观看免费观看| 日韩av免费观看一区| 中文字幕 亚洲av| 亚洲天天干 夜夜操| 午夜极品美女福利视频| 在线可以看的视频你懂的 | 狠狠操操操操操操操操操| 2022精品久久久久久中文字幕| 欧美久久一区二区伊人| 亚欧在线视频你懂的| 亚洲精品一区二区三区老狼| 日韩欧美中文国产在线 | 国产一区av澳门在线观看| 亚洲麻豆一区二区三区| av在线免费观看亚洲天堂| 免费在线福利小视频| 黄色黄色黄片78在线| 免费男阳茎伸入女阳道视频| 美女张开腿让男生操在线看| 国产在线观看黄色视频| 91精品综合久久久久3d动漫| 91啪国自产中文字幕在线| 91福利在线视频免费观看| 中文字母永久播放1区2区3区| 大屁股肉感人妻中文字幕在线| 中文字幕欧美日韩射射一| 女警官打开双腿沦为性奴| 亚洲伊人av天堂有码在线| 99热这里只有精品中文| 538精品在线观看视频| 色在线观看视频免费的| 天天操天天插天天色| 97精品人妻一区二区三区精品| 91人妻人人做人人爽在线| 国产极品精品免费视频| 日本午夜福利免费视频| 国产精品人妻一区二区三区网站| 亚洲av日韩av第一区二区三区| 最后99天全集在线观看| 天天日天天爽天天爽| 秋霞午夜av福利经典影视| 不卡一不卡二不卡三| 久久热久久视频在线观看| 亚洲av日韩av第一区二区三区| 美女张开两腿让男人桶av| 久久精品视频一区二区三区四区 | 少妇ww搡性bbb91| 一区二区三区毛片国产一区| 人妻少妇性色欲欧美日韩| 国产又大又黄免费观看| 不戴胸罩引我诱的隔壁的人妻| 亚洲国产精品久久久久久6| 欧美精品久久久久久影院| 欧美亚洲自偷自拍 在线| 女同互舔一区二区三区| 天天想要天天操天天干| 又黄又刺激的午夜小视频| 亚洲 中文 自拍 另类 欧美| 亚洲自拍偷拍综合色| 1区2区3区不卡视频| 成人伊人精品色xxxx视频| 中文字幕在线观看国产片| 色呦呦视频在线观看视频| 强行扒开双腿猛烈进入免费版 | 美女大bxxxx内射| 国产在线一区二区三区麻酥酥| 啊用力插好舒服视频| 一区二区三区蜜臀在线| 精品欧美一区二区vr在线观看| 成人高潮aa毛片免费| 80电影天堂网官网| 日本精品美女在线观看| 午夜精品福利91av| 亚洲精品在线资源站| 一区二区三区国产精选在线播放| 中文字幕一区的人妻欧美日韩| wwwxxx一级黄色片| 日本阿v视频在线免费观看| 一区二区视频视频视频| 亚洲欧美激情国产综合久久久| 色av色婷婷人妻久久久精品高清| 欧美80老妇人性视频| 精品国产污污免费网站入口自| mm131美女午夜爽爽爽| 蜜臀成人av在线播放| 红桃av成人在线观看| av中文字幕在线观看第三页| 天天操天天操天天碰| 很黄很污很色的午夜网站在线观看| 午夜av一区二区三区| 嫩草aⅴ一区二区三区| wwwxxx一级黄色片| av久久精品北条麻妃av观看| 1000部国产精品成人观看视频| 91久久精品色伊人6882| 2020中文字幕在线播放| 免费看高清av的网站| 在线免费观看日本片| 久久这里有免费精品| 播放日本一区二区三区电影| 日本真人性生活视频免费看| 成人国产影院在线观看| 欧美一区二区三区高清不卡tv| 超鹏97历史在线观看| 激情伦理欧美日韩中文字幕| 亚洲av香蕉一区区二区三区犇| 国产三级精品三级在线不卡| 亚洲国产香蕉视频在线播放| 国产女人露脸高潮对白视频| 国产精品人久久久久久| 美女吃鸡巴操逼高潮视频| 日韩成人免费电影二区| 亚洲午夜在线视频福利| 一级黄片大鸡巴插入美女| 在线不卡成人黄色精品| 黑人巨大精品欧美视频| 精品高潮呻吟久久av| 色综合色综合色综合色| 中国黄片视频一区91| 国产熟妇一区二区三区av| av无限看熟女人妻另类av| 韩国女主播精品视频网站| 天天日天天透天天操| av在线免费观看亚洲天堂| 超级av免费观看一区二区三区| 国产成人精品久久二区91| 亚洲女人的天堂av| 天天做天天干天天舔| 偷拍3456eee| 大鸡巴操b视频在线| 国产综合视频在线看片| 精品首页在线观看视频| 亚洲美女自偷自拍11页| 亚洲福利午夜久久久精品电影网| 老司机福利精品免费视频一区二区| 夜女神免费福利视频| 久碰精品少妇中文字幕av | 91人妻精品一区二区久久| 日美女屁股黄邑视频| 亚洲熟女久久久36d| 精品首页在线观看视频| 丁香花免费在线观看中文字幕| 亚洲一区二区三区在线高清| 99的爱精品免费视频| 一级A一级a爰片免费免会员| 黄色片黄色片wyaa| 人人超碰国字幕观看97| 青青在线视频性感少妇和隔壁黑丝 | 久久免费看少妇高潮完整版| 91精品国产91久久自产久强| 91国内精品自线在拍白富美| 亚洲天堂第一页中文字幕| 特一级特级黄色网片| 亚洲麻豆一区二区三区| 特级欧美插插插插插bbbbb| 天天综合天天综合天天网| gav成人免费播放| 亚洲福利精品视频在线免费观看| 大香蕉大香蕉大香蕉大香蕉大香蕉 | 一区二区三区麻豆福利视频| 精品亚洲中文字幕av| 97国产精品97久久| 免费看美女脱光衣服的视频| 亚洲天天干 夜夜操| 免费黄色成人午夜在线网站| 2025年人妻中文字幕乱码在线| 五十路丰满人妻熟妇| 夜鲁夜鲁狠鲁天天在线| 精品高跟鞋丝袜一区二区| 自拍偷区二区三区麻豆| 国产视频精品资源网站| 老师让我插进去69AV| 麻豆精品成人免费视频| 一区二区三区激情在线| 99国内小视频在现欢看| 亚洲日本一区二区久久久精品| 在线免费91激情四射| 国产亚洲视频在线观看| 色婷婷六月亚洲综合香蕉| 啪啪啪操人视频在线播放| mm131美女午夜爽爽爽| 亚洲在线免费h观看网站| 亚洲欧美综合在线探花| 不卡日韩av在线观看| 99热国产精品666| 91国产在线免费播放| 久久久精品欧洲亚洲av| 天天日夜夜干天天操| 一二三中文乱码亚洲乱码one| 天天插天天色天天日| 欧美成人黄片一区二区三区| 2020久久躁狠狠躁夜夜躁| 晚上一个人看操B片| 日韩精品中文字幕在线| 国产美女精品福利在线| 大香蕉福利在线观看| 欧美日韩精品永久免费网址| 日本啪啪啪啪啪啪啪| 男人的网址你懂的亚洲欧洲av| 亚洲综合一区成人在线| 少妇与子乱在线观看| av黄色成人在线观看| 韩国黄色一级二级三级| 九九视频在线精品播放| 在线观看一区二区三级| 一级a看免费观看网站| 天天日天天舔天天射进去| 在线播放国产黄色av| 青青青青操在线观看免费| 亚洲第17页国产精品| 青青青青视频在线播放| 欧美区一区二区三视频| 精品91自产拍在线观看一区| 亚洲va国产va欧美精品88| 经典av尤物一区二区| 91国偷自产一区二区三区精品| 久久国产精品精品美女| 日韩中文字幕精品淫| 人妻素人精油按摩中出| 18禁网站一区二区三区四区 | 中文字幕最新久久久| 粉嫩av懂色av蜜臀av| 大陆胖女人与丈夫操b国语高清| 黄色成年网站午夜在线观看 | 国产福利在线视频一区| 伊人情人综合成人久久网小说| 日韩三级电影华丽的外出| 国产露脸对白在线观看| 欧美性感尤物人妻在线免费看| 97瑟瑟超碰在线香蕉| 又色又爽又黄又刺激av网站| 偷拍自拍视频图片免费| 非洲黑人一级特黄片| 天天夜天天日天天日| 99精品国产免费久久| 黑人借宿ntr人妻的沦陷2| 免费大片在线观看视频网站| 中文字幕免费在线免费| 青娱乐在线免费视频盛宴| 91麻豆精品91久久久久同性| 久久久久久久精品老熟妇| 动漫美女的小穴视频| 黄色录像鸡巴插进去| 中文字幕人妻av在线观看| 黄色视频在线观看高清无码 | 大鸡巴后入爆操大屁股美女| 五月激情婷婷久久综合网| 国产 在线 免费 精品| 久久免费看少妇高潮完整版| 国产视频精品资源网站| 视频在线免费观看你懂得| 亚洲美女自偷自拍11页| 久久久久久久亚洲午夜综合福利| 成人影片高清在线观看| 久久麻豆亚洲精品av| 日韩欧美制服诱惑一区在线| 国产精品3p和黑人大战| 天天色天天操天天舔| 国产白嫩美女一区二区| 99国内精品永久免费视频| 丰满的子国产在线观看| 青草亚洲视频在线观看| 又大又湿又爽又紧A视频| 手机看片福利盒子日韩在线播放| 91人妻人人做人人爽在线| 午夜精品亚洲精品五月色| 亚洲粉嫩av一区二区三区| 国产日韩精品电影7777| 熟妇一区二区三区高清版| 成人国产小视频在线观看| 欧美专区第八页一区在线播放| 天天日天天日天天射天天干| 亚洲av在线观看尤物| 亚洲国产在人线放午夜| 春色激情网欧美成人| 亚洲精品高清自拍av| 亚洲视频在线视频看视频在线| 18禁网站一区二区三区四区| 国产精品视频一区在线播放| 在线可以看的视频你懂的| 中文字幕日本人妻中出| 日本少妇的秘密免费视频| 含骚鸡巴玩逼逼视频| 馒头大胆亚洲一区二区| 亚洲国产中文字幕啊啊啊不行了| av在线免费资源站| 在线制服丝袜中文字幕| 中文人妻AV久久人妻水| 午夜精品在线视频一区| 久久久麻豆精亚洲av麻花| 年轻的人妻被夫上司侵犯| 中文字幕乱码av资源| 香蕉aⅴ一区二区三区| 色在线观看视频免费的| 国产av一区2区3区| 40道精品招牌菜特色| 日韩一区二区三区三州| 色综合久久五月色婷婷综合| 青青草成人福利电影| 国产精品自拍在线视频| 天堂资源网av中文字幕| 亚洲成a人片777777| 国产日韩精品免费在线| 97精品综合久久在线| 插小穴高清无码中文字幕| 伊人综合aⅴ在线网| 不卡一区一区三区在线| 国产片免费观看在线观看| 天天日天天干天天插舔舔| 国产亚洲四十路五十路|