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

主頁(yè) > 知識(shí)庫(kù) > 基于python定位棋子位置及識(shí)別棋子顏色

基于python定位棋子位置及識(shí)別棋子顏色

熱門標(biāo)簽:宿州電話機(jī)器人哪家好 無(wú)錫智能外呼系統(tǒng)好用嗎 百應(yīng)電話機(jī)器人總部 電梯新時(shí)達(dá)系統(tǒng)外呼顯示e 南昌地圖標(biāo)注 西青語(yǔ)音電銷機(jī)器人哪家好 地圖標(biāo)注與注銷 成都呼叫中心外呼系統(tǒng)哪家強(qiáng) 旅游廁所地圖標(biāo)注怎么弄

這一篇主要實(shí)現(xiàn)定位棋子位置及識(shí)別棋子顏色。

圍棋棋盤原圖如下:


經(jīng)過上一章節(jié)處理,已經(jīng)將棋盤位置找到,如下圖:


現(xiàn)在根據(jù)新圖,進(jìn)行棋子位置的定位

1、將棋盤分割成19x19的小方格

為了定位出棋盤每個(gè)交叉點(diǎn)上,是否有棋子,需要將棋盤分割成19X19的小方格,由于圍棋棋盤每個(gè)交叉線直接距離相同,是矩形,因此分割成小方格十分容易,如下圖:


若想將棋盤分割成19x19的小方格,需要知道以下幾個(gè)參數(shù)。

small_length=38  #每個(gè)小格寬高
qizi_zhijing=38#棋子直徑
zuoshangjiao=20#棋盤四周的寬度

這些可以使用imagewathch(VS下opencv的插件)工具,方便的知道,這個(gè)工具可以實(shí)時(shí)查看圖像的寬高,某個(gè)位置的像素值。這個(gè)工具的使用可以看我另外一篇文章:opencv用VS2013調(diào)試時(shí)用Image Watch插件查看圖片,代替一堆數(shù)據(jù),直觀很多。
下面是將原圖分割成19X19小方格的代碼

img = cv2.imread("src.jpg")
cv2.imshow("src",img)
#變量定義
small_length=38  #每個(gè)小格寬高
qizi_zhijing=38#棋子直徑
zuoshangjiao=20#棋盤四周的寬度

for i in range(19):
    for j in range(19):
        #print(i,j)
        lie = i
        hang = j
        Tp_x = small_length * lie
        Tp_y = small_length * hang
        Tp_width = qizi_zhijing
        Tp_height = qizi_zhijing

        #測(cè)試用
        cv2.rectangle(img, (Tp_x, Tp_y), (Tp_x + Tp_width, Tp_y + Tp_height),(255, 0, 0), 2)
        cv2.imwrite('img.jpg', img)
        img_temp=img[Tp_y:Tp_y+Tp_height, Tp_x:Tp_x+Tp_width]#參數(shù)含義分別是:y、y+h、x、x+w
        cv2.imwrite('img_temp3.jpg', img_temp)
        cv2.imshow("3", img_temp)
        cv2.waitKey(20)

2、根據(jù)像素占比識(shí)別是否是黑色棋子




上面三種圖像是我們分割成小方格后的三種主要形態(tài),分別代表黑色棋子,白色棋子以及無(wú)棋子。其中黑色棋子最好查找,我們將圖像進(jìn)行灰度化——二值化后,通過統(tǒng)計(jì)黑色像素占比超過一定數(shù)值,就能知道該處是否有黑色棋子。

這里我將統(tǒng)計(jì)黑色占比的代碼,封裝成了一個(gè)函數(shù),如下;

