成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 圖文詳解OpenCV中光流以及視頻特征點追蹤

圖文詳解OpenCV中光流以及視頻特征點追蹤

熱門標(biāo)簽:長沙高頻外呼系統(tǒng)原理是什么 湛江智能外呼系統(tǒng)廠家 宿遷星美防封電銷卡 外呼并發(fā)線路 ai電話機器人哪里好 地圖標(biāo)注審核表 西藏房產(chǎn)智能外呼系統(tǒng)要多少錢 百度地圖標(biāo)注沒有了 ai電銷機器人源碼

前言

這篇博客將介紹光流的概念以及如何使用 Lucas-Kanade 方法估計光流,并演示如何使用 cv2.calcOpticalFlowPyrLK() 來跟蹤視頻中的特征點。

1. 效果圖

光流追蹤效果圖如下:

它顯示了一個球在連續(xù) 5 幀中移動。箭頭表示其位移矢量。

不是很嚴(yán)謹(jǐn)?shù)摹∈韫饬魈卣鼽c追蹤效果圖如下:

它追蹤了視頻中多個車的主駕駛、副駕駛,以及行人的邊緣角點的軌跡:

此代碼不檢查下一個關(guān)鍵點的正確程度。因此即使圖像中的任何特征點消失,光流也有可能找到下一個看起來可能靠近它的點。對于穩(wěn)健的跟蹤,角點應(yīng)該在特定的時間間隔內(nèi)檢測點。

過程圖其一如下:

優(yōu)化版的——稀疏光流特征點追蹤效果如下:

找到特征點,每 30 幀對光流點向后檢查,只保留還存在于屏幕中的特征點。不會存在如上圖車已經(jīng)過去了,還留存有長長的不正確的軌跡追蹤線。

過程圖其一如下:

原圖 VS 密集光流追蹤 gif 效果圖如下:

原圖 VS 密集光流Hsv效果圖其一如下:

2. 原理

2.1 什么是光流?光流追蹤的前提、原理

光流是由物體或相機的運動引起的圖像物體在連續(xù)兩幀之間的明顯運動的模式。它是 2D 矢量場,其中每個矢量是一個位移矢量,顯示點從第一幀到第二幀的移動。

光流追蹤的前提是:1. 對象的像素強度在連續(xù)幀之間不會改變;2. 相鄰像素具有相似的運動。

光流追蹤的原理:

cv2.goodFeaturesToTrack() :Shi-Tomasi 角點檢測器確定要追蹤的特征點

cv2.calcOpticalFlowPyrLK(): 追蹤視頻中的稀疏特征點

cv2.calcOpticalFlowFarneback(): 追蹤視頻中的密集特征點

取第一幀,檢測其中的一些 Shi-Tomasi 角點,使用 Lucas-Kanade 光流迭代跟蹤這些點。對于函數(shù) cv2.calcOpticalFlowPyrLK() 傳遞前一幀、前一個點和下一幀。它返回下一個點以及一些狀態(tài)編號,如果找到下一個點,則值為 1,否則為零。然后在下一步中迭代地將這些下一個點作為前一個點傳遞。

使用 Harris 角點檢測器 檢查逆矩陣的相似性。它表示角點是更好的跟蹤點。

Shi-Tomasi 角點檢測器 比 Harris 角點檢測器效果更好一些;

2.2 光流的應(yīng)用

光流在以下領(lǐng)域有許多應(yīng)用:

  • 運動的結(jié)構(gòu)
  • 視頻壓縮
  • 視頻穩(wěn)定

2.3 光流的2種方法

OpenCV提供了倆種算法計算光流,分別通過:cv2.calcOpticalFlowPyrLK()、cv2.calcOpticalFlowFarneback實現(xiàn);

  • 稀疏光流: 通過 Lucas-Kanade 方法計算稀疏特征集的光流(使用 Shi-Tomasi 算法檢測到的角點)。
  • 密集光流: 通過 Gunner Farneback 來尋找密集光流。它計算幀中所有點的光流。

稀疏光流計算:

該方法傳遞前一幀、前一個點和下一幀;
它返回下一個點以及一些狀態(tài)編號,如果找到下一個點,則值為 1,否則為零。

p1, st, err = cv2.calcOpticalFlowPyrLK(old_gray, frame_gray, p0, None, winSize=(15, 15), maxLevel=2, criteria=(cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 0.03))

