999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進殘差結構的肺結節檢測方法

2020-08-06 08:29:22石陸魁馬紅祺張朝宗樊世燕
計算機應用 2020年7期
關鍵詞:結構實驗檢測

石陸魁,馬紅祺,張朝宗,樊世燕

(1.河北工業大學人工智能與數據科學學院,天津 300401;2.河北省科學技術情報研究院,石家莊 050000)

(*通信作者電子郵箱shilukui@scse.hebut.edu.cn)

0 引言

近年來,肺癌患者的死亡率一直位居腫瘤患者發病率及死亡率的首位[1]。肺癌是由肺組織內不可控的細胞不規則生長所造成的疾病,這種不規則生長所形成的肺組織通常被稱為肺結節,是肺癌早期階段的征象,因此CT 圖像肺結節檢測對發現早期肺癌具有極其重要的價值。

傳統肺結節檢測方法中,候選結節特征提取的算法有很多,比較經典的算法有閾值法[2-3]、區域增長法[4-5]、形態學法[6-7]、聚類法[8]等。在去除假陽性方面,常用的方法有支持向量機[9]、K-近鄰[10]等。傳統肺結節檢測方法過程復雜,檢測結果依賴于每個環節的執行質量和執行效率,肺結節的形狀、尺寸及紋理等特征均需人工提取,自動化程度較低,如果選擇的肺結節特征不合適,就有可能遺漏部分結節信息,從而影響肺結節檢測結果。

近年來,卷積神經網絡由于其提取圖像特征能力強、參數量小、訓練時間短及泛化能力強等特點,被廣泛應用于醫學影像診斷領域。相較于傳統方法,深度學習方法可以自動提取數據的高級抽象特征,輸出的特征可以直接用于識別、分類和檢測,自動化程度高,也能達到較高的準確率。在肺結節檢測方面,研究人員提出了多視角卷積神經網絡[11]、多尺度卷積神經網絡[12]、多輸入卷積神經網絡[13]、3D 卷積神經網絡(3D Convolutional Neural Network,3D CNN)[14-15]以及二維卷積神經網絡(2D Convolutional Neural Network,2D CNN)與3D CNN結合的網絡結構[16]等模型,這些研究都是利用卷積神經網絡實現檢測肺結節的目的。在這些研究中,由于CT圖像本質上是3D 的,2D 網絡會忽略肺結節的空間特征,影響肺結節檢測準確率,3D CNN 可以考慮到CT圖像的三維特性,提取到肺結節的三維特征,更好地結合圖像的層間信息。但是卷積核尺寸限制網絡所能達到的最大感受野,更多專注于細節和局部特征,丟失了一定的全局信息,且3D網絡的參數很多,從而導致模型復雜度很大。除此之外,由于肺部CT 圖像數據量不足,正負樣本不平衡,網絡的過度復雜會導致模型過擬合現象嚴重,平均假陽性率高,影響檢測結果。

為此,本文采用Faster R-CNN[17],結合U-Net[18]的優點,利用深度可分離卷積[19]設計了一個改進殘差結構3D Res-DSC(3D Residual Depth Separation Convolution),并將此運用于肺結節檢測模型。該模型首先對肺部CT圖像進行數據預處理,將肺實質與肺間質分割;然后把增強后的數據輸入到具有改進殘差結構和U-Net 結構相結合的Faster R-CNN 模型中進行訓練,得到訓練好的模型;最后通過十折交叉驗證得出檢測結果,實現肺結節的精準檢測。

1 基于3D Res-DSC的肺結節檢測模型

肺結節檢測模型主要分為四個步驟:首先對原始CT圖像進行數據預處理,統一分辨率,去除噪聲、空洞等干擾因素;然后提取肺實質,減小圖像的搜索空間;接下來使用基于改進殘差結構3D Res-DSC 的檢測模型提取肺結節特征,去除假陽性結節的干擾;最終得到肺結節檢測結果。

1.1 數據來源

