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

基于OpenCV目標(biāo)跟蹤實(shí)現(xiàn)人員計(jì)數(shù)器

 更新時(shí)間:2022年03月09日 14:42:51   作者:求則得之,舍則失之  
這篇文章主要介紹了如何利用Python OpenCV這兩者來(lái)創(chuàng)建更準(zhǔn)確的人員計(jì)數(shù)器,文中的示例代碼講解詳細(xì),感興趣的小伙伴快來(lái)跟隨小編學(xué)習(xí)一下吧

在本教程中,您將學(xué)習(xí)如何使用 OpenCV 和 Python 構(gòu)建人員計(jì)數(shù)器。使用 OpenCV,我們將實(shí)時(shí)計(jì)算進(jìn)或出百貨商店的人數(shù)。

在今天博客文章的第一部分,我們將討論如何利用兩者來(lái)創(chuàng)建更準(zhǔn)確的人員計(jì)數(shù)器。之后,我們將查看項(xiàng)目的目錄結(jié)構(gòu),然后實(shí)施整個(gè)人員計(jì)數(shù)項(xiàng)目。最后,我們將檢查將 OpenCV 的人數(shù)統(tǒng)計(jì)應(yīng)用到實(shí)際視頻中的結(jié)果。

1.了解對(duì)象檢測(cè)與對(duì)象跟蹤

在繼續(xù)本教程的其余部分之前,您必須了解對(duì)象檢測(cè)和對(duì)象跟蹤之間的根本區(qū)別。

當(dāng)我們應(yīng)用對(duì)象檢測(cè)時(shí),我們是在確定一個(gè)對(duì)象在圖像/幀中的位置。與目標(biāo)跟蹤算法相比,目標(biāo)檢測(cè)器通常在計(jì)算上更昂貴,因此也更慢。目標(biāo)檢測(cè)算法的例子包括Haar級(jí)聯(lián)、HOG +線(xiàn)性支持向量機(jī)(HOG + Linear SVM)和基于深度學(xué)習(xí)的目標(biāo)檢測(cè)器,如Faster R-CNN、YOLO和Single Shot檢測(cè)器(SSD)。

另一方面,對(duì)象跟蹤器將接受對(duì)象在圖像中位置的輸入 (x, y) 坐標(biāo),并將:

1.為該特定對(duì)象分配唯一 ID

2.在對(duì)象圍繞視頻流移動(dòng)時(shí)跟蹤對(duì)象,根據(jù)幀的各種屬性(梯度、光流等)預(yù)測(cè)下一幀中的新對(duì)象位置

對(duì)象跟蹤算法的示例包括 MedianFlow、MOSSE、GOTURN、核化相關(guān)濾波器和判別相關(guān)濾波器等。

2.結(jié)合對(duì)象檢測(cè)和對(duì)象跟蹤

高精度目標(biāo)跟蹤器將目標(biāo)檢測(cè)和目標(biāo)跟蹤的概念結(jié)合到一個(gè)算法中,通常分為兩個(gè)階段:

1.階段1 檢測(cè):在檢測(cè)階段,我們正在運(yùn)行計(jì)算成本更高的對(duì)象跟蹤器,以 (1) 檢測(cè)是否有新對(duì)象進(jìn)入我們的視野,以及 (2) 看看我們是否可以找到在跟蹤階段“丟失”的對(duì)象。對(duì)于每個(gè)檢測(cè)到的對(duì)象,我們使用新的邊界框坐標(biāo)創(chuàng)建或更新對(duì)象跟蹤器。由于我們的目標(biāo)檢測(cè)器的計(jì)算成本更高,我們每 N 幀只運(yùn)行一次此階段。

2.階段2 跟蹤:當(dāng)我們不處于“檢測(cè)”階段時(shí),我們處于“跟蹤”階段。對(duì)于我們檢測(cè)到的每個(gè)對(duì)象,我們創(chuàng)建一個(gè)對(duì)象跟蹤器來(lái)跟蹤對(duì)象在框架周?chē)囊苿?dòng)。我們的目標(biāo)跟蹤器應(yīng)該比目標(biāo)檢測(cè)器更快、更高效。我們將繼續(xù)跟蹤,直到我們到達(dá)第 N 幀,然后重新運(yùn)行我們的目標(biāo)檢測(cè)器。然后重復(fù)整個(gè)過(guò)程。

這種混合方法的好處是我們可以應(yīng)用高度準(zhǔn)確的對(duì)象檢測(cè)方法,而無(wú)需太多的計(jì)算負(fù)擔(dān)。我們將實(shí)施這樣一個(gè)跟蹤系統(tǒng)來(lái)建立我們的人員計(jì)數(shù)器。

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

讓我們回顧一下今天博客文章的項(xiàng)目結(jié)構(gòu)。獲取代碼后,您可以使用 tree 命令檢查目錄結(jié)構(gòu):

最重要的兩個(gè)目錄:

1.pyimagesearch/:該模塊包含質(zhì)心跟蹤算法。 “組合對(duì)象跟蹤算法”部分介紹了質(zhì)心跟蹤算法。

2.mobilenet_ssd/:包含 Caffe 深度學(xué)習(xí)模型文件。

今天項(xiàng)目的核心包含在 people_counter.py 腳本中——這是我們將花費(fèi)大部分時(shí)間的地方。今天我們還將回顧 trackableobject.py 腳本。

4.結(jié)合對(duì)象跟蹤算法

為了實(shí)現(xiàn)我們的人員計(jì)數(shù)器,我們將同時(shí)使用 OpenCV 和 dlib。我們將 OpenCV 用于標(biāo)準(zhǔn)的計(jì)算機(jī)視覺(jué)/圖像處理功能,以及用于人數(shù)統(tǒng)計(jì)的深度學(xué)習(xí)對(duì)象檢測(cè)器。

然后我們將使用 dlib 來(lái)實(shí)現(xiàn)相關(guān)過(guò)濾器。我們也可以在這里使用 OpenCV;但是,對(duì)于這個(gè)項(xiàng)目,dlib 對(duì)象跟蹤實(shí)現(xiàn)更容易使用。

除了 dlib 的對(duì)象跟蹤實(shí)現(xiàn),我們還將使用質(zhì)心跟蹤實(shí)現(xiàn)?;仡櫿麄€(gè)質(zhì)心跟蹤算法超出了這篇博文的范圍,但我在下面提供了一個(gè)簡(jiǎn)短的概述。

在步驟#1,我們接受一組邊界框并計(jì)算它們對(duì)應(yīng)的質(zhì)心(即邊界框的中心):

要使用 Python 通過(guò)質(zhì)心腳本構(gòu)建簡(jiǎn)單的對(duì)象跟蹤,第一步是接受邊界框坐標(biāo)并使用它們來(lái)計(jì)算質(zhì)心。

邊界框本身可以由以下任一方式提供:

1.目標(biāo)檢測(cè)器(如 HOG + Linear SVM、Faster R-CNN、SSDs 等)

2.或?qū)ο蟾櫰鳎ɡ缦嚓P(guān)過(guò)濾器)

在上圖中,您可以看到我們?cè)谒惴ǖ某跏嫉杏袃蓚€(gè)對(duì)象要跟蹤。

在步驟#2中,我們計(jì)算任何新質(zhì)心(黃色)和現(xiàn)有質(zhì)心(紫色)之間的歐幾里得距離:

此圖像中存在三個(gè)對(duì)象。我們需要計(jì)算每對(duì)原始質(zhì)心(紫色)和新質(zhì)心(黃色)之間的歐幾里得距離。

質(zhì)心跟蹤算法假設(shè)它們之間具有最小歐幾里德距離的質(zhì)心對(duì)必須是相同的對(duì)象 ID。

在上面的示例圖像中,我們有兩個(gè)現(xiàn)有的質(zhì)心(紫色)和三個(gè)新的質(zhì)心(黃色),這意味著已經(jīng)檢測(cè)到一個(gè)新對(duì)象(因?yàn)榕c舊質(zhì)心相比,還有一個(gè)新質(zhì)心)。

然后箭頭表示計(jì)算所有紫色質(zhì)心和所有黃色質(zhì)心之間的歐幾里得距離。一旦我們有了歐幾里得距離,我們就會(huì)在步驟#3 中嘗試關(guān)聯(lián)對(duì)象 ID:

您可以看到我們的質(zhì)心跟蹤器已選擇關(guān)聯(lián)使它們各自的歐幾里得距離最小化的質(zhì)心。但是左下角的點(diǎn)呢?它沒(méi)有與任何東西相關(guān)聯(lián)——我們?cè)撛趺崔k? 要回答這個(gè)問(wèn)題,我們需要執(zhí)行步驟#4,注冊(cè)新對(duì)象:

注冊(cè)意味著我們通過(guò)以下方式將新對(duì)象添加到我們的跟蹤對(duì)象列表中:

1.為其分配一個(gè)新的對(duì)象 ID

2.存儲(chǔ)新對(duì)象的邊界框坐標(biāo)的質(zhì)心

如果對(duì)象丟失或離開(kāi)視野,我們可以簡(jiǎn)單地取消注冊(cè)對(duì)象(步驟#5)。

5.創(chuàng)建可追蹤對(duì)象

為了跟蹤和計(jì)算視頻流中的對(duì)象,我們需要一種簡(jiǎn)單的方法來(lái)存儲(chǔ)有關(guān)對(duì)象本身的信息,包括:

  • 對(duì)象ID
  • 以前的質(zhì)心(所以我們可以很容易地計(jì)算出物體移動(dòng)的方向)
  • 對(duì)象是否已被計(jì)數(shù)

為了實(shí)現(xiàn)所有這些目標(biāo),我們可以定義一個(gè) TrackableObject 實(shí)例——打開(kāi) trackableobject.py 文件并插入以下代碼:

class TrackableObject:
    def __init__(self, objectID, centroid):
        # store the object ID, then initialize a list of centroids
        # using the current centroid
        self.objectID = objectID
        self.centroids = [centroid]
        # initialize a boolean used to indicate if the object has
        # already been counted or not
        self.counted = False

TrackableObject 構(gòu)造函數(shù)接受 objectID + centroid 并存儲(chǔ)它們。 centroids 變量是一個(gè)列表,因?yàn)樗鼘瑢?duì)象的質(zhì)心位置歷史記錄。 構(gòu)造函數(shù)還將 counted 初始化為 False ,表示該對(duì)象還沒(méi)有被計(jì)數(shù)。

6.使用 OpenCV + Python 實(shí)現(xiàn)我們的人員計(jì)數(shù)器

# import the necessary packages
from pyimagesearch.centroidtracker import CentroidTracker
from pyimagesearch.trackableobject import TrackableObject
from imutils.video import VideoStream
from imutils.video import FPS
import numpy as np
import argparse
import imutils
import time
import dlib
import cv2

我們首先導(dǎo)入必要的包:

  • 從 pyimagesearch 模塊,我們導(dǎo)入自定義的 CentroidTracker 和 TrackableObject 類(lèi)。
  • imutils.video 中的 VideoStream 和 FPS 模塊將幫助我們使用網(wǎng)絡(luò)攝像頭并計(jì)算估計(jì)的每秒幀數(shù) (FPS) 吞吐率。
  • 我們需要 imutils 的 OpenCV 便利功能。
  • dlib 庫(kù)將用于其相關(guān)跟蹤器實(shí)現(xiàn)。
  • OpenCV 將用于深度神經(jīng)網(wǎng)絡(luò)推理、打開(kāi)視頻文件、寫(xiě)入視頻文件以及在我們的屏幕上顯示輸出幀。

現(xiàn)在所有工具都觸手可及,讓我們解析命令行參數(shù):

# construct the argument parse and parse the arguments
ap = argparse.ArgumentParser()
ap.add_argument("-p", "--prototxt", required=True,
    help="path to Caffe 'deploy' prototxt file")
ap.add_argument("-m", "--model", required=True,
    help="path to Caffe pre-trained model")
ap.add_argument("-i", "--input", type=str,
    help="path to optional input video file")
ap.add_argument("-o", "--output", type=str,
    help="path to optional output video file")
ap.add_argument("-c", "--confidence", type=float, default=0.4,
    help="minimum probability to filter weak detections")
ap.add_argument("-s", "--skip-frames", type=int, default=30,
    help="# of skip frames between detections")
args = vars(ap.parse_args())

我們有六個(gè)命令行參數(shù),它們?cè)试S我們?cè)谶\(yùn)行時(shí)從終端將信息傳遞給我們的人員計(jì)數(shù)器腳本:

  • --prototxt :Caffe 部署 prototxt 文件的路徑。
  • --model :Caffe 預(yù)訓(xùn)練 CNN 模型的路徑。
  • --input : 可選的輸入視頻文件路徑。如果未指定路徑,將使用您的網(wǎng)絡(luò)攝像頭。
  • --output :可選的輸出視頻路徑。如果未指定路徑,則不會(huì)錄制視頻。
  • --confidence :默認(rèn)值為 0.4 ,這是有助于過(guò)濾掉弱檢測(cè)的最小概率閾值。
  • --skip-frames :在跟蹤對(duì)象上再次運(yùn)行我們的 DNN 檢測(cè)器之前要跳過(guò)的幀數(shù)。請(qǐng)記住,對(duì)象檢測(cè)的計(jì)算成本很高,但它確實(shí)有助于我們的跟蹤器重新評(píng)估幀中的

對(duì)象。默認(rèn)情況下,我們?cè)谑褂?OpenCV DNN 模塊和我們的 CNN 單次檢測(cè)器模型檢測(cè)對(duì)象之間跳過(guò) 30 幀。

現(xiàn)在我們的腳本可以在運(yùn)行時(shí)動(dòng)態(tài)處理命令行參數(shù),讓我們準(zhǔn)備我們的 SSD:

# initialize the list of class labels MobileNet SSD was trained to detect
CLASSES = ["background", "aeroplane", "bicycle", "bird", "boat",
    "bottle", "bus", "car", "cat", "chair", "cow", "diningtable",
    "dog", "horse", "motorbike", "person", "pottedplant", "sheep",
    "sofa", "train", "tvmonitor"]
# load our serialized model from disk
print("[INFO] loading model...")
net = cv2.dnn.readNetFromCaffe(args["prototxt"], args["model"])

首先,我們將初始化 CLASSES——SSD 支持的類(lèi)列表。我們只對(duì)“人”類(lèi)感興趣,但您也可以計(jì)算其他移動(dòng)對(duì)象。

我們加載用于檢測(cè)對(duì)象的預(yù)訓(xùn)練 MobileNet SSD(但同樣,我們只對(duì)檢測(cè)和跟蹤人感興趣,而不是任何其他類(lèi))。

我們可以初始化我們的視頻流:

# if a video path was not supplied, grab a reference to the webcam
if not args.get("input", False):
    print("[INFO] starting video stream...")
    vs = VideoStream(src=0).start()
    time.sleep(2.0)
# otherwise, grab a reference to the video file
else:
    print("[INFO] opening video file...")
    vs = cv2.VideoCapture(args["input"])

首先,我們處理使用網(wǎng)絡(luò)攝像頭視頻流的情況。否則,我們將從視頻文件中捕獲幀。在開(kāi)始循環(huán)幀之前,我們還有一些初始化要執(zhí)行:

# initialize the video writer (we'll instantiate later if need be)
writer = None
# initialize the frame dimensions (we'll set them as soon as we read
# the first frame from the video)
W = None
H = None
# instantiate our centroid tracker, then initialize a list to store
# each of our dlib correlation trackers, followed by a dictionary to
# map each unique object ID to a TrackableObject
ct = CentroidTracker(maxDisappeared=40, maxDistance=50)
trackers = []
trackableObjects = {}
# initialize the total number of frames processed thus far, along
# with the total number of objects that have moved either up or down
totalFrames = 0
totalDown = 0
totalUp = 0
# start the frames per second throughput estimator
fps = FPS().start()

其余的初始化包括:

  • writer:我們的視頻寫(xiě)入器。如果我們正在寫(xiě)入視頻,我們稍后會(huì)實(shí)例化這個(gè)對(duì)象。
  • W 和 H:我們的幀尺寸。我們需要將這些插入到 cv2.VideoWriter 中。
  • ct:我們的 CentroidTracker。
  • trackers :存儲(chǔ) dlib 相關(guān)跟蹤器的列表。
  • trackableObjects :將 objectID 映射到 TrackableObject 的字典。
  • totalFrames :處理的幀總數(shù)。
  • totalDown 和 totalUp :向下或向上移動(dòng)的對(duì)象/人的總數(shù)。
  • fps :我們用于基準(zhǔn)測(cè)試的每秒幀數(shù)估計(jì)器。

現(xiàn)在我們所有的初始化都處理好了,讓我們循環(huán)傳入的幀:

# loop over frames from the video stream
while True:
    # grab the next frame and handle if we are reading from either
    # VideoCapture or VideoStream
    frame = vs.read()
    frame = frame[1] if args.get("input", False) else frame
    # if we are viewing a video and we did not grab a frame then we
    # have reached the end of the video
    if args["input"] is not None and frame is None:
        break
    # resize the frame to have a maximum width of 500 pixels (the
    # less data we have, the faster we can process it), then convert
    # the frame from BGR to RGB for dlib
    frame = imutils.resize(frame, width=500)
    rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
    # if the frame dimensions are empty, set them
    if W is None or H is None:
        (H, W) = frame.shape[:2]
    # if we are supposed to be writing a video to disk, initialize
    # the writer
    if args["output"] is not None and writer is None:
        fourcc = cv2.VideoWriter_fourcc(*"MJPG")
        writer = cv2.VideoWriter(args["output"], fourcc, 30,
            (W, H), True)

我們開(kāi)始循環(huán)。在循環(huán)的頂部,我們抓取下一幀。如果我們已經(jīng)到達(dá)視頻的結(jié)尾,我們將跳出循環(huán)。