"""  "*******************************************************************************************
*函數(shù)功能 :統(tǒng)計(jì)二值化圖片黑色像素點(diǎn)百分比
*輸入?yún)?shù) :輸入裁剪后圖像,
*返 回 值 :返回黑色像素點(diǎn)占比0-1之間
*編寫時(shí)間 : 2021.6.30
*作    者 : diyun
********************************************************************************************"""
def Heise_zhanbi(img):
    [height, width, tongdao] = img.shape
    #print(width, height, tongdao)
    # cv2.imshow("3", img)
    # cv2.waitKey(20)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    # cv2.imshow("binary", gray)
    # cv2.waitKey(100)

    etVal, threshold = cv2.threshold(gray, 125, 255, cv2.THRESH_BINARY)
    # cv2.imshow("threshold", threshold)
    # cv2.waitKey(200)
    a = 0
    b = 0
    counter = 0#;/*目標(biāo)像素點(diǎn)個(gè)數(shù)*/
    zhanbi = 0#;/*目標(biāo)像素點(diǎn)比值*/
    for row in range(height):
        for col in range(width):
            val = threshold[row][col]
            if (val) == 0:#黑色
                a = a + 1
            else:
                b = b + 1
    zhanbi = (float)(a) / (float)(height*width)
    #print("黑色像素個(gè)數(shù)", a, "黑色像素占比", zhanbi)
    return zhanbi

3、根據(jù)像素占比識(shí)別是否是白色棋子

同樣的,我們可以統(tǒng)計(jì)像素中白色占比,來(lái)進(jìn)行識(shí)別該位置是否是白色棋子,但是這里需要注意一個(gè)問題,如果按照上面黑色棋子識(shí)別方法進(jìn)行灰度化、二值化會(huì)造成白色棋子和無(wú)棋子分辨不了,二者都有大面積的白色,因此這里需要調(diào)整二值化的閾值,分開無(wú)棋子和白色棋子的圖像。

封裝好的代碼如下:

"""  "*******************************************************************************************
*函數(shù)功能 :統(tǒng)計(jì)二值化圖片白色像素點(diǎn)百分比
*輸入?yún)?shù) :輸入裁剪后圖像,
*返 回 值 :返回白色像素點(diǎn)占比0-1之間
*編寫時(shí)間 : 2021.6.30
*作    者 : diyun
********************************************************************************************"""
def Baise_zhanbi(img):
    [height, width, tongdao] = img.shape
    #print(width, height, tongdao)
    # cv2.imshow("3", img)
    # cv2.waitKey(20)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    # cv2.imshow("binary", gray)
    # cv2.waitKey(100)

    etVal, threshold = cv2.threshold(gray, 235, 255, cv2.THRESH_BINARY)
    # cv2.imshow("threshold", threshold)
    # cv2.waitKey(200)
    a = 0
    b = 0
    counter = 0#;/*目標(biāo)像素點(diǎn)個(gè)數(shù)*/
    zhanbi = 0#;/*目標(biāo)像素點(diǎn)比值*/
    for row in range(height):
        for col in range(width):
            val = threshold[row][col]
            if (val) == 0:#黑色
                a = a + 1
            else:
                b = b + 1
    zhanbi = (float)(b) / (float)(height*width)
    #print("白色像素個(gè)數(shù)", b, "白色像素占比", zhanbi)
    return zhanbi

效果圖如下:

4、將棋盤棋子位置通過列表表示

我們新建一個(gè)19*19的列表來(lái)存儲(chǔ)棋子,列表中:

0:代表無(wú)棋子
1:代表白色
2:代表黑色

代碼如下:

list = [[0 for i in range(19)] for j in range(19)]

當(dāng)為黑色棋子時(shí):

list[hang][lie]=2#黑色
#print("當(dāng)前棋子為黑色")
print("第", i, "行,第", j, "列棋子為黑色:", i, j)

當(dāng)為白色棋子時(shí):

list[hang][lie] = 1  # 白色
#print("當(dāng)前棋子為白色")
print("第", i, "行,第", j, "列棋子為白色:", i, j)

效果圖如下:

完整代碼如下:

from PIL import ImageGrab
import numpy as np
import cv2
from glob import glob
import os

