日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

图像目标分割_2 FCN(Fully Convolutional Networks for Semantic Segmentation)

發(fā)布時(shí)間:2024/7/5 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图像目标分割_2 FCN(Fully Convolutional Networks for Semantic Segmentation) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

6.2.1 FCN 背景介紹

圖像語(yǔ)義分割給定一張圖片,對(duì)圖片上每一個(gè)像素點(diǎn)進(jìn)行分類!但是與圖像分類目的不同,語(yǔ)義分割模型要具有像素級(jí)的密集預(yù)測(cè)能力才可以。

6.2.2 FCN介紹

6.2.2.1 全卷積網(wǎng)絡(luò)

全卷積網(wǎng)絡(luò),模型由卷積層、池化層組成(沒(méi)有全連接層),可以接受任意大小的輸入,網(wǎng)絡(luò)的示意圖如下

過(guò)程:輸入一張圖片,網(wǎng)絡(luò)由淺到深,隨著卷積層和池化層不斷作用,產(chǎn)生的特征圖分辨率越來(lái)越小,但是通道數(shù)會(huì)越來(lái)越多。最后通過(guò)逐層上采樣得到一個(gè)和輸入形狀一樣的結(jié)果。

  • 輸入可為任意尺寸圖像彩色圖像;輸出與輸入尺寸相同,深度為:20類目標(biāo)+背景=21(VOC分類)

1、結(jié)構(gòu)修改,保證任意圖像對(duì)應(yīng)輸入輸出

典型的識(shí)別網(wǎng)絡(luò),包括LeNet、AlexNet,表面上采用固定大小的輸入并產(chǎn)生非空間輸出。 這些網(wǎng)全連接的層具有固定的尺寸并丟棄空間坐標(biāo)。 然而,這些完全連接的層也可以被視為與覆蓋整個(gè)輸入?yún)^(qū)域的內(nèi)核的卷積。

一般圖像分類CNN網(wǎng)絡(luò)在最后一層卷積層后會(huì)跟若干個(gè)全連接層, 將卷積層產(chǎn)生的特征圖映射成一個(gè)固定長(zhǎng)度的特征向量。論文中的例子:輸入一張貓的圖片, 經(jīng)過(guò)CNN網(wǎng)絡(luò), 得到一個(gè)長(zhǎng)為1000的輸出向量, 這個(gè)向量經(jīng)過(guò)softmax歸一化,分別對(duì)應(yīng)1000個(gè)類別的概率,這樣我們可以得到輸入圖像屬于每一類的概率, 在下例中我們可以看出圖像屬于"tabby cat"這一類可能性最大。

這篇論文里面是將全連接層轉(zhuǎn)化為卷積層。上圖中我們可以看出FCN將最后3層轉(zhuǎn)換為卷積層,卷積核的大小(通道數(shù),寬,高)分別為(4096,1,1)、(4096,1,1)、(1000,1,1)。

全連接層怎么轉(zhuǎn)成卷積層:拿上圖為例,最后一層卷積層的輸出為7 x 7 x 256 。后面再接三個(gè)全連接層變?yōu)?1,4096),(1,4096),(1,1000)(一維向量)。我們可以把這三個(gè)全連接層變?yōu)榫矸e層。

變換方式:

  • 針對(duì)FC1 ,選卷積核K=7卷積,輸出為1 x 1 x 4096。

  • 針對(duì)FC2,選卷積核K=1卷積,輸出為1 x 1 x 4096。

  • 對(duì)最后一個(gè)FC3,選卷積核k=1卷積,輸出為1x1x1000。

這樣轉(zhuǎn)換后的網(wǎng)絡(luò)輸出的就是一個(gè)熱力圖 ,這個(gè)圖明顯二維的。這樣轉(zhuǎn)換后的網(wǎng)絡(luò)輸出的就是一個(gè)熱力圖 ,這個(gè)圖明顯二維的。

2、上采樣得到預(yù)測(cè)映射(dense prediction)的策略

我們可以看出

  • 1、對(duì)原圖像進(jìn)行卷積conv1, pool1后原圖像縮小為1/2;
  • 2、之后對(duì)圖像進(jìn)行第二次conv2,pool2后圖像縮小為1/4;
  • 3、對(duì)圖像進(jìn)行第三次卷積操作conv2,pool3縮小為原圖像的1/8, 此時(shí)保留pool3的feature map;
  • 4、繼續(xù)對(duì)圖像進(jìn)行第四次卷積操作conv4,pool4,縮小為原圖像的1/16,保留 pool4的feature map;
  • 5、最后對(duì)圖像進(jìn)行第五次卷積操作conv5,pool5,縮小為原圖像的1/32
  • 6、然后把原來(lái)CNN操作中的全連接變成卷積操作 conv6,圖像的feature map 數(shù)量改變但是圖像大小依然為原圖的1/32,此時(shí)圖像heatmap(熱力圖)。

