精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

轉(zhuǎn)換并使用 YOLOv11 目標(biāo)檢測(cè)模型(ONNX格式)

開(kāi)發(fā)
在本文中,我們將探討如何使用任何預(yù)訓(xùn)練或自定義的YOLOv11目標(biāo)檢測(cè)模型,并將其轉(zhuǎn)換為一種廣泛使用的開(kāi)放格式——ONNX(開(kāi)放神經(jīng)網(wǎng)絡(luò)交換)。

在本文中,我們將探討如何使用任何預(yù)訓(xùn)練或自定義的YOLOv11目標(biāo)檢測(cè)模型,并將其轉(zhuǎn)換為一種廣泛使用的開(kāi)放格式——ONNX(開(kāi)放神經(jīng)網(wǎng)絡(luò)交換)。使用這種格式的優(yōu)勢(shì)在于,它可以在多種編程語(yǔ)言中部署,而不依賴于官方的Ultralytics模塊。

在這篇文章中,我將使用官方提供的YOLOv11n模型作為示例,但該方法同樣適用于任何轉(zhuǎn)換為ONNX格式的自定義YOLOv11模型。

首先,我們需要將訓(xùn)練好的.pt格式模型轉(zhuǎn)換為ONNX格式,使用以下代碼:

from ultralytics import YOLO


model_path = 'path/to/yolov11n.pt'
model = YOLO(model_path)
model.export(format='onnx', opset = 12, imgsz =[640,640])

在運(yùn)行上述代碼之前,請(qǐng)確保已經(jīng)安裝了`ultralytics`模塊。一旦生成了ONNX文件,我們可以定義模型能夠檢測(cè)的所有類別。在我的例子中,這是基于COCO數(shù)據(jù)集預(yù)訓(xùn)練的模型,能夠識(shí)別80個(gè)類別。

with open('coco-classes.txt') as file:
    content = file.read()
    classes = content.split('\n')

del classes[-1]

print(classes) # Let's print classes list

執(zhí)行上述代碼片段后,輸出如下:

['person', 'bicycle', 'car', 'motorbike', 'aeroplane', 'bus', 'train', 'truck', 'boat', 'traffic light', 'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'sofa', 'pottedplant', 'bed', 'diningtable', 'toilet', 'tvmonitor', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush']

為了進(jìn)行推理,我們可以使用OpenCV讀取圖像:

# 讀取圖像
image = cv2.imread('bicycle.jpg')

# 轉(zhuǎn)成RGB格式進(jìn)行輸入
img = cv2.cvtColor(image,cv2.COLOR_BGR2RGB)
img_height,img_width = img.shape[:2]

由于OpenCV以BGR格式讀取圖像,而YOLO期望的是RGB格式,因此我們將圖像轉(zhuǎn)換為RGB格式,并存儲(chǔ)圖像的尺寸以備后用。但這還不是全部!在YOLO發(fā)揮作用之前,還需要進(jìn)行一些額外的圖像處理。讓我們看一下圖像的形狀。

print(img.shape)
(420, 620, 3)

我們的圖像是一個(gè)3通道的RGB圖像,寬度和高度分別為620和420。相比之下,YOLOv8模型期望的圖像尺寸為(640, 640),并且通道信息位于圖像尺寸之前。

# resize image to get the desired size (640,640) for inference
img = cv2.resize(img,(640,640))

# change the order of image dimension from (640,640,3) to (3,640,640)
img = img.transpose(2,0,1)

最后,為了將圖像提供給DNN模塊,我們需要在第0個(gè)索引處添加一個(gè)額外的維度,以告訴模塊我們一次提供了多少?gòu)垐D像。此外,我們的圖像像素范圍是0到255。在推理之前,必須將它們縮放到0到1的范圍。

# add an extra dimension at index 0
img = img.reshape(1,3,640,640)

# scale to 0-1
img = img/255.0

現(xiàn)在,我們的圖像已經(jīng)準(zhǔn)備好進(jìn)行推理了。要使用ONNX模型運(yùn)行推理,我們可以使用DNN模塊中的`readNetFromONNX()`或`readNet()`方法。

# read the trained onnx model
net = cv2.dnn.readNetFromONNX('yolov8n.onnx')  # readNet() also works

# feed the model with processed image
net.setInput(img)

# run the inference
out = net.forward()