本文采用LUNA16 競賽數據集。LUNA16[20]是公開可用的肺結節數據集LIDC-LDRI[21]的子集,LIDC-LDRI 幾乎包含了所有低劑量肺動脈CT的相關信息,包括多位醫生對結節大小、位置、診斷結果、結節紋理、結節邊緣等信息的標注。而LUNA16是從LIDC-LDRI中刪除了層厚大于3 mm 的CT、層間距不一致或者缺失的層,只保留檢測標注,共計888 例低劑量肺部CT 圖像,其中共有1 186 個結節標簽。LUNA16 將這888例CT 圖像顯式地分為0~9 共10 個子集,方便進行十折交叉驗證。

1.2 數據預處理和肺實質分割

為了減小肺結節的檢測范圍,減少運算量并便于后續提取肺結節特征,需要對計算機斷層掃描所得到的原始肺部CT圖像進行預處理操作,以實現肺實質分割。預處理主要分為五步:

1)加載原始CT 數據和數據掩碼,對數據掩碼非零部分進行重采樣,將分辨率統一。

2)在肺部CT 圖像處理中,由于肺的灰度值HU(Hounsfield Unit,亨氏單位)值在-500 左右,因此將HU 值在[-1200,600]內的區域保留(從空氣到骨骼),超出此范圍的區域可以認定為與肺部疾病無關,因此為了便于歸一化,將原始數據范圍外的數據置為-1200 HU 或600 HU,保證數據范圍在[-1200,600]HU,再將數據歸一化至[0,255]。

3)對掩碼進行膨脹操作,去除肺內的小空洞。

4)將重采樣后的數據轉化為體素坐標,對其應用新的分辨率。

5)刪除背景區域,分割出肺實質,將預處理后的數據和標簽用數據特定格式.npy 的格式存儲,完成數據預處理部分。

1.3 3D Res-DSC結構

1.3.1 模型總體架構

在自然圖像檢測領域,多數研究采用現有的網絡結構進行訓練,而醫學圖像檢測與自然圖像檢測的差別較大。自然圖像檢測的類別非常多,它的目標是用更深的網絡提高目標的特征表示能力;醫學圖像的目標檢測,是針對一個特定的類別,更多的是一些細粒度類別的東西以及更多網絡結構的技巧,所以醫學圖像的檢測網絡不能太深,因此需要重新搭建一個適用于肺結節檢測的網絡模型。

為了使卷積神經網絡適應肺結節檢測任務,本文的改進主要從兩個方面著手:首先由于Faster R-CNN 在解決復雜的計算機視覺問題上取得了很好的效果,并被廣泛應用在許多領域[22-23],因此本文采用Faster R-CNN 作為基礎檢測網絡。將預處理后得到的肺實質圖像輸入到改進U-Net結構(U-Net-Like)作為特征提取主框架,然后將提取結果送入RPN 等后端檢測網絡執行目標檢測,從而得出肺結節檢測結果。采用基于3D Res-DSC的肺結節檢測模型如圖1所示。

圖1 基于3D Res-DSC的肺結節檢測模型Fig.1 Pulmonary nodule detection model based on 3D Res-DSC

在基于3D Res-DSC 結構的肺結節檢測模型中,特征提取網絡參照U-Net結構加以改進,形成本文采用的U-Net-Like結構,如圖2 所示。U-Net-Like 結構包括4 個卷積層、2 個反卷積層、4 個池化層和6 個3D Res-DSC 結構。由于GPU 內存限制,將整張CT圖像輸入到網絡不太現實,因此需要對圖像進行切割。首先將預處理后的CT圖像隨機地分割出96 ×96 ×96的結節和非結節立方體數據輸入到網絡中進行訓練,網絡的第一層和第二層卷積層的卷積核尺寸是3×3×3,步幅為1;接下來是四層步幅為2 的最大池化層和3D Res-DSC 層,將特征圖降維至6 ×6 ×6;然后再經過兩層反卷積和3D Res-DSC 操作,將特征圖升維至24 ×24 ×24;最后經過兩層3×3×3 的卷積層,輸出特征圖大小為24 ×24 ×24。將輸出特征圖輸入到RPN 網絡中進行后續目標檢測的訓練。訓練過程同時檢測出候選結節,并判定該候選結節是否為真實結節。測試過程是將訓練后的模型應用到測試集做測試,得出預測肺結節的坐標及概率,與真實肺結節標簽做對比,得出測試結果。

