日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

DCN可形变卷积实现1:Python实现

發布時間:2023/12/16 python 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DCN可形变卷积实现1:Python实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

DCN可形變卷積實現1:Python實現

我們會先用純 Python 實現一個 Pytorch 版本的 DCN ,然后實現其 C++/CUDA 版本。

本文主要關注 DCN 可形變卷積的代碼實現,不會過多的介紹其思想,如有興趣,請參考論文原文:

Deformable Convolutional Networks

Deformable ConvNets v2: More Deformable, Better Results

DCN簡介

考慮到傳統卷積必須是方方正正的 k×kk\times kk×k 的卷積核:
y(p0)=∑pn∈Rw(pn)?x(p0+pn)\mathbf{y}(\mathbf{p}_0)=\sum_{\mathbf{p}_n\in \mathcal{R}}\mathbf{w}(\mathbf{p}_n)\cdot \mathbf{x}(\mathbf{p}_0+\mathbf{p}_n) y(p0?)=pn?R?w(pn?)?x(p0?+pn?)
作者認為這個感受野太規則,無法很好地捕捉特殊形狀的特征,因此在其基礎上加了偏置:
y(p0)=∑pn∈Rw(pn)?x(p0+pn+Δpn)\mathbf{y}(\mathbf{p}_0)=\sum_{\mathbf{p}_n\in \mathcal{R}}\mathbf{w}(\mathbf{p}_n)\cdot \mathbf{x}(\mathbf{p}_0+\mathbf{p}_n+\Delta\mathbf{p}_n) y(p0?)=pn?R?w(pn?)?x(p0?+pn?+Δpn?)
使得模型能夠根據輸入計算偏移量,自己選擇對哪些位置進行卷積計算,而不用必須是正方形的樣子。

如上圖所示,傳統的卷積輸入只能是圖 (a) 中的九個綠點,而在加上偏移量之后,皆可以四處飛,比如飛到圖 (bcd) 中藍點的位置。

而 DCNv2 則在此基礎上又為每個位置乘了一個可學習的權重:
y(p0)=∑pn∈Rw(pn)?x(p0+pn+Δpn)?Δmn\mathbf{y}(\mathbf{p}_0)=\sum_{\mathbf{p}_n\in \mathcal{R}}\mathbf{w}(\mathbf{p}_n)\cdot \mathbf{x}(\mathbf{p}_0+\mathbf{p}_n+\Delta\mathbf{p}_n)\cdot\Delta\mathbf{m}_n y(p0?)=pn?R?w(pn?)?x(p0?+pn?+Δpn?)?Δmn?

由于網絡學習出的偏移量通常是小數,因此下面會用到雙線性插值(下面會有圖示),這里先把原文中的公式給出來:
x(p)=∑qG(q,p)?x(q)\mathbf{x}(\mathbf{p})=\sum_\mathbf{q}G(\mathbf{q},\mathbf{p})\cdot\mathbf{x}(\mathbf{q}) x(p)=q?G(q,p)?x(q)

這里 p=(p0+pn+Δpn)\mathbf{p}=(\mathbf{p}_0+\mathbf{p}_n+\Delta\mathbf{p}_n)p=(p0?+pn?+Δpn?) 表示任意位置(可以是小數)坐標,而 q\mathbf{q}q 是枚舉特征圖 x\mathbf{x}x 中所有整數空間位置,G(?,?)G(\cdot,\cdot)G(?,?) 就是雙線性插值,注意這里的 GGG 是兩個維度(x,y)的,拆分為兩個單維度的話,就是:

G(q,p)=g(qx,px)?g(qy,py)G(\mathbf{q},\mathbf{p})=g(q_x,p_x)\cdot g(q_y,p_y) G(q,p)=g(qx?,px?)?g(qy?,py?)

其中 g(a,b)=max(0,1?∣a?b∣)g(a,b)=max(0,1-|a-b|)g(a,b)=max(0,1?a?b)

給出公式一方面是讓讀者了解具體算法,更重要的一點是我們參考的 DCN 的 Pytorch 實現代碼中變量的命名是與原文公式對應的,因此公式列在這里方便讀者下面看代碼的時候可以回頭看一下各個變量對應的是算法公式中的哪一項。

純Python實現

我們先來看一下Pytorch版本的實現,來更好地理解 DCN 可形變卷積的做法,然后用 C++/CUDA 實現高性能版本。本文參考的 Python 實現是:https://github.com/4uiiurz1/pytorch-deform-conv-v2/blob/master/deform_conv_v2.py 。

本小節參考博文:deformable convolution可變形卷積(4uiiurz1-pytorch版)源碼分析

_init_

def __init__(self, inc, outc, kernel_size=3, padding=1, stride=1, bias=None, modulation=False):"""Args:modulation (bool, optional): If True, Modulated Defomable Convolution (Deformable ConvNets v2)."""super(DeformConv2d, self).__init__()self.kernel_size = kernel_sizeself.padding = paddingself.stride = strideself.zero_padding = nn.ZeroPad2d(padding)self.conv = nn.Conv2d(inc, outc, kernel_size=kernel_size, stride=kernel_size, bias=bias)self.p_conv = nn.Conv2d(inc, 2*kernel_size*kernel_size, kernel_size=3, padding=1, stride=stride)nn.init.constant_(self.p_conv.weight, 0)self.p_conv.register_backward_hook(self._set_lr)self.modulation = modulationif modulation:self.m_conv = nn.Conv2d(inc, kernel_size*kernel_size, kernel_size=3, padding=1, stride=stride)nn.init.constant_(self.m_conv.weight, 0)self.m_conv.register_backward_hook(self._set_lr)

這里重點關注 self.p_conv 和 self.m_conv ,是這兩個卷積完成了對偏移量 offset 的學習,而 self.conv 是確在定偏移后的位置之后,最終進行計算的卷積。

(關于這里的 modulation 參數,如注釋所言,如果為 True ,就是一個模塊化的 DCN,即 DCNv2。)