import time


#Python將數(shù)字轉(zhuǎn)換成大寫字母
def getChar(number):
    factor, moder = divmod(number, 26) # 26 字母?jìng)€(gè)數(shù)
    modChar = chr(moder + 65)          # 65 -> 'A'
    if factor != 0:
        modChar = getChar(factor-1) + modChar # factor - 1 : 商為有效值時(shí)起始數(shù)為 1 而余數(shù)是 0
    return modChar
def getChars(length):
    return [getChar(index) for index in range(length)]



"""  "*******************************************************************************************
*函數(shù)功能 :統(tǒng)計(jì)二值化圖片黑色像素點(diǎn)百分比
*輸入?yún)?shù) :輸入裁剪后圖像,
*返 回 值 :返回黑色像素點(diǎn)占比0-1之間
*編寫時(shí)間 : 2021.6.30
*作    者 : diyun
********************************************************************************************"""
def Heise_zhanbi(img):
    [height, width, tongdao] = img.shape
    #print(width, height, tongdao)
    # cv2.imshow("3", img)
    # cv2.waitKey(20)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    # cv2.imshow("binary", gray)
    # cv2.waitKey(100)

    etVal, threshold = cv2.threshold(gray, 125, 255, cv2.THRESH_BINARY)
    # cv2.imshow("threshold", threshold)
    # cv2.waitKey(200)
    a = 0
    b = 0
    counter = 0#;/*目標(biāo)像素點(diǎn)個(gè)數(shù)*/
    zhanbi = 0#;/*目標(biāo)像素點(diǎn)比值*/
    for row in range(height):
        for col in range(width):
            val = threshold[row][col]
            if (val) == 0:#黑色
                a = a + 1
            else:
                b = b + 1
    zhanbi = (float)(a) / (float)(height*width)
    #print("黑色像素個(gè)數(shù)", a, "黑色像素占比", zhanbi)
    return zhanbi


"""  "*******************************************************************************************
*函數(shù)功能 :統(tǒng)計(jì)二值化圖片白色像素點(diǎn)百分比
*輸入?yún)?shù) :輸入裁剪后圖像,
*返 回 值 :返回白色像素點(diǎn)占比0-1之間
*編寫時(shí)間 : 2021.6.30
*作    者 : diyun
********************************************************************************************"""
def Baise_zhanbi(img):
    [height, width, tongdao] = img.shape
    #print(width, height, tongdao)
    # cv2.imshow("3", img)
    # cv2.waitKey(20)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    # cv2.imshow("binary", gray)
    # cv2.waitKey(100)

    etVal, threshold = cv2.threshold(gray, 235, 255, cv2.THRESH_BINARY)
    # cv2.imshow("threshold", threshold)
    # cv2.waitKey(200)
    a = 0
    b = 0
    counter = 0#;/*目標(biāo)像素點(diǎn)個(gè)數(shù)*/
    zhanbi = 0#;/*目標(biāo)像素點(diǎn)比值*/
    for row in range(height):
        for col in range(width):
            val = threshold[row][col]
            if (val) == 0:#黑色
                a = a + 1
            else:
                b = b + 1
    zhanbi = (float)(b) / (float)(height*width)
    #print("白色像素個(gè)數(shù)", b, "白色像素占比", zhanbi)
    return zhanbi