最后的輸出是1000張heatmap經(jīng)過(guò)upsampling變?yōu)樵瓐D大小的圖片,為了對(duì)每個(gè)像素進(jìn)行分類預(yù)測(cè)label成最后已經(jīng)進(jìn)行語(yǔ)義分割的圖像

論文作者研究過(guò)3種方案實(shí)現(xiàn)dense prediction:反卷積法以及(移針?lè)?#xff08;shift-and-stitch)、稀疏濾波(filter rarefaction))

(1)反卷積法(deconvolutional)

注:反卷積(Deconvolution),當(dāng)然關(guān)于這個(gè)名字不同框架不同,Caffe和Kera里叫Deconvolution,而tensorflow里叫Conv2DTranspose。叫conv_transpose更為合適。

  • 反卷積(轉(zhuǎn)置卷積):反卷積是一種特殊的正向卷積,先按照一定的比例通過(guò)補(bǔ)0來(lái)擴(kuò)大輸入圖像的尺寸,接著卷積核卷積,再進(jìn)行正向卷積。

    • 1、先進(jìn)行上采樣,即擴(kuò)大像素;再進(jìn)行卷積
    • 卷基的forward、backward操作對(duì)調(diào),就是轉(zhuǎn)置卷積。

    • 卷積與轉(zhuǎn)置卷積的本質(zhì)就是進(jìn)行了矩陣運(yùn)算,從矩陣角度理解

理解:然后把普通卷積的輸出作為轉(zhuǎn)置卷積的輸入,而轉(zhuǎn)置卷積的輸出,就是普通卷積的輸入,常用于CNN中對(duì)特征圖進(jìn)行上采樣,比如語(yǔ)義分割和超分辨率任務(wù)中。

  • 卷積與轉(zhuǎn)置卷積的可視化計(jì)算過(guò)程
    • 參考:https://github.com/vdumoulin/conv_arithmetic

公式:設(shè)反卷積的輸入是n * n,
反卷積的輸出為m*m,?padding=p,stride=spadding=p,stride=s?。

那么此時(shí)反卷積的輸出就為:m = s(n-1) + k -2p,反過(guò)來(lái)就是n = (m+2p -k)/s + 1

例子理解:

下圖中藍(lán)色是反卷積層的input,綠色是反卷積層的output,元素內(nèi)和外圈都補(bǔ)0的轉(zhuǎn)置卷積。

舉個(gè)例子:選擇一個(gè)輸入input尺寸為?3 ,卷積核kernel 尺寸?3,步長(zhǎng)strides=2,填充padding=1 ,即n=3,k=3,s=2,p=1,則輸出output的尺寸為m=2x(3-1) +3=5 。

問(wèn)題:怎么使反卷積的output大小和輸入圖片大小一致,從而得到pixel level prediction?

因?yàn)镕CN里面全部都是卷積層(pooling也看成卷積),卷積層不關(guān)心input的大小,inputsize和outputsize之間存在線性關(guān)系。

假設(shè)圖片輸入為n×n大小,第一個(gè)卷積層輸出map就為conv1_out.size=(n-kernelsize)/stride + 1,記做conv1_out.size = f(n), 依次類推,conv5_out.size = f(conv5_in.size) = f(... f(n)), 反卷積是要使n = f‘(conv5_out.size)成立,要確定f’,就需要設(shè)置deconvolution層的kernelsize,stride,padding。

TensorFlow 中tf.keras.layers.Conv2DTranspose