幀進(jìn)行預(yù)處理。這包括調(diào)整大小和交換顏色通道,因?yàn)?dlib 需要 rgb 圖像。我們?yōu)橐曨l編寫(xiě)器獲取幀的尺寸。 如果通過(guò)命令行參數(shù)提供了輸出路徑,我們將從那里實(shí)例化視頻編寫(xiě)器。

現(xiàn)在讓我們使用 SSD檢測(cè)人:

    # initialize the current status along with our list of bounding
    # box rectangles returned by either (1) our object detector or
    # (2) the correlation trackers
    status = "Waiting"
    rects = []
    # check to see if we should run a more computationally expensive
    # object detection method to aid our tracker
    if totalFrames % args["skip_frames"] == 0:
        # set the status and initialize our new set of object trackers
        status = "Detecting"
        trackers = []
        # convert the frame to a blob and pass the blob through the
        # network and obtain the detections
        blob = cv2.dnn.blobFromImage(frame, 0.007843, (W, H), 127.5)
        net.setInput(blob)
        detections = net.forward()

我們將狀態(tài)初始化為Waiting??赡艿臓顟B(tài)包括:

  • Waiting:在這種狀態(tài)下,我們正在等待檢測(cè)和跟蹤人員。
  • Detecting:我們正在使用 MobileNet SSD 檢測(cè)人員。
  • Tracking:人們?cè)趲斜桓?,我們正在?jì)算 totalUp 和 totalDown 。

我們的 rects 列表將通過(guò)檢測(cè)或跟蹤來(lái)填充。我們繼續(xù)初始化rects 。

重要的是要了解深度學(xué)習(xí)對(duì)象檢測(cè)器的計(jì)算成本非常高,尤其是當(dāng)您在 CPU 上運(yùn)行它們時(shí)。

為了避免在每一幀上運(yùn)行我們的目標(biāo)檢測(cè)器,并加快我們的跟蹤管道,我們將跳過(guò) N 幀(由命令行參數(shù)設(shè)置 --skip-frames ,其中 30 是默認(rèn)值)。只有每 N 幀,我們才會(huì)使用 SSD 進(jìn)行對(duì)象檢測(cè)。否則,我們將只是跟蹤中間的移動(dòng)對(duì)象。

使用模運(yùn)算符,我們確保每 N 幀執(zhí)行一次 if 語(yǔ)句中的代碼。 進(jìn)入if語(yǔ)句后,我們會(huì)將狀態(tài)更新為Detecting。 然后我們初始化新的跟蹤器列表。

接下來(lái),我們將通過(guò)對(duì)象檢測(cè)進(jìn)行推理。我們首先從圖像中創(chuàng)建一個(gè) blob,然后將該 blob 通過(guò)網(wǎng)絡(luò)傳遞以獲得檢測(cè)。 現(xiàn)在我們將遍歷每個(gè)檢測(cè),希望找到屬于person類(lèi)的對(duì)象:

        # loop over the detections
        for i in np.arange(0, detections.shape[2]):
            # extract the confidence (i.e., probability) associated
            # with the prediction
            confidence = detections[0, 0, i, 2]
            # filter out weak detections by requiring a minimum
            # confidence
            if confidence > args["confidence"]:
                # extract the index of the class label from the
                # detections list
                idx = int(detections[0, 0, i, 1])
                # if the class label is not a person, ignore it
                if CLASSES[idx] != "person":
                    continue

循環(huán)檢測(cè),我們繼續(xù)獲取置信度并過(guò)濾掉那些不屬于人類(lèi)的結(jié)果。

現(xiàn)在我們可以為每個(gè)人計(jì)算一個(gè)邊界框并開(kāi)始相關(guān)性跟蹤:

                # compute the (x, y)-coordinates of the bounding box
                # for the object
                box = detections[0, 0, i, 3:7] * np.array([W, H, W, H])
                (startX, startY, endX, endY) = box.astype("int")
                # construct a dlib rectangle object from the bounding
                # box coordinates and then start the dlib correlation
                # tracker
                tracker = dlib.correlation_tracker()
                rect = dlib.rectangle(startX, startY, endX, endY)
                tracker.start_track(rgb, rect)
                # add the tracker to our list of trackers so we can
                # utilize it during skip frames
                trackers.append(tracker)

計(jì)算我們的box。 然后實(shí)例化我們的 dlib 相關(guān)跟蹤器,然后將對(duì)象的邊界框坐標(biāo)傳遞給 dlib.rectangle,將結(jié)果存儲(chǔ)為 rect。 隨后,我們開(kāi)始跟蹤,并將跟蹤器附加到跟蹤器列表中。 這是我們每 N 個(gè)跳幀執(zhí)行的所有操作的封裝! 讓我們處理在 else 塊中進(jìn)行跟蹤的典型操作:

    # otherwise, we should utilize our object *trackers* rather than
    # object *detectors* to obtain a higher frame processing throughput
    else:
        # loop over the trackers
        for tracker in trackers:
            # set the status of our system to be 'tracking' rather
            # than 'waiting' or 'detecting'
            status = "Tracking"
            # update the tracker and grab the updated position
            tracker.update(rgb)
            pos = tracker.get_position()
            # unpack the position object
            startX = int(pos.left())
            startY = int(pos.top())
            endX = int(pos.right())
            endY = int(pos.bottom())
            # add the bounding box coordinates to the rectangles list
            rects.append((startX, startY, endX, endY))

大多數(shù)時(shí)候,并沒(méi)有發(fā)生在跳幀倍數(shù)上。在此期間,我們將利用跟蹤器來(lái)跟蹤對(duì)象,而不是應(yīng)用檢測(cè)。 我們開(kāi)始遍歷可用跟蹤器。 我們繼續(xù)將狀態(tài)更新為T(mén)racking并獲取對(duì)象位置。 我們提取位置坐標(biāo),然后在我們的 rects 列表中填充信息。 現(xiàn)在讓我們畫(huà)一條水平可視化線(xiàn)(人們必須穿過(guò)它才能被跟蹤)并使用質(zhì)心跟蹤器來(lái)更新我們的對(duì)象質(zhì)心:

    # draw a horizontal line in the center of the frame -- once an
    # object crosses this line we will determine whether they were
    # moving 'up' or 'down'
    cv2.line(frame, (0, H // 2), (W, H // 2), (0, 255, 255), 2)
    # use the centroid tracker to associate the (1) old object
    # centroids with (2) the newly computed object centroids
    objects = ct.update(rects)

我們畫(huà)一條水平線(xiàn),我們將用它來(lái)可視化人們“越過(guò)”——一旦人們?cè)竭^(guò)這條線(xiàn),我們將增加各自的計(jì)數(shù)器 然后,我們利用 CentroidTracker 實(shí)例化來(lái)接受 rects 列表,無(wú)論它們是通過(guò)對(duì)象檢測(cè)還是對(duì)象跟蹤生成的。我們的質(zhì)心跟蹤器會(huì)將對(duì)象 ID 與對(duì)象位置相關(guān)聯(lián)。 在下一個(gè)代碼塊中,我們將回顧一個(gè)人在幀中向上或向下移動(dòng)的邏輯:

    # loop over the tracked objects
    for (objectID, centroid) in objects.items():
        # check to see if a trackable object exists for the current
        # object ID
        to = trackableObjects.get(objectID, None)
        # if there is no existing trackable object, create one
        if to is None:
            to = TrackableObject(objectID, centroid)
        # otherwise, there is a trackable object so we can utilize it
        # to determine direction
        else:
            # the difference between the y-coordinate of the *current*
            # centroid and the mean of *previous* centroids will tell
            # us in which direction the object is moving (negative for
            # 'up' and positive for 'down')
            y = [c[1] for c in to.centroids]
            direction = centroid[1] - np.mean(y)
            to.centroids.append(centroid)
            # check to see if the object has been counted or not
            if not to.counted:
                # if the direction is negative (indicating the object
                # is moving up) AND the centroid is above the center
                # line, count the object
                if direction < 0 and centroid[1] < H // 2:
                    totalUp += 1
                    to.counted = True
                # if the direction is positive (indicating the object
                # is moving down) AND the centroid is below the
                # center line, count the object
                elif direction > 0 and centroid[1] > H // 2:
                    totalDown += 1
                    to.counted = True
        # store the trackable object in our dictionary
        trackableObjects[objectID] = to

我們首先遍歷更新后的對(duì)象id的邊界框坐標(biāo)。我們嘗試為當(dāng)前的objectID獲取TrackableObject。如果objectID的TrackableObject不存在,我們就創(chuàng)建一個(gè)。否則,已經(jīng)存在一個(gè) TrackableObject ,所以我們需要弄清楚對(duì)象(人)是向上還是向下移動(dòng)。

為此,我們獲取給定對(duì)象之前所有質(zhì)心位置的y坐標(biāo)值。然后,通過(guò)取當(dāng)前質(zhì)心位置與之前所有質(zhì)心位置的平均值之間的差來(lái)計(jì)算方向。

我們?nèi)【档脑蚴菫榱舜_保我們的方向跟蹤更穩(wěn)定。如果我們只存儲(chǔ)這個(gè)人之前的質(zhì)心位置,我們就有可能出現(xiàn)錯(cuò)誤的方向計(jì)數(shù)。記住,目標(biāo)檢測(cè)和目標(biāo)跟蹤算法不是“魔術(shù)”——有時(shí)它們會(huì)預(yù)測(cè)出可能稍微偏離你預(yù)期的邊界盒;因此,通過(guò)取均值,我們可以讓我們的人計(jì)算得更準(zhǔn)確。

如果TrackableObject還沒(méi)有被計(jì)數(shù),我們需要確定它是否已經(jīng)準(zhǔn)備好被計(jì)數(shù),通過(guò):

1.檢查direction是否為負(fù)(表示對(duì)象向上移動(dòng))并且質(zhì)心在中心線(xiàn)上方。在這種情況下,我們?cè)黾?totalUp。

2.或者檢查direction是否為正(表示物體正在向下移動(dòng))且質(zhì)心在中心線(xiàn)以下。如果這是真的,我們?cè)黾觮otalDown。

最后,我們將TrackableObject存儲(chǔ)在trackableObjects字典中,這樣我們就可以在捕獲下一幀時(shí)獲取并更新它。

接下來(lái)的三個(gè)代碼塊處理:

  • 顯示(繪圖并向幀寫(xiě)入文本)
  • 將幀寫(xiě)入磁盤(pán)上的視頻文件(如果存在--output命令行參數(shù))
  • 捕獲按鍵
  • 清理

首先,我們將在框架上繪制一些信息以進(jìn)行可視化:

        # draw both the ID of the object and the centroid of the
        # object on the output frame
        text = "ID {}".format(objectID)
        cv2.putText(frame, text, (centroid[0] - 10, centroid[1] - 10),
            cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
        cv2.circle(frame, (centroid[0], centroid[1]), 4, (0, 255, 0), -1)
    # construct a tuple of information we will be displaying on the
    # frame
    info = [
        ("Up", totalUp),
        ("Down", totalDown),
        ("Status", status),
    ]
    # loop over the info tuples and draw them on our frame
    for (i, (k, v)) in enumerate(info):
        text = "{}: {}".format(k, v)
        cv2.putText(frame, text, (10, H - ((i * 20) + 20)),
            cv2.FONT_HERSHEY_SIMPLEX, 0.6, (0, 0, 255), 2)

在這里,我們?cè)趲细采w以下數(shù)據(jù):

  • ObjectID :每個(gè)對(duì)象的ID。
  • centroid :對(duì)象的中心將由一個(gè)點(diǎn)表示,該點(diǎn)是通過(guò)填充一個(gè)圓圈而創(chuàng)建的。
  • info : 包括 totalUp 、 totalDown 和 status

然后我們將把幀寫(xiě)入視頻文件(如果需要的話(huà))并處理按鍵:

    # check to see if we should write the frame to disk
    if writer is not None:
        writer.write(frame)
    # show the output frame
    cv2.imshow("Frame", frame)
    key = cv2.waitKey(1) & 0xFF
    # if the `q` key was pressed, break from the loop
    if key == ord("q"):
        break
    # increment the total number of frames processed thus far and
    # then update the FPS counter
    totalFrames += 1
    fps.update()

在這個(gè)代碼塊中我們:

  • 如果需要,將幀寫(xiě)入輸出視頻文件
  • 顯示幀并處理按鍵。如果q被按下,我們將跳出幀處理循環(huán)。
  • 更新我們的fps計(jì)數(shù)器

現(xiàn)在是時(shí)候清理了:

# stop the timer and display FPS information
fps.stop()
print("[INFO] elapsed time: {:.2f}".format(fps.elapsed()))
print("[INFO] approx. FPS: {:.2f}".format(fps.fps()))
# check to see if we need to release the video writer pointer
if writer is not None:
    writer.release()
# if we are not using a video file, stop the camera video stream
if not args.get("input", False):
    vs.stop()
# otherwise, release the video file pointer
else:
    vs.release()
# close any open windows
cv2.destroyAllWindows()

為了完成腳本,我們向終端顯示 FPS 信息,釋放所有指針,并關(guān)閉所有打開(kāi)的窗口。

7.完整代碼

people_counter.py

from pyimagesearch.centroidtracker import CentroidTracker
from pyimagesearch.trackableobject import TrackableObject
from imutils.video import VideoStream
from imutils.video import FPS
import numpy as np
import argparse
import imutils
import time
import dlib
import cv2


# 構(gòu)造參數(shù)解析并解析參數(shù)
ap = argparse.ArgumentParser()
ap.add_argument("-p", "--prototxt", required=True,
	help="path to Caffe 'deploy' prototxt file")
ap.add_argument("-m", "--model", required=True,
	help="path to Caffe pre-trained model")
ap.add_argument("-i", "--input", type=str,
	help="path to optional input video file")
ap.add_argument("-o", "--output", type=str,
	help="path to optional output video file")
ap.add_argument("-c", "--confidence", type=float, default=0.4,
	help="minimum probability to filter weak detections")
ap.add_argument("-s", "--skip-frames", type=int, default=30,
	help="# of skip frames between detections")
args = vars(ap.parse_args())

# 初始化類(lèi)標(biāo)簽列表
CLASSES = ["background", "aeroplane", "bicycle", "bird", "boat",
	"bottle", "bus", "car", "cat", "chair", "cow", "diningtable",
	"dog", "horse", "motorbike", "person", "pottedplant", "sheep",
	"sofa", "train", "tvmonitor"]
# 從磁盤(pán)加載我們的序列化模型
print("[INFO] loading model...")
net = cv2.dnn.readNetFromCaffe(args["prototxt"], args["model"])

# 如果未提供視頻路徑,請(qǐng)獲取網(wǎng)絡(luò)攝像頭的引用
if not args.get("input", False):
	print("[INFO] starting video stream...")
	vs = VideoStream(src=0).start()
	time.sleep(2.0)
# 否則,獲取對(duì)視頻文件的引用
else:
	print("[INFO] opening video file...")
	vs = cv2.VideoCapture(args["input"])

# 初始化視頻寫(xiě)入器(如果需要,我們稍后將進(jìn)行實(shí)例化)
writer = None
# 初始化幀尺寸(我們將在從視頻中讀取第一幀后立即設(shè)置它們)
W = None
H = None
# 實(shí)例化我們的質(zhì)心跟蹤器,然后初始化一個(gè)列表來(lái)存儲(chǔ)每個(gè)dlib相關(guān)跟蹤器,
# 然后是一個(gè)字典來(lái)將每個(gè)唯一的對(duì)象ID映射到TrackableObject
ct = CentroidTracker(maxDisappeared=40, maxDistance=50)
trackers = []
trackableObjects = {}
# 初始化到目前為止處理的幀總數(shù),以及向上或向下移動(dòng)的對(duì)象總數(shù)
totalFrames = 0
totalDown = 0
totalUp = 0
# 啟動(dòng)FPS評(píng)估器
fps = FPS().start()