"""  "*******************************************************************************************
*函數(shù)功能 :定位棋盤位置
*輸入?yún)?shù) :截圖
*返 回 值 :裁剪后的圖像
*編寫時(shí)間 : 2021.6.30
*作    者 : diyun
********************************************************************************************"""
def dingweiqizi_weizhi(img):
    '''********************************************
    1、定位棋盤位置
    ********************************************'''
    #img = cv2.imread("./screen/1.jpg")

    image = img.copy()
    w, h, c = img.shape
    img2 = np.zeros((w, h, c), np.uint8)
    img3 = np.zeros((w, h, c), np.uint8)
    # img = ImageGrab.grab() #bbox specifies specific region (bbox= x,y,width,height *starts top-left)

    hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
    lower = np.array([10, 0, 0])
    upper = np.array([40, 255, 255])
    mask = cv2.inRange(hsv, lower, upper)
    erodeim = cv2.erode(mask, None, iterations=2)  # 腐蝕
    dilateim = cv2.dilate(erodeim, None, iterations=2)

    img = cv2.bitwise_and(img, img, mask=dilateim)
    frame = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    ret, dst = cv2.threshold(frame, 100, 255, cv2.THRESH_BINARY)
    contours, hierarchy = cv2.findContours(dst, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)



    #cv2.imshow("0", img)

    i = 0
    maxarea = 0
    nextarea = 0
    maxint = 0
    for c in contours:
        if cv2.contourArea(c) > maxarea:
            maxarea = cv2.contourArea(c)
            maxint = i
        i += 1

    # 多邊形擬合
    epsilon = 0.02 * cv2.arcLength(contours[maxint], True)
    if epsilon  1:
        print("error :   epsilon  1")
        pass

    # 多邊形擬合
    approx = cv2.approxPolyDP(contours[maxint], epsilon, True)
    [[x1, y1]] = approx[0]
    [[x2, y2]] = approx[2]

    checkerboard = image[y1:y2, x1:x2]
    # cv2.imshow("1", checkerboard)
    # cv2.waitKey(1000)
    #cv2.destroyAllWindows()
    return checkerboard

"""  "*******************************************************************************************
*函數(shù)功能 :定位棋子顏色及位置
*輸入?yún)?shù) :裁剪后的圖像
*返 回 值 :棋子顏色及位置列表
*編寫時(shí)間 : 2021.6.30
*作    者 : diyun
********************************************************************************************"""
def dingweiqizi_yanse_weizhi(img):
    '''********************************************
    2、識(shí)別棋盤棋子位置及顏色及序號(hào);
    ********************************************'''
    #img = cv2.imread("./checkerboard/checkerboard_1.jpg")
    img = cv2.resize(img, (724,724), interpolation=cv2.INTER_AREA)
    #cv2.imshow("src",img)
    #cv2.waitKey(1000)

    #變量定義
    small_length=38  #每個(gè)小格寬高
    qizi_zhijing=38#棋子直徑
    zuoshangjiao=20#棋盤四周的寬度

    list = [[0 for i in range(19)] for j in range(19)]
    #print(list)

    for i in range(19):
        for j in range(19):

            lie = i
            hang = j

            Tp_x = small_length * lie
            Tp_y = small_length * hang
            Tp_width = qizi_zhijing
            Tp_height = qizi_zhijing

            img_temp=img[Tp_y:Tp_y+Tp_height, Tp_x:Tp_x+Tp_width]#參數(shù)含義分別是:y、y+h、x、x+w

            heise_zhanbi=Heise_zhanbi(img_temp)
            if heise_zhanbi>0.5:
                list[hang][lie]=2#黑色
                print("第", j+1, "行,第", i+1, "列棋子為黑色")
                #print("當(dāng)前棋子為黑色")
            else:
                baise_zhanbi = Baise_zhanbi(img_temp)
                if baise_zhanbi > 0.15:
                    list[hang][lie] = 1  # 白色
                    print("第", j+1, "行,第",i+1 , "列棋子為白色")
                    #print("當(dāng)前棋子為白色")
                else:
                    list[hang][lie] = 0  # 無(wú)棋子
                    #print("當(dāng)前位置沒有棋子")
            #print(heise_zhanbi)
    #cv2.imshow("2",img)
    #print("\n")
    #print(list)
    return  list