tf.keras.layers.Conv2DTranspose(filters, kernel_size, strides=(1, 1), padding='valid', output_padding=None,data_format=None, dilation_rate=(1, 1), activation=None, use_bias=True,kernel_initializer='glorot_uniform', bias_initializer='zeros',kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None,kernel_constraint=None, bias_constraint=None, **kwargs )參數(shù): 1、filters:整數(shù),輸出空間的維數(shù)(即卷積中輸出過(guò)濾器的數(shù)量)。 2、kernel_size:2個(gè)整數(shù)的整數(shù)或元組/列表,指定2D卷積窗口的高度和寬度。可以是單個(gè)整數(shù),以為所有空間尺寸指定相同的值。 4、strides:一個(gè)整數(shù)或2個(gè)整數(shù)的元組/列表,指定沿高度和寬度的卷積步幅。可以是單個(gè)整數(shù),以為所有空間尺寸指定相同的值。指定任何跨步值!= 1與指定任何dilation_rate值!= 1 不兼容。 5、padding:"valid"或之一"same"(不區(qū)分大小寫(xiě))。 6、output_padding:一個(gè)整數(shù)或2個(gè)整數(shù)的元組/列表,指定沿輸出張量的高度和寬度的填充量。可以是單個(gè)整數(shù),以為所有空間尺寸指定相同的值。沿給定尺寸的輸出填充量必須小于沿相同尺寸的步幅。如果設(shè)置為None(默認(rèn)),則推斷輸出形狀。 7、data_format:字符串,channels_last(默認(rèn))或之一channels_first。輸入中尺寸的順序。 8、channels_last對(duì)應(yīng)于具有形狀的輸入, (batch, height, width, channels)而channels_first 對(duì)應(yīng)于具有形狀的輸入 (batch, channels, height, width)。默認(rèn)為image_data_format在Keras配置文件中找到的值~/.keras/keras.json。如果您從未設(shè)置,那么它將是“ channels_last”。 9、dilation_rate:一個(gè)整數(shù)或2個(gè)整數(shù)的元組/列表,指定用于擴(kuò)張卷積的擴(kuò)張率。可以是單個(gè)整數(shù),以為所有空間尺寸指定相同的值。當(dāng)前,指定任何dilation_rate值!= 1與指定任何步幅值!= 1不兼容。 10、activation:要使用的激活功能。如果您未指定任何內(nèi)容,則不會(huì)應(yīng)用任何激活(即“線性”激活:)a(x) = x。 11、use_bias:布爾值,層是否使用偏置向量。 12、kernel_initializer:kernel權(quán)重矩陣的初始化程序。 13、bias_initializer:偏置矢量的初始化器。

其他方法如下:

(2)移針?lè)?#xff08;shift-and-stitch)

對(duì)于移針?lè)?#xff0c;設(shè)原圖與FCN所得輸出圖之間的降采樣因子是f,那么對(duì)于原圖的每個(gè)f的區(qū)域(不重疊),“shift the input x pixels to the right and y pixels down for every (x,y) ,0 < x,y < f." 把這個(gè)f區(qū)域?qū)?yīng)的output作為此時(shí)區(qū)域中心點(diǎn)像素對(duì)應(yīng)的output,這樣就對(duì)每個(gè)f的區(qū)域得到了f^2個(gè)output,也就是每個(gè)像素都能對(duì)應(yīng)一個(gè)output,所以成為了dense prediction。

(3)稀疏濾波

就是放大CNN網(wǎng)絡(luò)中的下采樣層的濾波器尺寸,得到新的濾波方法。

其中s是下采樣的滑動(dòng)步長(zhǎng),這個(gè)新濾波器的滑動(dòng)步長(zhǎng)要設(shè)為1,這樣的話,下采樣就沒(méi)有縮小圖像尺寸,最后可以得到dense prediction。

以上兩種方法作者都沒(méi)有采用,主要是因?yàn)檫@兩種方法都是經(jīng)過(guò)折中(trade-off)的。

  • 對(duì)于移針?lè)?#xff0c; 下采樣的功能被減弱,使得更細(xì)節(jié)的信息能被filter看到,但是其感受野會(huì)相對(duì)變小,可能會(huì)損失全局信息,且會(huì)對(duì)卷積層引入更多運(yùn)算。

  • 對(duì)于稀疏濾波,雖然receptive fileds沒(méi)有變小,但是由于原圖被劃分成f*f的區(qū)域輸入網(wǎng)絡(luò),使得filters無(wú)法感受更精細(xì)的信息。

6.2.2.2 skip layers實(shí)現(xiàn)fusion prediction