運(yùn)行推理后,我們獲得一個(gè)包含模型預(yù)測(cè)的輸出矩陣,如上代碼所示。為了理解如何提取其中的有價(jià)值信息,讓我們首先打印這個(gè)輸出矩陣的形狀。

print(out.shape)
(1, 84, 8400)

輸出矩陣的形狀為(1, 84, 8400),表示8400個(gè)檢測(cè),每個(gè)檢測(cè)有84個(gè)參數(shù)。這是因?yàn)槲覀兊腨OLOv8模型被設(shè)計(jì)為始終預(yù)測(cè)圖像中的8400個(gè)對(duì)象。需要注意的是,并非所有檢測(cè)都是準(zhǔn)確的,我們稍后需要根據(jù)置信度分?jǐn)?shù)進(jìn)行過(guò)濾。這里的84對(duì)應(yīng)于每個(gè)檢測(cè)的參數(shù)數(shù)量,包括邊界框坐標(biāo)(x1, y1, x2, y2)和80個(gè)不同類別的置信度分?jǐn)?shù)。

對(duì)于自定義模型,這個(gè)結(jié)構(gòu)可能會(huì)有所不同。置信度分?jǐn)?shù)的數(shù)量取決于模型訓(xùn)練的類別數(shù)量。例如,如果YOLOv8被訓(xùn)練為檢測(cè)1個(gè)類別,那么將只有5個(gè)參數(shù)而不是84個(gè)。對(duì)于2個(gè)類別,第一個(gè)索引處將有6個(gè)參數(shù),依此類推。我們可以簡(jiǎn)單地刪除第0個(gè)索引處的1,因?yàn)樗皇歉嬖V模型正在處理單個(gè)圖像。

results = out[0]

現(xiàn)在,我們將矩陣轉(zhuǎn)置以獲得形狀為(8400, 84)的矩陣,以便于操作。

results = results.transpose()

如上所述,每個(gè)檢測(cè)都包括每個(gè)類別的置信度分?jǐn)?shù)。為了確定對(duì)象或檢測(cè)最可能屬于哪個(gè)類別,我們只需找到具有最高置信度分?jǐn)?shù)的類別。此外,為了去除所有置信度低于給定閾值的檢測(cè),我們可以使用以下函數(shù):

def filter_Detections(results, thresh = 0.5):
    # if model is trained on 1 class only
    if len(results[0]) == 5:
        # filter out the detections with confidence > thresh
        considerable_detections = [detection for detection in results if detection[4] > thresh]
        considerable_detections = np.array(considerable_detections)
        return considerable_detections

    # if model is trained on multiple classes
    else:
        A = []
        for detection in results:

            class_id = detection[4:].argmax()
            confidence_score = detection[4:].max()

            new_detection = np.append(detection[:4],[class_id,confidence_score])

            A.append(new_detection)

        A = np.array(A)

        # filter out the detections with confidence > thresh
        considerable_detections = [detection for detection in A if detection[-1] > thresh]
        considerable_detections = np.array(considerable_detections)

        return considerable_detections

一旦我們通過(guò)排除無(wú)用參數(shù)獲得了有用的結(jié)果,我們可以打印形狀以更好地理解結(jié)果。

print(results.shape)
(45, 6)

看起來(lái)現(xiàn)在我們有了45個(gè)檢測(cè),每個(gè)檢測(cè)有6個(gè)參數(shù)。它們是邊界框的左上角(x1, y1)和右下角(x2, y2)坐標(biāo)、類別ID和置信度值。在我們繼續(xù)之前,讓我們看一下我運(yùn)行推理的圖片。

看著這張圖片,人們很容易看出這張圖片中并沒(méi)有45個(gè)對(duì)象。我們的結(jié)果矩陣仍然包含這么多檢測(cè)的原因是因?yàn)槎鄠€(gè)檢測(cè)指向同一個(gè)對(duì)象。為了解決這個(gè)問(wèn)題,我們可以應(yīng)用一種眾所周知的技術(shù),稱為非最大抑制(NMS)。NMS充當(dāng)過(guò)濾器,選擇那些可能指向同一對(duì)象的最佳檢測(cè)。它通過(guò)考慮兩個(gè)關(guān)鍵指標(biāo)來(lái)實(shí)現(xiàn)這一點(diǎn):置信度值(模型對(duì)檢測(cè)的確定性)和交并比(IOU)。