if __name__ =="__main__":
    list0 = [[0 for i in range(19)] for j in range(19)]
    list_finall = []
    img = cv2.imread("./screen/9.jpg")

    '''********************************************
    1、定位棋盤位置
    ********************************************'''
    img_after=dingweiqizi_weizhi(img)
    #cv2.imshow("src",img)

    '''********************************************
    2、識(shí)別棋盤棋子位置及顏色及序號(hào);
    ********************************************'''
    list1=dingweiqizi_yanse_weizhi(img_after)
    print(list1)

到此這篇關(guān)于基于python定位棋子位置及識(shí)別棋子顏色的文章就介紹到這了,更多相關(guān)python定位棋子位置及識(shí)別棋子顏色內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python識(shí)別圍棋定位棋盤位置

標(biāo)簽:雅安 西安 贛州 渭南 辛集 七臺(tái)河 濰坊 許昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《基于python定位棋子位置及識(shí)別棋子顏色》,本文關(guān)鍵詞  基于,python,定位,棋子,位置,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《基于python定位棋子位置及識(shí)別棋子顏色》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于基于python定位棋子位置及識(shí)別棋子顏色的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美日韩免费观看一区| 欧美高清性xxxx| 成人在线免费观看一区| 9797在线看片亚洲精品| 欧美乱妇20p| 国产日韩高清一区二区三区在线| 久久天堂影院| 日韩免费视频一区二区| 日韩在线卡一卡二| 免费在线观看国产黄| 欧美中文字幕视频| 色呦呦呦在线观看| 欧美精选一区二区| 欧美极品美女视频网站在线观看免费| 第一次破处视频| 国产成人免费视频网站高清观看视频| 久久久久91| 免费一级特黄特色毛片久久看| 国产又粗又猛又爽又黄的| 国产亚洲成av人片在线观看| 久久最新资源网| 亚洲精品无码久久久久久久| 欧美日韩国产色综合一二三四| 四虎精品欧美一区二区免费| 欧美一区二区三区免费| 亚洲成a人无码| 日本一区二区综合亚洲| 91啪九色porn原创视频在线观看| 色婷婷视频在线观看| 亚洲国产天堂| 一个人看的日本www的免费视频| 久久久国产一级片| 一区二区三区免费在线看| 亚洲第一页在线观看| 国产精品国产三级国产普通话蜜臀| 香蕉视频网站在线观看| 国产一二三在线| 欧美片在线播放| www.91视频.com| 欧美黄网站色视频| 日本精品另类| 国产在线精品一区二区三区》| 国产精品久久久久久久久久久久久久久| 国产在线三区| 美女在线一区| 日韩精品一区二区三区高清免费| 樱花草www在线观看| 久久er99热精品一区二区| 你懂得影院夜精品a| 久久精品福利| 嫩草影院一二三| 一区二区三区四区高清精品免费观看| 国产精品成人久久久| 亚洲 欧美 日韩 国产综合 在线| 亚洲韩日在线| 国产精品成人免费观看| 人妻av无码一区二区三区| 日本在线视频一区二区| av超碰在线观看| 加勒比一区二区三区在线| 亚洲sss视频| 亚洲精品国产久| 日本h片久久| 亚洲国产天堂网精品网站| 精品一区二区综合| 精品毛片久久久久久| 日本高清视频一区二区| 色视频免费网站| 能看的毛片网站| 久久成人精品电影| 精品国产欧美一区二区五十路| 激情欧美丁香| 福利一区二区在线| 精品一区二区综合| 国产一区二区三区在线免费| 伊人色综合一区二区三区影院视频| 久久精品影视大全| 亚洲久久在线| 亚洲乱熟女一区二区| 狠狠躁夜夜躁av无码中文幕| 欧美黑人一区二区三区| 免费日本一区二区三区视频| 一区二区日韩免费看| 亚洲xxxx18| 国产精品无人区| 欧美成人video| 国产欧美日韩亚洲一区二区三区| 精品电影一区二区| 国产99在线免费| 中文字幕42页丝袜| 国产女教师bbwbbwbbw| 91l九色lporny| 中国日韩欧美久久久久久久久| 深夜福利亚洲| 91久久国产最好的精华液| 欧美性大战xxxxx久久久| 粉嫩精品导航导航| 亚洲无人区码一码二码三码的含义| 极品尤物久久久av免费看| 欧美视频一二区| 视频一区二区在线| 国产欧美精品一区二区三区| 久久麻豆一区二区| 日本高清+成人网在线观看| 欧美精品做受xxx性少妇| 日本一区二区三区四区在线观看| 妺妺窝人体色www婷婷| 亚洲综合在线一区| 色综合蜜月久久综合网| 在线精品观看国产| 久久久久免费| 一级片avav网址| 午夜欧美视频| 成人黄18免费网站| 亚洲色欲综合一区二区三区| 欧美人成在线视频| 精品国产网站| 波多野一区二区| 久久久久久久美女| 91中文在线视频| 色婷婷激情一区二区三区| 国产欧美一区二区精品性| 亚洲国产精品传媒在线观看| 免费看成一片| 国产中文字字幕乱码无限| 青青青在线免费观看| 久久99999| 亚洲另类春色校园小说| 日韩中文在线观看| 欧美人狂配大交3d怪物一区| 长河落日免费高清观看| 99热国产免费| 国产性色av一区二区| 欧美深夜福利视频| 欧美粗暴jizz性欧美20| 久久无码人妻精品一区二区三区| 日韩欧美一区二| 亚洲综合视频| 精品成人a区在线观看| 亚洲美女性生活| 国产麻豆剧果冻传媒观看hd高清| 日本韩国欧美精品大片卡二| 在线视频se| 欧美成人精品激情在线观看| 亚洲第一中文字幕| 国产中文字幕视频在线观看| 国产精品国产三级国产普通话99| 手机免费看av片| 九九热这里只有精品6| 日日噜噜噜夜夜爽爽狠狠视频| 成人av无码一区二区三区| 影音先锋在线中文| 亚洲一卡二卡区| 日本wwwwww| 日韩电影在线观看网站| 领导边摸边吃奶边做爽在线观看| 亚洲久久一区二区| 人人在线视频| 美女又爽又黄免费视频| 亚洲成人av片在线观看| 青草全福视在线| 99久久精品情趣| 亚洲精品欧美综合四区| 美女激情福利视频在线观看| 91久久国产| 我不卡一区二区| 在线看的黄色网址| 中国女人一级一次看片| 国产专区欧美精品| 国产男女猛烈无遮挡在线喷水| 欧美一区二区综合| 三级毛片电影网站| 国产高清视频免费在线观看| 国产高清av在线播放| 日韩黄色精品视频| 亚洲免费av一区| 亚洲午夜精品视频| 人妻丰满熟妇aⅴ无码| 久久免费成人精品视频| 国产人妻人伦精品| 91|九色|视频| 欧美日韩看看2015永久免费| 日韩视频一区二区三区| 国产成人一区二区三区影院在线| 国产精品乱码一区二三区小蝌蚪| 亚洲图片欧美视频| 亚洲36d大奶网| 在线观看成年人网站| 黄色免费在线观看| av激情亚洲男人天堂| 国产资源在线免费观看| 中文字幕久热精品在线视频| 国产精品女主播一区二区三区| 国产精品无码久久久久成人app| 玖玖在线免费视频| 四季av日韩精品一区| 91黄色免费网站| 成人午夜剧场免费观看完整版| 中文字幕国语官网在线视频| 99久久伊人久久99| 1区1区3区4区产品乱码芒果精品| 久久久久久久999| 日本免费一区二区三区视频观看| 日本熟女一区二区| eeuss影院eeuss最新直达| 伦伦影院午夜日韩欧美限制| 久久99蜜桃精品| 日本色综合中文字幕| 91精品国产一区二区三区动漫| 伊人75在线| 欧洲一区二区三区精品| 日韩欧美在线一区二区| 亚州av在线播放| 亚洲男人天堂古典| 国产精品jvid在线观看蜜臀| 最新日本视频| 成人国产二区| 日韩一区二区久久久| 春暖花开亚洲一区二区三区| 精品香蕉一区二区三区| 亚洲 高清 成人 动漫| 成+人+亚洲+综合天堂| 国产精品巨作av| 欧美一级黄色影院| www.久久久久久久久| 欧美老女人bb| 国产999精品久久久影片官网| 色综合天天综合网中文字幕| 亚洲欧美一区二区精品久久久| 在线天堂中文| 亚洲欧美一区二区视频| 国产视频你懂的| 毛片毛片女人毛片毛片| 中国a一片一级一片| 成人在线观看网站| 日韩视频在线观看视频| 国产又粗又长免费视频| 亚洲欧美日韩爽爽影院| av在线天堂播放| 国产精品对白一区二区三区| www.亚洲人.com| 国产成人成网站在线播放青青| 蜜桃视频中文字幕| 日本久久综合网| 尤物视频..com| 亚洲中文字幕无码av| 久久成人久久鬼色| 日韩不卡av在线| 日本天堂在线播放| 3344国产精品免费看| www.99久久热国产日韩欧美.com| 欧美大交乱xxxxbbbb| 精品国产精品国产精品| 久久久av电影| 欧美黑人在线观看| 国产精品丝袜白浆摸在线| 欧美日韩精品在线一区二区| 影音先锋5566资源站| 日本精品一区二区三区高清| 中文字幕乱码中文乱码51精品| 极品国产人妖chinesets亚洲人妖| 久久精品国产亚洲a∨麻豆| 在线观看亚洲网站| 久久久久狠狠高潮亚洲精品| 在线免费观看成年人视频| 99re8在线精品视频免费播放| 好男人www社区在线视频夜恋| 黄色a一级视频| 日韩在线观看免费高清完整版| 风间由美一区二区三区在线观看| 欧美日韩在线直播| 91视频一区| 中文字幕亚洲欧美| 国产精品露出视频| 日日干夜夜草| 手机在线一区二区三区| 日韩欧美卡一卡二| 成人午夜精品久久久久久久蜜臀| 天堂在线视频观看| 中文字幕在线2021| 国产精品手机在线| 欧美日韩一区二区在线视频| 国产黄在线观看免费观看不卡| 日本亚洲欧美天堂免费| 久久久精品在线观看| 一本到三区不卡视频| 欧美一级片免费观看| 国产视频在线观看一区二区三区| 97视频在线观看免费高清完整版在线观看| 久久久国产精品x99av| 蜜臀av性久久久久av蜜臀妖精| 日韩美女在线| 成人av福利| 最新日韩欧美| 亚洲一区欧美在线| 国产黄色网页| 天堂99x99es久久精品免费| 国产精品大片| 中文字幕一区二区在线视频| 欧美色视频一区二区三区在线观看| 一级片久久久久| 久久影院午夜精品| 国产精品资源在线| 最新国产一区二区| 黄色大片在线看| 久久久91精品国产一区二区精品| 国产亲近乱来精品视频| 非洲黑人最猛性xxxx交| 久久精品99北条麻妃| 99久精品国产| 美女高潮视频在线看| 亚洲精品网站在线观看| 精品少妇一区| 美国美女黄色片| 972aa.com艺术欧美| 欧美日韩精品免费观看视频| 亚洲一区二区三区在线观看网站| 国产曰肥老太婆无遮挡| 色呦呦视频在线观看| 亚洲国产一区视频| 婷婷综合国产| 日韩欧美精品在线观看视频| 国产精品毛片aⅴ一区二区三区| 国外成人在线视频| 欧美孕妇孕交xxⅹ孕妇交| 日韩欧美一区二区在线观看| 欧美日韩一区二区三区四区不卡| 97视频在线观看免费|