圖2 基于3D Res-DSC的U-Net-Like結構Fig.2 Structure of U-Net-Like based on 3D Res-DSC

1.3.2 改進的殘差結構

ResNet 是一種常見的CNN 結構模型。它的主要思想是在網絡中增加了直連通道,以保留之前網絡層的一定比例的輸出,實現特征重用,是消除深層網絡中梯度消失現象的一種有效方法[24]。因此基于殘差結構思想,本文提出一種改進的殘差結構3D Res-DSC,該結構保留原有基礎殘差結構的直連通道,使用矩形卷積核、深度可分離卷積以及預激活模塊,利用這三者的優勢,提高肺結節檢測模型的檢出率,降低模型的計算量和復雜度。改進的殘差結構示意圖如圖3所示。

圖3 基礎殘差結構與3D Res-DSC結構示意圖Fig.3 Schematic diagrams of basic residual block structure and 3D Res-DSC structure

首先,本文用3×5大小的矩形卷積核替換基礎殘差結構中的3×3 卷積核,相比原有的殘差結構,矩形卷積核可以獲得更大的感受野,關注肺結節全局特征,并捕獲更多的空間上下文。

其次,矩形卷積核會導致模型的計算量和復雜度有所增加,這可以通過采用深度可分離卷積操作來簡化網絡結構,控制模型的計算量和復雜度。深度可分離卷積將標準卷積分解為深度卷積和逐點卷積:深度卷積就是在普通卷積的基礎上,將卷積按照通道數進行分組后分別進行卷積;然后使用逐點卷積,即1×1大小的卷積核,保證特征圖大小不變,單獨對通道數進行卷積,從而實現卷積操作區域和通道相分離,原理圖如圖4 所示。深度可分離卷積可以在確保肺結節檢測的準確率情況下降低模型的計算量和復雜度,使肺結節檢測模型符合輕量級發展的要求。

圖4 深度可分離卷積操作原理圖Fig.4 Operation schematic diagram of deep separable convolution

最后,將基礎殘差結構中的后激活改為預激活,預激活模塊包含BN(Batch Normalization)和ReLU(Rectified Linear Unit)。原始的殘差單元盡管已經對信號進行了標準化,但是這個信號很快被合并到了快捷連接上,組合的信號并不是被標準化的,這個非標準化的信號又被用作下一個卷積層的輸入。這就導致提取到的肺結節特征的復雜化,從而導致過擬合嚴重。因此,在基礎殘差結構的基礎上,將BN 算法處理后的肺結節數據通過ReLU 激活函數進行激活,添加到每個卷積操作之前,保證所有卷積層的輸入都是經過標準化和激活操作。ReLU 激活操作不僅可以增加兩個卷積層間的非線性關系,也可以在保證網絡稀疏性的同時減少參數間的相互依存關系。BN 算法可以起到正則化的作用,改善特征復雜性。因此,在預激活模塊的作用下,肺結節的特征信息可以在整個網絡里自由地前向傳播和后向傳播。

1.3.3 損失函數

本文模型所使用的損失函數由兩部分組成:分類損失(Lcls)和回歸損失(Lreg)。分類損失Lcls是交叉熵函數,定義如下:

其中:

式中:n為批量大小,wn為權重,yn為anchor box的真值標簽,為預測概率。而回歸損失為:

其中:ti是一個向量,表示預測的結節框的4 個參數化坐標;是與positive anchor對應的真實結節框的坐標向量。H使用平滑L1損失函數:

其中:σ=3,。

2 實驗與結果分析

2.1 網絡評估指標