此外,我們還需要將剩余的檢測(cè)結(jié)果重新縮放到原始比例。這是因?yàn)槲覀兊哪P洼敵龅臋z測(cè)結(jié)果是針對(duì)640x640大小的圖像,而不是我們?cè)紙D像的大小。


def NMS(boxes, conf_scores, iou_thresh = 0.55):

    #  boxes [[x1,y1, x2,y2], [x1,y1, x2,y2], ...]

    x1 = boxes[:,0]
    y1 = boxes[:,1]
    x2 = boxes[:,2]
    y2 = boxes[:,3]

    areas = (x2-x1)*(y2-y1)

    order = conf_scores.argsort()

    keep = []
    keep_confidences = []

    while len(order) > 0:
        idx = order[-1]
        A = boxes[idx]
        conf = conf_scores[idx]

        order = order[:-1]

        xx1 = np.take(x1, indices= order)
        yy1 = np.take(y1, indices= order)
        xx2 = np.take(x2, indices= order)
        yy2 = np.take(y2, indices= order)

        keep.append(A)
        keep_confidences.append(conf)

        # iou = inter/union

        xx1 = np.maximum(x1[idx], xx1)
        yy1 = np.maximum(y1[idx], yy1)
        xx2 = np.minimum(x2[idx], xx2)
        yy2 = np.minimum(y2[idx], yy2)

        w = np.maximum(xx2-xx1, 0)
        h = np.maximum(yy2-yy1, 0)

        intersection = w*h

        # union = areaA + other_areas - intesection
        other_areas = np.take(areas, indices= order)
        union = areas[idx] + other_areas - intersection

        iou = intersection/union

        boleans = iou < iou_thresh

        order = order[boleans]

        # order = [2,0,1]  boleans = [True, False, True]
        # order = [2,1]

    return keep, keep_confidences



def rescale_back(results,img_w,img_h):
    cx, cy, w, h, class_id, confidence = results[:,0], results[:,1], results[:,2], results[:,3], results[:,4], results[:,-1]
    cx = cx/640.0 * img_w
    cy = cy/640.0 * img_h
    w = w/640.0 * img_w
    h = h/640.0 * img_h
    x1 = cx - w/2
    y1 = cy - h/2
    x2 = cx + w/2
    y2 = cy + h/2

    boxes = np.column_stack((x1, y1, x2, y2, class_id))
    keep, keep_confidences = NMS(boxes,confidence)
    print(np.array(keep).shape)
    return keep, keep_confidences

其中,`rescaled_results`包含邊界框(x1, y1, x2, y2)和類別ID,而`confidences`存儲(chǔ)相應(yīng)的置信度分?jǐn)?shù)。最后,我們準(zhǔn)備在圖像上可視化這些結(jié)果。

for res, conf in zip(rescaled_results, confidences):

    x1,y1,x2,y2, cls_id = res
    cls_id = int(cls_id)
    x1, y1, x2, y2 = int(x1), int(y1), int(x2), int(y2)
    conf = "{:.2f}".format(conf)
    # draw the bounding boxes
    cv2.rectangle(image,(int(x1),int(y1)),(int(x2),int(y2)),(255,0,255),1)
    cv2.putText(image,classes[cls_id]+' '+conf,(x1,y1-17),
                cv2.FONT_HERSHEY_SCRIPT_COMPLEX,1,(255,0,255),1)

責(zé)任編輯:趙寧寧 來(lái)源: 小白玩轉(zhuǎn)Python
相關(guān)推薦

2024-10-07 11:12:55

2024-10-30 16:34:56

2024-11-27 10:27:56

2024-10-24 20:56:36

2025-01-03 16:17:08

2024-11-27 16:06:12

2025-02-18 08:00:00

C++YOLO目標(biāo)檢測(cè)

2024-07-09 08:50:23

2023-02-02 09:00:00

2024-09-09 11:45:15

ONNX部署模型

2024-07-22 13:49:38

YOLOv8目標(biāo)檢測(cè)開(kāi)發(fā)

2024-10-07 10:12:50

2024-09-09 16:35:10

YOLO模型

2024-11-18 17:31:27

2024-02-04 00:00:00

Triton格式TensorRT

2023-01-10 18:33:18

AIYOLO網(wǎng)絡(luò)