作者在試驗(yàn)中發(fā)現(xiàn),得到的分割結(jié)果比較粗糙,所以考慮加入更多前層的細(xì)節(jié)信息,也就是把倒數(shù)第幾層的輸出和最后的輸出做一個(gè)fusion,實(shí)際上也就是加和,過(guò)程如下,一共有三種方式:

  • 第一種方法對(duì)所得特征圖像直接進(jìn)行32倍的上采樣,被稱為FCN-32s,處理方法簡(jiǎn)單迅速,但是其采樣預(yù)測(cè)結(jié)果的邊緣信息比較模糊,無(wú)法表現(xiàn)得更具體。
  • 第二種方法提出了層跨越(skip layers)的思路,即特征圖像進(jìn)行2倍的上采樣后,將其結(jié)果與第四層池化操作后的結(jié)果相迭加,之后再對(duì)結(jié)果進(jìn)行16倍上采樣,最終獲得采樣預(yù)測(cè),即FCN-16s。
    • 其將低層的fine layer與高層的coarse layer進(jìn)行結(jié)合,兼顧了局部信息與全局信息,對(duì)像素的空間判別與語(yǔ)義判別進(jìn)行了很好的折中處理。相較FCN-32s,FCN-16s所獲得的采樣預(yù)測(cè)不管是從預(yù)測(cè)結(jié)果還是網(wǎng)絡(luò)結(jié)構(gòu)來(lái)說(shuō)顯然都更加優(yōu)秀。
  • 第三種方法則是在FCN-16s的基礎(chǔ)上,進(jìn)行了與第三層池化操作后的結(jié)果相迭加,再對(duì)結(jié)果進(jìn)行8倍上采樣的FCN-8s。顯然,其生成的語(yǔ)義標(biāo)簽圖像是三種情況中最好的。?

最終:在逐層fusion的過(guò)程中,做到第三層再往下,結(jié)果又會(huì)變差,所以作者做到這里就停了。


6.2.2.3 patch-wise training in FCN?

1、損失計(jì)算

upsample之后,網(wǎng)絡(luò)輸出是與origin image大小相同,channel數(shù)為C+1的每個(gè)pixel的分類預(yù)測(cè),其中C表示分類數(shù)量(如Pascal voc數(shù)據(jù)集,則C=20),對(duì)空間每個(gè)pixel 做softmax分類預(yù)測(cè),那么易知損失函數(shù)為。

其中x為最后一層的輸出(3-D),記origin image 大小為h x w,那么x大小為(C+1) x h x w。每個(gè)pixel都是一個(gè)softmax 分類預(yù)測(cè)。

2、訓(xùn)練

一般對(duì)于語(yǔ)義分割的訓(xùn)練,學(xué)術(shù)界有兩種辦法: Patchwise training 和類別損失加權(quán)的方法來(lái)進(jìn)行訓(xùn)練。

  • 類別損失加權(quán): 根據(jù)類別數(shù)量的分布比例對(duì)各自的損失函數(shù)進(jìn)行加權(quán),比如有些樣本的數(shù)量較少,我就給它的損失函數(shù)比重增大一些。
  • 分批訓(xùn)練: 旨在避免完整圖像訓(xùn)練的冗余。
    • 定義:patchwise training是指對(duì)每一個(gè)感興趣的像素,以它為中心取一個(gè)patch,然后輸入網(wǎng)絡(luò),輸出則為該像素的標(biāo)簽,訓(xùn)練時(shí)就將一個(gè)個(gè)patch組成一個(gè)batch作為網(wǎng)絡(luò)輸入。由于patches可能高度重疊,所以需要一些sampling方法對(duì)選取一些patches作為訓(xùn)練集
    • 避免完全圖像訓(xùn)練的冗余,在語(yǔ)義分割中,假設(shè)你在對(duì)圖像中的每個(gè)像素進(jìn)行分類,通過(guò)使用整個(gè)圖像,你在輸入中添加了大量的冗余。在訓(xùn)練分割網(wǎng)絡(luò)中避免這種情況的一種標(biāo)準(zhǔn)方法是從訓(xùn)練集而不是完整的圖像中向網(wǎng)絡(luò)提供批量的隨機(jī)patches(圍繞感興趣的對(duì)象的小圖像區(qū)域)。
    • 從另一種角度出發(fā),我們也可以使得這些補(bǔ)丁區(qū)域盡量減少背景信息,從而緩解類別不均衡問(wèn)題。

作者根據(jù)實(shí)驗(yàn)結(jié)果給出結(jié)論:補(bǔ)丁式訓(xùn)練完全沒(méi)有必要,訓(xùn)練 FCN 還是輸入整張圖片比較好。并且解決這種類別不均衡的問(wèn)題,只需要給損失函數(shù)按比例加權(quán)重就行。