# 循環(huán)視頻流中的幀
while True:
	# 如果我們正在從 VideoCapture 或 VideoStream 讀取數(shù)據(jù),則抓取下一幀并處理
	frame = vs.read()
	frame = frame[1] if args.get("input", False) else frame
	# 如果我們正在觀(guān)看視頻并且我們沒(méi)有抓取幀,那么我們已經(jīng)到了視頻的結(jié)尾
	if args["input"] is not None and frame is None:
		break
	# 調(diào)整幀的最大寬度為 500 像素(我們擁有的數(shù)據(jù)越少,我們處理它的速度就越快),
	# 然后將幀從 BGR 轉(zhuǎn)換為 RGB 用于 dlib
	frame = imutils.resize(frame, width=500)
	rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
	# 如果幀尺寸為空,則設(shè)置它們
	if W is None or H is None:
		(H, W) = frame.shape[:2]
	# 如果我們應(yīng)該將視頻寫(xiě)入磁盤(pán),請(qǐng)初始化寫(xiě)入器
	if args["output"] is not None and writer is None:
		fourcc = cv2.VideoWriter_fourcc(*"MJPG")
		writer = cv2.VideoWriter(args["output"], fourcc, 30,
			(W, H), True)


	# 初始化當(dāng)前狀態(tài)以及由(1)我們的對(duì)象檢測(cè)器或(2)相關(guān)跟蹤器返回的邊界框矩形列表
	status = "Waiting"
	rects = []
	# 檢查我們是否應(yīng)該運(yùn)行計(jì)算量更大的目標(biāo)檢測(cè)方法來(lái)幫助我們的跟蹤器
	if totalFrames % args["skip_frames"] == 0:
		# 設(shè)置狀態(tài)并初始化我們的新對(duì)象跟蹤器集
		status = "Detecting"
		trackers = []
		# 將幀轉(zhuǎn)換為 blob 并通過(guò)網(wǎng)絡(luò)傳遞 blob 并獲得檢測(cè)結(jié)果
		blob = cv2.dnn.blobFromImage(frame, 0.007843, (W, H), 127.5)
		net.setInput(blob)
		detections = net.forward()

		# 循環(huán)檢測(cè)結(jié)果
		for i in np.arange(0, detections.shape[2]):
			# 提取與預(yù)測(cè)相關(guān)的置信度(即概率)
			confidence = detections[0, 0, i, 2]
			# 通過(guò)要求最小置信度過(guò)濾掉弱檢測(cè)
			if confidence > args["confidence"]:
				# 從檢測(cè)列表中提取類(lèi)標(biāo)簽的索引
				idx = int(detections[0, 0, i, 1])
				# 如果類(lèi)標(biāo)簽不是人,則忽略它
				if CLASSES[idx] != "person":
					continue
				# 計(jì)算對(duì)象邊界框的 (x, y) 坐標(biāo)
				box = detections[0, 0, i, 3:7] * np.array([W, H, W, H])
				(startX, startY, endX, endY) = box.astype("int")
				# 利用邊界框坐標(biāo)構(gòu)造一個(gè) dlib 矩形對(duì)象,然后啟動(dòng) dlib 相關(guān)跟蹤器
				tracker = dlib.correlation_tracker()
				rect = dlib.rectangle(startX, startY, endX, endY)
				tracker.start_track(rgb, rect)
				# 將跟蹤器添加到我們的跟蹤器列表中,以便我們可以在跳幀期間使用它
				trackers.append(tracker)

	# 否則,我們應(yīng)該利用目標(biāo)跟蹤器而不是目標(biāo)檢測(cè)器來(lái)獲得更高的FPS
	else:
		# 遍歷跟蹤器
		for tracker in trackers:
			# 將系統(tǒng)的狀態(tài)設(shè)置為“跟蹤”而不是“等待”或“檢測(cè)”
			status = "Tracking"
			# 更新跟蹤器并獲取更新的位置
			tracker.update(rgb)
			pos = tracker.get_position()
			# 解包位置對(duì)象
			startX = int(pos.left())
			startY = int(pos.top())
			endX = int(pos.right())
			endY = int(pos.bottom())
			# 將邊界框坐標(biāo)添加到矩形列表
			rects.append((startX, startY, endX, endY))

	# 在幀中心畫(huà)一條水平線(xiàn)——一旦一個(gè)物體穿過(guò)這條線(xiàn),我們將確定他們是在“向上”還是“向下”移動(dòng)。
	cv2.line(frame, (0, H // 2), (W, H // 2), (0, 255, 255), 2)
	# 使用質(zhì)心跟蹤器將 (1) 舊對(duì)象質(zhì)心與 (2) 新計(jì)算的對(duì)象質(zhì)心相關(guān)聯(lián)
	objects = ct.update(rects)

	# 循環(huán)遍歷被跟蹤的對(duì)象
	for (objectID, centroid) in objects.items():
		# 檢查當(dāng)前對(duì)象 ID 是否存在可跟蹤對(duì)象
		to = trackableObjects.get(objectID, None)
		# 如果沒(méi)有現(xiàn)有的可跟蹤對(duì)象,則創(chuàng)建一個(gè)
		if to is None:
			to = TrackableObject(objectID, centroid)
		# 否則,有一個(gè)可追蹤的物體,所以我們可以利用它來(lái)確定方向
		else:
			# *當(dāng)前*質(zhì)心的 y 坐標(biāo)與 *previous* 質(zhì)心的平均值之間的差異
			# 將告訴我們物體在哪個(gè)方向移動(dòng)(“向上”為負(fù),“向下”為正)
			y = [c[1] for c in to.centroids]
			direction = centroid[1] - np.mean(y)
			to.centroids.append(centroid)
			# 檢查對(duì)象是否已被計(jì)數(shù)
			if not to.counted:
				# 如果方向?yàn)樨?fù)(表示物體向上移動(dòng))且質(zhì)心在中線(xiàn)以上,則計(jì)算物體
				if direction < 0 and centroid[1] < H // 2:
					totalUp += 1
					to.counted = True
				# 如果方向?yàn)檎ū硎疚矬w正在向下移動(dòng))并且質(zhì)心低于中心線(xiàn),則計(jì)算物體
				elif direction > 0 and centroid[1] > H // 2:
					totalDown += 1
					to.counted = True
		# 將可跟蹤對(duì)象存儲(chǔ)在我們的字典中
		trackableObjects[objectID] = to

		# 在輸出幀上繪制對(duì)象的 ID 和對(duì)象的質(zhì)心
		text = "ID {}".format(objectID)
		cv2.putText(frame, text, (centroid[0] - 10, centroid[1] - 10),
			cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
		cv2.circle(frame, (centroid[0], centroid[1]), 4, (0, 255, 0), -1)
	# 構(gòu)建我們將在幀上顯示的信息元組
	info = [
		("Up", totalUp),
		("Down", totalDown),
		("Status", status),
	]
	# 遍歷信息元組并將它們繪制在我們的幀上
	for (i, (k, v)) in enumerate(info):
		text = "{}: {}".format(k, v)
		cv2.putText(frame, text, (10, H - ((i * 20) + 20)),
			cv2.FONT_HERSHEY_SIMPLEX, 0.6, (0, 0, 255), 2)



	# 檢查我們是否應(yīng)該將幀寫(xiě)入磁盤(pán)
	if writer is not None:
		writer.write(frame)
	# 顯示輸出幀
	cv2.imshow("Frame", frame)
	key = cv2.waitKey(1) & 0xFF
	# 如果' q '鍵被按下,中斷循環(huán)
	if key == ord("q"):
		break
	# 增加到目前為止處理的幀總數(shù),然后更新 FPS 計(jì)數(shù)器
	totalFrames += 1
	fps.update()

# 停止定時(shí)器,顯示FPS信息
fps.stop()
print("[INFO] elapsed time: {:.2f}".format(fps.elapsed()))
print("[INFO] approx. FPS: {:.2f}".format(fps.fps()))
# 檢查我們是否需要釋放視頻寫(xiě)入器指針
if writer is not None:
	writer.release()
# 如果我們不使用視頻文件,請(qǐng)停止攝像頭視頻流
if not args.get("input", False):
	vs.stop()
# 否則,釋放視頻文件指針
else:
	vs.release()
# 關(guān)閉所有打開(kāi)的窗口
cv2.destroyAllWindows()

centroidtracker.py

(1)質(zhì)心跟蹤器是最可靠的跟蹤器之一。

(2)為了簡(jiǎn)單起見(jiàn),質(zhì)心跟蹤器計(jì)算包圍框的質(zhì)心。

(3)也就是說(shuō),邊界框是圖像中對(duì)象的(x, y)坐標(biāo)。

(4)一旦我們的SSD獲得了坐標(biāo),跟蹤器就會(huì)計(jì)算包圍框的質(zhì)心(中心)。換句話(huà)說(shuō),就是物體的中心。

(5)然后為每一個(gè)被檢測(cè)到的特定對(duì)象分配一個(gè)唯一的ID,用于跟蹤幀序列。

from scipy.spatial import distance as dist
from collections import OrderedDict
import numpy as np

class CentroidTracker:
	def __init__(self, maxDisappeared=50, maxDistance=50):
		# 初始化下一個(gè)唯一的對(duì)象ID,并使用兩個(gè)有序字典來(lái)跟蹤給定對(duì)象ID到其質(zhì)心的映射,
		# 以及它被標(biāo)記為“消失”的連續(xù)幀數(shù)
		self.nextObjectID = 0
		self.objects = OrderedDict()
		self.disappeared = OrderedDict()

		# 存儲(chǔ)一個(gè)給定對(duì)象允許被標(biāo)記為“消失”的最大連續(xù)幀數(shù),直到我們需要從跟蹤中注銷(xiāo)該對(duì)象
		self.maxDisappeared = maxDisappeared

		# 存儲(chǔ)質(zhì)心之間的最大距離以關(guān)聯(lián)對(duì)象——如果距離大于這個(gè)最大距離,我們開(kāi)始將對(duì)象標(biāo)記為“消失”
		self.maxDistance = maxDistance

	def register(self, centroid):
		# 注冊(cè)對(duì)象時(shí),我們使用下一個(gè)可用的對(duì)象 ID 來(lái)存儲(chǔ)質(zhì)心
		self.objects[self.nextObjectID] = centroid
		self.disappeared[self.nextObjectID] = 0
		self.nextObjectID += 1

	def deregister(self, objectID):
		# 要注銷(xiāo)對(duì)象 ID,我們從各自的字典中刪除對(duì)象 ID
		del self.objects[objectID]
		del self.disappeared[objectID]

	def update(self, rects):
		# 檢查輸入邊界框矩形列表是否為空
		if len(rects) == 0:
			# 循環(huán)遍歷任何現(xiàn)有的跟蹤對(duì)象并將它們標(biāo)記為消失
			for objectID in list(self.disappeared.keys()):
				self.disappeared[objectID] += 1

				# 如果我們已經(jīng)達(dá)到給定對(duì)象被標(biāo)記為消失的最大連續(xù)幀數(shù),則取消注冊(cè)它
				if self.disappeared[objectID] > self.maxDisappeared:
					self.deregister(objectID)

			# 早點(diǎn)返回,因?yàn)闆](méi)有要更新的質(zhì)心或跟蹤信息
			return self.objects

		# 初始化當(dāng)前幀的輸入質(zhì)心數(shù)組
		inputCentroids = np.zeros((len(rects), 2), dtype="int")

		# 循環(huán)邊界框矩形
		for (i, (startX, startY, endX, endY)) in enumerate(rects):
			# 使用邊界框坐標(biāo)推導(dǎo)出質(zhì)心
			cX = int((startX + endX) / 2.0)
			cY = int((startY + endY) / 2.0)
			inputCentroids[i] = (cX, cY)

		# 如果我們當(dāng)前沒(méi)有跟蹤任何對(duì)象,則獲取輸入質(zhì)心并注冊(cè)它們中的每一個(gè)
		if len(self.objects) == 0:
			for i in range(0, len(inputCentroids)):
				self.register(inputCentroids[i])

		# 否則,我們目前正在跟蹤對(duì)象,因此我們需要嘗試將輸入質(zhì)心與現(xiàn)有對(duì)象質(zhì)心匹配
		else:
			# 獲取一組對(duì)象 ID 和相應(yīng)的質(zhì)心
			objectIDs = list(self.objects.keys())
			objectCentroids = list(self.objects.values())

			# 分別計(jì)算每對(duì)對(duì)象質(zhì)心和輸入質(zhì)心之間的距離——我們的目標(biāo)是將輸入質(zhì)心與現(xiàn)有對(duì)象質(zhì)心匹配
			D = dist.cdist(np.array(objectCentroids), inputCentroids)

			# 為了執(zhí)行這種匹配,我們必須 (1) 找到每一行中的最小值,
			# 然后 (2) 根據(jù)它們的最小值對(duì)行索引進(jìn)行排序,以便具有最小值的行位于索引列表的 *front*
			rows = D.min(axis=1).argsort()

			# 接下來(lái),我們對(duì)列執(zhí)行類(lèi)似的處理,方法是在每個(gè)列中找到最小的值,
			# 然后使用之前計(jì)算的行索引列表進(jìn)行排序
			cols = D.argmin(axis=1)[rows]

			# 為了確定我們是否需要更新、注冊(cè)或取消注冊(cè)一個(gè)對(duì)象,我們需要跟蹤我們已經(jīng)檢查過(guò)的行和列索引
			usedRows = set()
			usedCols = set()

			# 循環(huán)遍歷(行,列)索引元組的組合
			for (row, col) in zip(rows, cols):
				# 如果我們之前已經(jīng)檢查過(guò)行值或列值,請(qǐng)忽略它
				if row in usedRows or col in usedCols:
					continue

				# 如果質(zhì)心之間的距離大于最大距離,則不要將兩個(gè)質(zhì)心關(guān)聯(lián)到同一個(gè)對(duì)象
				if D[row, col] > self.maxDistance:
					continue

				# 否則,獲取當(dāng)前行的對(duì)象 ID,設(shè)置其新質(zhì)心,并重置消失的計(jì)數(shù)器
				objectID = objectIDs[row]
				self.objects[objectID] = inputCentroids[col]
				self.disappeared[objectID] = 0

				# 表明我們已經(jīng)分別檢查了每個(gè)行和列索引
				usedRows.add(row)
				usedCols.add(col)

			# 計(jì)算我們尚未檢查的行和列索引
			unusedRows = set(range(0, D.shape[0])).difference(usedRows)
			unusedCols = set(range(0, D.shape[1])).difference(usedCols)

			# 如果對(duì)象質(zhì)心的數(shù)量等于或大于輸入質(zhì)心的數(shù)量,
			# 我們需要檢查并查看其中一些對(duì)象是否可能已經(jīng)消失
			if D.shape[0] >= D.shape[1]:
				# 循環(huán)未使用的行索引
				for row in unusedRows:
					# 獲取相應(yīng)行索引的對(duì)象 ID 并增加消失的計(jì)數(shù)器
					objectID = objectIDs[row]
					self.disappeared[objectID] += 1

					# 檢查對(duì)象的連續(xù)幀數(shù)是否被標(biāo)記為“消失”,以注銷(xiāo)該對(duì)象
					if self.disappeared[objectID] > self.maxDisappeared:
						self.deregister(objectID)

			# 否則,如果輸入質(zhì)心的數(shù)量大于現(xiàn)有對(duì)象質(zhì)心的數(shù)量,我們需要將每個(gè)新的輸入質(zhì)心注冊(cè)為可跟蹤對(duì)象
			else:
				for col in unusedCols:
					self.register(inputCentroids[col])

		# 返回可跟蹤對(duì)象的集合
		return self.objects

trackableobject.py

class TrackableObject:
	def __init__(self, objectID, centroid):
		# 存儲(chǔ)對(duì)象 ID,然后使用當(dāng)前質(zhì)心初始化質(zhì)心列表
		self.objectID = objectID
		self.centroids = [centroid]

		# 初始化一個(gè)布爾值,用于指示對(duì)象是否已被計(jì)數(shù)
		self.counted = False

8.運(yùn)行結(jié)果

打開(kāi)終端,執(zhí)行以下命令:

python people_counter.py --prototxt mobilenet_ssd/MobileNetSSD_deploy.prototxt \
    --model mobilenet_ssd/MobileNetSSD_deploy.caffemodel \
    --input videos/example_01.mp4 --output output/output_01.avi

我們的人員計(jì)數(shù)正在計(jì)算以下人數(shù):

  • 正進(jìn)入百貨商店(下)
  • 離開(kāi)的人數(shù)(上)

在第一個(gè)視頻的最后,你會(huì)看到有7個(gè)人進(jìn)入,3個(gè)人離開(kāi)。

此外,檢查終端輸出,你會(huì)發(fā)現(xiàn)我們的人計(jì)數(shù)器能夠?qū)崟r(shí)運(yùn)行,達(dá)到34幀每秒。盡管我們正在使用深度學(xué)習(xí)對(duì)象檢測(cè)器來(lái)更準(zhǔn)確地檢測(cè)人。

我們的 34 FPS 幀率是通過(guò)我們的兩個(gè)階段過(guò)程實(shí)現(xiàn)的: 每 30 幀檢測(cè)一次人 然后在其間的所有幀中應(yīng)用更快、更有效的對(duì)象跟蹤算法。

9.改進(jìn)我們的人員計(jì)數(shù)器應(yīng)用程序

為了構(gòu)建我們的 OpenCV 人員計(jì)數(shù)器,我們使用了 dlib 的相關(guān)性跟蹤器。此方法易于使用,并且只需要很少的代碼。

然而,我們的實(shí)現(xiàn)有點(diǎn)低效——為了跟蹤多個(gè)對(duì)象,我們需要?jiǎng)?chuàng)建關(guān)聯(lián)跟蹤器對(duì)象的多個(gè)實(shí)例。然后當(dāng)我們需要在后續(xù)幀中計(jì)算對(duì)象的位置時(shí),我們需要遍歷所有 N 個(gè)對(duì)象跟蹤器并獲取更新的位置。

所有這些計(jì)算都將發(fā)生在我們腳本的主執(zhí)行線(xiàn)程中,從而降低了我們的 FPS 速率。

因此,提高性能的一種簡(jiǎn)單方法是使用dlib的多對(duì)象跟蹤器,以使我們的 FPS 速率提高 45%! 注意:OpenCV 也實(shí)現(xiàn)了多對(duì)象跟蹤,但不是多進(jìn)程(至少在撰寫(xiě)本文時(shí))。 OpenCV 的多對(duì)象方法當(dāng)然更容易使用,但如果沒(méi)有多處理能力,在這種情況下它并沒(méi)有多大幫助。

最后,為了獲得更高的跟蹤精度(但在沒(méi)有快速 GPU 的情況下會(huì)犧牲速度),您可以研究基于深度學(xué)習(xí)的對(duì)象跟蹤器,例如 Deep SORT。

BONUS

前幾天在github上看見(jiàn)一個(gè)改進(jìn)版:

主要目標(biāo)是將項(xiàng)目用作業(yè)務(wù)視角,隨時(shí)可以擴(kuò)展。

用例:實(shí)時(shí)統(tǒng)計(jì)商店/大樓/購(gòu)物中心等的人數(shù)。

如果人數(shù)超過(guò)上限就會(huì)向工作人員發(fā)出警報(bào)。

自動(dòng)化特性并優(yōu)化實(shí)時(shí)流以獲得更好的性能(使用線(xiàn)程)。

作為一項(xiàng)措施,以進(jìn)行足跡分析,并在某種程度上應(yīng)對(duì)COVID-19。