2022-06-24 11:14:00

美團(tuán)開(kāi)源

2021-12-08 09:47:21

安卓系統(tǒng)模型

2024-05-27 09:27:02

2024-08-06 11:01:03

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

av中文字幕在线免费观看| 亚洲欧美一区二区三区四区| 久久久电影免费观看完整版| 最新av在线免费观看| 九九热在线免费观看| 亚洲精品一区国产| 精品影院一区二区久久久| 日韩福利视频在线观看| 国产黄色激情视频| 国产又粗又猛又爽又黄的| 国产99精品一区| 五月综合激情网| 国产专区欧美专区| 手机av在线不卡| 香蕉成人影院| 国产拍揄自揄精品视频麻豆 | 少妇一级淫片免费看| 久久国产亚洲| 在线观看免费一区| 日韩国产伦理| 国产成人a v| 欧美日韩国产在线观看网站| 91黄色免费网站| 青青草原成人| 最新中文字幕在线观看视频| 精品日产免费二区日产免费二区| 日韩午夜在线播放| 欧妇女乱妇女乱视频| 国产又大又黄又爽| 老鸭窝91久久精品色噜噜导演| 日韩成人在线视频观看| 伊人免费视频二| 亚洲七七久久综合桃花剧情介绍| 羞羞答答成人影院www| 69久久99精品久久久久婷婷| 天天做天天爱天天高潮| 牛牛澡牛牛爽一区二区| 蜜臀av性久久久久蜜臀aⅴ| 中文字幕日韩综合av| 国产成人在线综合| 污片在线免费观看| 国产精品乱码妇女bbbb| 成人午夜高潮视频| 久久久久久蜜桃| 任你弄精品视频免费观看| 色天天综合久久久久综合片| 大j8黑人w巨大888a片| 国产日本在线视频| 国产一区二区免费看| 欧美精品久久一区二区| 黄色aaa视频| 成人国产精品久久| 亚洲va国产天堂va久久en| 大桥未久一区二区| 头脑特工队2在线播放| 日本怡春院一区二区| 欧美成aaa人片在线观看蜜臀| 黄色激情在线观看| 欧美日韩女优| 欧洲国内综合视频| 国产又黄又猛又粗又爽的视频| 在线欧美三级| 久久久激情视频| 成人激情视频网| 国产又大又黄又爽| 国产精一品亚洲二区在线视频| 97婷婷涩涩精品一区| 无码人中文字幕| 日韩电影免费网址| 久久精品影视伊人网| xxxx日本少妇| 成人精品影视| 欧美成人精品二区三区99精品| 不卡影院一区二区| 欧美6一10sex性hd| 国产精品国产三级国产三级人妇| 国产乱码精品一区二区三区卡| 中文字幕精品在线观看| 国产视频一区免费看| 久久九九热免费视频| 五月天丁香激情| 日本精品三区| 久久深夜福利免费观看| 人人人妻人人澡人人爽欧美一区| 99re8这里有精品热视频免费| 欧美视频中文字幕| 欧美国产国产综合| 日韩欧美一区二区三区久久| 亚洲高清视频一区二区| 欧美一区二区三区黄片| 久久精品国产秦先生| 性欧美在线看片a免费观看| 中日韩精品视频在线观看| 91精品一区国产高清在线gif | 欧美bbbbb性bbbbb视频| 9999精品| 欧美亚洲图片小说| 影音先锋欧美在线| 三级在线观看网站| 97久久精品人人做人人爽| 国产欧美一区二区三区视频| 一级片aaaa| 久久国产高清| 成人黄色片网站| 天天操天天干天天爽| 久久久亚洲综合| 9l视频自拍9l视频自拍| 九色porny自拍视频在线播放| 亚洲精选一二三| 中文字幕日韩精品一区二区| 日本在线观看高清完整版| 色综合中文字幕| 欧美三级一级片| 蜜臀av在线播放| 欧美中文字幕亚洲一区二区va在线| 免费不卡av网站| 国产高清视频一区二区| 日韩av在线直播| 免费毛片在线播放免费 | 久久视频在线直播| 久久久久久少妇| 日韩午夜免费视频| 97在线视频免费观看| 免费高清在线观看电视| 羞羞色午夜精品一区二区三区| 97av在线视频| 丰满肉嫩西川结衣av| 国产传媒日韩欧美成人| 97se国产在线视频| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的 | 精品亚洲永久免费| 久久99热国产| 亚洲欧美日韩国产成人综合一二三区| 老司机深夜福利在线观看| 日韩欧美激情四射| 精品国产一区在线| 久久不卡国产精品一区二区| 欧美丰满老妇厨房牲生活| 国产性生活网站| 国产一区二区在线免费观看| 性刺激综合网| 性欧美ⅴideo另类hd| 91.com在线观看| 免费成人深夜蜜桃视频| 综合激情一区| 91精品国产高清久久久久久| 亚洲国产综合一区| 久久―日本道色综合久久| 亚洲欧美久久234| 日韩成人影音| 91精品久久久久久久久99蜜臂| 少妇av片在线观看| 欧美1区2区视频| 欧洲中文字幕国产精品| 亚洲图片视频小说| 成人免费福利片| 色涩成人影视在线播放| 美女露胸视频在线观看| 日韩激情av在线免费观看| 国产 日韩 欧美 在线| 99国产精品久久久久| 青青视频在线播放| 国内精品久久久久久久久电影网| 日韩在线视频观看| 日韩精品国产一区二区| 日本不卡视频在线观看| 日本一区视频在线| 电影一区电影二区| 久久综合88中文色鬼| 国产一区二区三区黄片| 中文字幕欧美三区| 国产无遮挡猛进猛出免费软件| 欧美视频在线视频精品| 亚洲成人av中文字幕| 在线视频这里只有精品| 国产在线精品不卡| 欧美性潮喷xxxxx免费视频看| 一区二区三区四区视频免费观看| 国内揄拍国内精品| 国产视频第二页| 国产精品女同互慰在线看| 无尽裸体动漫2d在线观看| 你懂的国产精品永久在线| 国产成人一区二区三区免费看| 丁香在线视频| 欧美一区二区视频在线观看| 国产探花视频在线播放| 国产日韩欧美三级| 极品少妇一区二区三区| 萌白酱国产一区二区| www.97av.com| 最新日韩av在线| 成年人小视频网站| 波多野结衣欧美| 日本最新高清不卡中文字幕| 欧美性受xxxx狂喷水| 欧美日韩中文在线观看| 特黄一区二区三区| 成人午夜在线播放| 色综合天天色综合| 精品69视频一区二区三区Q| 任我爽在线视频精品一| 国产高清亚洲| 国产精品av在线播放| 神马久久久久| 欧美久久久久久久久| 91动漫免费网站| 国产成人在线免费| 可以看毛片的网址| 欧美mv日韩| 国产在线观看精品| 瑟瑟视频在线看| 久久天堂av综合合色| 欧美日韩激情视频一区二区三区| 69p69国产精品| 国产免费一级视频| 国产亚洲女人久久久久毛片| 成人在线观看a| 韩日精品在线| 悠悠色在线精品| 成年丰满熟妇午夜免费视频 | 欧美1区2区| 亚洲精品免费在线看| 日韩在线你懂的| 日韩女在线观看| 久久久久黄久久免费漫画| 中文字幕一区日韩电影| 色播色播色播色播色播在线| 疯狂欧美牲乱大交777| 日本黄色免费观看| 久久久久国产精品午夜一区| 青青在线视频免费观看| 色喇叭免费久久综合| 欧美色图亚洲自拍| 日韩一区二区三区四区五区| 久久夜精品香蕉| 成a人v在线播放| 欧美一区二区网站| 一级aaaa毛片| 欧美日本在线视频| 欧美精品久久久久性色| 国产精品国产三级国产aⅴ无密码| 在线免费观看黄色小视频| 日日摸夜夜添夜夜添国产精品| 日韩亚洲欧美精品| 国产成人精品免费视| 精品久久久久久一区二区里番| 国产综合色区在线观看| 91精品国产精品| 日本妇女毛茸茸| 亚洲经典视频| 国产精品高潮视频| 久草中文在线观看| 亚洲成人性视频| 亚洲经典一区二区三区| 日韩免费看网站| 黄色av一区二区三区| 精品福利二区三区| 国产精品欧美综合| 欧美性猛片xxxx免费看久爱| 一级久久久久久| 欧美亚洲愉拍一区二区| 国产精品露脸视频| 欧美久久久一区| 精品欧美一区二区精品少妇| 日韩欧美高清dvd碟片| 国产91绿帽单男绿奴| 亚洲黄一区二区| 97人妻精品一区二区三区软件| 欧美日韩精品电影| 99精品国产99久久久久久97| 日韩欧美激情一区| 四虎精品成人免费网站| 亚洲欧美激情视频| 在线视频1区2区| 日韩精品在线免费| 精品国产无码AV| 亚洲国产99精品国自产| 色视频免费在线观看| 色av吧综合网| 国产盗摄一区二区| 最近中文字幕mv在线一区二区三区四区| 国产特黄在线| 日韩欧美999| 国产一区二区在线观看免费播放 | 久久久久久久爱| 麻豆mv在线观看| 国产精品日韩电影| 蜜桃视频m3u8在线观看| 国产不卡在线观看| 欧美日韩中出| 91日韩在线播放| 日韩在线你懂得| 国产综合色一区二区三区| 欧美色图国产精品| 男女啪啪免费观看| 亚洲高清资源在线观看| 欧美大黑帍在线播放| 视频一区二区三区中文字幕| 欧美女人性生活视频| 久久国产精品色婷婷| 白嫩情侣偷拍呻吟刺激| 中文字幕的久久| 91看片在线播放| 欧美高清视频www夜色资源网| 亚洲色欧美另类| 精品亚洲一区二区三区在线播放 | 久久精品91久久香蕉加勒比| 爱啪啪综合导航| 欧美黄色性视频| 电影天堂国产精品| 久久大香伊蕉在人线观看热2| 亚洲综合网站| 亚洲欧洲免费无码| 午夜亚洲性色视频| 久久久999视频| 国产酒店精品激情| 免费网站在线高清观看| 亚洲成a人片综合在线| 日韩精品一卡二卡| 欧美精品日韩一区| 国产无套粉嫩白浆在线2022年| 久久久久久欧美| 精品亚洲a∨一区二区三区18| 欧美一区二区三区四区在线观看地址 | 日本视频在线一区| 三级黄色片网站| 亚洲777理论| 亚洲国产剧情在线观看| 美女黄色丝袜一区| 亚洲精品乱码日韩| 亚洲成人第一| 日本视频在线一区| 国产伦理片在线观看| 色天天综合久久久久综合片| 午夜福利视频一区二区| 国语自产精品视频在线看| 亚洲福利合集| 久久婷婷开心| 精品色999| 亚洲中文字幕无码不卡电影| 男女性色大片免费观看一区二区 | 欧美综合在线视频观看| 久久久久久久久久久久久久国产| www.性欧美| 69xxx免费| 欧美伊人久久久久久久久影院 | 国产一区二区三区四区五区传媒| 岳毛多又紧做起爽| 久久久久久久综合| 波多野结衣日韩| 一区二区欧美久久| 国产一级一片免费播放| 亚洲狼人在线| 久久亚洲精品欧美| 国产精品久久久久毛片大屁完整版| 国产在线a视频| 久久久精品tv| 香蕉污视频在线观看| 亚洲最新视频在线| 欧美成人高清视频在线观看| 一区二区三区四区国产| 国产日韩免费| 久操视频免费看| 欧美三级午夜理伦三级中视频| 成人久久久精品国产乱码一区二区 | 黄色美女视频在线观看| 成人免费视频视频在| 亚洲精品日韩久久| 亚洲a级黄色片| 一区二区视频在线| 日本人妻丰满熟妇久久久久久| 9.1国产丝袜在线观看| 国内精品久久久久久久久电影网| 精品久久久99| 亚洲一区二区欧美| 国产精品视频久久久久久| 久久国产精品久久久久| 高清日韩中文字幕| 97精品国产97久久久久久粉红| 国产精品12区| 日韩精品在线免费视频| 中文字幕精品一区二区精品| 久久久久亚洲精品中文字幕| 成年人网站国产| 国产视频一区二区在线观看| 国产精品久久无码一三区| 国内精品中文字幕| 成人免费a**址| 不许穿内裤随时挨c调教h苏绵| 中文字幕一区二区不卡| www.久久成人| 国产精品91免费在线| 欧美女人交a| 超碰中文字幕在线观看| 精品久久久久久久久中文字幕| 成人激情四射网| 国产xxx69麻豆国语对白| 最新国产精品久久久| 国产精品扒开腿做爽爽|