實驗中采用靈敏度(Sensitivity,Sen)、無限制接收者操作特征曲線下面積(Free-response area under the Receiver Operating Characteristic curve,FROC)得分、平均假陽性個數(average number of False Positives,FP)以及平均假陽性個數下的平均召回率(Challenge Performance Metric,CPM)指標來評估肺結節檢測算法的性能。靈敏度公式如下:

式中:Sen為靈敏度,TP為所有被正確檢出的結節的個數,FN為非肺結節被分為肺結節的個數,TP+FN為所有被檢出結節的個數。FROC 得分代表了檢測召回率和可容忍假陽性個數的綜合指標,FROC 得分越高,模型的性能越好。FP指檢測結果中出現的假陽性結節的數量,該值越小說明模型生成的平均假陽性數越少,模型性能越好。此外,取FROC 曲線上橫軸為1/8,1/4,1/2,1,2,4,8FP/s(False Positives per scan)的點的平均召回率作為評價指標CPM,CPM指標公式如下:

式中:Rc(i)為容忍CT 圖像中平均出現i個假陽性肺結節時肺結節的召回率。

2.2 實驗設置

現使用LUNA16 數據集的十組數據集,取其中九組病例作為訓練集,剩余一組病例作為測試集,對提出的檢測模型進行十折交叉驗證。在訓練中,針對每折驗證,通過隨機翻轉圖像、按比例裁剪圖像方法對數據進行數據增強,以緩解正負樣本不均衡的問題。對于每個模型,總共訓練200 個批次。此外,使用隨機梯度下降優化器對模型進行優化,其中隨機梯度下降的動量為0.9,權重衰減系數設為0.000 1。批處理大小參數受到GPU 存儲器的限制設置為8。采用學習率衰減策略,初始學習率設為0.01,當運行到67 批次變為0.001,134批次之后為0.000 5,160 批次之后為0.000 1。實驗比較了優化器、矩形卷積核、深度可分離卷積、預激活操作激活函數及結果的影響,并驗證了所提出的3D Res-DSC結構有效性。

本文實驗使用的操作系統環境為Ubuntu16.04 系統,GPU 顯卡為NVIDIA GeForce GTX 1080Ti,所有實驗都是基于Python 的Pytorch深度學習庫來實現。

2.3 實驗結果及分析

2.3.1 優化器對模型的影響

針對Faster R-CNN 模型中優化函數選擇的問題,比較了隨機梯度下降(SGD)、Adam、AdaGrad、AdaDelta四種優化函數的實驗效果。在其他參數設置相同的情況下,采用SGD、Adam、AdaGrad、AdaDelta 四種優化器函數在部分數據集上分別進行實驗,實驗結果如表1所示。

從表1 可以看出,在靈敏度性能上,前三者的性能相同,略低于AdaDelta;在FROC 性能方面SGD 和Adam 算法不相上下;SGD優化器函數能達到最好的FP值和CPM指標。綜合四種參數的實驗結果,在后邊的實驗中采用SGD優化器函數。

表1 優化器函數對模型的影響Tab.1 Influence of optimizer function on model

2.3.2 矩形卷積核對檢測結果的影響

為了比較基礎殘差結構中的卷積核大小對實驗結果產生的影響,分別使用3×3 卷積核、3×5 矩形卷積核進行實驗。圖5是十折交叉驗證下每折數據的實驗結果,表2是十折交叉驗證的綜合結果。

表2 不同尺寸卷積核條件下的綜合指標結果Tab.2 Results of comprehensive indexes under convolution kernels of different sizes

從圖5 十折交叉驗證的獨立結果來看,矩形卷積核的靈敏度共有8 折數據結果高于正方形卷積核,FP平均假陽性個數有6 折數據少于正方形卷積核,而FROC 得分和CPM 指標與正方形卷積核相比呈現持平狀態。綜合來看,使用矩形卷積核提高了肺結節檢測精度,降低了平均假陽性個數。由表2 十折交叉驗證的總體結果可知,使用矩形卷積核能達到較高的靈敏度和較低的假陽性率,FROC 得分和CPM 指標保持在較平穩的水平。實驗結果表明,適當地增加卷積核大小,可以增大卷積操作的感受野,更廣泛地提取肺結節特征,提高檢測效果。