6.2.2.4 訓(xùn)練細(xì)節(jié)

  • 第一階段

以經(jīng)典的分類網(wǎng)絡(luò)為初始化。最后兩級(jí)是全連接(紅色),參數(shù)棄去不用。

  • 第二階段

從特征小圖(16x16x4096)預(yù)測(cè)分割小圖(161621),之后直接升采樣為大圖。 反卷積(橙色)的步長(zhǎng)為32,這個(gè)網(wǎng)絡(luò)稱為FCN-32s。 這一階段作者使用單GPU訓(xùn)練約需3天。

  • 第三階段

上采樣分為兩次完成(橙色×2)。 在第二次上采樣前,把第4個(gè)pooling層(綠色)的預(yù)測(cè)結(jié)果(藍(lán)色)融合進(jìn)來(lái)。使用跳級(jí)結(jié)構(gòu)提升精確性。 第二次反卷積步長(zhǎng)為16,這個(gè)網(wǎng)絡(luò)稱為FCN-16s。 這一階段作者使用單GPU訓(xùn)練約需1天。

  • 第四階段

上采樣分為三次完成(橙色×3)。 進(jìn)一步融合了第3個(gè)pooling層的預(yù)測(cè)結(jié)果。 第三次反卷積步長(zhǎng)為8,記為FCN-8s。 這一階段作者使用單GPU訓(xùn)練約需1天。

  • 論文中優(yōu)化利用momentum訓(xùn)練了GSD。 對(duì)于FCN-AlexNet,FCN-VGG16和FCN-GoogLeNet,使用20個(gè)圖像的小批量大小和0.001,0.0001和0.00005的固定學(xué)習(xí)速率。

通過(guò)反向傳播通過(guò)整個(gè)網(wǎng)絡(luò)對(duì)所有層進(jìn)行微調(diào)。 考慮到學(xué)習(xí)基本分類網(wǎng)絡(luò)所需的時(shí)間,單獨(dú)對(duì)輸出分類器單獨(dú)進(jìn)行微調(diào)只能獲得完整微調(diào)性能的70%,因此從頭開(kāi)始進(jìn)行訓(xùn)練是不可行的。 (VGG網(wǎng)絡(luò)是分階段訓(xùn)練的,從完整的16層初始化后進(jìn)行訓(xùn)練)。對(duì)于的FCN-32s,在單GPU上,微調(diào)要花費(fèi)三天的時(shí)間,而且大約每隔一天就要更新到FCN-16s和FCN-8s版本。

圖中對(duì)比了patch取樣,全圖有效地訓(xùn)練每張圖片batches到常規(guī)的、大的、重疊的patches網(wǎng)格。采樣在收斂速率上沒(méi)有很顯著的效果相對(duì)于全圖式訓(xùn)練,但是由于每個(gè)每個(gè)批次都需要大量的圖像,很明顯的需要花費(fèi)更多的時(shí)間。

6.2.2.5 評(píng)價(jià)指標(biāo)

論文中實(shí)驗(yàn)了四種評(píng)價(jià)指標(biāo):

6.2.3 分割架構(gòu)效果

最終分割通過(guò)在ILSVRC12的AlexNet3體系結(jié)構(gòu),以及在ILSVRC14中的VGG網(wǎng)絡(luò)和GoogLeNet4做的很不錯(cuò)。

通過(guò)丟棄最終的分類器層來(lái)斬?cái)嗝總€(gè)網(wǎng)絡(luò)的開(kāi)始,并將所有的全連接層轉(zhuǎn)換為卷積。下面在PASCAL VOC 2011 數(shù)據(jù)集中,NVIDIA Tesla K40c上對(duì)500×500輸入進(jìn)行20次試驗(yàn)的平均值)的比較

  • 不同的FCN的skip效果比較

  • 其它效果
    • FCN-8s is the best in Pascal VOC 2011.
    • FCN-16s is the best in NYUDv2.
    • FCN-16s is the best in SIFT Flow.

缺點(diǎn)

  • 得到的結(jié)果還是不夠精細(xì)。進(jìn)行8倍上采樣雖然比32倍的效果好了很多,但是上采樣的結(jié)果還是比較模糊和平滑,對(duì)圖像中的細(xì)節(jié)不敏感

  • 對(duì)各個(gè)像素進(jìn)行分類,沒(méi)有充分考慮像素與像素之間的關(guān)系。忽略了在通常的基于像素分類的分割方法中使用的空間規(guī)整(spatial regularization)步驟,缺乏空間一致性