到此這篇關(guān)于基于OpenCV目標(biāo)跟蹤實(shí)現(xiàn)人員計(jì)數(shù)器的文章就介紹到這了,更多相關(guān)OpenCV人員計(jì)數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python模擬登陸阿里媽媽生成商品推廣鏈接

    python模擬登陸阿里媽媽生成商品推廣鏈接

    這篇文章主要介紹了python模擬登陸阿里媽媽生成商品推廣鏈接,需要的朋友可以參考下
    2014-04-04
  • 在PyCharm環(huán)境中使用Jupyter Notebook的兩種方法總結(jié)

    在PyCharm環(huán)境中使用Jupyter Notebook的兩種方法總結(jié)

    今天小編就為大家分享一篇在PyCharm環(huán)境中使用Jupyter Notebook的兩種方法總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Python協(xié)程 yield與協(xié)程greenlet簡(jiǎn)單用法示例

    Python協(xié)程 yield與協(xié)程greenlet簡(jiǎn)單用法示例

    這篇文章主要介紹了Python協(xié)程 yield與協(xié)程greenlet簡(jiǎn)單用法,簡(jiǎn)要講述了協(xié)程的概念、原理,并結(jié)合實(shí)例形式分析了Python協(xié)程 yield與協(xié)程greenlet基本使用方法,需要的朋友可以參考下
    2019-11-11
  • Python裝飾器重載內(nèi)置的使用

    Python裝飾器重載內(nèi)置的使用

    本文主要介紹了Python裝飾器重載內(nèi)置的使用,詳細(xì)介紹如何創(chuàng)建裝飾器,如何使用裝飾器來(lái)重載內(nèi)置函數(shù),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • Django Rest framework權(quán)限的詳細(xì)用法

    Django Rest framework權(quán)限的詳細(xì)用法

    這篇文章主要介紹了Django Rest framework權(quán)限的詳細(xì)用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 使用Python和XPath解析動(dòng)態(tài)JSON數(shù)據(jù)的操作指南

    使用Python和XPath解析動(dòng)態(tài)JSON數(shù)據(jù)的操作指南

    JSON動(dòng)態(tài)數(shù)據(jù)在Python中扮演著重要的角色,為開(kāi)發(fā)者提供了處理實(shí)時(shí)和靈活數(shù)據(jù)的能力,動(dòng)態(tài)JSON數(shù)據(jù)的獲取可能涉及到網(wǎng)絡(luò)請(qǐng)求和API調(diào)用,可以使用Python和XPath來(lái)解析動(dòng)態(tài)JSON數(shù)據(jù),接下來(lái)小編就給大家介紹一下操作步驟
    2023-09-09
  • 使用Pandas實(shí)現(xiàn)數(shù)據(jù)的清理的入門(mén)詳解

    使用Pandas實(shí)現(xiàn)數(shù)據(jù)的清理的入門(mén)詳解

    數(shù)據(jù)清理是數(shù)據(jù)分析過(guò)程中的關(guān)鍵步驟,它涉及識(shí)別缺失值、重復(fù)行、異常值和不正確的數(shù)據(jù)類(lèi)型,本文將介紹6個(gè)經(jīng)常使用的數(shù)據(jù)清理操作,希望對(duì)大家有所幫助
    2023-08-08
  • pycharm實(shí)現(xiàn)print輸出保存到txt文件

    pycharm實(shí)現(xiàn)print輸出保存到txt文件

    這篇文章主要介紹了pycharm實(shí)現(xiàn)print輸出保存到txt文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Python Pytorch深度學(xué)習(xí)之核心小結(jié)

    Python Pytorch深度學(xué)習(xí)之核心小結(jié)

    今天小編就為大家分享一篇關(guān)于Pytorch核心小結(jié)的文章,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-10-10
  • Python數(shù)據(jù)操作方法封裝類(lèi)實(shí)例

    Python數(shù)據(jù)操作方法封裝類(lèi)實(shí)例

    這篇文章主要介紹了Python數(shù)據(jù)操作方法封裝類(lèi),結(jié)合具體實(shí)例形式分析了Python針對(duì)數(shù)據(jù)庫(kù)的連接、執(zhí)行sql語(yǔ)句、刪除、關(guān)閉等操作技巧,需要的朋友可以參考下
    2017-06-06

最新評(píng)論