圖5 十折交叉驗證下,不同卷積核條件下的靈敏度、FROC得分、FP值以及CPM指標比較Fig.5 Comparison of sensitivity,FROC score,FP value and CPM index under different convolution kernel conditions under 10-fold cross-validation

2.3.3 深度可分離卷積對檢測結果的影響

采用矩形卷積核在提高精度的同時,也增加了網絡的復雜度,這可以利用深度可分離卷積操作來解決。為了測試深度可分離卷積操作的效果,選取部分數據進行測試,實驗(A)表示在基礎殘差結構上的結果,實驗(B)表示在基礎殘差結構的結構上使用矩形卷積核的結果,實驗(C)表示在基礎殘差結構上使用深度可分離卷積的結果,實驗(D)表示使用矩形卷積核、深度可分離卷積和預激活操作的改進殘差結構的結果,實驗結果表3 所示。其中用RCK(Rectangular Convolution Kernel)表示矩形卷積核操作,DSC(Depth Separable Convolution)代表深度可分離卷積操作,PAO(PreActivation Operation)表示預激活操作。

由表3 可以看出,在部分測試集上,當基礎殘差結構增加深度可分離卷積操作后,靈敏度稍有下降,但是FROC 得分、CPM 指標提高了近5 個百分點。而在計算量和復雜度方面,當單獨使用深度可分離卷積操作時,生成模型大小約為基礎殘差結構的1/13。而單獨使用矩形卷積核操作時,生成的網絡模型大小相比基礎殘差結構增加了近3/5。通過結合矩形卷積核、深度可分離卷積和預激活操作,3D Res-DSC 模型不但提高檢測效果,且生成模型的規模大幅度降低。結果表明:相比基礎殘差結構,使用深度可分離卷積操作,可以保證肺結節檢測的精度的同時,模型計算量和復雜度大幅度降低。

表3 深度可分離卷積在部分測試集上的性能測試結果以及模型大小Tab.3 Performance test results and model sizes of deep separable convolutions on some test sets

2.3.4 預激活對檢測結果的影響

預激活的作用主要是改善模型的正則化,減少模型的過擬合。為了驗證預激活操作對模型的有效性,選取部分數據進行測試。實驗(A)表示在基礎殘差結構上的結果,實驗(B)表示在基礎殘差結構的基礎上增加預激活操作的結果,實驗(C)表示在預激活的基礎上使用矩形卷積核的結果,結果如表4 所示。從表4中可以看出,當使用預激活操作時,靈敏度保持平穩的同時,FROC 得分增加近一個百分點;在此基礎上再增加矩形卷積核,進一步提高了靈敏度和FROC。結果表明通過增加預激活操作可以提高模型的檢測效果。

表4 采用預激活操作在部分測試集上的性能測試結果Tab.4 Performance test results on some test sets using pre-activation operation

2.3.5 3D Res-DSC結構實驗結果

為了驗證3D Res-DSC 結構的有效性,在888 例病例中的1 186 個結節上進行十折交叉驗證,實驗結果如圖6、7 和表5所示。

在圖6中,FROC 曲線橫軸代表平均在每個CT 圖像中可容忍檢測出的假陽性肺結節(False Positives per scan,FP/s),縱軸代表檢測正確肺結節占所有肺結節的比率,即召回率。FROC 曲線得分越高,模型的性能越好。由曲線可以看出,在檢出率和假陽性方面,3D Res-DSC 結構優于基礎殘差結構。數據顯示,基礎殘差結構模型的平均假陽性個數為64,而3D Res-DSC 結構模型的平均假陽性個數降低到51,在提高了檢出率的同時降低了假陽性率。

圖6 3D Res-DSC和基礎殘差塊在反映靈敏度與平均假陽性個數關系的FROC曲線Fig.6 FROC curves of 3D Res-DSC and basic residual block on reflecting relationship between sensitivity and average number of false positives