6.2.4 網(wǎng)絡(luò)結(jié)構(gòu)總結(jié)

  • 全卷積(convolutional):采樣端對(duì)端的卷積網(wǎng)絡(luò),將普通分類網(wǎng)絡(luò)的全連接層換上對(duì)應(yīng)的卷積層(FCN)
  • 上采樣(upsample):即反卷積(deconvolution),恢復(fù)圖片的位置信息等,反卷積層可以通過(guò)最小化誤差學(xué)習(xí)得到。
  • 跳躍連接(skip layer):通過(guò)連接不同卷積層的輸出到反卷積層,來(lái)改善上采樣很粗糙的問(wèn)題。

6.2.5 總結(jié)

  • FCN的結(jié)構(gòu)組成
  • FCN的上采樣方法以及skip layers
  • FCN training的訓(xùn)練過(guò)程以及訓(xùn)練方式

總結(jié)

以上是生活随笔為你收集整理的图像目标分割_2 FCN(Fully Convolutional Networks for Semantic Segmentation)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产免费黄色小视频 | 国产偷人爽久久久久久老妇app | 欧美一区二区三区久久综合 | 色哟哟av| 中国女人内谢69xxxx | 中文久久乱码一区二区 | 黄色av一级片 | 色婷婷av一区 | 精品一区二区三区在线免费观看 | 中文字幕网伦射乱中文 | 97视频在线观看免费高清完整版在线观看 | 欧美日韩中文在线视频 | 韩国美女毛片 | 69视频在线看| 亚洲系列在线观看 | 在线观看污 | 日本黄色中文字幕 | 欧美日韩一二三四 | 午夜a视频 | 午夜激情视频在线播放 | 精品福利视频一区二区 | 日本成人三级电影 | 久久久亚洲国产 | 国产精品久久久久久久久久久久久久久久久久 | 在线日韩视频 | 亚洲午夜久久久久久久国产 | 东京热一区二区三区四区 | 亚洲日本护士毛茸茸 | 色婷婷av一区二区 | 亚洲成av人片久久 | 亚洲区视频在线观看 | 亚洲成人天堂 | 亚洲三级中文字幕 | 欧美特级特黄aaaaaa在线看 | 超碰在线97国产 | 性视频黄色 | 婷婷六月在线 | 91蜜臀精品国产自偷在线 | 操操操日日日 | 日韩欧美一区二区三区在线 | 黑人干亚洲人 | 91丨porny丨尤物 | 91精品国产一区二区三区蜜臀 | 成人免费看片'在线观看 | 日韩一级在线观看视频 | 国产白丝在线观看 | 日本激情视频网站 | 欧美天堂在线观看 | 国产精品二区一区二区aⅴ 一卡二卡三卡在线观看 | 手机在线永久免费观看av片 | 国产又粗又猛又爽又黄91 | 一道本在线 | 久久视频免费看 | 熟女视频一区 | 国产精品久久国产精麻豆96堂 | 久久涩综合 | 免费毛片一区二区三区 | 香蕉视频网站入口 | 久久婷婷一区二区 | 57pao国产成永久免费视频 | 成人精品区 | 欧美高清v | 波多野结衣电影免费观看 | 精品一区二区三区久久久 | 欧美大白屁股 | 免费观看美女裸体网站 | 看全色黄大色黄大片大学生 | 日本白嫩的bbw | 亚洲欧美第一 | 激情视频在线免费观看 | 娇小萝被两个黑人用半米长 | 91娇羞白丝 | 人人看人人干 | 欧美一级欧美三级在线观看 | 网站久久| eeuss国产一区二区三区 | 亚洲国产精品无码久久 | 久久久久久av | 女女同性高清片免费看 | 中国少妇乱子伦视频播放 | 能看毛片的网站 | 久久久久亚洲精品国产 | 色翁荡息又大又硬又粗又爽 | 亚洲国产精品成人综合在线 | 日韩欧美不卡 | 亚洲av久久久噜噜噜熟女软件 | 91在线日本 | 欧美肉大捧一进一出免费视频 | 亚洲做受高潮 | 久久精品五月天 | www.brazzers.com | 成熟了的熟妇毛茸茸 | 伊人久久成人网 | 伊人久久久 | 国产成人欧美一区二区三区的 | 国产在线不卡av | 久久深夜福利 | 波多野结衣操 | 粉色视频免费观看 |