- old_gray: 上一幀單通道灰度圖
- frame_gray: 下一幀單通道灰度圖
- prePts:p0上一幀坐標(biāo)pts
- nextPts: None
- winSize: 每個金字塔級別上搜索窗口的大小
- maxLevel: 最大金字塔層數(shù)
- criteria:指定迭代搜索算法的終止條件,在指定的最大迭代次數(shù) 10 之后或搜索窗口移動小于 0.03

密集光流計算:

該方法將得到一個帶有光流向量 (u,v) 的 2 通道陣列。可以找到它們的大小和方向,然后對結(jié)果進(jìn)行顏色編碼以實現(xiàn)更好的可視化。
在HSV圖像中,方向?qū)?yīng)于圖像的色調(diào),幅度對應(yīng)于價值平面。

flow = cv2.calcOpticalFlowFarneback(prvs, next, None, 0.5, 3, 15, 3, 5, 1.2, 0)

- prvs: 上一幀單通道灰度圖
- next: 下一幀單通道灰度圖
- flow: 流 None
- pyr_scale: 0.5經(jīng)典金字塔,構(gòu)建金字塔縮放scale
- level:3 初始圖像的金字塔層數(shù)
- winsize:3 平均窗口大小,數(shù)值越大,算法對圖像的魯棒性越強
- iterations:15 迭代次數(shù)
- poly_n:5 像素鄰域的參數(shù)多邊形大小,用于在每個像素中找到多項式展開式;較大的值意味著圖像將使用更平滑的曲面進(jìn)行近似,從而產(chǎn)生更高的分辨率、魯棒算法和更模糊的運動場;通常多邊形n=5或7。
- poly_sigma:1.2 高斯標(biāo)準(zhǔn)差,用于平滑導(dǎo)數(shù)
- flags: 可以是以下操作標(biāo)志的組合:OPTFLOW_USE_INITIAL_FLOW:使用輸入流作為初始流近似值。OPTFLOW_FARNEBACK_GAUSSIAN: 使用GAUSSIAN過濾器而不是相同尺寸的盒過濾器;

3. 源碼

3.2 稀疏光流追蹤

# 光流追蹤
# 光流追蹤的前提是:1. 對象的像素強度在連續(xù)幀之間不會改變;2. 相鄰像素具有相似的運動。
# - cv2.goodFeaturesToTrack() 確定要追蹤的特征點
# - cv2.calcOpticalFlowPyrLK() 追蹤視頻中的特征點

# 取第一幀,檢測其中的一些 Shi-Tomasi 角點,使用 Lucas-Kanade 光流迭代跟蹤這些點。
# 對于函數(shù) cv2.calcOpticalFlowPyrLK() 傳遞前一幀、前一個點和下一幀。它返回下一個點以及一些狀態(tài)編號,如果找到下一個點,則值為 1,否則為零。
# 然后在下一步中迭代地將這些下一個點作為前一個點傳遞。

# USAGE
# python video_optical_flow.py

import imutils
import numpy as np
import cv2

cap = cv2.VideoCapture('images/slow_traffic_small.mp4')

# ShiTomasi角點檢測的參數(shù)
feature_params = dict(maxCorners=100,
                      qualityLevel=0.3,
                      minDistance=7,
                      blockSize=7)

# Lucas Kanada光流檢測的參數(shù)
lk_params = dict(winSize=(15, 15),
                 maxLevel=2,
                 criteria=(cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 0.03))

# 構(gòu)建隨機顏色
color = np.random.randint(0, 255, (100, 3))

# 獲取第一幀并發(fā)現(xiàn)角點
ret, old_frame = cap.read()
old_gray = cv2.cvtColor(old_frame, cv2.COLOR_BGR2GRAY)
p0 = cv2.goodFeaturesToTrack(old_gray, mask=None, **feature_params)

# 為繪制光流追蹤圖,構(gòu)建一個Mask
mask = np.zeros_like(old_frame)