由表5可以看出,相比基礎殘差結構模型,3D Res-DSC 改進殘差結構模型將靈敏度提高了3.8個百分點,FROC 得分提高了3.43個百分點,CPM指標也提高了近4個百分點。

表5 基礎殘差塊與3D Res-DSC的綜合性能指標對比Tab.5 Comparison of comprehensive performance indexes of basic residual block and 3D Res-DSC structure

由圖7可以看出,對每折數據,3D Res-DSC 結構都提高了靈敏度和FROC得分。

圖7 基礎殘差塊與3D Res-DSC的靈敏度、FROC得分、FP值及CPM指標比較Fig.7 Comparison of sensitivity,FROC score,FP value and CPM index of basic residual block and 3D Res-DSC

為了直觀地展示基于3D Res-DSC 結構的肺結節檢測模型的效果,需要檢測出肺結節的可疑區域以后,將其在原始CT 圖像上顯示出來,具體做法為找出肺結節對應的切片,并圈出結節。首先,讀取原始CT 圖像的信息,里面包含CT 圖像的全部信息。根據原始圖像標簽信息,框出該CT圖像切片中肺結節的位置所在。其次,根據模型生成的檢測結果,圈出檢測后各個切片的肺結節所在位置。需要強調的是,由于檢測結果中存在假陽性結節,因此檢測出的肺結節不止有一個,且分布于不同的切片,有些結節位于同一張切片,一般來講,單張切片的肺結節個數不會超過三個。對于位置相近的切片,將肺結節的位置集合在同一張切片上,以供檢驗。

兩種結構的模型檢測結果展示如圖8 所示。在圖8中,(a)是真實的肺結節標簽,(b)是基礎殘差塊模型的檢測結果,(c)是3D Res-DSC結構的檢測結果。在測試病例1,2中,基于基礎殘差結構的模型和基于3D Res-DSC 結構的模型均可檢測到真陽性肺結節,但前者的假陽性數量明顯多于后者。在測試病例3中,基于基礎殘差結構的模型沒有檢測出真陽性肺結節,然而基于3D Res-DSC 結構的模型可以檢測到真實的肺結節位置。結果表明,基于3D Res-DSC 結構的模型提高了肺結節檢測的靈敏度,降低平均假陽性個數。

圖8 兩種結構的模型檢測結果Fig.8 Detection results of models based on basic residual block and 3D Res-DSC structures

2.4 與其他方法的比較

為了驗證算法的有效性,將本文算法的檢測結果與其他檢測方法進行了比較,實驗結果如表6所示。

表6 不同方法在LUNA16數據集上的結果比較Tab.6 Comparison of different algorithms on LUNA16 dataset

文獻[25]首先將肺結節進行三維重建,然后將不同視角的2.5D切片輸入到深度信念網絡中進行訓練,最后通過不同的融合策略完成肺結節的識別。該方法雖然達到了較高的靈敏度,但是并未充分利用肺結節的三維特征。文獻[19]使用二維卷積神經網絡來學習肺結節的圖像特征,相比傳統算法,二維卷積神經網絡所達到的準確率有了大幅提升,但是基于單一的2D切片所構造的模型無法充分獲取結節的立體信息,所以達不到理想的結果。文獻[26]采用基礎殘差結構和DPN雙路徑網絡結構,達到了較高的檢測結果,但是模型復雜度和平均假陽性相對較高。文獻[27]使用三維特征金字塔網絡,網絡層數較深,模型復雜度高,且只關注FROC 得分指標,并沒有綜合考慮其他檢測指標。本文提出的3D Res-DSC 方法,取得了較高的靈敏度,降低了假陽性指標,且模型復雜度也有了較大幅度的降低。在表6中,文獻[25]、文獻[19]中只給出了靈敏度一個評價指標,這里也只列出該指標。文獻[26]中涉及到雙路徑網絡和殘差網絡兩個肺結節檢測模型,表中第3行和第4行分別列出來了兩個模型的結果。