具體來看這三個卷積及其參數:

  • self.conv:這是負責進行最終計算的卷積??尚巫兙矸e DCN 雖然進行了形變,但是這是卷積輸入中空間像素的位置有了偏移,而輸入輸出的尺寸還是不變的,因此,輸入卷積的位置確定之后,最終負責完成卷積計算的 self.conv 的各個參數(輸入輸出通道數inc, outc、卷積核大小kernel_size、步長stride、填充padding等)就是我們整個 DCN 的對應參數參數。

  • self.p_conv:該卷積操作負責計算偏移量。在卷積中,共有 kernel_size * kernel_size 個位置的像素需要參與計算,因此我們要計算出他們的偏移量,而每個位置都有寬、高兩個方向的偏移量,故該卷積輸出的通道數是 2 * kernel_size * kernel_size ,其他參數保持一致。

  • self.m_conv:該卷積操作負責計算卷積核每個位置的權重。其輸出通道數為位置數,即 kernel_size * kernel_size ,其他參數保持一致,注意這個加權的想法是 DCNv2 中的。

forward

看過 __init__ 函數之后,我們可以來看 forward 函數:

def forward(self, x):offset = self.p_conv(x)if self.modulation:m = torch.sigmoid(self.m_conv(x))dtype = offset.data.type()ks = self.kernel_sizeN = offset.size(1) // 2if self.padding:x = self.zero_padding(x)# (b, 2N, h, w)p = self._get_p(offset, dtype)# (b, h, w, 2N)p = p.contiguous().permute(0, 2, 3, 1)q_lt = p.detach().floor()q_rb = q_lt + 1q_lt = torch.cat([torch.clamp(q_lt[..., :N], 0, x.size(2)-1), torch.clamp(q_lt[..., N:], 0, x.size(3)-1)], dim=-1).long()q_rb = torch.cat([torch.clamp(q_rb[..., :N], 0, x.size(2)-1), torch.clamp(q_rb[..., N:], 0, x.size(3)-1)], dim=-1).long()q_lb = torch.cat([q_lt[..., :N], q_rb[..., N:]], dim=-1)q_rt = torch.cat([q_rb[..., :N], q_lt[..., N:]], dim=-1)# clip pp = torch.cat([torch.clamp(p[..., :N], 0, x.size(2)-1), torch.clamp(p[..., N:], 0, x.size(3)-1)], dim=-1)# bilinear kernel (b, h, w, N)g_lt = (1 + (q_lt[..., :N].type_as(p) - p[..., :N])) * (1 + (q_lt[..., N:].type_as(p) - p[..., N:]))g_rb = (1 - (q_rb[..., :N].type_as(p) - p[..., :N])) * (1 - (q_rb[..., N:].type_as(p) - p[..., N:]))g_lb = (1 + (q_lb[..., :N].type_as(p) - p[..., :N])) * (1 - (q_lb[..., N:].type_as(p) - p[..., N:]))g_rt = (1 - (q_rt[..., :N].type_as(p) - p[..., :N])) * (1 + (q_rt[..., N:].type_as(p) - p[..., N:]))# (b, c, h, w, N)x_q_lt = self._get_x_q(x, q_lt, N)x_q_rb = self._get_x_q(x, q_rb, N)x_q_lb = self._get_x_q(x, q_lb, N)x_q_rt = self._get_x_q(x, q_rt, N)# (b, c, h, w, N)x_offset = g_lt.unsqueeze(dim=1) * x_q_lt + \g_rb.unsqueeze(dim=1) * x_q_rb + \g_lb.unsqueeze(dim=1) * x_q_lb + \g_rt.unsqueeze(dim=1) * x_q_rt# modulationif self.modulation:m = m.contiguous().permute(0, 2, 3, 1)m = m.unsqueeze(dim=1)m = torch.cat([m for _ in range(x_offset.size(1))], dim=1)x_offset *= mx_offset = self._reshape_x_offset(x_offset, ks)out = self.conv(x_offset)return out

這里的 N 是 offset 的通道數除以2,就是卷積要處理的位置的個數(即 kernal_size * kernel_size)。