num = 0
while (1):
    ret, frame = cap.read()

    if not ret:
        break

    frame_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # 使用迭代Lucas Kanade方法計算稀疏特征集的光流
    # - old_gray: 上一幀單通道灰度圖
    # - frame_gray: 下一幀單通道灰度圖
    # - prePts:p0上一幀坐標(biāo)pts
    # - nextPts: None
    # - winSize: 每個金字塔級別上搜索窗口的大小
    # - maxLevel: 最大金字塔層數(shù)
    # - criteria:指定迭代搜索算法的終止條件,在指定的最大迭代次數(shù)criteria.maxCount之后或搜索窗口移動小于criteria.epsilon
    p1, st, err = cv2.calcOpticalFlowPyrLK(old_gray, frame_gray, p0, None, **lk_params)

    # 選擇軌跡點
    good_new = p1[st == 1]
    good_old = p0[st == 1]

    # 繪制軌跡
    for i, (new, old) in enumerate(zip(good_new, good_old)):
        a, b = new.ravel()
        c, d = old.ravel()
        mask = cv2.line(mask, (a, b), (c, d), color[i].tolist(), 2)
        frame = cv2.circle(frame, (a, b), 5, color[i].tolist(), -1)
    img = cv2.add(frame, mask)

    cv2.imshow('frame', img)
    cv2.imwrite('videoof-imgs/' + str(num) + '.jpg', imutils.resize(img, 500))
    print(str(num))
    num = num + 1
    k = cv2.waitKey(30)  0xff
    if k == 27:
        break

    # 更新之前的幀和點
    old_gray = frame_gray.copy()
    p0 = good_new.reshape(-1, 1, 2)

cv2.destroyAllWindows()
cap.release()

3.2 優(yōu)化版稀疏光流追蹤

# 優(yōu)化后的光流追蹤—Lucas-Kanade tracker
# (當(dāng)不見檢查下一個關(guān)鍵點的正確程度時,即使圖像中的任何特征點消失,光流也有可能找到下一個看起來可能靠近它的點。實際上對于穩(wěn)健的跟蹤,角點應(yīng)該在特定的時間間隔內(nèi)檢測點。
# 找到特征點后,每 30 幀對光流點的向后檢查,只選擇好的。)
# Lucas Kanade稀疏光流演示。使用GoodFeatures跟蹤用于跟蹤初始化和匹配驗證的回溯幀之間。
# Lucas-Kanade sparse optical flow demo. Uses goodFeaturesToTrack for track initialization and back-tracking for match verification between frames.

# Usage
# pyhton lk_track.py images/slow_traffic_small.mp4
# 按 ESC鍵退出

from __future__ import print_function

import imutils
import numpy as np
import cv2


def draw_str(dst, target, s):
    x, y = target
    cv2.putText(dst, s, (x + 1, y + 1), cv2.FONT_HERSHEY_PLAIN, 1.0, (0, 0, 0), thickness=2, lineType=cv2.LINE_AA)
    cv2.putText(dst, s, (x, y), cv2.FONT_HERSHEY_PLAIN, 1.0, (255, 255, 255), lineType=cv2.LINE_AA)


lk_params = dict(winSize=(15, 15),
                 maxLevel=2,
                 criteria=(cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 0.03))

feature_params = dict(maxCorners=500,
                      qualityLevel=0.3,
                      minDistance=7,
                      blockSize=7)


class App:
    def __init__(self, video_src):
        self.track_len = 10
        self.detect_interval = 30
        self.tracks = []
        self.cam = cv2.VideoCapture(video_src)
        self.frame_idx = 0

    def run(self):
        while True:
            _ret, frame = self.cam.read()
            if not _ret:
                break

            frame_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
            vis = frame.copy()

            if len(self.tracks) > 0:
                img0, img1 = self.prev_gray, frame_gray
                p0 = np.float32([tr[-1] for tr in self.tracks]).reshape(-1, 1, 2)
                p1, _st, _err = cv2.calcOpticalFlowPyrLK(img0, img1, p0, None, **lk_params)
                p0r, _st, _err = cv2.calcOpticalFlowPyrLK(img1, img0, p1, None, **lk_params)
                d = abs(p0 - p0r).reshape(-1, 2).max(-1)
                good = d  1
                new_tracks = []
                for tr, (x, y), good_flag in zip(self.tracks, p1.reshape(-1, 2), good):
                    if not good_flag:
                        continue
                    tr.append((x, y))
                    if len(tr) > self.track_len:
                        del tr[0]
                    new_tracks.append(tr)
                    cv2.circle(vis, (x, y), 2, (0, 255, 0), -1)
                self.tracks = new_tracks
                cv2.polylines(vis, [np.int32(tr) for tr in self.tracks], False, (0, 255, 0))
                draw_str(vis, (20, 20), 'track count: %d' % len(self.tracks))

            if self.frame_idx % self.detect_interval == 0:
                mask = np.zeros_like(frame_gray)
                mask[:] = 255
                for x, y in [np.int32(tr[-1]) for tr in self.tracks]:
                    cv2.circle(mask, (x, y), 5, 0, -1)
                p = cv2.goodFeaturesToTrack(frame_gray, mask=mask, **feature_params)
                if p is not None:
                    for x, y in np.float32(p).reshape(-1, 2):
                        self.tracks.append([(x, y)])

            self.prev_gray = frame_gray
            cv2.imshow('lk_track', vis)
            print(self.frame_idx)
            cv2.imwrite('videoOof-imgs/' + str(self.frame_idx) + '.jpg', imutils.resize(vis, 500))
            self.frame_idx += 1

            ch = cv2.waitKey(1)
            if ch == 27:
                break