韩国黄色一级二级三级| 天堂av狠狠操蜜桃| 狠狠躁狠狠爱网站视频| huangse网站在线观看| 亚洲码av无色中文| 天天日天天摸天天爱| 亚洲天堂第一页中文字幕| 一级黄片久久久久久久久| 五月天色婷婷在线观看视频免费| 国产av福利网址大全| 亚洲欧美色一区二区| 综合激情网激情五月天| 久久久人妻一区二区| 亚洲精品乱码久久久久久密桃明 | 日本精品一区二区三区在线视频。 | 最新91精品视频在线| 日本韩国免费福利精品| 久久久久久久久久久久久97| 国产美女精品福利在线| 97人妻色免费视频| 青青尤物在线观看视频网站| 人人妻人人爽人人添夜| weyvv5国产成人精品的视频| 国产精品久久久久久久久福交| 免费手机黄页网址大全| 青青青青在线视频免费观看| 天天插天天狠天天操| 中文字幕av男人天堂| 五月激情婷婷久久综合网| xxx日本hd高清| 少妇ww搡性bbb91| 亚洲午夜高清在线观看| 免费手机黄页网址大全| 黄色在线观看免费观看在线| 精品一区二区三区午夜| 五十路老熟女码av| 中文字幕日韩91人妻在线| 在线免费观看日本伦理| 欧美成人精品在线观看| 欧美成人一二三在线网| 青青青视频自偷自拍38碰| 9国产精品久久久久老师| 亚洲一区二区三区精品乱码| 国产精品sm调教视频| 最新国产精品拍在线观看| 精品亚洲在线免费观看| 亚洲精品亚洲人成在线导航| 国产又色又刺激在线视频 | 九色精品视频在线播放| 好男人视频在线免费观看网站| 在线新三级黄伊人网| 欧洲国产成人精品91铁牛tv| 青青草视频手机免费在线观看| 蜜桃色婷婷久久久福利在线| 在线观看欧美黄片一区二区三区 | 亚洲精品国偷自产在线观看蜜桃| 久久美欧人妻少妇一区二区三区 | 国产激情av网站在线观看| 午夜精品亚洲精品五月色| 老有所依在线观看完整版| 人妻久久无码中文成人| 欧美国产亚洲中英文字幕| 扒开腿挺进肉嫩小18禁视频| 成人免费做爰高潮视频| 中文字幕亚洲中文字幕| 欧美日韩精品永久免费网址| 四虎永久在线精品免费区二区| 在线观看黄色成年人网站| gogo国模私拍视频| 免费十精品十国产网站| 熟女视频一区,二区,三区| 成人色综合中文字幕| 成人乱码一区二区三区av| 内射久久久久综合网| 青青青青青青青青青青草青青| 偷青青国产精品青青在线观看| 97超碰国语国产97超碰| 欧美特色aaa大片| 日韩美女精品视频在线观看网站 | 亚洲成人激情视频免费观看了| 亚洲高清免费在线观看视频| 91九色国产熟女一区二区| 端庄人妻堕落挣扎沉沦| 久久精品美女免费视频| 伊人综合免费在线视频| 午夜激情久久不卡一区二区| 中文字幕一区二区三区蜜月| av天堂加勒比在线| 人妻少妇中文有码精品| 青青青国产免费视频| 亚洲熟妇x久久av久久| 99热这里只有国产精品6| 精品久久久久久久久久久久人妻| 亚洲1069综合男同| 播放日本一区二区三区电影| 国产欧美精品一区二区高清| 色哟哟国产精品入口| 一区二区麻豆传媒黄片| 亚洲午夜高清在线观看| 欧美一区二区三区乱码在线播放| 中文字幕高清在线免费播放| 国产亚洲四十路五十路| 天堂va蜜桃一区入口| 9l人妻人人爽人人爽| 成人精品视频99第一页| 视频一区二区在线免费播放| 成年美女黄网站18禁久久| 嫩草aⅴ一区二区三区| 香蕉aⅴ一区二区三区| 晚上一个人看操B片| 精品美女福利在线观看| 国产chinesehd精品麻豆| 国产熟妇乱妇熟色T区| 色综合天天综合网国产成人| av黄色成人在线观看| 99的爱精品免费视频| 久草视频 久草视频2| 免费69视频在线看| 精品黑人巨大在线一区| 日本丰满熟妇大屁股久久| 性欧美日本大妈母与子| 亚洲日本一区二区久久久精品| 超碰在线中文字幕一区二区| 青青青艹视频在线观看| 懂色av蜜桃a v| 中文字幕+中文字幕| 18禁精品网站久久| 青青草人人妻人人妻| 国产一区二区视频观看| 天天日天天干天天舔天天射| 亚洲精品久久视频婷婷| 伊人成人综合开心网| 在线国产精品一区二区三区| 人人妻人人爱人人草| 水蜜桃一区二区三区在线观看视频| 天天干天天操天天爽天天摸| 国产黄色a级三级三级三级| 亚洲超碰97人人做人人爱| 91九色国产熟女一区二区| 在线可以看的视频你懂的 | 亚洲精品国产久久久久久| 国产综合精品久久久久蜜臀| 国产在线自在拍91国语自产精品| 亚洲 欧美 精品 激情 偷拍 | 欧美成人综合色在线噜噜| 日美女屁股黄邑视频| 国产日韩一区二区在线看| 国产精品国色综合久久| 一色桃子人妻一区二区三区| 啪啪啪啪啪啪啪免费视频| 国内自拍第一页在线观看| 日日摸夜夜添夜夜添毛片性色av| 美女视频福利免费看| 欧美日本在线观看一区二区 | 九色porny九色9l自拍视频| 夜色17s精品人妻熟女| 国产精选一区在线播放| 在线 中文字幕 一区| 亚洲一区二区三区av网站| 国产大学生援交正在播放| 美女在线观看日本亚洲一区| 国产亚洲天堂天天一区| 亚洲中文字字幕乱码| 日本人妻少妇18—xx| 日本一道二三区视频久久| 国产1区,2区,3区| 蜜桃视频入口久久久| 中文字幕午夜免费福利视频| 亚洲欧美在线视频第一页| 欧美视频综合第一页| 99精品视频之69精品视频| 2020中文字幕在线播放| 天天日天天爽天天爽| 2022天天干天天操| 中文字幕在线第一页成人| 天天插天天狠天天操| 日本特级片中文字幕| 在线播放一区二区三区Av无码| 新97超碰在线观看| 亚洲欧美激情中文字幕| 亚洲嫩模一区二区三区| 中文字幕一区二区人妻电影冢本| 91精品国产黑色丝袜| 班长撕开乳罩揉我胸好爽| 97精品综合久久在线| 国产激情av网站在线观看| 中文字幕午夜免费福利视频| 91久久国产成人免费网站| 99热久久这里只有精品| 国产日韩欧美美利坚蜜臀懂色| 日韩精品中文字幕在线| aiss午夜免费视频| 中文字幕无码日韩专区免费| 一区二区三区国产精选在线播放| 开心 色 六月 婷婷| 国产精品午夜国产小视频| 69精品视频一区二区在线观看| 亚洲综合一区二区精品久久| 久久久久久久亚洲午夜综合福利| 天天日天天日天天射天天干| 久久农村老妇乱69系列| 国产日本欧美亚洲精品视| 9l人妻人人爽人人爽| 伊拉克及约旦宣布关闭领空| 新97超碰在线观看| 亚洲区欧美区另类最新章节| 久久机热/这里只有| 不卡一不卡二不卡三| 日韩黄色片在线观看网站| 少妇ww搡性bbb91| 黄色视频在线观看高清无码| 中文字幕在线一区精品| 国产日韩精品一二三区久久久| 久久麻豆亚洲精品av| 亚洲综合另类欧美久久| 偷偷玩弄新婚人妻h视频| 大白屁股精品视频国产| 四川五十路熟女av| 亚洲精品麻豆免费在线观看| 一区二区免费高清黄色视频| 免费看国产又粗又猛又爽又黄视频| 亚洲天堂av最新网址| 丝袜肉丝一区二区三区四区在线看| 日韩熟女av天堂系列| jul—619中文字幕在线| 国产欧美精品不卡在线| 一区二区三区四区中文| 成年美女黄网站18禁久久| 超级碰碰在线视频免费观看| 日韩伦理短片在线观看| 精品久久久久久久久久久久人妻| 99re6热在线精品| 男人的网址你懂的亚洲欧洲av | 在线国产精品一区二区三区| 中文字幕第三十八页久久| 天天操天天弄天天射| 91国内精品久久久久精品一| 最后99天全集在线观看| 开心 色 六月 婷婷| 任你操视频免费在线观看| 亚洲精品国产在线电影| 97欧洲一区二区精品免费| 午夜成午夜成年片在线观看| 国产亚州色婷婷久久99精品| 福利一二三在线视频观看| 19一区二区三区在线播放| 天堂av在线官网中文| 免费看国产又粗又猛又爽又黄视频| 亚洲成人黄色一区二区三区 | 亚洲推理片免费看网站| 中文字幕网站你懂的| 午夜大尺度无码福利视频| 五十路av熟女松本翔子| 免费69视频在线看| 中文字幕奴隷色的舞台50| 在线观看免费av网址大全| 精品首页在线观看视频| 国产密臀av一区二区三| 人妻无码中文字幕专区| 天天日天天干天天爱| 亚洲天堂成人在线观看视频网站| 色综合天天综合网国产成人| 亚洲在线一区二区欧美| 激情五月婷婷免费视频| 美女骚逼日出水来了| 久久久久久久一区二区三| 久草视频在线一区二区三区资源站| 欧美熟妇一区二区三区仙踪林| 亚洲av男人天堂久久| 精品日产卡一卡二卡国色天香| 激情人妻校园春色亚洲欧美| 国产麻豆国语对白露脸剧情 | 日韩欧美一级aa大片| 黄色大片男人操女人逼| 黄色资源视频网站日韩| 久久精品视频一区二区三区四区 | 熟女人妻在线中出观看完整版| 天天爽夜夜爽人人爽QC| 中国无遮挡白丝袜二区精品 | jul—619中文字幕在线| 亚洲av无硬久久精品蜜桃| 青青草精品在线视频观看| 在线新三级黄伊人网| 国产成人午夜精品福利| 亚洲精品国产综合久久久久久久久| 9色在线视频免费观看| 亚洲欧美激情国产综合久久久 | 亚洲欧美综合另类13p| 3337p日本欧洲大胆色噜噜| 动漫av网站18禁| 97欧洲一区二区精品免费| 国产一级麻豆精品免费| 国产普通话插插视频| 日本男女操逼视频免费看| 久久久超爽一二三av| 55夜色66夜色国产精品站| 天天干狠狠干天天操| 亚洲一区自拍高清免费视频| 国产成人精品一区在线观看| av中文字幕在线观看第三页| 好太好爽好想要免费| 国产精品入口麻豆啊啊啊| 成人激情文学网人妻| 91在线视频在线精品3| 97精品成人一区二区三区| 在线可以看的视频你懂的| 91色九色porny| 1769国产精品视频免费观看| 特级欧美插插插插插bbbbb| 人妻3p真实偷拍一二区| 人妻少妇亚洲精品中文字幕| 男人靠女人的逼视频| 人人人妻人人澡人人| 51国产偷自视频在线播放| 青青青青青青青青青青草青青| 视频一区二区三区高清在线| 97人妻夜夜爽二区欧美极品| 视频一区 视频二区 视频| 欧美天堂av无线av欧美| 九色porny九色9l自拍视频| 少妇ww搡性bbb91| 欧美激情精品在线观看| 天干天天天色天天日天天射| 亚洲成人激情视频免费观看了| 亚洲av日韩高清hd| 综合色区亚洲熟妇shxstz| 国产精品一区二区久久久av| 在线免费观看日本片| 成人av中文字幕一区| 熟妇一区二区三区高清版| 欧美xxx成人在线| 午夜激情久久不卡一区二区| 天天日天天干天天插舔舔| 国语对白xxxx乱大交| 97人妻人人澡爽人人精品| 中国视频一区二区三区| 日本黄在免费看视频| 国产妇女自拍区在线观看| 18禁美女黄网站色大片下载| 在线国产日韩欧美视频| 天天色天天操天天舔| 人妻3p真实偷拍一二区| 中文字幕在线欧美精品| 国产第一美女一区二区三区四区| 成人资源在线观看免费官网| 狠狠鲁狠狠操天天晚上干干| 只有精品亚洲视频在线观看| 午夜精彩视频免费一区| 色综合久久无码中文字幕波多| 日韩熟女系列一区二区三区| 日本av高清免费网站| 97人妻总资源视频| av中文字幕网址在线| 中文字幕人妻熟女在线电影| 99热99这里精品6国产| 初美沙希中文字幕在线 | 蜜桃视频在线欧美一区| 蜜桃视频入口久久久| 天天草天天色天天干| 亚洲欧美一区二区三区电影| 日韩a级精品一区二区| 成人伊人精品色xxxx视频| 精品亚洲在线免费观看| 国产精品系列在线观看一区二区 | 天天夜天天日天天日| 日韩人妻丝袜中文字幕| 91快播视频在线观看| 国产美女精品福利在线| 黄片大全在线观看观看| 搡老妇人老女人老熟女| 老有所依在线观看完整版| 97人妻总资源视频| 女生被男生插的视频网站| 日本高清在线不卡一区二区| 亚洲男人在线天堂网| 美女张开腿让男生操在线看| 99婷婷在线观看视频| 粉嫩小穴流水视频在线观看| 亚洲国产精品久久久久久6| 天天躁日日躁狠狠躁av麻豆| 欧美视频不卡一区四区| 99精品免费观看视频| 亚洲第17页国产精品| 美女视频福利免费看| 黄页网视频在线免费观看| 9l人妻人人爽人人爽| 亚洲免费va在线播放| 在线免费91激情四射 | 日韩欧美国产一区不卡| 黑人巨大精品欧美视频| 久久久久久久亚洲午夜综合福利| 久草视频中文字幕在线观看| 中文字幕人妻熟女在线电影| 福利视频网久久91| 国产精品一区二区av国| 久久久久国产成人精品亚洲午夜| 国产亚洲成人免费在线观看| 鸡巴操逼一级黄色气| 免费观看国产综合视频| 国产一区二区火爆视频| 香港一级特黄大片在线播放| 国产极品精品免费视频| 天堂av中文在线最新版| 国产精品一二三不卡带免费视频| 一个色综合男人天堂| 91国产在线视频免费观看| 经典国语激情内射视频| 欧美黑人性暴力猛交喷水| 99国内精品永久免费视频| 亚洲免费成人a v| 老鸭窝在线观看一区| 天堂av在线最新版在线| 激情色图一区二区三区| 青青青青青青青在线播放视频| 亚洲综合一区成人在线| 真实国模和老外性视频| 福利视频一区二区三区筱慧| 亚洲人妻av毛片在线| 欧美天堂av无线av欧美| 精品美女久久久久久| 国产 在线 免费 精品| 国产日韩欧美视频在线导航 | 蜜臀av久久久久久久| 日本少妇的秘密免费视频| 免费在线看的黄网站| 国产视频在线视频播放| 天堂va蜜桃一区入口| 中文字幕人妻三级在线观看| 少妇高潮一区二区三区| 日本少妇人妻xxxxx18| 欧美性感尤物人妻在线免费看| 成人24小时免费视频| 国产在线一区二区三区麻酥酥| 欧美精产国品一二三区| 粗大的内捧猛烈进出爽大牛汉子| 91精品国产麻豆国产| 国产亚州色婷婷久久99精品| 欧美日韩中文字幕欧美| 99的爱精品免费视频| 青娱乐最新视频在线| 中英文字幕av一区| 日韩在线视频观看有码在线| 91超碰青青中文字幕| 国产av一区2区3区| 国产片免费观看在线观看| 93精品视频在线观看| 一区二区三区 自拍偷拍| 中文字幕一区二区人妻电影冢本| 五月天久久激情视频| 青青青青青免费视频| 农村胖女人操逼视频| 喷水视频在线观看这里只有精品| 中文字幕免费在线免费| 99热色原网这里只有精品| 久碰精品少妇中文字幕av| 99精品免费观看视频| 午夜精品一区二区三区城中村| av完全免费在线观看av| 日本女大学生的黄色小视频| 四虎永久在线精品免费区二区| 亚洲中文字幕校园春色| 午夜影院在线观看视频羞羞羞| 经典亚洲伊人第一页| 摧残蹂躏av一二三区| 日本xx片在线观看| 亚洲人妻国产精品综合| 国产精品国产三级麻豆| rct470中文字幕在线| www天堂在线久久| 最新中文字幕乱码在线| 中文字幕第三十八页久久 | 日本阿v视频在线免费观看| 黄色大片免费观看网站| 偷拍美女一区二区三区| 桃色视频在线观看一区二区| 免费啪啪啪在线观看视频| 2022中文字幕在线| 91小伙伴中女熟女高潮| 日韩加勒比东京热二区| 夜女神免费福利视频| 在线观看视频 你懂的| 爆乳骚货内射骚货内射在线| 亚洲一区av中文字幕在线观看| 青青草在观免费国产精品| 国产欧美精品免费观看视频| 亚洲精品久久视频婷婷| 经典av尤物一区二区| 日韩美女搞黄视频免费| 男人在床上插女人视频| 国产无遮挡裸体免费直播视频| 一区二区三区激情在线| 国产麻豆国语对白露脸剧情| 久久热久久视频在线观看| 天堂av在线播放免费| 日本a级视频老女人| 神马午夜在线观看视频| 亚洲熟妇无码一区二区三区| 国产精品亚洲在线观看| 久久久久久久精品成人热| 欧美国品一二三产区区别| 91麻豆精品91久久久久同性| 日本黄色特一级视频| 91免费福利网91麻豆国产精品| 2021年国产精品自拍| 国产日韩欧美视频在线导航 | 特级无码毛片免费视频播放| 天天日天天舔天天射进去| 日本在线不卡免费视频| 欧美日韩国产一区二区三区三州 | 人妻另类专区欧美制服| 动漫黑丝美女的鸡巴| 福利视频广场一区二区| av天堂中文字幕最新| 少妇与子乱在线观看| 久久久久国产成人精品亚洲午夜| 丁香花免费在线观看中文字幕| 91国产资源在线视频| 自拍偷拍亚洲精品第2页| 黑人巨大精品欧美视频| 日本高清在线不卡一区二区| 中文字幕免费在线免费| 成年人该看的视频黄免费| 日韩欧美一级精品在线观看| 亚洲激情偷拍一区二区| 日本精品美女在线观看| 无码中文字幕波多野不卡| 91中文字幕免费在线观看| 日本高清在线不卡一区二区| 久久久噜噜噜久久熟女av| 男女啪啪啪啪啪的网站| 亚洲精品 欧美日韩| 国产janese在线播放| 欧美80老妇人性视频| av网址在线播放大全| 夜夜嗨av一区二区三区中文字幕| 成年人午夜黄片视频资源| 经典av尤物一区二区| 在线视频精品你懂的| 亚洲av自拍天堂网| 中文字幕,亚洲人妻| 含骚鸡巴玩逼逼视频| 激情小视频国产在线| 91国语爽死我了不卡| 久精品人妻一区二区三区| 青青热久免费精品视频在线观看| 欧美日韩精品永久免费网址| 在线不卡成人黄色精品| 100%美女蜜桃视频| 久久久久国产成人精品亚洲午夜| 福利视频一区二区三区筱慧| 在线免费观看欧美小视频| 一区二区三区激情在线| 天天色天天操天天舔| 亚洲Av无码国产综合色区| 最新中文字幕乱码在线| 国产高清精品极品美女| 大尺度激情四射网站| 天天干天天日天天干天天操| 日本免费视频午夜福利视频| 成年美女黄网站18禁久久| 国产内射中出在线观看| 视频一区二区综合精品| 午夜久久香蕉电影网| 超碰97免费人妻麻豆| 一区二区三区四区视频| 色花堂在线av中文字幕九九| 二区中出在线观看老师| 91国偷自产一区二区三区精品| 日本韩国亚洲综合日韩欧美国产| 日美女屁股黄邑视频| 夜夜操,天天操,狠狠操| 久久久久只精品国产三级| 在线观看视频一区麻豆| 日本熟女精品一区二区三区| 欧美亚洲偷拍自拍色图| 91精品国产综合久久久蜜| 91九色国产熟女一区二区| 中文字幕人妻一区二区视频| 绯色av蜜臀vs少妇| 成人H精品动漫在线无码播放| 宅男噜噜噜666免费观看| 在线免费91激情四射| 久久www免费人成一看片| 美女福利写真在线观看视频| 国产精品久久久久久久久福交| 91超碰青青中文字幕| 3337p日本欧洲大胆色噜噜| 一区二区麻豆传媒黄片| 久久久精品精品视频视频| 粉嫩小穴流水视频在线观看| 午夜av一区二区三区| 青青青青青青草国产| 午夜美女少妇福利视频| 九九视频在线精品播放| 午夜91一区二区三区| 91大神福利视频网| 亚洲综合在线观看免费| 欲乱人妻少妇在线视频裸| 日本午夜爽爽爽爽爽视频在线观看| 日韩av有码一区二区三区4| 中国黄片视频一区91| 2022中文字幕在线| 亚洲天堂第一页中文字幕| 99久久中文字幕一本人| 日本午夜福利免费视频| 91人妻精品一区二区在线看| 一区二区三区四区中文| 57pao国产一区二区| 久久久人妻一区二区| 国产第一美女一区二区三区四区| 边摸边做超爽毛片18禁色戒| 年轻的人妻被夫上司侵犯| 欧美专区日韩专区国产专区| 少妇高潮无套内谢麻豆| 日韩欧美国产一区不卡| av在线免费观看亚洲天堂| 欧美性感尤物人妻在线免费看| 国产三级影院在线观看| 中文字幕一区二区亚洲一区| 亚洲成高清a人片在线观看| 国产老熟女伦老熟妇ⅹ| 自拍偷拍一区二区三区图片| 美洲精品一二三产区区别| 国产精品久久久黄网站| 亚洲成高清a人片在线观看| 一级A一级a爰片免费免会员| 国产综合精品久久久久蜜臀| 国产女人叫床高潮大片视频| 青青在线视频性感少妇和隔壁黑丝| 久久久久久国产精品| 成熟熟女国产精品一区| 女生被男生插的视频网站| 黄色成人在线中文字幕| 亚洲免费va在线播放| 韩国爱爱视频中文字幕| 91亚洲国产成人精品性色| 亚洲欧洲av天堂综合| 欧美精品中文字幕久久二区| 欧美成人精品在线观看| 中文字幕午夜免费福利视频| 天堂av在线官网中文| 在线观看国产网站资源| 精品91高清在线观看| 伊人情人综合成人久久网小说| 中文字幕高清免费在线人妻| 99国内精品永久免费视频| 熟女少妇激情五十路| 狠狠躁夜夜躁人人爽天天久天啪| 绝顶痉挛大潮喷高潮无码| 婷婷色国产黑丝少妇勾搭AV| wwwxxx一级黄色片| 国产女人被做到高潮免费视频| 国产变态另类在线观看| 欧美男同性恋69视频| 国产伊人免费在线播放| 中文字幕第三十八页久久| 精品国产亚洲av一淫| 久久久久久cao我的性感人妻 | 天天日天天做天天日天天做| 亚洲男人的天堂a在线| av在线免费中文字幕| 蜜臀av久久久久蜜臀av麻豆| 喷水视频在线观看这里只有精品| 婷婷综合亚洲爱久久| 久久久麻豆精亚洲av麻花| 偷拍美女一区二区三区| 亚洲成av人无码不卡影片一| 国产男女视频在线播放| 亚洲欧美综合在线探花| 午夜频道成人在线91| 97小视频人妻一区二区| 欧美精品一二三视频| 天天干狠狠干天天操| 性色蜜臀av一区二区三区| 香港三日本三韩国三欧美三级| 日本福利午夜电影在线观看| 久久午夜夜伦痒痒想咳嗽P| 亚洲图片偷拍自拍区| 午夜精品福利一区二区三区p| 超碰97人人做人人爱| 神马午夜在线观看视频| chinese国产盗摄一区二区| 亚洲av第国产精品| 久精品人妻一区二区三区| 亚洲人妻视频在线网| 亚洲无线观看国产高清在线| 91久久人澡人人添人人爽乱| 久草极品美女视频在线观看 | 漂亮 人妻被中出中文| 在线观看视频一区麻豆| 蜜桃色婷婷久久久福利在线 | 亚洲区美熟妇久久久久| 成人精品在线观看视频| 天天操,天天干,天天射| 亚洲欧美另类自拍偷拍色图| 最后99天全集在线观看| 精品人妻伦一二三区久| 国产精品黄页网站视频| 中文 成人 在线 视频| 在线不卡成人黄色精品| 久久精品亚洲成在人线a| 国产品国产三级国产普通话三级| 福利视频网久久91| 美洲精品一二三产区区别| 99精品视频之69精品视频| 密臀av一区在线观看| 97青青青手机在线视频| 天天日天天摸天天爱| 中文字幕人妻三级在线观看| 麻豆精品成人免费视频| 在线免费观看日本片| 欧美亚洲自偷自拍 在线| 78色精品一区二区三区| 国产视频精品资源网站| 在线国产中文字幕视频| 美女小视频网站在线| 三级黄色亚洲成人av| 熟女91pooyn熟女| 欧美少妇性一区二区三区| 五十路熟女人妻一区二区9933| 国产精品人妻一区二区三区网站| 国产麻豆精品人妻av| 亚洲天堂第一页中文字幕| 啪啪啪啪啪啪啪免费视频| sspd152中文字幕在线| 大尺度激情四射网站| 99亚洲美女一区二区三区| 一区二区三区日韩久久| 国产极品美女久久久久久| 蜜桃色婷婷久久久福利在线| 欧美日本在线观看一区二区| 神马午夜在线观看视频| 99一区二区在线观看| 综合页自拍视频在线播放| 亚洲国产美女一区二区三区软件| 国产精品国产三级麻豆| 亚洲精品 日韩电影| 午夜精品一区二区三区城中村| 噜噜色噜噜噜久色超碰| 97香蕉碰碰人妻国产樱花| 亚洲av午夜免费观看| 老司机免费福利视频网| 日韩av大胆在线观看| 青青青青青青青青青青草青青| 2020中文字幕在线播放| 最后99天全集在线观看| 免费岛国喷水视频在线观看| 国产一线二线三线的区别在哪| 日本少妇人妻xxxxxhd| 黑人变态深video特大巨大| 亚洲av无码成人精品区辽| 午夜在线观看一区视频| 国产91嫩草久久成人在线视频| 国产自拍在线观看成人| 鸡巴操逼一级黄色气| 大肉大捧一进一出好爽在线视频| 成人av中文字幕一区| 国产又色又刺激在线视频 | 视频久久久久久久人妻| 人人妻人人澡人人爽人人dvl| 中文 成人 在线 视频| 亚洲欧洲一区二区在线观看| 国产中文精品在线观看| 这里有精品成人国产99| 精品久久久久久高潮| 亚洲第一黄色在线观看| 日韩欧美国产一区ab| 久久久久久久精品老熟妇| 亚洲福利精品视频在线免费观看| 超pen在线观看视频公开97| 丰满的子国产在线观看| 日韩av有码一区二区三区4| 欧美视频不卡一区四区| 国产夫妻视频在线观看免费| 精品视频中文字幕在线播放 | 男人插女人视频网站| 国产麻豆乱子伦午夜视频观看| 人人超碰国字幕观看97| 午夜91一区二区三区| 天堂av狠狠操蜜桃| 久久精品美女免费视频| 中文字幕亚洲久久久| 97少妇精品在线观看| av网址国产在线观看| 欧美成人一二三在线网| 黄色片一级美女黄色片| 日韩欧美国产一区ab| 国产精品污污污久久| 韩国亚洲欧美超一级在线播放视频| 青青草原网站在线观看 | 亚洲 自拍 色综合图| 精品国产在线手机在线| 91传媒一区二区三区| 中文字幕av第1页中文字幕| 红杏久久av人妻一区| 超碰在线观看免费在线观看| 亚洲福利精品福利精品福利| 国产精彩对白一区二区三区| 日韩欧美国产一区ab| 国产又大又黄免费观看| 和邻居少妇愉情中文字幕| 激情啪啪啪啪一区二区三区| 欧美精品资源在线观看| 国产福利小视频免费观看| 国产乱子伦一二三区| 中文字幕+中文字幕| 午夜av一区二区三区| 班长撕开乳罩揉我胸好爽| 999九九久久久精品| 亚洲伊人av天堂有码在线| 国产福利小视频免费观看| 91超碰青青中文字幕| 自拍偷拍亚洲精品第2页| 欧美成人一二三在线网| 亚洲最大黄了色网站| 午夜精品福利91av| 66久久久久久久久久久| 成人av中文字幕一区| 婷婷色国产黑丝少妇勾搭AV| 天天操夜夜骑日日摸| 老师啊太大了啊啊啊尻视频| 青青伊人一精品视频| 香港三日本三韩国三欧美三级| 欧美特级特黄a大片免费| 国产高清在线观看1区2区| 亚洲综合色在线免费观看| 亚洲国产欧美国产综合在线 | 视频久久久久久久人妻| 亚洲国产精品免费在线观看| 中文字幕高清资源站| 四虎永久在线精品免费区二区| 好太好爽好想要免费| 成人资源在线观看免费官网| 人妻无码中文字幕专区| 视频一区二区在线免费播放| av中文字幕福利网| 国产精品入口麻豆啊啊啊 | 硬鸡巴动态操女人逼视频| 欧美久久一区二区伊人| 阴茎插到阴道里面的视频| 少妇与子乱在线观看| 欧美色婷婷综合在线| 久久精品亚洲国产av香蕉| 人妻少妇中文有码精品| 开心 色 六月 婷婷| 亚洲va国产va欧美va在线| 中文字幕人妻av在线观看| 亚洲 欧美 精品 激情 偷拍 | 亚洲另类在线免费观看| 日本三极片视频网站观看| 亚洲区欧美区另类最新章节| 久久久制服丝袜中文字幕| 91精品资源免费观看| 欧美精品免费aaaaaa| 最新日韩av传媒在线| 1024久久国产精品| 自拍偷拍日韩欧美亚洲| 国产午夜亚洲精品不卡在线观看| 玩弄人妻熟妇性色av少妇| 亚洲中文字幕综合小综合| 九色porny九色9l自拍视频| 国产一级麻豆精品免费| 欧美黑人巨大性xxxxx猛交| 亚洲熟妇x久久av久久| 一区二区熟女人妻视频| 久久这里只有精品热视频| 中文字幕最新久久久| 中文字幕人妻三级在线观看| 少妇人妻二三区视频| 久久农村老妇乱69系列| 红桃av成人在线观看| 天天操天天弄天天射| 免费观看成年人视频在线观看| 精品高潮呻吟久久av| 久久精品视频一区二区三区四区| 国产密臀av一区二区三| 最新97国产在线视频| 国产老熟女伦老熟妇ⅹ| 初美沙希中文字幕在线| 婷婷色国产黑丝少妇勾搭AV| 国产又粗又硬又猛的毛片视频| 亚洲国产40页第21页| 国产亚洲国产av网站在线| 亚洲国产成人av在线一区| 亚洲精品乱码久久久本| 精品一区二区三区三区色爱| 亚洲伊人久久精品影院一美女洗澡 | 一区二区三区激情在线| 最近中文字幕国产在线| 国产精品久久综合久久| 成人激情文学网人妻| 大鸡巴操b视频在线| 日本av熟女在线视频| 深夜男人福利在线观看| 中文字幕一区二区三区人妻大片| 亚洲最大免费在线观看| chinese国产盗摄一区二区| 男人操女人的逼免费视频| 久久精品久久精品亚洲人| 美女福利写真在线观看视频| 人人人妻人人澡人人| 乱亲女秽乱长久久久| 色综合久久久久久久久中文| 97人妻人人澡爽人人精品| 美洲精品一二三产区区别| 激情啪啪啪啪一区二区三区| 在线免费观看视频一二区| 国产又粗又猛又爽又黄的视频在线 | 免费黄色成人午夜在线网站| 中文字幕日韩无敌亚洲精品| 久久久久91精品推荐99| 人人超碰国字幕观看97| 特级欧美插插插插插bbbbb| 在线免费观看靠比视频的网站| 九一传媒制片厂视频在线免费观看 | 最近中文字幕国产在线| 亚洲综合一区成人在线| 中文字幕日韩精品就在这里| 午夜精彩视频免费一区| 九色porny九色9l自拍视频| 日韩精品啪啪视频一道免费| 视频啪啪啪免费观看| 自拍偷区二区三区麻豆| 国产精品国产三级麻豆| 3337p日本欧洲大胆色噜噜| 免费黄页网站4188| 成人区人妻精品一区二视频| 精品亚洲国产中文自在线| av中文字幕国产在线观看| 免费看高清av的网站| 国产精品自拍在线视频| 国产一级精品综合av| 综合国产成人在线观看| 精品一区二区三区欧美| 亚洲精品一区二区三区老狼| 任你操视频免费在线观看| 亚洲成人av一区在线| 国产性感美女福利视频| 亚洲成人激情视频免费观看了| 狠狠躁夜夜躁人人爽天天天天97| 动漫美女的小穴视频| 亚洲码av无色中文| 亚洲午夜福利中文乱码字幕| 亚洲中文字幕人妻一区| 午夜激情久久不卡一区二区| 亚洲另类在线免费观看| 9色在线视频免费观看| 97小视频人妻一区二区| 国产妇女自拍区在线观看| 日日夜夜精品一二三| 亚洲中文精品人人免费| 国产精品中文av在线播放| 成人午夜电影在线观看 久久| 福利一二三在线视频观看| 久久久超爽一二三av| 毛片av在线免费看| 国内自拍第一页在线观看| 57pao国产一区二区| 337p日本大胆欧美人| 欧美日韩人妻久久精品高清国产 | 精品av久久久久久久| 五月婷婷在线观看视频免费| 97人妻无码AV碰碰视频| 日韩少妇人妻精品无码专区| 免费看高清av的网站| 91大神福利视频网| 欧美日韩精品永久免费网址| av在线shipin| 日韩中文字幕福利av| 久久精品在线观看一区二区| 日本黄色三级高清视频| jul—619中文字幕在线| 97精品综合久久在线| 亚洲欧美国产综合777| 国产av欧美精品高潮网站| 亚洲天堂av最新网址| 美女日逼视频免费观看| 成人网18免费视频版国产| 视频 一区二区在线观看| 一区二区在线观看少妇| 国产无遮挡裸体免费直播视频| 馒头大胆亚洲一区二区| 中出中文字幕在线观看| 91社福利《在线观看| 中文字幕人妻一区二区视频| 99国产精品窥熟女精品| 一色桃子人妻一区二区三区| 亚洲精品午夜久久久久| 亚洲欧洲一区二区在线观看| 大胆亚洲av日韩av| 日本黄在免费看视频| 日日爽天天干夜夜操| 亚洲狠狠婷婷综合久久app| 国产在线免费观看成人| 天天干天天日天天谢综合156| 欧亚乱色一区二区三区| 日本啪啪啪啪啪啪啪| 91免费福利网91麻豆国产精品| 91九色国产熟女一区二区| 久草免费人妻视频在线| 91社福利《在线观看| 国产亚洲四十路五十路| 国产精品视频资源在线播放| 在线观看成人国产电影| 亚洲av日韩高清hd| 日韩在线中文字幕色| 欧美80老妇人性视频| 天天日夜夜干天天操| 玖玖一区二区在线观看| 青青草视频手机免费在线观看| 精品一区二区三区午夜| 国产极品精品免费视频 | 欧美精品久久久久久影院| av高潮迭起在线观看| 自拍偷拍亚洲欧美在线视频| 中文字幕+中文字幕| 亚洲免费成人a v| 午夜精品亚洲精品五月色| 国产福利在线视频一区| 亚洲精品麻豆免费在线观看 | 亚洲男人让女人爽的视频| 视频一区二区三区高清在线| 亚洲福利午夜久久久精品电影网| 噜噜色噜噜噜久色超碰| 男女第一次视频在线观看| 91大神福利视频网| 91福利视频免费在线观看| 精品一区二区三区三区色爱| 黄色成人在线中文字幕| 亚洲欧美福利在线观看| 欧美日本在线观看一区二区| 91国内视频在线观看| 在线观看的a站 最新| 国产日韩精品电影7777| 最新91精品视频在线| 亚洲国产欧美国产综合在线| 欧美熟妇一区二区三区仙踪林| 狠狠躁狠狠爱网站视频| 青青草原网站在线观看| 亚洲av自拍偷拍综合| 日韩在线中文字幕色| 亚洲中文精品人人免费| 色综合久久久久久久久中文| 免费一级黄色av网站| 午夜激情久久不卡一区二区| 国产一级麻豆精品免费| 99精品免费观看视频| 2017亚洲男人天堂| 国产成人无码精品久久久电影 | 第一福利视频在线观看| 美味人妻2在线播放| 中文字幕亚洲久久久| 97a片免费在线观看| 国产乱弄免费视频观看| 色97视频在线播放| 99精品一区二区三区的区| av在线免费资源站| 在线国产日韩欧美视频| 又粗又硬又猛又爽又黄的| 成人av中文字幕一区| 国产又粗又硬又猛的毛片视频 | 青青青视频手机在线观看| 97国产在线观看高清| 不卡一不卡二不卡三| 福利国产视频在线观看| 人妻丝袜精品中文字幕| 婷婷五月亚洲综合在线| 一区二区三区欧美日韩高清播放| 青青在线视频性感少妇和隔壁黑丝| 日韩无码国产精品强奸乱伦| 国产精品福利小视频a| 啪啪啪啪啪啪啪免费视频| 久久久久国产成人精品亚洲午夜| 性感美女诱惑福利视频| 2020久久躁狠狠躁夜夜躁| 激情色图一区二区三区| 亚洲无码一区在线影院| 国产福利小视频大全| 丝袜长腿第一页在线| 国产黄色大片在线免费播放| 国产精品手机在线看片| 中文字幕免费在线免费| 精内国产乱码久久久久久| 欧美一区二区三区乱码在线播放 | 国产一区二区在线欧美| 亚洲精品麻豆免费在线观看| gogo国模私拍视频| 欧美日韩亚洲国产无线码| 93精品视频在线观看| 大香蕉玖玖一区2区| 九色精品视频在线播放| 一二三区在线观看视频| 亚洲人成精品久久久久久久| 又粗又硬又猛又黄免费30| 亚洲粉嫩av一区二区三区| 成人免费公开视频无毒| 91高清成人在线视频| 国产综合视频在线看片| 亚洲最大黄 嗯色 操 啊| 在线成人日韩av电影| av中文字幕在线观看第三页| 嫩草aⅴ一区二区三区| 男人的天堂av日韩亚洲| 淫秽激情视频免费观看| 国产高清在线观看1区2区| 精品人妻每日一部精品| 九九热99视频在线观看97| 中文字幕1卡1区2区3区| av欧美网站在线观看| 亚洲午夜伦理视频在线| 红杏久久av人妻一区| 青娱乐在线免费视频盛宴| 国产露脸对白在线观看| 精品国产污污免费网站入口自| 综合激情网激情五月五月婷婷| 一级黄片大鸡巴插入美女| 无码日韩人妻精品久久| 欧美亚洲少妇福利视频| 男人和女人激情视频| 含骚鸡巴玩逼逼视频| 亚洲另类图片蜜臀av| 日韩少妇人妻精品无码专区| 欧美一级色视频美日韩| 日韩人妻丝袜中文字幕| 97人人妻人人澡人人爽人人精品| 91欧美在线免费观看| 2021久久免费视频| 国产av国片精品一区二区| 日韩av免费观看一区| 欧美交性又色又爽又黄麻豆| 国产又粗又猛又爽又黄的视频在线 | 无码国产精品一区二区高潮久久4 日韩欧美一级精品在线观看 | av在线观看网址av| 中国把吊插入阴蒂的视频| 高潮喷水在线视频观看| 亚洲熟女久久久36d| 一区二区麻豆传媒黄片| 韩国一级特黄大片做受| 9色在线视频免费观看| 日韩北条麻妃一区在线| 免费岛国喷水视频在线观看| 2021年国产精品自拍| 成年美女黄网站18禁久久| 国产福利小视频大全| 精品人人人妻人人玩日产欧| 狠狠躁狠狠爱网站视频| 亚洲久久午夜av一区二区| 少妇露脸深喉口爆吞精| 青娱乐在线免费视频盛宴| 国产av国片精品一区二区| 最近中文2019年在线看| 粉嫩av懂色av蜜臀av| 伊人情人综合成人久久网小说| 成人高清在线观看视频| 午夜精品福利91av| 人妻自拍视频中国大陆| 懂色av蜜桃a v| 亚洲综合在线视频可播放| 亚洲精品精品国产综合| 国内自拍第一页在线观看| 91色九色porny| 老司机在线精品福利视频| 日本少妇高清视频xxxxx | 精内国产乱码久久久久久| 色综合色综合色综合色| 欧美另类重口味极品在线观看| 红桃av成人在线观看| 五十路熟女人妻一区二区9933| 亚洲一区二区三区久久午夜| 五月天色婷婷在线观看视频免费| 亚洲 欧美 精品 激情 偷拍| 国产午夜亚洲精品不卡在线观看| 日韩a级黄色小视频| 中文字幕人妻被公上司喝醉在线 | 姐姐的朋友2在线观看中文字幕| 亚洲激情偷拍一区二区| 一区二区三区欧美日韩高清播放| chinese国产盗摄一区二区| 美女 午夜 在线视频| 自拍偷拍一区二区三区图片| 女同性ⅹxx女同hd| 亚洲美女高潮喷浆视频| 午夜精品一区二区三区4| 黄色在线观看免费观看在线| 97人妻无码AV碰碰视频| 国产精品成久久久久三级蜜臀av| 国产黄色片蝌蚪九色91| 日韩写真福利视频在线观看| 国产亚州色婷婷久久99精品| 天天插天天色天天日| 亚洲精品午夜久久久久| 一区二区视频在线观看免费观看| 老师啊太大了啊啊啊尻视频| 视频 国产 精品 熟女 | 亚洲天堂有码中文字幕视频| 欧美日韩中文字幕欧美| 国产日本精品久久久久久久| 国产aⅴ一线在线观看| 超碰在线观看免费在线观看| 最新国产亚洲精品中文在线| 九色精品视频在线播放| 最新日韩av传媒在线| 国产亚洲欧美视频网站| 男人的天堂一区二区在线观看| 国产乱子伦精品视频潮优女| 日比视频老公慢点好舒服啊| 日本三极片视频网站观看| 国产激情av网站在线观看| 色综合久久五月色婷婷综合| 40道精品招牌菜特色| 欧美日韩高清午夜蜜桃大香蕉| 成人乱码一区二区三区av| 国产高清在线观看1区2区| 国产精品一区二区三区蜜臀av| 91精品一区二区三区站长推荐| 2018在线福利视频| 日本五十路熟新垣里子| 成人高清在线观看视频| 青青青青青青草国产| 国产女孩喷水在线观看| 不卡一区一区三区在线| 国产精品视频资源在线播放 | 韩国三级aaaaa高清视频| 亚洲精品亚洲人成在线导航| 久久精品国产亚洲精品166m| 亚洲精品成人网久久久久久小说| 男人和女人激情视频| 亚洲av自拍偷拍综合| 在线观看911精品国产| 欧美日韩激情啪啪啪| 亚洲午夜高清在线观看| 美女骚逼日出水来了| 日本少妇高清视频xxxxx| 国产亚洲欧美另类在线观看| 成人综合亚洲欧美一区| 特级无码毛片免费视频播放| 欧美综合婷婷欧美综合| 中文字幕免费福利视频6| 在线观看av观看av| av成人在线观看一区| 少妇露脸深喉口爆吞精| 都市家庭人妻激情自拍视频| 韩国AV无码不卡在线播放| 欧美国品一二三产区区别| 毛片av在线免费看| 午夜在线一区二区免费| 性色蜜臀av一区二区三区| 国产精彩对白一区二区三区| 亚洲美女美妇久久字幕组| 农村胖女人操逼视频| 超碰97人人做人人爱| av成人在线观看一区| 大香蕉伊人国产在线| 人妻熟女在线一区二区| 免费十精品十国产网站| 日韩美av高清在线| 中文字日产幕乱六区蜜桃| 亚洲日本一区二区三区 | 日韩中文字幕在线播放第二页| 亚洲国产在人线放午夜| 欧美综合婷婷欧美综合| 久久精品亚洲成在人线a| 国产va精品免费观看| 黄色片黄色片wyaa| 久久久久久久久久久免费女人| 9色精品视频在线观看| 91chinese在线视频| 伊人成人综合开心网| 日本少妇人妻xxxxx18| 九色porny九色9l自拍视频| 免费看美女脱光衣服的视频| 亚洲天天干 夜夜操| 日韩黄色片在线观看网站| 国产又粗又猛又爽又黄的视频在线 | 伊拉克及约旦宣布关闭领空| 天天日天天操天天摸天天舔 | 日韩精品中文字幕在线| 午夜美女少妇福利视频| 在线免费观看日本伦理| 国产精品自拍偷拍a| 一个色综合男人天堂| 一二三中文乱码亚洲乱码one| 男生舔女生逼逼视频| 麻豆性色视频在线观看| 亚洲熟女久久久36d| 国产精彩对白一区二区三区| 久久三久久三久久三久久| 看一级特黄a大片日本片黑人| 大尺度激情四射网站| 99精品国产免费久久| 欧美爆乳肉感大码在线观看| 888欧美视频在线| 91麻豆精品秘密入口在线观看| 婷婷色中文亚洲网68| 白白操白白色在线免费视频| 日本美女性生活一级片| 日本免费一级黄色录像| 亚洲自拍偷拍精品网| 成人av久久精品一区二区| 国产精品黄片免费在线观看| 性色av一区二区三区久久久 | 美女av色播在线播放| 男人和女人激情视频| 自拍偷拍亚洲另类色图| aⅴ五十路av熟女中出| 亚洲少妇人妻无码精品| 国产极品精品免费视频| 日韩写真福利视频在线观看| rct470中文字幕在线| 久草视频在线免播放| 日韩av大胆在线观看| 青青青青青手机视频| 国产精品久久久久久久女人18| 亚洲一区二区三区精品乱码| 国产av国片精品一区二区| 人人妻人人澡欧美91精品| 国产亚洲欧美另类在线观看| 丰满少妇翘臀后进式| 性欧美激情久久久久久久| 精品视频中文字幕在线播放| 日本福利午夜电影在线观看| 黑人巨大精品欧美视频| 桃色视频在线观看一区二区 | 国产超码片内射在线| 欧美精品欧美极品欧美视频 | 欧美一区二区三区乱码在线播放 | av中文字幕在线观看第三页| 天天日夜夜操天天摸| 99精品久久久久久久91蜜桃| 日本韩国亚洲综合日韩欧美国产| 97国产精品97久久| 中文乱理伦片在线观看| 午夜成午夜成年片在线观看| 一区二区视频视频视频| 3337p日本欧洲大胆色噜噜| 亚洲国产40页第21页| 99热久久极品热亚洲| 视频 国产 精品 熟女 | 狠狠躁夜夜躁人人爽天天久天啪| 这里有精品成人国产99| 蜜臀成人av在线播放| 日韩欧美高清免费在线| 中文字幕1卡1区2区3区| 2022国产精品视频| 国产精品精品精品999| 日本真人性生活视频免费看| 中文字幕,亚洲人妻| 伊人日日日草夜夜草| 欧美va不卡视频在线观看| 亚洲av第国产精品| 98视频精品在线观看| 天天日天天干天天插舔舔| 日本美女成人在线视频| 日韩av免费观看一区| 一区二区视频视频视频| 天天想要天天操天天干| 国产伦精品一区二区三区竹菊| 只有精品亚洲视频在线观看| 青青草在观免费国产精品| 日本免费视频午夜福利视频| 亚洲熟妇久久无码精品| 色爱av一区二区三区| 欧美久久久久久三级网| 人妻久久久精品69系列| 93视频一区二区三区| 韩国亚洲欧美超一级在线播放视频| av男人天堂狠狠干| 一区二区三区 自拍偷拍| 91九色国产熟女一区二区| www久久久久久久久久久| 激情国产小视频在线| 国产亚洲四十路五十路| 综合激情网激情五月五月婷婷| 喷水视频在线观看这里只有精品| av老司机精品在线观看| 国产精品久久久黄网站| 亚洲av一妻不如妾| 57pao国产一区二区| 亚洲av无码成人精品区辽| 蜜臀成人av在线播放| 91成人精品亚洲国产| 国产又粗又猛又爽又黄的视频美国| 97青青青手机在线视频 | 97精品视频在线观看| 国产麻豆91在线视频| 青娱乐在线免费视频盛宴| 国产综合精品久久久久蜜臀| 97人人妻人人澡人人爽人人精品| 2020av天堂网在线观看| 青青青国产片免费观看视频| 日本精品美女在线观看| 久久这里只有精品热视频| 人妻少妇性色欲欧美日韩| 国内精品在线播放第一页| 99亚洲美女一区二区三区| 久久美欧人妻少妇一区二区三区| 18禁美女羞羞免费网站| 丝袜长腿第一页在线| 久久久麻豆精亚洲av麻花| 亚洲视频乱码在线观看| 一级黄色片夫妻性生活| 亚洲一区av中文字幕在线观看| 三级av中文字幕在线观看| 青青青青爽手机在线| 日韩精品一区二区三区在线播放| 中文字幕在线观看极品视频| 欧美男人大鸡吧插女人视频| 亚洲av极品精品在线观看| 精品久久久久久久久久久久人妻| 北条麻妃av在线免费观看| 久久精品亚洲成在人线a| 中文字幕在线乱码一区二区| 中文字幕第三十八页久久| 美女av色播在线播放| 人妻另类专区欧美制服| 免费黄页网站4188| 大肉大捧一进一出好爽在线视频| 国产精品国产精品一区二区| 偷拍美女一区二区三区| 天天躁日日躁狠狠躁躁欧美av | 亚洲欧美激情中文字幕| av在线免费资源站| 欧美日韩激情啪啪啪| 国产九色91在线观看精品| 天天干天天啪天天舔| 伊人综合aⅴ在线网| 自拍偷拍一区二区三区图片| 日本人妻欲求不满中文字幕| 一区二区三区麻豆福利视频| 亚洲国产欧美一区二区三区久久| 18禁网站一区二区三区四区| 日本少妇人妻xxxxxhd| av在线观看网址av| 免费在线看的黄网站| 青青尤物在线观看视频网站| h国产小视频福利在线观看| 91啪国自产中文字幕在线| 最新黄色av网站在线观看| 91麻豆精品传媒国产黄色片| 中国无遮挡白丝袜二区精品| 国产一区自拍黄视频免费观看| 扒开让我视频在线观看| 亚洲另类图片蜜臀av| 中国黄片视频一区91| 88成人免费av网站| 欧美天堂av无线av欧美| 免费在线看的黄网站| 日本三极片中文字幕| 日韩精品中文字幕福利| 中文字幕第一页国产在线| 午夜美女福利小视频| 大白屁股精品视频国产| 啪啪啪啪啪啪啪啪啪啪黄色| 久久一区二区三区人妻欧美| 青草久久视频在线观看| 男人靠女人的逼视频| 偷拍自拍福利视频在线观看| 久久热久久视频在线观看| 天堂av中文在线最新版| 哥哥姐姐综合激情小说| 成人动漫大肉棒插进去视频| 日本三极片视频网站观看| 欧美成人黄片一区二区三区 | 亚洲精品色在线观看视频| 色秀欧美视频第一页| 丝袜亚洲另类欧美变态| 欧美日韩情色在线观看| sspd152中文字幕在线| av天堂中文免费在线| 四川五十路熟女av| 欧洲黄页网免费观看| 国产乱子伦一二三区| 超污视频在线观看污污污| 天天操天天射天天操天天天| 色婷婷精品大在线观看| 77久久久久国产精产品| 少妇人妻二三区视频| 欧美一级视频一区二区| 97色视频在线观看| 午夜精品在线视频一区| 免费高清自慰一区二区三区网站 | 2021年国产精品自拍| 国产福利小视频二区| yy6080国产在线视频| 欧美成人小视频在线免费看| 2021年国产精品自拍| 人妻少妇一区二区三区蜜桃| 欲满人妻中文字幕在线| 日本男女操逼视频免费看| 91高清成人在线视频| 91中文字幕最新合集| 久久久久久97三级| www日韩毛片av| 国产自拍在线观看成人| 日韩人妻xxxxx| 又色又爽又黄又刺激av网站| 无忧传媒在线观看视频| 亚洲超碰97人人做人人爱| 青青青青草手机在线视频免费看| 在线观看免费岛国av| 久碰精品少妇中文字幕av| 在线免费观看av日韩| 夜夜嗨av一区二区三区中文字幕| 在线免费91激情四射 | 操的小逼流水的文章| 一个色综合男人天堂| 国产黄色大片在线免费播放| 97精品成人一区二区三区| 色综合久久久久久久久中文| 亚洲成人熟妇一区二区三区| 亚洲区欧美区另类最新章节| 性欧美日本大妈母与子| 精品国产污污免费网站入口自| 日韩欧美高清免费在线| 亚洲 中文 自拍 另类 欧美| 亚洲 人妻 激情 中文| 久久免费看少妇高潮完整版| 在线视频精品你懂的| 班长撕开乳罩揉我胸好爽| 国产妇女自拍区在线观看| 亚洲精品精品国产综合| 亚洲欧美国产综合777| 看一级特黄a大片日本片黑人| 2018最新中文字幕在线观看 | 2o22av在线视频| 亚洲av无码成人精品区辽| 无套猛戳丰满少妇人妻| 中文字母永久播放1区2区3区| 天天干天天插天天谢| 美女福利视频网址导航| 亚洲中文字字幕乱码| 一区二区三区欧美日韩高清播放| 天天日天天干天天爱| 青青青aaaa免费| 亚洲视频在线观看高清| 精品久久久久久久久久久a√国产| 3337p日本欧洲大胆色噜噜| 久久丁香婷婷六月天| 成年人黄色片免费网站| 日韩a级黄色小视频| 成人av天堂丝袜在线观看| 中文字幕在线永久免费播放| 成年美女黄网站18禁久久| 午夜免费观看精品视频| 亚洲精品午夜aaa久久| 国产黄色高清资源在线免费观看| 欧美第一页在线免费观看视频| 91精品国产黑色丝袜| 一个色综合男人天堂| 伊拉克及约旦宣布关闭领空| 亚洲一区二区三区在线高清| 中文字幕免费在线免费| 婷婷色中文亚洲网68| 免费观看理论片完整版| 人妻自拍视频中国大陆| 绯色av蜜臀vs少妇| 欧美日韩国产一区二区三区三州 | 国产露脸对白在线观看| 啪啪啪18禁一区二区三区| 亚洲成人国产综合一区| 欧美视频不卡一区四区| 漂亮 人妻被中出中文| 亚洲精品 日韩电影| 日本高清成人一区二区三区| 天天干天天搞天天摸| 久青青草视频手机在线免费观看| 深夜男人福利在线观看| 国产男女视频在线播放| 精品国产乱码一区二区三区乱| 超碰97人人澡人人| 日本一区二区三区免费小视频| 午夜在线一区二区免费| 久久久精品欧洲亚洲av| 亚洲国产精品美女在线观看| 在线免费视频 自拍| 2012中文字幕在线高清| 青青擦在线视频国产在线| 国产av福利网址大全| 99热色原网这里只有精品| rct470中文字幕在线| 久久国产精品精品美女| 午夜在线精品偷拍一区二| 午夜频道成人在线91| 色呦呦视频在线观看视频| 亚洲欧美国产麻豆综合| 伊人网中文字幕在线视频| 北条麻妃高跟丝袜啪啪| 黄色大片免费观看网站| 熟女人妻一区二区精品视频| 在线不卡成人黄色精品| 动漫美女的小穴视频| 青青伊人一精品视频| 国产精品3p和黑人大战| 天天日天天干天天干天天日| 午夜福利资源综合激情午夜福利资| 久久久久久久一区二区三 | 免费岛国喷水视频在线观看| 日本少妇精品免费视频| 久久久精品精品视频视频| 自拍偷拍日韩欧美亚洲| 又大又湿又爽又紧A视频| 日韩精品激情在线观看| 99人妻视频免费在线| 沈阳熟妇28厘米大战黑人| 男人和女人激情视频| 免费在线观看污污视频网站| 在线免费观看99视频| 亚洲激情,偷拍视频| 999九九久久久精品| 午夜美女少妇福利视频| 啪啪啪啪啪啪啪啪av| aaa久久久久久久久| 成人国产影院在线观看| 粉嫩av蜜乳av蜜臀| 97精品视频在线观看| av中文字幕在线观看第三页| 欧美精品亚洲精品日韩在线| 精品成人午夜免费看| 狠狠操操操操操操操操操| 男大肉棒猛烈插女免费视频| 人妻爱爱 中文字幕| 人妻素人精油按摩中出| 日日摸夜夜添夜夜添毛片性色av| 欧美精品免费aaaaaa| 亚洲国产欧美一区二区三区久久| 在线观看的a站 最新| 日韩成人性色生活片| 日韩a级精品一区二区| 天天干狠狠干天天操| 国产亚洲欧美45p| 免费啪啪啪在线观看视频| 区一区二区三国产中文字幕| 2012中文字幕在线高清| 国产美女一区在线观看| 少妇与子乱在线观看| 久草视频在线一区二区三区资源站| 国产大学生援交正在播放| 亚洲日本一区二区三区| 91亚洲国产成人精品性色| 天美传媒mv视频在线观看| 亚洲女人的天堂av| 绝色少妇高潮3在线观看| 91在线视频在线精品3| 国产亚洲欧美视频网站| asmr福利视频在线观看| 中文字幕欧美日韩射射一| 狠狠嗨日韩综合久久| 亚洲精品午夜久久久久| 不卡精品视频在线观看| 国产高清在线在线视频| 国产精品伦理片一区二区| 夏目彩春在线中文字幕| 亚洲高清国产拍青青草原| 久久亚洲天堂中文对白| 青青草国内在线视频精选| 大鸡吧插逼逼视频免费看| 加勒比视频在线免费观看| 一本久久精品一区二区| 亚洲成人三级在线播放| 精品乱子伦一区二区三区免费播| 久久免费看少妇高潮完整版| 人人妻人人澡人人爽人人dvl| 又粗又硬又猛又爽又黄的| 午夜影院在线观看视频羞羞羞| 亚洲中文字幕乱码区| 丝袜肉丝一区二区三区四区在线| japanese五十路熟女熟妇| 亚洲国产美女一区二区三区软件| 免费看高清av的网站| 亚洲自拍偷拍精品网| 日本熟女精品一区二区三区| 欧美3p在线观看一区二区三区| h国产小视频福利在线观看| 老司机深夜免费福利视频在线观看| 欧美一级视频一区二区| 日韩av中文在线免费观看| 成熟丰满熟妇高潮xx×xx| 日韩不卡中文在线视频网站| 久久久久久久精品成人热| 老鸭窝在线观看一区| 免费在线观看视频啪啪| 91p0rny九色露脸熟女| 自拍偷拍一区二区三区图片| 青青草亚洲国产精品视频| 欧美viboss性丰满| 欧美激情精品在线观看| 清纯美女在线观看国产| 黄色黄色黄片78在线| av中文字幕电影在线看| 在线视频免费观看网| 欧美性感尤物人妻在线免费看| 亚洲 自拍 色综合图| 国产视频一区二区午夜| 91福利视频免费在线观看| 夜色撩人久久7777| 97成人免费在线观看网站| 亚洲av无码成人精品区辽| 搡老熟女一区二区在线观看| 淫秽激情视频免费观看| 男生舔女生逼逼的视频| 三级黄色亚洲成人av| 日韩午夜福利精品试看| 无码精品一区二区三区人| 欧美一区二区三区久久久aaa| 久久热久久视频在线观看| 亚洲男人让女人爽的视频| 色秀欧美视频第一页| 欲满人妻中文字幕在线| 新97超碰在线观看| 五月天色婷婷在线观看视频免费| 内射久久久久综合网| 日本a级视频老女人| 欧美麻豆av在线播放| 国产精品福利小视频a| 超碰97免费人妻麻豆 | 国内资源最丰富的网站| 青青青青青青青在线播放视频| 丰满的子国产在线观看| 亚洲va天堂va国产va久| 青青色国产视频在线| 1区2区3区不卡视频| 欧美va不卡视频在线观看| 亚洲1069综合男同| 无忧传媒在线观看视频| 亚洲成人av一区在线| 亚洲午夜精品小视频| 阴茎插到阴道里面的视频| 欧美日本aⅴ免费视频| 欧美激情精品在线观看| 亚洲中文字幕乱码区| 亚洲av可乐操首页| 东京热男人的av天堂| 天天躁日日躁狠狠躁躁欧美av| 少妇与子乱在线观看| 国产精品3p和黑人大战| 19一区二区三区在线播放| 亚洲成人三级在线播放| av网址国产在线观看| 在线观看的黄色免费网站| 欧美成一区二区三区四区| 5528327男人天堂| 久久久久久久一区二区三| 欧美日韩情色在线观看| 日韩中文字幕在线播放第二页| 国产精品久久久久久久精品视频| 97成人免费在线观看网站| 青青青爽视频在线播放| 欧美日韩高清午夜蜜桃大香蕉| av视屏免费在线播放| 毛片一级完整版免费| 2022中文字幕在线| 亚洲av日韩精品久久久| 动色av一区二区三区| 日本熟女50视频免费| 亚洲国产成人无码麻豆艾秋| 国产大鸡巴大鸡巴操小骚逼小骚逼| 91国内精品自线在拍白富美| 亚洲一区二区三区精品视频在线 | 亚洲1区2区3区精华液| 欧美3p在线观看一区二区三区| 自拍偷拍亚洲精品第2页| 欧美中国日韩久久精品| 少妇高潮无套内谢麻豆| 91老熟女连续高潮对白| 青青草精品在线视频观看| 天天色天天操天天舔| 在线播放一区二区三区Av无码| 国产在线91观看免费观看| 国产精品日韩欧美一区二区| 91国内视频在线观看| 天天射,天天操,天天说| 黑人巨大的吊bdsm| 在线观看国产免费麻豆| 97资源人妻免费在线视频| 成人av久久精品一区二区| 日韩成人综艺在线播放| 国产片免费观看在线观看| 日本三极片中文字幕| 久久精品美女免费视频| 老鸭窝日韩精品视频观看| 精品首页在线观看视频| 骚货自慰被发现爆操| 一级黄片久久久久久久久| 九九视频在线精品播放| 欧美一区二区三区高清不卡tv| 日韩三级电影华丽的外出| 端庄人妻堕落挣扎沉沦| 黄色三级网站免费下载| 国产亚洲成人免费在线观看| 香港三日本三韩国三欧美三级| 国产一区av澳门在线观看| 扒开腿挺进肉嫩小18禁视频| 国产精品免费不卡av| 日韩三级电影华丽的外出| 美女日逼视频免费观看| 丰满的子国产在线观看| 亚洲一区av中文字幕在线观看| 天天干狠狠干天天操| 任你操任你干精品在线视频| 亚洲另类伦春色综合小| 久久尻中国美女视频| 十八禁在线观看地址免费 | 狠狠的往里顶撞h百合| 少妇人妻100系列| 国产亚洲国产av网站在线| 天天日天天操天天摸天天舔| 国产综合高清在线观看| 日韩一区二区电国产精品| 午夜在线精品偷拍一区二| 亚洲第一伊人天堂网| 人妻少妇性色欲欧美日韩| 午夜精彩视频免费一区| 亚洲av在线观看尤物| 黄色片黄色片wyaa| 一区二区三区 自拍偷拍| 国产精品一二三不卡带免费视频 | 性感美女福利视频网站| 国产熟妇一区二区三区av| 国产97在线视频观看| 亚洲综合另类欧美久久| 亚洲国产第一页在线观看| 五色婷婷综合狠狠爱| 欧美熟妇一区二区三区仙踪林| h国产小视频福利在线观看| 日本阿v视频在线免费观看| 午夜免费体验区在线观看| 日本裸体熟妇区二区欧美| 欧美少妇性一区二区三区| 91九色porny国产在线| 2019av在线视频| 色婷婷六月亚洲综合香蕉| 日韩无码国产精品强奸乱伦| asmr福利视频在线观看| 亚洲免费国产在线日韩| 中文字幕高清免费在线人妻 | 日本午夜爽爽爽爽爽视频在线观看| 亚洲成人av一区久久| 欧美成人综合视频一区二区| 热99re69精品8在线播放| 精产国品久久一二三产区区别 | 天天操夜夜操天天操天天操| 欧美地区一二三专区| 天天干夜夜操啊啊啊| 最新国产亚洲精品中文在线| 免费成人av中文字幕| 亚洲高清视频在线不卡| 天天插天天狠天天操| 在线视频自拍第三页| 91成人在线观看免费视频| 国产一级精品综合av| 首之国产AV医生和护士小芳| 天天色天天舔天天射天天爽| 一色桃子人妻一区二区三区| 美女福利视频导航网站| 超碰97人人澡人人| 夜色福利视频在线观看| 亚洲一区二区三区久久午夜| 阴茎插到阴道里面的视频| 少妇高潮无套内谢麻豆| 丰满熟女午夜福利视频| 久久久久久9999久久久久| 中国老熟女偷拍第一页| 日本在线一区二区不卡视频| 欧美一区二区三区啪啪同性| 四川五十路熟女av| 91中文字幕免费在线观看| 国产黄色大片在线免费播放 | 国产亚洲视频在线二区| 欧美日韩一区二区电影在线观看| 国产精品国产三级国产午| 亚洲中文字幕校园春色| 热99re69精品8在线播放| 亚洲美女自偷自拍11页| 日韩精品中文字幕在线| 黄页网视频在线免费观看| 久久久超爽一二三av| 国产精品sm调教视频| 国产品国产三级国产普通话三级| 91精品免费久久久久久| 五十路熟女av天堂| 久草视频 久草视频2| 人妻丝袜精品中文字幕| 不卡精品视频在线观看| 欧美va不卡视频在线观看| 精品久久久久久久久久久99| 欧美精品中文字幕久久二区| 五月天中文字幕内射| 日韩欧美制服诱惑一区在线| 欧美地区一二三专区| 大鸡巴后入爆操大屁股美女| 亚洲第17页国产精品| 北条麻妃高跟丝袜啪啪| 搡老熟女一区二区在线观看| 美女小视频网站在线| 东游记中文字幕版哪里可以看到| 久久久久久久精品老熟妇| 巨乳人妻日下部加奈被邻居中出 | 国产一区二区火爆视频| 天天日天天玩天天摸| 2018在线福利视频| 蜜桃臀av蜜桃臀av| 午夜dv内射一区区| 欧美精品一区二区三区xxxx| 午夜精品一区二区三区福利视频| 天天干天天爱天天色| 偷拍自拍亚洲视频在线观看| 国产va精品免费观看| 成人国产影院在线观看| 精品高潮呻吟久久av| 100%美女蜜桃视频| 老熟妇xxxhd老熟女| japanese日本熟妇另类| 日本少妇人妻xxxxxhd| 国产精品国产精品一区二区| 大肉大捧一进一出好爽在线视频 | 中国把吊插入阴蒂的视频| av网站色偷偷婷婷网男人的天堂| 国产亚洲精品欧洲在线观看| 无码日韩人妻精品久久| 国产三级影院在线观看| 青青青国产片免费观看视频| 好吊视频—区二区三区| 日韩精品中文字幕福利| 天天日天天干天天爱| 久久久精品999精品日本| 中文字幕中文字幕 亚洲国产| 2018在线福利视频| 亚洲国产成人av在线一区| 91九色porny国产蝌蚪视频| 国产日韩精品一二三区久久久| 夜夜骑夜夜操夜夜奸| av中文在线天堂精品| 一个人免费在线观看ww视频| 高清成人av一区三区| 亚洲av日韩av网站| www,久久久,com| 亚洲卡1卡2卡三卡四老狼| 欧美男人大鸡吧插女人视频| 国产精品人久久久久久| 2022中文字幕在线| 国产精品一区二区av国| 少妇与子乱在线观看| 五月婷婷在线观看视频免费| 把腿张开让我插进去视频| 国产一区二区在线欧美| 欧美亚洲少妇福利视频| 亚洲av日韩精品久久久久久hd| 夜鲁夜鲁狠鲁天天在线| 九色视频在线观看免费| 一区二区在线视频中文字幕| 91国产在线免费播放| 不卡一区一区三区在线| 青青青国产免费视频| 欧美视频不卡一区四区| 日韩伦理短片在线观看| 亚洲av日韩av第一区二区三区| 日本韩国亚洲综合日韩欧美国产| 在线网站你懂得老司机| 国产女人被做到高潮免费视频| 国产福利在线视频一区| 青青草原色片网站在线观看| 中文字幕熟女人妻久久久| 国产刺激激情美女网站| 午夜精品久久久久久99热| 97人妻人人澡爽人人精品| 日韩a级精品一区二区| 中文字幕av第1页中文字幕| 超碰97人人做人人爱| 中文字幕中文字幕人妻| 亚洲欧美福利在线观看| 超级av免费观看一区二区三区| 边摸边做超爽毛片18禁色戒| 天码人妻一区二区三区在线看| 91九色国产porny蝌蚪| 啊啊好大好爽啊啊操我啊啊视频| 亚洲成人情色电影在线观看| 中国无遮挡白丝袜二区精品| 一区二区视频在线观看免费观看| 99久久超碰人妻国产| 天天干夜夜操天天舔| 五十路熟女人妻一区二| 精品一区二区三区三区88| av天堂资源最新版在线看| 在线观看日韩激情视频| 亚洲va国产va欧美va在线| 香港一级特黄大片在线播放| 中文字幕熟女人妻久久久| 日本真人性生活视频免费看| 韩国女主播精品视频网站| 91小伙伴中女熟女高潮| 91国内精品自线在拍白富美| 欧洲亚洲欧美日韩综合| 亚洲精品色在线观看视频| 欧美性感尤物人妻在线免费看| 少妇ww搡性bbb91| 精产国品久久一二三产区区别| 国产精品视频资源在线播放 | 中英文字幕av一区| 午夜在线精品偷拍一区二| 成人性爱在线看四区| 91精品免费久久久久久| 日本女人一级免费片| 人妻无码色噜噜狠狠狠狠色| 中文字幕日韩精品日本| 91极品大一女神正在播放| 97人妻色免费视频| 国产露脸对白在线观看| 久久久久五月天丁香社区| 国产女人被做到高潮免费视频| 天天摸天天干天天操科普| 亚洲高清免费在线观看视频| 青青社区2国产视频| 一区二区麻豆传媒黄片| 热99re69精品8在线播放| 欧美一区二区三区激情啪啪啪 | 国产白袜脚足J棉袜在线观看| 91色网站免费在线观看 | 天天插天天狠天天操| 天天艹天天干天天操| 天天躁日日躁狠狠躁躁欧美av| 欧美精品资源在线观看| 国产伊人免费在线播放| 国产刺激激情美女网站| 美女福利视频网址导航| 蜜桃色婷婷久久久福利在线| 91老熟女连续高潮对白| 亚洲精品 日韩电影| 欧美另类z0z变态| 黄色中文字幕在线播放| 91色秘乱一区二区三区| 成年人该看的视频黄免费| 一二三中文乱码亚洲乱码one| 国产熟妇乱妇熟色T区| 精品国产在线手机在线| 都市激情校园春色狠狠| 婷婷久久久综合中文字幕| 777奇米久久精品一区| 亚洲一区二区三区偷拍女厕91| 高潮喷水在线视频观看| 日曰摸日日碰夜夜爽歪歪| 91老师蜜桃臀大屁股| 亚洲第一伊人天堂网| 天天射夜夜操狠狠干| 成人免费公开视频无毒| 天天夜天天日天天日| 天天干天天操天天扣| 日本真人性生活视频免费看| 色伦色伦777国产精品| 国产一线二线三线的区别在哪| 一区二区在线视频中文字幕| 亚洲乱码中文字幕在线| 国产精品久久综合久久| 国产精品久久久久网| 岛国毛片视频免费在线观看| 9国产精品久久久久老师| 午夜精品久久久久久99热| 狠狠操狠狠操免费视频| 爱有来生高清在线中文字幕| 中文字幕 码 在线视频| 日本一区精品视频在线观看| 在线观看国产网站资源| 午夜在线一区二区免费| 老熟妇xxxhd老熟女| 亚洲一区二区三区精品视频在线 | 97超碰人人搞人人| 一区二区三区四区五区性感视频| 国产夫妻视频在线观看免费| 一区二区三区蜜臀在线| 成年美女黄网站18禁久久| 国产亚洲视频在线二区| 日韩二区视频一线天婷婷五| 80电影天堂网官网| 韩国一级特黄大片做受| 天天日天天做天天日天天做| 久久久久只精品国产三级| 一区二区在线观看少妇| 亚洲1区2区3区精华液| 操日韩美女视频在线免费看| 精品国产亚洲av一淫| 一区二区三区久久久91| 一色桃子人妻一区二区三区| 国产午夜无码福利在线看| 国产在线观看黄色视频| 天天插天天色天天日| 91精品国产综合久久久蜜| 一区国内二区日韩三区欧美| 五十路老熟女码av| 岛国毛片视频免费在线观看| 久久久久久97三级| 黄色av网站免费在线| 一区二区三区久久久91| 亚洲av琪琪男人的天堂| 精彩视频99免费在线| 人妻少妇精品久久久久久| 欧美交性又色又爽又黄麻豆| 欧美成人一二三在线网| 欧美精产国品一二三区| 国产亚洲国产av网站在线| 啊啊啊视频试看人妻| 欧美80老妇人性视频| 成人免费做爰高潮视频| 风流唐伯虎电视剧在线观看| 在线免费观看欧美小视频| 亚洲欧美激情国产综合久久久| 自拍 日韩 欧美激情| 国产第一美女一区二区三区四区| 大陆精品一区二区三区久久| 97人妻夜夜爽二区欧美极品| av完全免费在线观看av| 偷拍自拍国产在线视频| 亚洲av人人澡人人爽人人爱| 在线免费91激情四射 | 国产成人精品福利短视频| 伊人日日日草夜夜草| 男人天堂最新地址av| 亚洲码av无色中文| 亚洲精品ww久久久久久| 久久精品久久精品亚洲人| 综合色区亚洲熟妇shxstz| 熟女国产一区亚洲中文字幕| 天天躁日日躁狠狠躁躁欧美av| 在线观看视频一区麻豆| 老师让我插进去69AV| 3D动漫精品啪啪一区二区下载| 人妻少妇av在线观看| 十八禁在线观看地址免费| 3344免费偷拍视频| 国产精品黄大片在线播放| japanese五十路熟女熟妇| 中文字幕一区二区亚洲一区| 亚洲熟妇久久无码精品| 少妇人妻100系列| 美女小视频网站在线| 一区二区三区四区视频在线播放| 午夜免费体验区在线观看| 亚洲av一妻不如妾| 人妻少妇中文有码精品| 亚洲老熟妇日本老妇| 人人爱人人妻人人澡39| 国产在线观看免费人成短视频| 亚洲av日韩精品久久久| 小穴多水久久精品免费看| 亚洲天堂成人在线观看视频网站| 99久久99一区二区三区| 亚洲国产欧美国产综合在线| 在线观看操大逼视频| 亚洲一区二区三区久久受| 国产成人午夜精品福利| 成人H精品动漫在线无码播放| 青娱乐最新视频在线| 亚洲一区av中文字幕在线观看| 亚洲午夜电影之麻豆| 国产日本欧美亚洲精品视| 国产精品手机在线看片| 久久99久久99精品影院| 啊啊啊想要被插进去视频| 国产精品国产三级国产精东| 99精品国产aⅴ在线观看| 亚洲国产最大av综合| 国产精品探花熟女在线观看| 91‖亚洲‖国产熟女| 强行扒开双腿猛烈进入免费版| 亚洲福利精品视频在线免费观看| 国产熟妇人妻ⅹxxxx麻豆| 国产精品系列在线观看一区二区| 女人精品内射国产99| 天天操天天干天天插| 丝袜国产专区在线观看| 午夜精品久久久久麻豆影视| 国产精选一区在线播放| 99亚洲美女一区二区三区| 欧美黑人巨大性xxxxx猛交| 熟妇一区二区三区高清版| 天堂资源网av中文字幕| 国产极品精品免费视频| 瑟瑟视频在线观看免费视频| 五十路熟女人妻一区二区9933| 国产av一区2区3区| 免费看高清av的网站| 亚洲熟妇x久久av久久| 一区二区三区四区五区性感视频| 视频 一区二区在线观看| 成年人啪啪视频在线观看| 在线国产精品一区二区三区| 亚洲美女美妇久久字幕组| 91久久人澡人人添人人爽乱| 天天操天天弄天天射| 精品人人人妻人人玩日产欧| 国产视频网站国产视频| 国产性感美女福利视频| 中文字幕综合一区二区| 制丝袜业一区二区三区| 美日韩在线视频免费看| 日韩少妇人妻精品无码专区| 少妇人妻久久久久视频黄片| 97色视频在线观看| 日韩国产乱码中文字幕| 日本性感美女三级视频| 欧美香蕉人妻精品一区二区| 亚洲国产精品黑丝美女| 岛国青草视频在线观看| 强行扒开双腿猛烈进入免费版| 午夜的视频在线观看| 日韩人妻丝袜中文字幕| 曰本无码人妻丰满熟妇啪啪| 欧美特色aaa大片| 97超碰人人搞人人| 亚洲老熟妇日本老妇| 黄页网视频在线免费观看| 不卡一区一区三区在线| 国产之丝袜脚在线一区二区三区| lutube在线成人免费看| 男生舔女生逼逼的视频| 国产白袜脚足J棉袜在线观看| 40道精品招牌菜特色| 欧美怡红院视频在线观看| 中文字幕日本人妻中出| 日韩欧美高清免费在线| 天天操天天干天天插| 日本a级视频老女人| 春色激情网欧美成人| 99热碰碰热精品a中文| yellow在线播放av啊啊啊| 国产卡一卡二卡三乱码手机| 天天想要天天操天天干| 亚洲视频乱码在线观看| 久久久人妻一区二区| 无码中文字幕波多野不卡| 日本熟女精品一区二区三区| 成人av电影免费版| 熟女人妻一区二区精品视频| 亚洲av一妻不如妾| 最新91九色国产在线观看| 成人亚洲国产综合精品| 天天射,天天操,天天说| 精品亚洲在线免费观看| 亚洲午夜高清在线观看| 天天操天天爽天天干| 免费av岛国天堂网站| 青娱乐极品视频青青草| 国产精彩对白一区二区三区| 97a片免费在线观看| 五十路熟女人妻一区二区9933| 国产精品自拍视频大全| 日韩人妻在线视频免费| 激情图片日韩欧美人妻| 国产三级片久久久久久久| 天天日天天干天天舔天天射| 亚洲一区二区三区精品视频在线| 极品丝袜一区二区三区| 黄色男人的天堂视频| yellow在线播放av啊啊啊| 毛片av在线免费看| 天堂v男人视频在线观看| 亚洲一级av大片免费观看| 伊人成人在线综合网| 中文字幕亚洲久久久| 免费看国产av网站| yy6080国产在线视频| 国产九色91在线观看精品| 97年大学生大白天操逼 | 人妻丰满熟妇综合网| 红杏久久av人妻一区| aⅴ五十路av熟女中出| 红桃av成人在线观看| 国产成人自拍视频在线免费观看| 欧美偷拍自拍色图片| 亚洲精品国产综合久久久久久久久 | 97国产在线av精品| 动漫av网站18禁| 午夜在线观看岛国av,com| 日韩欧美亚洲熟女人妻| 亚洲女人的天堂av| 绯色av蜜臀vs少妇| 又色又爽又黄的美女裸体| 国产亚洲成人免费在线观看| 性欧美激情久久久久久久| 国产V亚洲V天堂无码欠欠| 人妻少妇一区二区三区蜜桃| 亚洲综合一区二区精品久久| 夏目彩春在线中文字幕| 亚洲在线一区二区欧美| 欧美亚洲中文字幕一区二区三区| 欧美熟妇一区二区三区仙踪林| 日本av在线一区二区三区| 天堂av狠狠操蜜桃| 日韩中文字幕福利av| 日本韩国在线观看一区二区| 久久久久国产成人精品亚洲午夜| 日本韩国免费一区二区三区视频| 97精品人妻一区二区三区精品| 38av一区二区三区| 亚洲男人在线天堂网| 免费福利av在线一区二区三区| 视频在线免费观看你懂得| 亚洲欧美人精品高清| 日韩一个色综合导航| 国产伊人免费在线播放| 日韩黄色片在线观看网站| 老有所依在线观看完整版| 91精品激情五月婷婷在线| 日韩a级精品一区二区| 超碰在线中文字幕一区二区| 日本黄色特一级视频| 农村胖女人操逼视频| 美女av色播在线播放| av在线免费观看亚洲天堂| 国产之丝袜脚在线一区二区三区| 亚洲成人情色电影在线观看| 亚洲成人免费看电影| 亚洲国产精品中文字幕网站| 中文字幕国产专区欧美激情| 中英文字幕av一区| huangse网站在线观看| 91九色porny国产蝌蚪视频| 国产欧美精品一区二区高清| 日本五十路熟新垣里子| 亚洲国产最大av综合| 亚洲综合一区二区精品久久| 欧美中文字幕一区最新网址| 班长撕开乳罩揉我胸好爽| 欧美在线精品一区二区三区视频| 3D动漫精品啪啪一区二区下载| 在线免费视频 自拍| 狠狠的往里顶撞h百合| a v欧美一区=区三区| 亚洲国产免费av一区二区三区| 国产麻豆乱子伦午夜视频观看| 亚洲图片偷拍自拍区| 天天日天天做天天日天天做| 久久机热/这里只有| 亚洲av日韩av第一区二区三区| 日韩欧美高清免费在线| 亚洲欧美国产综合777| 日本高清成人一区二区三区| 在线免费视频 自拍| 国产视频一区在线观看| 老司机深夜免费福利视频在线观看| 亚洲自拍偷拍精品网| 懂色av之国产精品| 亚洲天堂精品久久久| 国产久久久精品毛片| 国产成人午夜精品福利| 亚洲av琪琪男人的天堂| 久草视频在线免播放| 国产黄色a级三级三级三级| 大香蕉福利在线观看| 国产精品视频一区在线播放| 最新中文字幕乱码在线| 大学生A级毛片免费视频| 香蕉91一区二区三区| 中文字幕一区二区亚洲一区| av天堂中文免费在线| 亚洲欧美人精品高清| 一区二区三区欧美日韩高清播放| nagger可以指黑人吗| 国产欧美精品免费观看视频| wwwxxx一级黄色片| 2021天天色天天干| 亚洲午夜电影之麻豆| 中文字幕在线观看国产片| 99精品视频在线观看免费播放| 色秀欧美视频第一页| 日本熟女50视频免费| 在线免费观看靠比视频的网站| 亚洲综合在线观看免费| 精品suv一区二区69| 蜜桃精品久久久一区二区| 黄色三级网站免费下载| 一区二区三区美女毛片| rct470中文字幕在线| 亚洲超碰97人人做人人爱| 黑人大几巴狂插日本少妇| 日韩欧美中文国产在线| 久久精品久久精品亚洲人| 成人午夜电影在线观看 久久| 在线观看免费视频色97| 亚洲欧美清纯唯美另类| 日韩av有码一区二区三区4| 任你操视频免费在线观看| 在线观看911精品国产| 亚洲av自拍偷拍综合| 亚洲一区二区三区av网站| 1000部国产精品成人观看视频| 日韩欧美国产一区ab| 欧美xxx成人在线| 一级a看免费观看网站| 青青青青草手机在线视频免费看| 免费看美女脱光衣服的视频| av中文字幕在线观看第三页| 日韩伦理短片在线观看| 40道精品招牌菜特色| 亚洲1069综合男同| av视网站在线观看| 真实国模和老外性视频| 在线免费观看国产精品黄色| 久久久极品久久蜜桃| 国产污污污污网站在线| 91chinese在线视频| 午夜场射精嗯嗯啊啊视频| 精品一区二区三区欧美| 欧美区一区二区三视频| 欧美日本aⅴ免费视频| 精品美女久久久久久| 亚洲偷自拍高清视频| 骚货自慰被发现爆操| 超碰97人人澡人人| 精品视频一区二区三区四区五区| 午夜婷婷在线观看视频| 亚洲久久午夜av一区二区| 青青青青青青青青青青草青青 | 大屁股肉感人妻中文字幕在线| 性欧美激情久久久久久久| 精品区一区二区三区四区人妻 | 午夜美女少妇福利视频| 午夜精彩视频免费一区| 欧美成人一二三在线网| 中文字幕高清在线免费播放 | 性感美女福利视频网站| 丝袜美腿视频诱惑亚洲无| 欧亚乱色一区二区三区| 激情五月婷婷综合色啪| 2022国产精品视频| 国产成人综合一区2区| 国产九色91在线观看精品| 91片黄在线观看喷潮| 日本男女操逼视频免费看 | 国产高清精品一区二区三区| 精品国产午夜视频一区二区|