整個 forward 函數的流程:

  • 首先通過上面介紹的 p_conv 和 v_conv 計算出偏移量 offset 和加權的權重m(如果有)。

  • 比較關鍵的是這里的 self._get_p 函數,該函數通過上面計算出的 offset,去得到輸入到卷積的具體位置,即公式中的:
    p0+pn+Δpn\mathbf{p}_0+\mathbf{p}_n+\Delta\mathbf{p}_n p0?+pn?+Δpn?
    關于這個函數,我們會在下一小節詳細介紹。由于我們現在先過整個流程,只需要知道該函數通過 p_conv 卷積計算出的 offset,得到了要輸入最終卷積的位置 p。p 是一個形狀為 (bs,2?N,h,w)(bs,2*N,h,w)(bs,2?N,h,w) 的張量。

  • 拿到 p 之后的問題是我們得到的肯定是一個浮點類型,即小數,但是像素的坐標肯定是整型,所以,這里我們需要做一個雙線性插值。雙線性插值的思想也很直接,就是將某個浮點坐標的左上、左下、右上、右下四個位置的像素值按照與該點的距離計算加權和,作為該點處的像素值。可參考下圖,也可參考博客圖像預處理之warpaffine與雙線性插值及其高性能實現,后半部分有對雙線性插值的講解與 Python 實現。

    這里的 lt, rb, lb, rt 分別代表左上,右下,左下,右上。

  • 現在我們通過雙線性插值拿到了每個位置的坐標,下一步就是根據坐標去取到對應位置的像素值,這在代碼中由 self._get_x_q 實現,會在下面的小節介紹。

  • 這個時候如果有權重的話,要計算出 m,乘到 x_offset 上。

  • 這時得到的 x_offset 的形狀是 b,c,h,w,Nb,c,h,w,Nb,c,h,w,N,而我們要的形狀肯定是 b,c,h,wb,c,h,wb,c,h,w,因此這里還有一個 reshape 的操作,由 self._reshape_x_offset 實現。

  • 至此,我們終于得到了想要的 x_offset,接下來就將它送入 self.conv 進行卷積計算并返回結果即可。

  • _get_p、_get_p_0、_get_p_n

    先貼一下代碼:

    def _get_p(self, offset, dtype):N, h, w = offset.size(1)//2, offset.size(2), offset.size(3)# (1, 2N, 1, 1)p_n = self._get_p_n(N, dtype)# (1, 2N, h, w)p_0 = self._get_p_0(h, w, N, dtype)p = p_0 + p_n + offsetreturn pdef _get_p_n(self, N, dtype):p_n_x, p_n_y = torch.meshgrid(torch.arange(-(self.kernel_size-1)//2, (self.kernel_size-1)//2+1),torch.arange(-(self.kernel_size-1)//2, (self.kernel_size-1)//2+1))# (2N, 1)p_n = torch.cat([torch.flatten(p_n_x), torch.flatten(p_n_y)], 0)p_n = p_n.view(1, 2*N, 1, 1).type(dtype)return p_ndef _get_p_0(self, h, w, N, dtype):p_0_x, p_0_y = torch.meshgrid(torch.arange(1, h*self.stride+1, self.stride),torch.arange(1, w*self.stride+1, self.stride))p_0_x = torch.flatten(p_0_x).view(1, 1, h, w).repeat(1, N, 1, 1)p_0_y = torch.flatten(p_0_y).view(1, 1, h, w).repeat(1, N, 1, 1)p_0 = torch.cat([p_0_x, p_0_y], 1).type(dtype)return p_0

    我們來看一下如何將 offset 傳入 self._get_p 獲得最終的 p,該函數會分別調用 self._get_p_0 和 self._get_p_n 來分別獲得 p_0 和 p_n,分別是卷積核的中心坐標和相對坐標,對應到公式中的 p0,pn\mathbf{p}_0,\ \mathbf{p}_np0?,?pn?
    y(p0)=∑pn∈Rw(pn)?x(p0+pn+Δpn)\mathbf{y}(\mathbf{p}_0)=\sum_{\mathbf{p}_n\in \mathcal{R}}\mathbf{w}(\mathbf{p}_n)\cdot \mathbf{x}(\mathbf{p}_0+\mathbf{p}_n+\Delta\mathbf{p}_n) y(p0?)=pn?R?w(pn?)?x(p0?+pn?+Δpn?)

    關于 p_0 和 p_n 具體是什么東西其實很好理解,畫個小圖就明白了,以 kernel_size = 3 的卷積為例,中心位置在全圖中的坐標就是 p_0,中心位置的相對坐標就是 p_n=(0,0),左上角的 p_n=(-1,-1),右下角的 p_n=(1,1) 其他位置以此類推。常規的卷積就只有 pn+p0\mathbf{p}_n+\mathbf{p}_0pn?+p0? ,輸入就是只能在上圖中的九個格子中,而 DCN 加入 Δpn\Delta\mathbf{p}_nΔpn? 之后,就可以四處飛啦。但是四處飛,也是要在 pn+p0\mathbf{p}_n+\mathbf{p}_0pn?+p0? 的基礎上再加上偏移量來計算具體的位置。所以我們先要獲得 p_0 和 p_n。

    當然,p_0 和 p_n 都是固定的、不需要學習的、而且是很規則的,因此獲取他們只需要根據 kernel_size 和位置 h, w (僅 p_0 需要)來計算就好了。這里代碼實現中就是用 torch.arange 和 torch.meshgrid 將想要的 p_0 和 p_n,計算出來。

    然后 p = p_0 + p_n + offset(對應公式),得到尺寸為 (bs,2?N,h,w)(bs, 2*N, h, w)(bs,2?N,h,w) 的 p。

    _get_x_q

    _get_x_q 函數是根據計算出的位置坐標,得到該位置的像素值。

    再提醒一下,我們參考的 DCN 的 Pytorch 實現代碼中變量的命名是與原文公式對應的,如果有變量含義不明確的,可以回上面看看公式,對應代碼變量名理解。

    def _get_x_q(self, x, q, N):b, h, w, _ = q.size()padded_w = x.size(3)c = x.size(1)# (b, c, h*w)x = x.contiguous().view(b, c, -1)# (b, h, w, N)index = q[..., :N]*padded_w + q[..., N:] # offset_x*w + offset_y# (b, c, h*w*N)index = index.contiguous().unsqueeze(dim=1).expand(-1, c, -1, -1, -1).contiguous().view(b, c, -1)x_offset = x.gather(dim=-1, index=index).contiguous().view(b, c, h, w, N)return x_offset

    _reshape_x_offset

    我們在取完像素值之后得到的 x_offset 的形狀是 b,c,h,w,Nb,c,h,w,Nb,c,h,w,N,而我們要的形狀肯定是 b,c,h,wb,c,h,wb,c,h,w,因此這里還有一個 reshape 的操作,就是這里的 self._reshape_x_offset :

    @staticmethod def _reshape_x_offset(x_offset, ks):b, c, h, w, N = x_offset.size()x_offset = torch.cat([x_offset[..., s:s+ks].contiguous().view(b, c, h, w*ks) for s in range(0, N, ks)], dim=-1)x_offset = x_offset.contiguous().view(b, c, h*ks, w*ks)return x_offset

    小結

    至此,我們已經使用 Pytorch 實現了純 Python 的 DCN 卷積結構,但是,如此實現由于不是原生的 C++/CUDA 算子,而且最后的 reshape 操作雖然比較巧妙,但其實空間冗余比較大,和原文作者的 cuda 版本內存占用量差了10幾倍。這個是因為在 im2col 上直接操作可以去掉很冗余。下面一篇我們會再介紹一個 C++/CUDA 實現的 DCN。

    Ref

    • deformable convolution可變形卷積(4uiiurz1-pytorch版)源碼分析
    • 圖像預處理之warpaffine與雙線性插值及其高性能實現

    總結

    以上是生活随笔為你收集整理的DCN可形变卷积实现1:Python实现的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    伊人开心激情 | 久久精品—区二区三区 | 久久久久久麻豆 | 婷婷六月天天 | 一级黄色片在线免费观看 | 超碰在线免费97 | 中文字幕在线观看三区 | 国产精品中文 | 看片网站黄 | 国产精品美女久久久久久久久 | 男女激情片在线观看 | 97人人视频 | 欧美亚洲国产精品久久高清浪潮 | 91在线观看视频网站 | 日韩在线免费电影 | 密桃av在线 | 欧美动漫一区二区三区 | 国产精品一区专区欧美日韩 | 午夜精品麻豆 | 91视频传媒 | 99在线精品观看 | 国产一二区在线观看 | 在线观看香蕉视频 | 天天操天天操天天操天天操 | 欧美日韩国产精品久久 | 在线观看精品黄av片免费 | 色婷久久 | 亚洲播播 | 狠狠躁日日躁夜夜躁av | 日韩在线观看av | 爱情影院aqdy鲁丝片二区 | 欧美在线观看小视频 | 婷婷丁香狠狠爱 | 99久热在线精品 | 99久久精品国产亚洲 | 大片网站久久 | 深夜免费小视频 | 精品久久久久一区二区国产 | 亚洲精选久久 | 夜夜狠狠 | 久草在线 | 国产美女搞久久 | 久久天天躁狠狠躁亚洲综合公司 | 久久99国产精品自在自在app | 久久久久在线视频 | 色黄www小说 | 国产精品一区二区免费 | 亚洲 精品在线视频 | 国产尤物一区二区三区 | 精品久久久久久久久亚洲 | 国产精品久久久久久久久久免费看 | 在线观看免费av片 | 黄色片网站 | 国产人免费人成免费视频 | 久青草视频 | 天天视频亚洲 | 91久久一区二区 | 日韩免费高清在线观看 | 久久久久亚洲精品国产 | 国产韩国精品一区二区三区 | 国产精品第7页 | 狠狠色丁香久久婷婷综 | 狠狠操天天操 | 午夜精品成人一区二区三区 | 97超碰在线播放 | 久久婷婷一区二区三区 | 国产精品成人免费 | 人人澡人| 欧美日韩高清在线一区 | 97精品在线观看 | 精品国产一区在线观看 | 狠狠地日 | 国产在线视频导航 | av三级av| 国产自产高清不卡 | 色999精品| 国产亚洲精品久久久久久久久久久久 | 亚洲伊人天堂 | 黄污网站在线 | 四月婷婷在线观看 | 激情综合五月天 | 四虎精品成人免费网站 | 正在播放亚洲精品 | 黄色片网站大全 | 久久天堂网站 | 日韩精品一区二区三区外面 | www成人精品| 久久理伦片 | 国产九色91 | 国产日产精品一区二区三区四区 | 精品久久久久久国产91 | 欧美激情另类 | 操操色| 91欧美精品 | 色婷婷综合在线 | 男女视频久久久 | 免费观看第二部31集 | 超级碰99| 亚洲在线黄色 | 久久久久久久影视 | 国产福利专区 | 在线精品视频免费播放 | 美女视频a美女大全免费下载蜜臀 | 69av在线播放 | 亚洲精品视频在线观看免费视频 | 久久免费的精品国产v∧ | 日韩成人不卡 | 97香蕉久久国产在线观看 | 免费观看xxxx9999片 | 成人久久国产 | 国产区高清在线 | 麻豆91视频 | 亚洲精品九九 | 激情婷婷久久 | 免费高清在线观看成人 | 91亚洲国产成人久久精品网站 | 狠狠gao| 日韩xxx视频 | 日韩影片在线观看 | 天天操天天射天天爽 | 精久久久久 | 天天插天天干天天操 | 日本美女xx| av短片在线 | 88av视频 | 久视频在线播放 | 三级av在线播放 | 一级特黄av | 顶级bbw搡bbbb搡bbbb | 国产成人免费观看久久久 | 久久97超碰 | 69视频永久免费观看 | 伊人五月 | 久久久免费网站 | 91精品国产乱码久久桃 | 国产精品久久久久久a | 中文字幕在线乱 | 免费高清在线视频一区· | 91免费日韩 | 国产精品一区二区三区在线播放 | 久草在线资源观看 | 免费在线观看av网址 | 在线视频 一区二区 | 激情 婷婷 | 日韩网站一区二区 | 中文在线字幕观看电影 | 国产一区在线看 | 黄色片软件网站 | 久久这里只有精品1 | 99久久电影 | 国产精品久久久久影院 | 日韩av一卡二卡三卡 | 天天艹天天干天天 | 在线观看亚洲 | 亚洲va欧美 | 国产女人40精品一区毛片视频 | 成人av电影免费观看 | 国产免费一区二区三区最新 | 天天色天天色 | 国产一区二区不卡视频 | 91精品一区二区在线观看 | 亚洲精品国产精品乱码在线观看 | 日韩在线视频精品 | 亚洲精品永久免费视频 | 最近中文字幕免费 | 国产69精品久久久久久 | 色网站国产精品 | www.久久精品视频 | 国产在线永久 | 国产精品观看视频 | 美女一二三区 | 国产高清免费视频 | 免费在线国产精品 | 久久久久亚洲精品男人的天堂 | 天天操导航 | 国产精品免费视频观看 | 成年人在线免费视频观看 | 日韩在线欧美在线 | 日韩专区中文字幕 | 久操视频在线播放 | 午夜视频99 | 99在线热播精品免费 | 免费中文字幕在线观看 | 视频在线在亚洲 | 免费成视频 | 夜夜干天天操 | 久久久香蕉视频 | 91久久国产综合精品女同国语 | 91传媒视频在线观看 | 女女av在线| 91超在线 | 五月婷婷av在线 | 日韩三区在线观看 | 在线观看一区视频 | 亚洲黄色一级大片 | 日韩激情小视频 | 国产区在线看 | 久久免费的精品国产v∧ | 中文字幕免费在线 | 玖玖色在线观看 | 欧美大香线蕉线伊人久久 | 视频一区二区在线观看 | 最新av电影网址 | 国产91免费在线观看 | 国产91精品一区二区绿帽 | 免费看久久 | 久久精品日产第一区二区三区乱码 | 蜜臀久久99精品久久久无需会员 | 中文字幕日韩一区二区三区不卡 | 国产一区国产精品 | 成人黄色电影在线 | 96国产精品视频 | av动图| 日韩网页| 黄色一级大片在线免费看国产一 | 亚洲成人网av| 国产成人久久77777精品 | 久久中文精品视频 | 黄色成人在线观看 | 亚洲视频1 | 免费日韩视 | 久久久午夜影院 | 美女在线免费观看视频 | 91九色在线播放 | 亚洲成人动漫在线观看 | 婷婷深爱网| 欧美性生交大片免网 | 韩国三级一区 | 日韩欧美一区二区在线播放 | 中文字幕日韩在线播放 | 91精品伦理 | 国产高清在线观看av | 九色视频网站 | 丰满少妇久久久 | 国产色小视频 | 一区二区三区三区在线 | 国产高清视频在线播放一区 | 91视频亚洲| 久久 精品一区 | 91资源在线 | 成人福利在线 | 99精品色 | 国产久草在线观看 | 精品免费99久久 | 亚洲精品动漫久久久久 | 韩国av免费在线 | 国产伦理久久精品久久久久_ | 国产高清久久 | av久久在线 | 婷婷五月在线视频 | 91在线精品一区二区 | 亚洲日本中文字幕在线观看 | 国产精品午夜在线 | 国产成人免费观看久久久 | 99久e精品热线免费 99国产精品久久久久久久久久 | 成年人免费电影 | 在线91色 | 日韩欧美成人网 | www.久艹| 亚洲综合在线视频 | 五月婷久久 | 亚洲高清av | 亚洲国产午夜 | 欧美日韩视频在线观看一区二区 | 国产日韩精品一区二区在线观看播放 | 欧美色道 | 99在线观看 | 久久av网 | 色综合天天综合网国产成人网 | 婷婷六月久久 | 久久久久久国产精品 | 久久久首页 | 国产视频一区在线免费观看 | 色婷婷国产精品一区在线观看 | 精品福利网站 | 精品无人国产偷自产在线 | 国产无吗一区二区三区在线欢 | 美女免费视频一区二区 | 欧美视频在线观看免费网址 | 国内精自线一二区永久 | 午夜精品福利一区二区三区蜜桃 | 久久tv视频 | 又黄又爽又刺激 | 国产一区视频在线播放 | 97超碰人人澡人人爱学生 | 91污视频在线 | 91精品国产麻豆 | 999久久国产 | 999在线观看视频 | 欧美福利久久 | 色av男人的天堂免费在线 | av国产网站 | 黄色毛片一级片 | 日日躁天天躁 | 日日干天天 | 天天射天天干 | 精品国产一区二区三区日日嗨 | 国产馆在线播放 | www.久久久精品 | 夜夜躁日日躁狠狠躁 | 久久国产精品免费视频 | 中文字幕在线播放视频 | 91福利视频在线 | 成人在线视频你懂的 | 91香蕉视频污在线 | 91视频观看免费 | 国产精品美女久久 | 香蕉网在线播放 | 国产精品久久综合 | 久久久久综合精品福利啪啪 | 久久毛片网 | 三级黄色免费片 | 99久e精品热线免费 99国产精品久久久久久久久久 | 国产精品毛片一区视频 | 中文字幕在线观看网 | 国产精品国内免费一区二区三区 | 亚洲午夜精品久久久久久久久久久久 | 成人黄色大片在线观看 | 亚洲涩涩网站 | 国产欧美日韩精品一区二区免费 | 国产精品日韩欧美一区二区 | 成年人视频免费在线播放 | 插婷婷| 精品国产一区二区三区av性色 | 精品a在线 | 国产高清视频在线播放 | 国产精品一区二区av日韩在线 | 大片网站久久 | 久久久免费视频播放 | 欧美做受69 | 亚洲精品黄色片 | 国产精品第10页 | 国产中文字幕免费 | 日本中文一区二区 | 国产精品一区二区三区视频免费 | 久久久久久久久久久网 | 91精品国自产在线偷拍蜜桃 | 国产亚洲一级高清 | 免费日韩三级 | 成 人 黄 色 视频 免费观看 | 日韩精品在线视频 | 一级黄色视屏 | 日本不卡一区二区三区在线观看 | av在线官网| 久久人人精 | av在线免费在线观看 | 久久久久久久久影院 | 综合久久久久久久久 | 99re在线视频观看 | 91麻豆精品国产91久久久久久久久 | 日韩精品一区二区三区三炮视频 | 亚洲精品男女 | 国产精品永久在线 | 国产一区二区三区四区在线 | 丁香六月在线观看 | 九九热在线视频 | 久草在线手机视频 | h动漫中文字幕 | 草久草久| 国产一级a毛片视频爆浆 | 91在线视频 | 一区 在线观看 | 久久久私人影院 | 伊人国产视频 | 久久久免费 | 丁香六月色 | a在线播放 | 亚洲国产成人在线播放 | 天天爱天天射天天干天天 | 成人在线视频网 | 免费福利视频导航 | 国产精品黄色av | 日韩城人在线 | 日日操操| 久久精品一二三区 | 日韩美女久久 | 911香蕉| 亚洲成人黄色网址 | 欧美福利片在线观看 | 欧美精品国产综合久久 | 天干啦夜天干天干在线线 | 97热视频| 国产精品福利久久久 | 色91av| 亚洲国产精品女人久久久 | 黄色精品在线看 | 国产精品国产三级国产不产一地 | 国产 在线 日韩 | 婷婷资源站 | www.综合网.com | 91av在线视频免费观看 | 黄色小说视频网站 | 久久精品久久精品久久精品 | 深爱五月激情五月 | 精品一区二区视频 | 国产精品毛片久久蜜 | 激情喷水 | 91精品国产一区二区在线观看 | 一区二区三区高清 | 在线黄色观看 | 国产成人久久精品77777综合 | 青青草国产免费 | 99视频导航 | 日韩精选在线 | 狠狠操天天操 | 999成人 | 天天干夜夜 | av在线网站观看 | 久久久毛片| 最近2019中文免费高清视频观看www99 | 97av精品 | 国产一级二级三级视频 | 草草草影院 | 99av国产精品欲麻豆 | 日韩大片在线播放 | 亚洲精品午夜久久久久久久久久久 | 国产99久久久精品 | 91日韩在线播放 | 国产精品久久久久久久久久久免费看 | 99精品在线免费在线观看 | 国产第一页精品 | 亚洲 综合 激情 | 九九久久久久久久久激情 | 97超碰精品 | 国产精品高清免费在线观看 | 久久久黄色免费网站 | 99免费观看视频 | 黄色成人在线观看 | 欧美日韩有码 | 色中文字幕在线观看 | 天天操综合网 | 色网免费观看 | www.黄色片网站 | 亚洲综合视频在线观看 | 精品视频www | 超碰在线日韩 | 91桃色国产在线播放 | av电影 一区二区 | 亚州精品在线视频 | 国产精品婷婷午夜在线观看 | 国产精品资源 | 草久视频在线观看 | 狠狠插狠狠操 | 伊人小视频 | 天躁狠狠躁 | 国产亚洲一区二区在线观看 | 久久精品这里精品 | av成人在线网站 | 久久精品视频国产 | 色.com| 色婷婷综合久久久久中文字幕1 | 久久精品国产免费看久久精品 | 91成人在线观看喷潮 | 欧美日韩精品久久久 | 国产精品不卡av | 在线看成人av| 久久五月婷婷丁香社区 | 久久精品精品电影网 | 免费a级黄色毛片 | 日韩精品一区二区三区水蜜桃 | 久久精品一区二区三 | 欧美a在线免费观看 | av高清在线 | 久草视频免费看 | 欧美久草网 | 国产免费人成xvideos视频 | 不卡视频在线 | 免费在线看成人av | 999久久久久久久久久久 | 91禁在线观看 | 97超碰伊人 | 天堂中文在线视频 | 国产成人av电影在线观看 | 国产片免费在线观看视频 | 国产亚洲精品成人av久久ww | 久久国产经典 | 日韩在线视频不卡 | 五月天婷婷在线播放 | 久久综合亚洲鲁鲁五月久久 | 久久综合久久综合这里只有精品 | 日韩午夜在线观看 | 国产精品99视频 | 精品1区二区 | 久久精品看 | 国产美女免费观看 | 丁香六月婷婷综合 | 四虎影视精品永久在线观看 | av片一区| av观看网站| 久久亚洲美女 | 成人中心免费视频 | 免费日韩一级片 | 亚洲区视频在线 | 中文字幕资源网 国产 | 深爱激情久久 | 五月天综合色激情 | 国产精品久久久久久久免费大片 | va视频在线| av直接看 | 精品一区电影国产 | 日韩精品免费一区二区在线观看 | 欧美国产精品久久久久久免费 | 91手机在线看片 | 色综合久久五月 | 欧美精选一区二区三区 | 午夜精品在线看 | 亚洲午夜久久久久久久久 | 999国产在线 | 狠狠gao | 96亚洲精品久久 | 国产特级毛片aaaaaaa高清 | 在线精品国产 | 深夜免费福利在线 | 欧美狠狠操 | 久久这里有 | 黄色软件网站在线观看 | 国产中文伊人 | 日韩在线 一区二区 | av在线免费观看不卡 | 国产九九热 | 99精品免费观看 | 四虎国产视频 | 久久一区二区三区日韩 | 丝袜av一区 | 中文字幕在线观看完整 | 亚洲欧美婷婷六月色综合 | 安徽妇搡bbbb搡bbbb | 99久久日韩精品免费热麻豆美女 | 欧美精品视 | 97人人模人人爽人人喊中文字 | 国产麻豆视频网站 | 免费午夜网站 | 国产看片免费 | 9999亚洲 | 久久女教师 | 亚洲精品日韩一区二区电影 | 人人看人人爱 | 精品国产一区二区三区在线观看 | 亚洲国产一二三 | 91一区二区三区在线观看 | 不卡电影免费在线播放一区 | 日韩高清毛片 | 午夜影视一区 | 狠狠插狠狠操 | 国产精品一区二区美女视频免费看 | 久久99精品久久久久久久久久久久 | 久久精品综合一区 | 最新中文字幕在线播放 | 综合亚洲视频 | 久久99久久99精品免观看软件 | 激情在线网址 | 99精品国产免费久久久久久下载 | 91香蕉嫩草 | www日韩在线观看 | 国产精品高 | 国产日产高清dvd碟片 | 欧美老人xxxx18 | 九九视频在线播放 | 天天操欧美 | 亚洲精品激情 | 国内精品久久久久久久久久久 | 欧美日韩精品国产 | 91视频高清免费 | 国产亚洲精品久久久久久大师 | 99久久这里只有精品 | 久久视频免费看 | 欧美国产高清 | 免费亚洲黄色 | 91爱爱中文字幕 | 三上悠亚一区二区在线观看 | 国产超碰在线 | 三日本三级少妇三级99 | 日韩亚洲精品电影 | 国产亚洲永久域名 | 国产无吗一区二区三区在线欢 | 久久久久中文 | 99 视频 高清 | 亚洲最大免费成人网 | 99热这里 | 亚洲va综合va国产va中文 | 亚洲精品国产精品国自产观看 | 天天射网 | av电影亚洲 | 日韩黄色影院 | 亚洲最新av网址 | 超碰av在线播放 | 人人干天天干 | 久99热| 91亚洲精品久久久蜜桃借种 | 免费中午字幕无吗 | 中文字幕在线不卡国产视频 | 欧美 高跟鞋交 xxxxhd | 97理论电影 | 国产男女无遮挡猛进猛出在线观看 | 天天色天天骑天天射 | 久久超碰在线 | 激情av资源 | 国产一区二区中文字幕 | 成人a视频片观看免费 | 18国产精品白浆在线观看免费 | 天天操天天弄 | 91豆花在线 | 国产网红在线 | 四虎在线视频免费观看 | 久久亚洲精品电影 | 97香蕉超级碰碰久久免费软件 | 国产精品久久伊人 | 欧美韩日精品 | 午夜在线日韩 | 国产精品专区h在线观看 | 99视频在线 | 久久久久免费视频 | 97人人澡人人添人人爽超碰 | 成x99人av在线www | 天天天天天天干 | 深夜激情影院 | 国产一区二区在线免费播放 | 黄色三级在线观看 | 欧美精品免费一区二区 | 国产理伦在线 | 91在线视频观看免费 | 嫩草av在线 | jizz999| 久99久在线视频 | 国产精品一区免费在线观看 | 国产精品 国内视频 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 18国产精品白浆在线观看免费 | 欧美性黑人| 91福利视频在线 | 天天射天天添 | 亚洲丝袜一区二区 | 美女视频黄网站 | 91亚色视频 | 天天色天天操综合网 | 国产精品久久久久久久久久免费看 | 天天操天天透 | 久久情爱 | 久久综合久久综合久久综合 | 色综合亚洲精品激情狠狠 | 亚洲va欧美va人人爽春色影视 | 91视频在线免费下载 | 久久久久人人 | 久久人人爽人人人人片 | 日日夜夜综合网 | 久久九九影院 | 国产精品久久在线 | 日韩免费成人 | 黄色福利视频网站 | 国产精品久久久久久高潮 | 久久tv| 国产在线综合视频 | 国产黄大片在线观看 | 日本女人在线观看 | 在线观看小视频 | 色www精品视频在线观看 | 久久福利影视 | 国产精品一区二区果冻传媒 | 在线视频观看成人 | 久久久电影 | 国产一区二区三区黄 | 黄色aaa级片 | 精品亚洲va在线va天堂资源站 | 免费看黄在线观看 | 国产黄色片免费看 | 欧美午夜寂寞影院 | 日日夜夜91| 成人在线播放网站 | 91av视频免费在线观看 | 91毛片在线观看 | 久久精品视频观看 | www.久热| 国产91影院 | 亚洲国产网站 | 97超碰在| 丁香花在线视频观看免费 | 亚洲欧洲国产精品 | 国产午夜av | av成人亚洲 | 国产精品岛国久久久久久久久红粉 | 天天综合网天天综合色 | 成年人免费在线观看网站 | 91色在线观看 | 91网站在线视频 | 久久久久女人精品毛片 | 91精品久久香蕉国产线看观看 | 4438全国亚洲精品观看视频 | 91福利视频久久久久 | 五月天狠狠操 | 亚洲免费在线视频 | 国产高清视频在线播放一区 | 国产日韩av在线 | 国内外成人免费在线视频 | 国产在线免费av | 国产精品99久久久久久宅男 | 美女免费视频黄 | 99999精品视频 | 天天综合操 | 精品欧美在线视频 | 精品综合久久久 | 探花国产在线 | 亚洲综合欧美激情 | 亚洲国产网站 | www久久99| 人人爽人人乐 | 日韩视频一区二区在线观看 | 亚洲视频综合在线 | www色com | 国产黄色精品网站 | 狠狠干狠狠艹 | 日日夜夜人人天天 | 波多野结衣资源 | 久久精品免费电影 | 亚洲激色 | 四虎影院在线观看av | 美女av在线免费 | 国产高清日韩欧美 | 国产精品一区二区吃奶在线观看 | 日韩免费在线 | 亚洲h在线播放在线观看h | 久久久在线视频 | 国产精品成人在线 | 91精品1区2区 | 在线观看一级 | 91喷水| 欧美性受极品xxxx喷水 | av五月婷婷| 欧美一级视频在线观看 | 99国产精品视频免费观看一公开 | 国产免费黄视频在线观看 | 国产黄色片网站 | 看片在线亚洲 | 日韩一级成人av | 国内精品久久久久久久久久久 | 成人小视频在线 | 最新亚洲视频 | 欧美a性| 欧美孕妇视频 | 在线观看免费成人 | 精品在线小视频 | 国产精品系列在线观看 | 国产精品免费在线播放 | 国内一区二区视频 | 69国产精品成人在线播放 | 亚洲动漫在线观看 | 亚洲高清网站 | 1024手机基地在线观看 | 国产精品va最新国产精品视频 | 亚洲综合视频在线观看 | 久久婷婷网 | 亚洲一级二级 | 亚洲精品国产精品国产 | 午夜少妇 | 夜夜操网站 | 男女男视频 | 在线成人中文字幕 | av一级二级| 黄色91在线 | 日韩精品一区在线播放 | 日韩中文字幕在线看 | 亚色视频在线观看 | 亚洲综合视频在线观看 | 一级理论片在线观看 | 国产视频一 | 性色va | 亚洲精品一区二区三区高潮 | 国产亚洲精品v | 欧美日韩国产精品爽爽 | 日本午夜在线观看 | 97超碰资源总站 | 免费看污在线观看 | 99亚洲精品在线 | 国产美腿白丝袜足在线av | 日韩成人精品在线观看 | 亚洲综合视频在线 | 亚洲免费成人 | www.久久婷婷 | 91色视频 | 毛片永久新网址首页 | 久久精品香蕉 | 17videosex性欧美 | 国产精品久久久久永久免费看 | 亚洲欧美在线观看视频 | 久久久久国产精品一区二区 | 99久久超碰中文字幕伊人 | 99c视频在线 | 涩涩网站在线观看 | 99精品国产在热久久 | 91在线视频免费播放 | 久久国产精品免费看 | 中文字幕4 | 国产精品福利在线播放 | 国产精品精品久久久 | 国产精品久久久久久久久软件 | 国产一区免费观看 | 97精品国产91久久久久久 | 国产大陆亚洲精品国产 | 片网址| 国产成人免费 | 97超碰在线久草超碰在线观看 | 最近中文字幕久久 | 操夜夜操| 亚洲专区中文字幕 | 偷拍福利视频一区二区三区 | 六月激情 | 色综合久久88色综合天天免费 | 高清精品在线 | 国产精品麻豆99久久久久久 | 亚洲国产日韩一区 | 久久久久国产免费免费 | 日韩黄色软件 | 久久久一本精品99久久精品 | 精品一区精品二区高清 | 欧美一级电影免费观看 | 欧美日韩中文字幕视频 | 久草国产视频 | 五月婷婷久久综合 | 久久久久麻豆v国产 | 国产精品久久电影网 | 中文字幕二区三区 | 视频91 | a电影免费看 | 欧美亚洲国产一卡 | 国产精品黄色 | 一区中文字幕在线观看 | 国产精品久久久久久久久大全 | 久久久久亚洲最大xxxx | 久久国产福利 | 中文字幕在线观看日本 | 亚洲日本va午夜在线电影 | 日韩欧美综合视频 | 欧美日韩国产mv | 一区二区视频电影在线观看 | 精品欧美小视频在线观看 | 中文字幕日本在线观看 | 极品久久久久 | 午夜国产福利在线 | 国产最新福利 | 99综合视频 | 久久久www成人免费精品张筱雨 | 三级毛片视频 | 91九色porny在线 | 国产理论一区二区三区 | 欧美性生交大片免网 | 国产偷在线 | 日韩欧美一区视频 | 国产999| www.成人sex| 在线不卡中文字幕播放 | 亚洲视频每日更新 | 美女网站视频一区 | 91禁在线观看| 性色av免费看 | 91av在线精品 | 五月婷激情 | 日韩精品在线免费播放 | 伊人婷婷 | 久久夜色精品国产欧美一区麻豆 | 日韩高清一二区 | 欧美一级片在线观看视频 | 国产高清不卡在线 | 免费在线一区二区 | 日韩资源在线播放 | 在线观看av大片 | 国产成人免费精品 | 天天干天天操天天搞 | 亚洲国产视频直播 | 国产麻豆精品一区二区 | 日韩91av | 国产91在线免费视频 | 中文字幕日韩高清 | 国产精品久久久777 成人手机在线视频 | 亚洲免费观看在线视频 | 天天色天天搞 | 欧美91精品国产自产 | 四虎成人在线 | 国产成人精品av在线观 | 午夜视频导航 | 91中文字幕| 国产精品美女免费 | 亚洲成人资源在线观看 | 一区二区 不卡 | 国产精品扒开做爽爽的视频 | 色91在线视频 | 中文在线免费一区三区 | 国产午夜精品一区二区三区 | 天天躁天天躁天天躁婷 | 在线不卡视频 | 在线播放第一页 | 99热这里精品 | 激情文学综合丁香 | 久久午夜电影网 | 国产伦精品一区二区三区照片91 | 91精品国产乱码久久桃 | 草在线视频 | 毛片网站免费 | 亚洲成a人片综合在线 | 国产精品99久久久久的智能播放 | 国产剧情亚洲 | 在线观看视频国产一区 | 成人一区不卡 | 午夜国产成人 | 一级理论片在线观看 | 黄色三级av | 麻豆va一区二区三区久久浪 | 免费视频 你懂的 | 久久这里只有精品久久 | av大片网站 | 国产特级毛片aaaaaaa高清 | 成人黄色在线播放 | 免费手机黄色网址 | 六月激情久久 | 成人在线一区二区 | 国产高清中文字幕 | 日日夜夜天天综合 | 国产精品video爽爽爽爽 | 久久高清av | 中文字幕亚洲精品日韩 | 天天摸天天弄 | 一级黄色大片 | 91免费看黄 | 亚洲精品久久在线 | 午夜免费视频网站 | 久久av影院| 国产在线观看h | 在线看片a| 在线 国产 日韩 | 97在线视频观看 | av电影不卡| 五月婷婷丁香网 | 日日干天夜夜 | av九九九| 日韩欧美视频在线免费观看 | aaa日本高清在线播放免费观看 | 97视频播放| 色婷婷综合久久久久中文字幕1 | 中文字幕激情 | 国产日韩在线一区 | 日韩免费观看视频 | 九九九热精品 | 久久久免费精品国产一区二区 | 亚洲va欧美va人人爽春色影视 | 在线国产高清 | 黄色免费网站大全 | 久草在线99 | 成 人 黄 色 片 在线播放 | 日韩一区二区三免费高清在线观看 | 天天色天天 | 亚洲在线激情 | 最近日本字幕mv免费观看在线 | 国产精品久久久久久久婷婷 | 色噜噜狠狠狠狠色综合久不 | 国产精品美女 | 狠狠干网址 | 日精品 | 久草在线观看视频免费 | 精品国产福利在线 | 中文字幕在线资源 | 在线观看小视频 | 狠狠干夜夜操 | 天天操天天艹 | 四虎影视成人永久免费观看亚洲欧美 | 不卡av在线 | 日韩大片免费在线观看 | 99精品福利 | 草久中文字幕 | 亚洲国产免费 | 日韩欧美视频免费看 | 激情丁香5月 | 美女国产网站 | 久久久国产影视 | 99久久精品免费看国产 | 国产 一区二区三区 在线 | 国产黄色精品在线 | 久久成人欧美 | 国产精品久久久久久久久久东京 | 亚洲欧美日韩精品久久奇米一区 | 成年人看片 | 五月婷婷综合网 | 91麻豆操 | 2022国产精品视频 | 国产精品一区二区三区免费看 | 黄色大全视频 | 国产视频在线免费观看 | 91精品国产综合久久福利 | 天天操天天添 | 91大片网站| 九九免费观看视频 | 国产精品一区二区免费视频 | 亚洲美女精品区人人人人 | 91麻豆精品国产自产 | 在线观看视频三级 | 久草精品视频在线播放 | 国产精品成人久久久久久久 | 综合色综合 | 国产精品毛片久久蜜 | 特级西西人体444是什么意思 | 国产91在线播放 |