def main():
    import sys
    try:
        video_src = sys.argv[1]
    except:
        video_src = 0

    App(video_src).run()
    print('Done')


if __name__ == '__main__':
    print(__doc__)
    main()
    cv2.destroyAllWindows()

3.3 密集光流追蹤

# OpenCV中的密集光流
# Lucas-Kanade 方法計算稀疏特征集的光流(使用 Shi-Tomasi 算法檢測到的角點)。
# OpenCV 提供了另一種算法: Gunner Farneback 來尋找密集光流。它計算幀中所有點的光流。
# 通過cv2.calcOpticalFlowFarneback() 將得到一個帶有光流向量 (u,v) 的 2 通道陣列??梢哉业剿鼈兊拇笮『头较?,然后對結(jié)果進(jìn)行顏色編碼以實現(xiàn)更好的可視化。
# 在HSV圖像中,方向?qū)?yīng)于圖像的色調(diào),幅度對應(yīng)于價值平面。

import cv2
import imutils
import numpy as np

cap = cv2.VideoCapture('images/slow_traffic_small.mp4')

ret, frame1 = cap.read()
prvs = cv2.cvtColor(frame1, cv2.COLOR_BGR2GRAY)
hsv = np.zeros_like(frame1)
hsv[..., 1] = 255

num = 0
while (1):
    ret, frame2 = cap.read()

    if not ret:
        break
    next = cv2.cvtColor(frame2, cv2.COLOR_BGR2GRAY)

    # 使用迭代Gunner Farneback 方法計算密集特征的光流
    # - prvs: 上一幀單通道灰度圖
    # - next: 下一幀單通道灰度圖
    # - flow: 流 None
    # - pyr_scale: 0.5經(jīng)典金字塔,構(gòu)建金字塔縮放scale
    # - level:3 初始圖像的金字塔層數(shù)
    # - winsize:3 平均窗口大小,數(shù)值越大,算法對圖像的魯棒性越強
    # - iterations:15 迭代次數(shù)
    # - poly_n:5 像素鄰域的參數(shù)多邊形大小,用于在每個像素中找到多項式展開式;較大的值意味著圖像將使用更平滑的曲面進(jìn)行近似,從而產(chǎn)生更高的分辨率、魯棒算法和更模糊的運動場;通常多邊形n=5或7。
    # - poly_sigma:1.2 高斯標(biāo)準(zhǔn)差,用于平滑導(dǎo)數(shù)
    # - flags: 可以是以下操作標(biāo)志的組合:OPTFLOW_USE_INITIAL_FLOW:使用輸入流作為初始流近似值。OPTFLOW_FARNEBACK_GAUSSIAN: 使用GAUSSIAN過濾器而不是相同尺寸的盒過濾器;
    flow = cv2.calcOpticalFlowFarneback(prvs, next, None, 0.5, 3, 15, 3, 5, 1.2, 0)

    mag, ang = cv2.cartToPolar(flow[..., 0], flow[..., 1])
    hsv[..., 0] = ang * 180 / np.pi / 2
    hsv[..., 2] = cv2.normalize(mag, None, 0, 255, cv2.NORM_MINMAX)
    rgb = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)

    cv2.imshow('Origin VS frame2', np.hstack([frame2, rgb]))
    cv2.imwrite('dof-imgs/' + str(num) + '.jpg', imutils.resize(np.hstack([frame2, rgb]), 600))
    k = cv2.waitKey(30)  0xff
    num = num + 1
    if k == 27:
        break
    elif k == ord('s'):
        cv2.imwrite('dof-imgs/origin VS dense optical flow HSVres' + str(num) + ".jpg",
                    imutils.resize(np.hstack([frame2, rgb]), width=800))
    prvs = next