從實驗結果可以看出,本文所提出的基于改進殘差結構的3D Res-DSC 卷積神經網絡肺結節檢測模型不但在靈敏度、FROC 得分、平均假陽性個數以及CPM 指標方面優于其他算法;而且該模型復雜度低,計算量小,具有較高的計算效率。

3 結語

肺結節是肺癌早期階段的征象,從CT圖像中準確地檢測肺結節對肺癌預防和治療具有重要的作用。為了有效檢測CT 圖像中的肺結節,本文以Faster R-CNN 為基礎,結合CT 數據的三維特性以及U-Net 編碼解碼器結構,提出了一個基于三維改進殘差結構3D Res-DSC 的Faster R-CNN 模型。該模型通過使用矩形卷積核、深度可分離卷積操作以及預激活操作改進殘差結構,對各種復雜特征的肺結節圖像具有更強的特征提取能力,同時降低了模型的計算量。在LUNA16 數據集上的實驗結果表明,所提模型在提高了肺結節檢測的靈敏度的同時,有效降低了肺結節檢測結果的平均假陽性個數,同時降低了模型的復雜度,能夠有效提取3D醫療圖像中的肺結節。下一步將在數據規模擴充、總體網絡結構以及參數的優化等多個方面對模型進一步優化。

猜你喜歡
結構實驗檢測
記一次有趣的實驗
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
做個怪怪長實驗
論《日出》的結構
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 99er精品视频| 精品久久综合1区2区3区激情| 午夜福利视频一区| 91九色视频网| 国产一区二区三区精品久久呦| 中文字幕欧美日韩| 婷婷午夜天| 亚洲综合第一区| 国产一级片网址| 极品国产一区二区三区| 国产自在线播放| 五月天久久综合国产一区二区| 久久99精品久久久久久不卡| 好吊色妇女免费视频免费| 国产精品专区第1页| 玩两个丰满老熟女久久网| 蜜桃臀无码内射一区二区三区| 久久久久亚洲精品成人网| 五月婷婷综合色| 怡春院欧美一区二区三区免费| 亚洲日本中文字幕乱码中文| 日韩国产黄色网站| 欧美在线黄| 亚洲欧美日韩精品专区| 国产精品自在在线午夜区app| 免费A级毛片无码免费视频| 亚洲成人网在线播放| 综合五月天网| 97成人在线视频| 亚洲欧美日韩另类在线一| 免费人成在线观看成人片| 久久伊人操| 原味小视频在线www国产| 高清欧美性猛交XXXX黑人猛交| 农村乱人伦一区二区| 一级毛片免费高清视频| 国产日韩久久久久无码精品| 亚洲国产精品一区二区第一页免| 日本三级黄在线观看| 欧美国产三级| 国产福利一区二区在线观看| 欧美午夜视频| 国产打屁股免费区网站| 日本成人不卡视频| 亚洲欧美激情另类| 国产粉嫩粉嫩的18在线播放91| 久久久四虎成人永久免费网站| a毛片在线| 国产成人亚洲无码淙合青草| 欧美不卡二区| 99在线国产| 另类欧美日韩| 日本人真淫视频一区二区三区 | 亚洲五月激情网| 日韩精品一区二区三区大桥未久| 成人一区在线| 国产h视频免费观看| 国产天天射| 国产乱人激情H在线观看| 久久黄色一级视频| 亚洲av无码人妻| 久久国产精品电影| 国产真实二区一区在线亚洲| 中文字幕一区二区视频| 人妻精品久久无码区| 亚洲日韩久久综合中文字幕| 精品国产女同疯狂摩擦2| 国产一在线| 国产成人无码久久久久毛片| 国产精品开放后亚洲| 亚洲中字无码AV电影在线观看| 九九热视频在线免费观看| 亚洲福利一区二区三区| 国产欧美日韩免费| 欧美不卡视频一区发布| 囯产av无码片毛片一级| 激情成人综合网| 欧美成a人片在线观看| 精品国产成人a在线观看| 丁香婷婷激情综合激情| 男人天堂亚洲天堂| 久久夜色精品国产嚕嚕亚洲av|