cap.release()
cv2.destroyAllWindows()

參考 https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_video/py_lucas_kanade/py_lucas_kanade.html#lucas-kanade

總結(jié)

到此這篇關(guān)于OpenCV中光流以及視頻特征點追蹤的文章就介紹到這了,更多相關(guān)OpenCV光流及視頻特征點追蹤內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Opencv光流運動物體追蹤詳解
  • opencv3/C++實現(xiàn)光流點追蹤
  • python+opencv實現(xiàn)動態(tài)物體追蹤
  • 使用OpenCV實現(xiàn)檢測和追蹤車輛
  • 如何用OpenCV -python3實現(xiàn)視頻物體追蹤
  • opencv+arduino實現(xiàn)物體點追蹤效果
  • Python+OpenCV實現(xiàn)實時眼動追蹤的示例代碼
  • OpenCV3.0+Python3.6實現(xiàn)特定顏色的物體追蹤
  • 淺析Python+OpenCV使用攝像頭追蹤人臉面部血液變化實現(xiàn)脈搏評估
  • OpenCV 顏色追蹤的示例代碼

標(biāo)簽:寧夏 漯河 林芝 普洱 海南 大同 南平 盤錦

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《圖文詳解OpenCV中光流以及視頻特征點追蹤》,本文關(guān)鍵詞  圖文,詳解,OpenCV,中,光流,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《圖文詳解OpenCV中光流以及視頻特征點追蹤》相關(guān)的同類信息!
  • 本頁收集關(guān)于圖文詳解OpenCV中光流以及視頻特征點追蹤的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美一卡2卡三卡4卡5免费| 91日本在线观看| 国产三级精品三级在线观看国产| 天天骑天天干| 日本成本人片免费观看| 狠狠色噜噜狠狠色综合久| 国产精品s色| 成人性生交大片免费看无遮挡aⅴ| 欧美日韩在线视频免费播放| 天天色天天干天天| 午夜亚洲国产au精品一区二区| 91在线观看免费高清| 亚洲精品网站在线播放gif| 亚洲国产精品欧美久久| 亚洲欧美乱综合图片区小说区| 一区二区三区欧美在线观看| 国产精品亚洲视频在线观看| 久久一二三四| 91精品办公室少妇高潮对白| 少妇av片在线观看| 日产精品久久久久久久| 日本免费视频www| 亚洲色婷婷综合开心网| 久久国产亚洲精品无码| 欧美性猛交99久久久久99按摩| 国产无精乱码一区二区三区| 七七婷婷婷婷精品国产| 成人福利一区二区| 国产一级二级毛片| 国产日韩精品在线观看| 日韩成人午夜精品| 日韩在线视频免费播放| 国内毛片毛片毛片毛片| 日韩电影在线免费| 日本不卡不码高清免费观看| 免费大片黄在线观看视频网站| 美女日批在线观看| www.夜色| 女人床在线观看| 亚洲精品视频在线看| 久久久久免费| 国模一区二区三区私拍视频| 欧美黑人性生活视频| 日韩小视频在线播放| 久久国产精品-国产精品| 午夜精品久久久久久久久| 国产成人在线视频| 另类激情亚洲| 欧美三级电影一区| 亚洲一区高清| 成人福利视频在| 中文字幕亚洲影视| 人人干人人干| 91精品国产自产拍在线观看蜜| 久热免费视频| 国产无遮无挡120秒| 亚洲国语精品自产拍在线观看| 污视频在线免费观看| av色综合久久天堂av色综合在| 国产精品高清一区二区三区| 久久久精品毛片| 欧美丝袜丝交足nylons图片| 捆绑紧缚一区二区三区视频| 亚洲jjzzjjzz在线观看| 人人爽久久涩噜噜噜网站| 国产女人在线观看| 久久精品99北条麻妃| 日本亚洲欧洲色α| 插我舔内射18免费视频| 日韩欧美亚洲系列| 中文字幕资源站| 一区二区三区在线免费看| 欧美大肥婆大肥bbbbb| 98视频精品全部国产| 欧美男人操女人视频| 伦一区二区三区中文字幕v亚洲| 成人看片app| 日本在线电影一区二区三区| 91午夜视频在线观看| 国产精品白嫩美女在线观看| 亚洲人成人一区二区三区| 久久99热精品| 天堂在线观看免费视频| 777精品久无码人妻蜜桃| 欧美色欧美亚洲另类二区| 欧美韩国一区二区| 电影一区二区三区| 久久99精品久久久久久青青91| 国产一区999| 久久影视电视剧免费网站清宫辞电视| 成人全视频免费观看在线看| 成人看av片| 亚洲夜夜综合| 免费在线国产视频| 欧美三日本三级少妇99| 久久www免费人成看片高清| 国产男女猛烈无遮挡免费视频| 亚洲精品一区二区三区在线播放| 丝袜亚洲另类欧美| 日韩欧美一区视频| 成人18夜夜网深夜福利网| 手机看片福利日韩| 亚洲午夜精品一区 二区 三区| 国产经品一区二区| 欧美精品二区三区四区免费看视频| 风间由美性色一区二区三区四区| 乱中年女人av三区中文字幕| 久久久久久久久成人| 日韩午夜视频在线观看| 精品久久久久久久一区二区蜜臀| 亚洲狠狠婷婷| 国产精品视频你懂的| 久久久999国产| 九色自拍视频| 欧美日韩综合在线免费观看| 成人在线国产| 青青草成人网| 91精品国产综合久久精品麻豆| 日韩精品一区二| 欧美在线免费看视频| 亚洲a在线视频| 91精品久久久久久久久久久久久| 国产在线视频福利| www国产亚洲精品久久麻豆| 成人国产精品久久久网站| 91久久精品一区二区二区| 亚洲四色影视在线观看| 亚洲精品国产精品国产| fc2在线中文字幕| 午夜亚洲一区| 久久婷婷国产综合尤物精品| 久久精品一偷一偷国产| 欧洲亚洲一区二区三区四区五区| 日韩av网址在线| 欧美日夜夜逼| www成人在线| 日韩一区免费观看| 日韩av在线电影| 色综合av综合无码综合网站| 激情福利在线| 成人伊人精品色xxxx视频| 岛国一区二区三区高清视频| 日本孕妇大胆孕交无码| 欧美男人操女人视频| 日韩av综合网站| 国内精品久久久久久99蜜桃| 亚洲老女人视频免费| 欧美精品www| 风韵丰满熟妇啪啪区老熟熟女| 久久国产精品毛片| 国产精品久久久视频| 精品婷婷伊人一区三区三| 亚洲成人精品久久久| 99视频入口| 亚洲不卡av不卡一区二区| 色婷婷一区二区三区av免费看| 亚洲欧美国产高清va在线播放| 欧美夫妻性生活视频| 黑人巨大xxx| 国产经典久久久| 26uuu久久噜噜噜噜| av大片在线免费观看| 91极品视频在线| 国产制服91一区二区三区制服| 国产精品一区二区三区精品| 亚洲成色最大综合在线| 欧美另类videos死尸| 日本a级片视频| 欧美一区二区福利在线| 99青草视频在线播放视| 婷婷六月综合亚洲| 午夜精品一区二区在线观看的| 久久久久久九九| 日韩午夜视频在线观看| 在线看欧美日韩| 日本50路肥熟bbw| 99久久国产热无码精品免费| 久久精品国产网站| 亚洲av人人澡人人爽人人夜夜| 欧美偷拍视频| 久久女同性恋中文字幕| 欧美男男freegayvideosroom| 91久久线看在观草草青青| 免费人成网站在线观看欧美高清| 欧美精品羞羞答答| 97国产精品人人爽人人做| 日韩一级裸体免费视频| 国产精品无码在线播放| h视频在线观看免费| 国产人与zoxxxx另类91| 国产精品网址在线| 四虎成人在线观看| 欧美人与物videos| 中文字幕欧美人与畜| 欧美大成色www永久网站婷| 国产精品理论在线| 逼特逼视频在线| 精品人妻无码一区二区性色| 精品国产va久久久久久久| 一区二区三区四区影院| 日韩在线视频第一页| 免费中文字幕在线观看| 男人天堂网视频| 亚洲成人二区| 亚洲最大的av网站| av电影在线地址| 麻豆精品免费视频入口| 天堂av在线免费| 精品蜜桃一区二区三区| 国产日产精品久久久久久婷婷| 国产有码在线| 日本一二三区在线观看| 欧美日韩免费在线观看| 毛片基地在线观看| 成人精品免费在线观看| 欧美老妇交乱视频| 欧美一区二区三区黄片| 3d性欧美动漫精品xxxx软件| 天堂久久一区二区三区| 国产美女视频免费| 国产精品女主播视频| 国产黄大片在线观看画质优化| 精品久久久久一区二区| 护士精品一区二区三区| 国产日韩欧美一区在线| 国产精品入口66mio| 成人爽a毛片免费啪啪红桃视频| 日韩免费黄色片| 中文字幕中文字幕99| 97在线观看视频免费| 91免费在线视频| 亚洲伦理一区二区| 99色精品视频| 亚洲裸体视频| 日韩影院一区二区| 三上悠亚激情av一区二区三区| 99热这里只有精品66| 日韩美女视频免费在线观看| 黄色免费网站视频| 手机av在线| 欧美成人福利视频| 久久精品免视看| 国产91精品久久久久久久| 色视频精品视频在线观看| 成人免费毛片a| 性xx色xx综合久久久xx| 亚洲天堂av图片| 免费看h片网站| 日韩视频免费| 久久国产精品99久久久久久老狼| 欧美性受xxxx黑人xyx性爽| 日韩精品一区二区三区中文在线| 中文字幕综合在线| 久草网在线视频| 色94色欧美sute亚洲线路一久| 亚洲国产精品一区二区第一页| 国产精品久久毛片av大全日韩| 亚洲精品视频免费观看| 久久偷看各类wc女厕嘘嘘偷窃| 天天射狠狠干| 娇妻高潮浓精白浆xxⅹ| 国产又粗又硬视频| h七七www色午夜日本| 成人精品一区二区三区电影| 一个人看的www视频免费在线观看| 欧美日韩一级黄色片| 国产成人啪精品午夜在线观看| 久久国产中文字幕| 久久久久久欧美精品se一二三四| 综合网插菊花| 亚洲 欧美 日韩 国产综合 在线| 日韩电视剧免费观看网站| 国产精品伦子伦| 欧美日韩三级一区二区| 亚洲三级黄色在线观看| 99在线视频免费观看| 日本一本在线视频| 黄色激情在线视频| 国产一区二区三区精品在线观看| 欧美黑人性受xxxx喷水| 成人免费在线看片| 色网站免费在线观看| 在线观看 中文字幕| 综合免费一区二区三区| 欧美日韩国内| 亚洲天堂av在线| 在线欧美福利| 伊人国产精品视频| 亚洲国产免费| 性一交一乱一区二区洋洋av| 日韩成人亚洲| 亚洲精品mp4| 激情 小说 亚洲 图片: 伦| 国产精品99一区二区三| 精品无码免费视频| 日本精品一区二区三区在线播放| 最新欧美色图| 日韩乱码人妻无码中文字幕| 成人动漫在线观看视频| 中文字幕线观看| 亚洲欧美激情在线视频| 国产专区精品视频| 动漫成人在线观看| 日韩亚洲欧美在线观看| 亚洲乱码av中文一区二区| 国产午夜精品久久久久久久久| 国模视频一区| 成人高h视频在线| 91一区二区三区在线| 天堂中文字幕av| 日韩你懂的电影在线观看| 99久久综合国产精品二区| 亚洲成在线观看| 窝窝九色成人影院| 黑人另类精品××××性爽| 欧美在线免费观看亚洲| 亚洲欧洲日韩综合| 亚州欧美一区三区三区在线| 永久久久久久| 欧美色图亚洲激情| 中文字幕精品综合| 日本xxxxxxxxx18| 最新地址在线观看| 特黄国产免费播放| 韩日精品一区| 欧美综合在线观看视频| 欧美xxxx性xxxxx高清| 国产91一区二区三区|