欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

藥品包裝盒數(shù)據(jù)集VOC+YOLO雙格式:從標(biāo)注解讀到Y(jié)OLO訓(xùn)練避坑指南

藥品包裝盒數(shù)據(jù)集VOC+YOLO雙格式:從標(biāo)注解讀到Y(jié)OLO訓(xùn)練避坑指南 簡介這份藥品包裝盒目標(biāo)檢測數(shù)據(jù)集面向計(jì)算機(jī)視覺入門者、算法研究及工業(yè)質(zhì)檢項(xiàng)目開發(fā)者提供統(tǒng)一格式的真實(shí)場景圖像解決訓(xùn)練檢測模型時(shí)缺乏高質(zhì)量標(biāo)注數(shù)據(jù)的痛點(diǎn)。壓縮包共2000個(gè)文件包含1032張藥品包裝盒圖片、VOC格式xml標(biāo)注和YOLO格式txt標(biāo)注整體大小約27.95MB便于下載和部署同一圖像同時(shí)提供兩種格式標(biāo)注可在Pascal VOC與YOLO訓(xùn)練框架間無縫切換。數(shù)據(jù)集中僅含box一個(gè)類別共1468個(gè)矩形框均由labelImg人工框選標(biāo)注規(guī)范。已有1285人學(xué)習(xí)/下載拿到后可自行劃分訓(xùn)練集與驗(yàn)證集用于YOLO、Faster R-CNN等模型訓(xùn)練也可服務(wù)于藥品包裝檢測、藥房自動(dòng)盤點(diǎn)、包裝缺損識(shí)別等場景。1. 藥品包裝盒數(shù)據(jù)集1032張雙格式標(biāo)注圖省掉從零標(biāo)框的幾天時(shí)間做藥品包裝盒識(shí)別時(shí)最耽誤時(shí)間的不是寫模型而是標(biāo)數(shù)據(jù)。去過藥廠倉庫的人都知道藥盒反光、瓶身和盒子挨得近、同類包裝尺寸差異不大框稍微偏一點(diǎn)訓(xùn)練出來的效果就差很多。這份藥品包裝盒數(shù)據(jù)集正好解決這個(gè)問題1032張圖片已經(jīng)全部標(biāo)注完成同時(shí)給出VOC和YOLO兩種格式按需取用就能直接進(jìn)訓(xùn)練流程。整理這份筆記時(shí)我把目錄結(jié)構(gòu)、坐標(biāo)格式、訓(xùn)練命令和踩過的坑都過了一遍結(jié)論是它適合兩類人手頭有藥品檢測需求但不想從零標(biāo)框的開發(fā)者以及想用一份干凈數(shù)據(jù)練習(xí)YOLO目標(biāo)檢測完整流程的入門者。下面按“先看結(jié)構(gòu)→再訓(xùn)練→后避坑”的順序展開。2. 拆開壓縮包前先搞懂VOC與YOLO標(biāo)注目錄、坐標(biāo)與類別的三個(gè)細(xì)節(jié)2.1 目錄結(jié)構(gòu)里到底有什么JPEGImages、Annotations、labels 三件套很多從網(wǎng)上下數(shù)據(jù)集的人第一反應(yīng)是直接解壓找圖片和標(biāo)注文件然后隨便指定一個(gè)路徑丟給訓(xùn)練腳本。這個(gè)做法不是不能跑而是很容易讓標(biāo)注文件和圖片錯(cuò)位。我的習(xí)慣是先看目錄結(jié)構(gòu)再抽樣看兩個(gè)標(biāo)注文件最后才會(huì)動(dòng)訓(xùn)練命令。這份數(shù)據(jù)集既然同時(shí)給了VOC和YOLO兩種格式解壓后的目錄一般會(huì)沿用Pascal VOC時(shí)代留下來的組織方式data/ ├── JPEGImages/ # 全部圖片jpg格式 ├── Annotations/ # VOC格式標(biāo)注每張圖對(duì)應(yīng)一個(gè)xml ├── labels/ # YOLO格式標(biāo)注每張圖對(duì)應(yīng)一個(gè)txt └── ImageSets/Main/ # 劃分文件 ├── train.txt ├── val.txt └── test.txtJPEGImages放圖片Annotations放VOC的xmllabels放YOLO的txtImageSets/Main里是數(shù)據(jù)集劃分。需要注意不同發(fā)布者打包習(xí)慣不一樣有的把labels做成了扁平的labels/*.txt有的直接給出labels/train和labels/val。先不要急著開始訓(xùn)練用命令數(shù)一下三個(gè)目錄文件數(shù)是否一致。ls JPEGImages | wc -l ls Annotations | wc -l ls labels | wc -l如果三個(gè)數(shù)字不一樣大概率存在漏標(biāo)或者多余的xml/txt這種情況訓(xùn)練時(shí)會(huì)直接報(bào)錯(cuò)。1032張圖對(duì)應(yīng)的xml和txt理論上都應(yīng)該是1032個(gè)但偶爾會(huì)因壓縮包傳輸丟文件出現(xiàn)數(shù)量不一致先在這一步確認(rèn)清楚。2.2 坐標(biāo)定義不同VOC的絕對(duì)框和YOLO的歸一化中心這個(gè)數(shù)據(jù)集叫“VOCYOLO格式”實(shí)際意思是同一種標(biāo)注用兩種文件表達(dá)。VOC格式存的是XML目標(biāo)框?qū)懗山^對(duì)像素坐標(biāo)YOLO格式存的是文本每行一個(gè)目標(biāo)內(nèi)容是類別id加歸一化中心點(diǎn)坐標(biāo)和歸一化寬高。給個(gè)例子更直觀。annotation folderJPEGImages/folder filenameimg_0001.jpg/filename size width1920/width height1080/height depth3/depth /size object namemedicine_box/name bndbox xmin420/xmin ymin180/ymin xmax720/xmax ymax520/ymax /bndbox /object /annotation這是標(biāo)準(zhǔn)的Pascal VOC標(biāo)注img_0001.jpg對(duì)應(yīng)的YOLO標(biāo)簽文件img_0001.txt內(nèi)容只有一行0 0.296875 0.324074 0.156250 0.314815第一格0是類別id后面四個(gè)數(shù)分別是 x_center (420 720) / 2 / 1920 0.296875 y_center (180 520) / 2 / 1080 0.324074 w (720 - 420) / 1920 0.15625 h (520 - 180) / 1080 0.314815四個(gè)坐標(biāo)全被歸一化到0到1之間不同分辨率的圖片就可以放進(jìn)同一個(gè)batch訓(xùn)練。很多人第一次看YOLO標(biāo)注會(huì)奇怪為什么只有一個(gè)框還要這么多位小數(shù)其實(shí)就是把絕對(duì)像素?fù)Q算過去的。如果出現(xiàn)x_center或?qū)捀叽笥?那就是標(biāo)注越界了后面第5章會(huì)詳細(xì)說。2.3 一眼看清類別與劃分用一段腳本統(tǒng)計(jì)標(biāo)簽在開訓(xùn)之前我一般會(huì)先統(tǒng)計(jì)兩類信息類別數(shù)量以及每個(gè)類別在train/val/test里的分布。這個(gè)數(shù)據(jù)集從標(biāo)題看是藥品包裝盒最常見的標(biāo)注是單個(gè)medicine_box類但也不排除發(fā)布者把不同藥盒品牌標(biāo)成了多類。在寫data.yaml之前必須知道到底有幾個(gè)類別否則nc寫錯(cuò)訓(xùn)練直接報(bào)錯(cuò)。import glob from collections import Counter label_files glob.glob(labels/*.txt) cls_counter Counter() all_ids set() for path in label_files: with open(path) as fp: for line in fp: line line.strip() if line: cls_id int(line.split()[0]) all_ids.add(cls_id) cls_counter[cls_id] 1 print(類別id集合:, sorted(all_ids)) print(類別id - 目標(biāo)數(shù):, dict(cls_counter)) missing [] for img_path in glob.glob(JPEGImages/*.jpg): stem img_path.split(/)[-1].replace(.jpg, ) if not glob.glob(flabels/{stem}.txt): missing.append(stem) print(缺標(biāo)簽的圖片數(shù):, len(missing), missing[:5])這段腳本做的事情很簡單遍歷所有l(wèi)abels/*.txt把每行第一個(gè)數(shù)字拿出來計(jì)數(shù)得到類別id是哪些、每個(gè)id出現(xiàn)多少次。然后反過來查JPEGImages里的jpg是否都有同名txt有缺就打印出具體文件名方便后面定位。參數(shù)上要注意兩點(diǎn)。第一類別id從0開始是YOLO系約定如果統(tǒng)計(jì)結(jié)果里出現(xiàn){1: 1032}而沒有任何0說明發(fā)布者把類別id從1開始編了訓(xùn)練前要把txt批量減1。第二腳本默認(rèn)labels是扁平目錄如果labels下還有train和val子目錄就把glob路徑改成labels//.txt。這里不要硬編碼絕對(duì)路徑方便在解壓目錄直接跑。3. 用YOLO訓(xùn)練藥盒檢測從數(shù)據(jù)重排到第一個(gè)best.pt3.1 把雙格式整理成YOLO標(biāo)準(zhǔn)目錄先用2.3的腳本確認(rèn)了類別和標(biāo)簽完整性接下來要把文件挪成Ultralytics YOLO認(rèn)識(shí)的標(biāo)準(zhǔn)目錄。YOLOv5、YOLOv8和YOLO11的默認(rèn)數(shù)據(jù)布局都是datasets/ ├── images/ │ ├── train/ │ └── val/ └── labels/ ├── train/ └── val/如果你拿到的包已經(jīng)按這個(gè)布局組織直接跳到3.2。如果只有一個(gè)扁平的labels目錄就要按ImageSets/Main下的train.txt、val.txt、test.txt來重新放。這個(gè)步驟我一般用Python完成幾秒搞定。import os import shutil from pathlib import Path root Path(.) # 數(shù)據(jù)集解壓根目錄 split_map {train.txt: train, val.txt: val, test.txt: test} for split_file, subset in split_map.items(): split_path root / ImageSets / Main / split_file if not split_path.exists(): continue os.makedirs(root / images / subset, exist_okTrue) os.makedirs(root / labels / subset, exist_okTrue) with open(split_path) as fp: for line in fp: line line.strip() if not line: continue stem line.split(/)[-1] if stem.endswith(.jpg): stem stem[:-4] img_src root / JPEGImages / f{stem}.jpg lbl_src root / labels / f{stem}.txt if img_src.exists(): shutil.copy(img_src, root / images / subset / f{stem}.jpg) else: print(f[warn] 圖片不存在: {img_src}) if lbl_src.exists(): shutil.copy(lbl_src, root / labels / subset / f{stem}.txt) else: print(f[warn] 標(biāo)簽不存在: {lbl_src})這里有個(gè)容易踩的細(xì)節(jié)ImageSets/Main里的行內(nèi)容可能是純文件名img_0001也可能是帶路徑的JPEGImages/img_0001.jpg。代碼里用split(/)[-1]取最后一段再判斷是否以.jpg結(jié)尾就是為了兼容這兩種寫法。shutil.copy是復(fù)制而不是移動(dòng)保留原目錄文件這樣后續(xù)想對(duì)比VOC不會(huì)破壞原始數(shù)據(jù)。磁盤空間緊張時(shí)可以把copy改成move。3.2 寫data.yaml并檢查數(shù)據(jù)集train/val整理好后需要寫一個(gè)data.yaml告訴訓(xùn)練器類別名和路徑。放在數(shù)據(jù)集根目錄下我一般命名為medicine_box.yaml。# 數(shù)據(jù)集根目錄建議用絕對(duì)路徑避免不同機(jī)器工作目錄不一樣 path: /home/user/datasets/medbox train: images/train val: images/val # test 可留空也能在訓(xùn)練后單獨(dú)跑test test: images/test nc: 1 names: 0: medicine_box參數(shù)說明path是根目錄train和val都是相對(duì)path的路徑。names的鍵從0開始順序和標(biāo)簽txt里的類別id嚴(yán)格對(duì)應(yīng)。如果你統(tǒng)計(jì)出來是多類names里要按順序列全比如0: box_a, 1: box_b。寫完先用一行命令驗(yàn)證數(shù)據(jù)集能否加載。yolo detect train datamedicine_box.yaml epochs0 batch1 device0epochs0是Ultralytics的一種快速檢查方式它不會(huì)真正訓(xùn)練只做數(shù)據(jù)集加載并打印train/val圖片數(shù)和類別數(shù)。如果這里報(bào)錯(cuò)不要急著調(diào)模型先回頭查目錄結(jié)構(gòu)和yaml。提示多人協(xié)作時(shí)絕對(duì)路徑會(huì)導(dǎo)致別人機(jī)器上失效這種情況可以用相對(duì)path例如path: ./datasets/medbox。但相對(duì)路徑是從終端工作目錄解析容易踩坑所以單機(jī)訓(xùn)練我始終用絕對(duì)路徑。3.3 訓(xùn)練參數(shù)怎么定epochs、imgsz、batch 與預(yù)訓(xùn)練權(quán)重?cái)?shù)據(jù)集就緒接下來就是訓(xùn)練。以Ultralytics YOLO為例一行命令能跑yolo detect train datamedicine_box.yaml modelyolov8n.pt epochs100 batch16 imgsz640 device0我針對(duì)1032張這種量級(jí)的選參習(xí)慣是預(yù)訓(xùn)練權(quán)重從yolov8n或yolov8s開始先用n跑通流程再看效果換sepochs默認(rèn)給100訓(xùn)練時(shí)會(huì)通過早停機(jī)制自動(dòng)截?cái)嗖挥脼榱藴悢?shù)去改imgsz保持640這是YOLO系列的默認(rèn)輸入尺寸如果藥盒在圖中比較小可以提高到960或1280但顯存占用和訓(xùn)練時(shí)間會(huì)明顯上漲batch在顯存允許范圍內(nèi)盡量大16G顯存跑yolov8n時(shí)batch16沒問題6G顯存就改batch8。訓(xùn)練過程中終端除了每輪的mAP還會(huì)打印box_loss、cls_loss、dfl_loss這幾個(gè)yolo損失函數(shù)分量。很多人只看最后的mAP50其實(shí)觀察損失曲線更有用如果loss在前20輪不降反升大部分情況是學(xué)習(xí)率過大或數(shù)據(jù)集劃分有問題如果loss降了但mAP不動(dòng)就要檢查是不是藥盒目標(biāo)本身太相似導(dǎo)致分類學(xué)不動(dòng)。如果你想控制數(shù)據(jù)增強(qiáng)訓(xùn)練命令里可以加augment相關(guān)參數(shù)yolo detect train datamedicine_box.yaml modelyolov8s.pt epochs120 batch16 imgsz640 scale0.5 fliplr0.5 mosaic1.0scale控制隨機(jī)縮放范圍fliplr是水平翻轉(zhuǎn)概率mosaic是馬賽克增強(qiáng)。藥盒檢測通常不需要太多翻轉(zhuǎn)因?yàn)榘b盒上的文字方向有實(shí)際含義豎直方向翻轉(zhuǎn)反而會(huì)讓模型學(xué)到錯(cuò)誤特征。3.4 訓(xùn)練產(chǎn)物和損失曲線怎么看訓(xùn)練結(jié)束后在runs/detect/train目錄會(huì)生成weights/best.pt、weights/last.pt、results.png、confusion_matrix.png、args.yaml等一堆文件。最常用的是兩個(gè)權(quán)重best.pt是驗(yàn)證集效果最好的模型last.pt是最后一輪epoch的模型。日常推理和部署直接取best.pt不要為了“多訓(xùn)幾輪更好”就默認(rèn)用last.pt。last.pt更適合在斷點(diǎn)續(xù)訓(xùn)時(shí)作為預(yù)訓(xùn)練權(quán)重。results.png是訓(xùn)練過程的匯總圖從上到下分別是box_loss、cls_loss、dfl_loss、precision、recall、mAP50、mAP50-95??催@條曲線如果最后的mAP50在0.5以下大概率是標(biāo)注不全或類別混淆如果mAP50能到0.8以上但mAP50-95掉得厲害說明框沒有貼合邊界藥盒邊緣被壓線了。這些都是經(jīng)驗(yàn)值不同場景會(huì)有浮動(dòng)但能幫你在調(diào)參前快速定位問題方向。驗(yàn)證時(shí)還可以看confusion_matrix.png理清哪兩類容易互相誤檢。4. 反向使用VOC格式XML轉(zhuǎn)YOLO腳本與舊工程兼容方案4.1 為什么VOC格式到今天還有用雙格式數(shù)據(jù)集里YOLO txt顯然是新工程首選那XML還有必要留嗎有的而且用到的頻率不低。本地標(biāo)注工具如果不換labelImg導(dǎo)出就是VOC XML很多公司老代碼庫里的檢測pipeline只寫了讀VOC的Loader比如基于Detectron2或Faster R-CNN的工程還有做數(shù)據(jù)審核的同事習(xí)慣在labelImg里打開XML回看標(biāo)注。這種情況下直接把訓(xùn)練用的txt再轉(zhuǎn)回XML比重新標(biāo)注快得多。Pascal VOC這套XML標(biāo)準(zhǔn)雖然老但勝在結(jié)構(gòu)透明任何語言都能用標(biāo)準(zhǔn)庫解析不帶額外依賴。所以拿到“VOCYOLO格式”的數(shù)據(jù)集等于同時(shí)拿到了一條通往老框架和YOLO訓(xùn)練的通路。而反過來當(dāng)你從別的數(shù)據(jù)集拿到只有XML的標(biāo)注想用YOLO跑也需要把XML轉(zhuǎn)成txt。這個(gè)轉(zhuǎn)換不應(yīng)該靠手工重復(fù)下面給兩個(gè)小腳本第一步是從XML轉(zhuǎn)到Y(jié)OLO。4.2 XML轉(zhuǎn)YOLO txt一個(gè)不讀圖片的高效腳本用Python標(biāo)準(zhǔn)庫xml.etree.ElementTree解析XML圖片寬高直接從XML的size節(jié)點(diǎn)讀取不需要額外打開圖片速度會(huì)快很多。import xml.etree.ElementTree as ET import glob import os CLASS_NAMES [medicine_box] # 需要和訓(xùn)練用的類別順序保持一致 def xml_to_yolo(xml_path, out_dir): tree ET.parse(xml_path) root tree.getroot() img_w int(root.findtext(size/width)) img_h int(root.findtext(size/height)) stem os.path.splitext(os.path.basename(xml_path))[0] lines [] for obj in root.findall(object): name obj.findtext(name) if name not in CLASS_NAMES: continue cls_id CLASS_NAMES.index(name) bndbox obj.find(bndbox) xmin float(bndbox.findtext(xmin)) ymin float(bndbox.findtext(ymin)) xmax float(bndbox.findtext(xmax)) ymax float(bndbox.findtext(ymax)) x_center (xmin xmax) / 2.0 / img_w y_center (ymin ymax) / 2.0 / img_h w (xmax - xmin) / img_w h (ymax - ymin) / img_h lines.append(f{cls_id} {x_center:.6f} {y_center:.6f} {w:.6f} {h:.6f}) os.makedirs(out_dir, exist_okTrue) with open(os.path.join(out_dir, f{stem}.txt), w) as fp: fp.write(\n.join(lines)) for xml_file in glob.glob(Annotations/*.xml): xml_to_yolo(xml_file, labels_from_xml)這個(gè)腳本有幾個(gè)值得說的點(diǎn)。findtext(size/width)能直接拿到size下的width文本比一層層find再.text省事bndbox里的xmin、ymin這些XML節(jié)點(diǎn)文本存的是字符串轉(zhuǎn)float后再做算術(shù)避免字符串拼接造成隱式錯(cuò)誤最后寫入時(shí)小數(shù)位統(tǒng)一保留6位訓(xùn)練解析時(shí)不會(huì)因?yàn)榫葐栴}丟邊界。CLASS_NAMES的順序必須和最終訓(xùn)練yaml里names順序完全一致否則框還是那些框但類別標(biāo)簽全錯(cuò)位了。4.3 反過來把YOLO txt還原成VOC XML用于校對(duì)如果你想在labelImg里檢查YOLO標(biāo)注或者喂給只認(rèn)VOC的老框架就需要反向轉(zhuǎn)換。轉(zhuǎn)換公式是剛才的逆運(yùn)算def yolo_to_xml(txt_path, img_w, img_h, out_dir): stem os.path.splitext(os.path.basename(txt_path))[0] xml_lines [ annotation, f filename{stem}.jpg/filename, size, f width{img_w}/width, f height{img_h}/height, depth3/depth, /size ] with open(txt_path) as fp: for line in fp: parts line.strip().split() if not parts: continue cls_id, x_cent, y_cent, w, h parts xmin (float(x_cent) - float(w) / 2) * img_w ymin (float(y_cent) - float(h) / 2) * img_h xmax (float(x_cent) float(w) / 2) * img_w ymax (float(y_cent) float(h) / 2) * img_h # CLASS_NAMES 由外部傳入順序與訓(xùn)練時(shí)一致 xml_lines.append( object) xml_lines.append(f name{CLASS_NAMES[int(cls_id)]}/name) xml_lines.append( bndbox) xml_lines.append(f xmin{xmin:.0f}/xmin) xml_lines.append(f ymin{ymin:.0f}/ymin) xml_lines.append(f xmax{xmax:.0f}/xmax) xml_lines.append(f ymax{ymax:.0f}/ymax) xml_lines.append( /bndbox) xml_lines.append( /object) xml_lines.append(/annotation) with open(os.path.join(out_dir, f{stem}.xml), w) as fp: fp.write(\n.join(xml_lines))這段代碼要注意的是圖片寬高必須傳入因?yàn)閅OLO txt里只有歸一化坐標(biāo)沒有圖片尺寸信息。實(shí)際工程里圖片尺寸可以從JPEGImages下同名jpg用PIL讀出來但那樣會(huì)慢所以一般先用一次glob讀出所有圖片尺寸存成字典再批量轉(zhuǎn)換。另一個(gè)細(xì)節(jié)還原出來的xmin/ymin用取整輸出四舍五入到整像素labelImg讀進(jìn)去不會(huì)有問題如果要給訓(xùn)練器用也可以保留小數(shù)不取整。有了這兩個(gè)轉(zhuǎn)換函數(shù)這套VOCYOLO雙格式數(shù)據(jù)集就能自由在舊工程和YOLO生態(tài)之間切換。偶爾需要新增數(shù)據(jù)時(shí)用labelImg標(biāo)一批XML再跑一遍4.2腳本轉(zhuǎn)成txt并入原有目錄即可。5. 避坑這類數(shù)據(jù)集最常見的四個(gè)翻車點(diǎn)5.1 類別數(shù)對(duì)不上訓(xùn)練報(bào) class index out of range 怎么查訓(xùn)練剛開始不到兩分鐘就崩常見報(bào)錯(cuò)是AssertionError: class index ... out of range或者Invalid label file。原因基本是三類data.yaml的nc和names沒有嚴(yán)格對(duì)齊labels目錄里混入了別的數(shù)據(jù)集txt類別id超過了nc發(fā)布者把類別id從1開始計(jì)數(shù)導(dǎo)致最大id超出names長度。解決方法是先跑2.3的統(tǒng)計(jì)腳本把整個(gè)labels目錄的類別id列出來。你要確認(rèn)最小id是0最大id小于nc。然后打開classes.txt和xml里的name比對(duì)確認(rèn)names順序不是按字母序而是按訓(xùn)練字典。我遇到過更隱蔽的情況xml里只有box一個(gè)類但某個(gè)txt里混著一行舊的類別id 5這種通常來自發(fā)布者合并數(shù)據(jù)集時(shí)漏刪文件直接用文件路徑定位后刪掉那一行即可。5.2 藥盒緊貼圖邊letterbox后框越界漏檢現(xiàn)象是訓(xùn)練正常但val圖片里靠邊的藥盒經(jīng)常丟框。原因是拍照時(shí)藥盒本身頂著圖邊緣XML里的xmax或ymax超過圖片寬高YOLO歸一化后變成1.0x訓(xùn)練時(shí)letterbox會(huì)在原圖周圍填充灰邊1.0的坐標(biāo)被映射到填充區(qū)模型學(xué)到的框就不準(zhǔn)了。解決分兩步。第一步檢查越界標(biāo)注python -c import glob, xml.etree.ElementTree as ET for f in glob.glob(Annotations/*.xml): r ET.parse(f).getroot() w, h int(r.findtext(size/width)), int(r.findtext(size/height)) for o in r.findall(object): b o.find(bndbox) xmax, ymax float(b.findtext(xmax)), float(b.findtext(ymax)) if xmax w or ymax h: print(f, xmax, ymax, w, h) 這段代碼會(huì)打印所有框坐標(biāo)越界的XML文件名和具體數(shù)值。第二步是處理把越界的xmax/ymax強(qiáng)制clip回圖片邊界再重新生成YOLO txt不要手工改XML。訓(xùn)練參數(shù)上fliplr降到0.3scale控制在0.3到0.8減少隨機(jī)縮放對(duì)邊緣目標(biāo)的破壞。藥盒這類物體邊緣特征靠文字放大太多反而丟細(xì)節(jié)。5.3 數(shù)據(jù)泄漏train/val里出現(xiàn)幾乎相同的圖現(xiàn)象是訓(xùn)練時(shí)mAP50已經(jīng)0.95但val集只有0.6而且隨著epoch增加val曲線不再上升。原因是數(shù)據(jù)劃分批次時(shí)連續(xù)拍攝的同場景照片被拆去了train和val藥盒位置、光線都幾乎一樣訓(xùn)練時(shí)模型等于見過val圖片指標(biāo)虛高實(shí)際部署立刻掉點(diǎn)。解決方法是劃分前先做相似度去重。簡單做法是用OpenCV的感知哈希每張圖縮成8x8算64位hash漢明距離小于5的視為重復(fù)圖只保留一張import cv2 import numpy as np import glob def phash(img_path, size8): img cv2.imread(img_path, cv2.IMREAD_GRAYSCALE) resized cv2.resize(img, (size, size), interpolationcv2.INTER_LINEAR) return (resized resized.mean()).astype(np.uint8) def hamming(a, b): return np.count_nonzero(a ! b) imgs glob.glob(JPEGImages/*.jpg) hashes {p: phash(p) for p in imgs} for i in range(len(imgs)): for j in range(i 1, len(imgs)): if hamming(hashes[imgs[i]], hashes[imgs[j]]) 5: print(相似的圖片:, imgs[i], imgs[j])這段腳本復(fù)雜度O(n2)1032張圖沒問題更大的數(shù)據(jù)集要先做索引。相似判斷可能把不同藥盒誤判成近似閾值5可以按實(shí)際情況調(diào)。排除重復(fù)圖后再把同一時(shí)間戳前綴或同序列號(hào)的文件分到同一集合沒有這類元數(shù)據(jù)時(shí)隨機(jī)多分幾個(gè)val集合選均值最穩(wěn)定的一個(gè)。5.4 路徑和文件名惹的禍中文空格、相對(duì)路徑現(xiàn)象是Windows下壓縮包正常換到Linux服務(wù)器一跑就報(bào)Train dataset not found或圖片讀取為None。原因是解壓時(shí)Windows目錄名帶空格和中文yaml里path寫的是反斜杠相對(duì)路徑對(duì)不上還有rar解壓偶爾生成._開頭的AppleDouble文件被訓(xùn)練器當(dāng)成標(biāo)注文件。解決是三步走所有目錄改成純英文無空格yaml統(tǒng)一用正斜杠解壓后先跑一句find . -name ._* -delete清理多余文件再數(shù)圖片和標(biāo)簽數(shù)量缺少單個(gè)文件會(huì)直接報(bào)no labels found。注意有些系統(tǒng)解開rar后文件權(quán)限是只讀建議chmod -R uw dataset一鍵開放寫權(quán)限細(xì)節(jié)不多但能折騰很久。6. 用訓(xùn)練結(jié)果做真實(shí)推理驗(yàn)證、調(diào)置信度與導(dǎo)出ONNX6.1 用best.pt跑驗(yàn)證集看不是只看mAP訓(xùn)練完不要急著把best.pt發(fā)給同事先用val集跑一遍yolo detect val datamedicine_box.yaml modelruns/detect/train/weights/best.pt batch8輸出會(huì)包含precision、recall、mAP50、mAP50-95同時(shí)把混淆矩陣和預(yù)測圖片寫進(jìn)runs/detect/val目錄。我一般會(huì)重點(diǎn)看預(yù)測圖里藥盒之間的疊放案例藥店照片常出現(xiàn)盒子之間互相壓邊val結(jié)果圖能直觀看到是不是漏檢了壓住的那一盒這種預(yù)測圖比數(shù)字更容易發(fā)現(xiàn)問題。如果mAP50超過0.85但val預(yù)測圖里還是有漏框大概率是標(biāo)注邊界太小回到數(shù)據(jù)集把緊貼的框重新clip一遍再訓(xùn)。6.2 藥盒推理時(shí)的置信度與IOU調(diào)整實(shí)際推理時(shí)用CLI或者Python接口都一樣關(guān)鍵是置信度不要一成不變。yolo detect predict modelbest.pt sourcetest_images/ conf0.25 iou0.45 saveTrue藥盒反光會(huì)造成部分框置信度偏低如果漏檢很多別急著換模型先調(diào)conf。我習(xí)慣把conf降到0.15同時(shí)把iou從0.45提到0.5讓相鄰的高置信度框不容易被合并藥盒之間的邊界更干凈。如果誤檢變多再把conf提回0.3即可。6.3 導(dǎo)出ONNX給TensorRT和邊緣設(shè)備復(fù)用最后一步是把訓(xùn)練好的權(quán)重導(dǎo)出成ONNXyolo export modelbest.pt formatonnx imgsz640 dynamicFalse simplifyTrue導(dǎo)出后得到一個(gè)best.onnx用onnxruntime可以在CPU/GPU上推理也可以轉(zhuǎn)成TensorRT engine跑服務(wù)。dynamicFalse會(huì)讓輸入尺寸固定為640部署時(shí)省心如果項(xiàng)目里圖片尺寸多變?cè)俑膁ynamicTrue。要注意的是導(dǎo)出ONNX后輸入張量的歸一化方式仍然是像素值除以255外部調(diào)用時(shí)需要保持同一套預(yù)處理不要重復(fù)歸一化。我從那以后每次拿到現(xiàn)成數(shù)據(jù)集都不會(huì)直接開訓(xùn)而是先花半小時(shí)把目錄結(jié)構(gòu)、標(biāo)簽統(tǒng)計(jì)和劃分完整性過一遍確認(rèn)沒問題再寫訓(xùn)練命令。這個(gè)習(xí)慣幫我省了很多翻車的時(shí)間尤其是在“VOCYOLO雙格式”這種看起來沒什么坑、實(shí)際上坑都在文件里的場景。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
一起操最新网址| Www.婷婷五月| 色综合天天| 熟妇内谢69XXXXXA片| 婷婷五月天激情电影| 五月丁香婷婷久久| 丁香五月色| 超碰人人99| 色婷婷六月精品| 99精品在线观看| 99在线小视频| 这里只有精品在线看| 久久99热这里只频精品6学生| 婷婷五月天最新网址| 777久久综合视频| 色婷婷五月在线| 丁香五月停停av| 九九精品这里只有| 婷婷色婷婷| AA久久| 俺也去在线视频 | 国产婷婷色五月| 天天综合色| 90色免费视频| 色了色综合| 激情五月天影院| 婷婷五月网图片区| 婷婷成人视频| 午夜成人在线免费视频| 亚洲精品午夜国产va久久成人| 欧美性生交XXXXX无码小说| 91色九| 亚洲va欧美va国产综合久久久| 久久女婷| 国产亚洲精品人人| 天天爽天天干| 色五月五月婷婷| 亚洲激情五月天| www.久热| 九九视频网| 美女五月狠狠| 丁香六月婷婷开心婷婷网| 这里只有精品免费视频在线观看| 五月综合激情啪啪啪啪啪| 色色99色色| 思思热在线播放| 青青操丝袜美腿| 五月丁香做爱视频| 99re久热| 六月综合在线| 久久亭亭电影| 色婷婷亚洲精品天天综| 色综合久久综合| 五月丁香亚洲婷婷| 91人人妻人人操| WWW,五月| 婷婷伊人75| 丁香五月成人社区| 影音先锋偷偷色男人站| 亚洲色网络| 国产免费av网站| 激情五月婷婷色播网| av免费在线看不卡无毒| 丁香婷婷综合激情五月色| 国外亚洲成AV人片在线观看| 日本成人小说婷婷六月| 欧美久久久中文字幕| 久99久热只有精品国产99| 99色在线视频| 激情合网婷婷| 91九色偷拍| 草做免费在线观看| 六月丁香婷婷综合影院| 91狠狠色丁香| 丁香五月手机在线| 五月亭亭直播| 激情综合五月激情XXXX| 久久久国产精品黄毛片| 欧美激情凹凸丁香网| 日本三级第一页| 伊人婷婷五月 | 99年操人人爽| www激情五月天| 婷婷9月天| 亚美欧色影院| 久久久久久久久久91| 91成人看片| 天天综合五月| 日韩啊啊啊| 婷婷久久五月天| 激情综合网五月天| 激情五月婷婷伊人| 亚州男人天堂婷婷五月| 五月丁香六月色| 九九大香蕉黄色影院| 日熟女| 超碰免费成人| 五月花婷婷| 97涩涩丁香五月天| 久久99免费视屏| 天天干天天干天天干天天干天天干| 日本精品干| 久久久激情视频| 婷婷综合久久| 激情内射人妻1区2区3区| 免费试看小视频 99| 农村熟妇高潮精品A片| 丁香六月毛片| 五月婷婷丁香六月| www夜夜操com| 香蕉婷婷色五月| 啊V视频在线观看| 五月六月丁香激情视频| www.丁香六月婷婷久久天堂影院.con| 日日操日日撸| 色呦呦美女| 79精品视频在线观看,| 丁香五月婷婷动漫视频| 日韩有码一区| 99热婷婷| 婷婷九月激情| 99色免费在线观看| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 婷婷激情五月| 五月婷婷啪啪啪啪| 激情婷婷丁香五月天| 思思热视频| 99热这里有精品24| 丁香六月婷婷综合啪啪| 性做久久久久久久免费看| 五月丁香六月婷婷综合网缴情| 日韩精品成人在线| 精品人妻伦一二三区久久| 六月米奇色综合| 亚洲成人av在线观看 | 五月天婷婷视频| 91丨九色丨白浆秘| 男妓跪趴把舌头伸进我的嘴巴| 婷婷激情丁香六月| 爱射综合| 婷婷狠狠青青| 婷婷五月色| 五月五丁香婷婷| 五月天综合色| 思思综合热| 99免费青青蜜臀| 91丨九色丨熟女高潮| 五月婷婷和六月| 野外99热| 97色色网| 操97免费超级视频| 色色色色av777| 日韩精品一区二区亚洲AV观看| 九九热免费视频| 开心五月丁香啪| 日本99视频精品免费播放| 99爱在线精品视频免费观看| 激情性五月天免费小说视频| 日韩啪啪视频| 色婷婷四虎| 97人人干| 六月婷婷中文字幕| 六月色婷婷欧美| 看逼中文字幕| 天天色播| 久久五月天综合| 九九99视频精品| 亚洲在线播放| 97在线干| 超碰日日操| 91久久精品国产91性色TV| 91超碰人人操| 中文字幕乱码亚洲精品一区| www,99热| 色五月av伊人| 五月丁香AV在线| 婷婷丁香六月天激情四射网| 秋霞电影一级黄| 日本不卡一区二区三区| 亚洲综合五月天综合| 国产午夜精品一区二区| 国产av一区二区三区| 婷婷五月综合社区| 久久成人人妻| 婷婷综合五月天激情| www.99精品视频| 日韩丰满少妇无码内射| 婷婷永久在线| 99热99热在线| 99色热视频| 天天摸天天肏| 97操碰日本女人| 狠狠色综合网| 91碰视频| 99热8| 都市激情五月婷婷综合| 99ri在线| 亚洲一区二区无遮挡A片| 亚洲精品又粗又大又爽A片| 大香蕉天堂| 天天影视色综合网| 欧美激情 日韩无码 婷婷 五月天| 狠狠色狠狠爱| 中文字幕丰满孑伦无码专区| 开心五月深爱五月| 4399亚洲视频| 狠狠操狠狠操AV| 婷婷综合五月激情| 丁香5月激情网| 碰碰操91| 深爱激情四射| 一区中文字幕电影| 亚洲成人在线观看av| 日韩高清成人| 99热这里是精品| 五月开心婷婷| 色久婷婷网| ww久久| WWW、日本色丁香、co m| 开心五月婷婷| 日日操天天操| 狠狠色婷婷7777久| 五月丁香好婷婷A片网| 这里只有精品在线免费视频| 内射激情在线| 色综久久久| 婷婷色情网| 超碰在线网站| 99热一本| 91人无码久久久久久| 日本精品人妻无码77777| 色五月婷婷亚洲| 女人被男人吃奶到高潮| 五月花免费视频| 六月丁香激情综合| 另类激情五月| 天天做天天要天天爽| 色久婷婷五月| 九九热这里只有精品556| 天天综合网~91综合网| 婷婷五月中文字幕| 9婷婷内射| 九九久久久综合| 激情AV网| 成人中文网| 丁香五月色| www.夜夜操.com| 99精品自拍视频| 丁香五月婷婷大香蕉| 99re思思久久| 天天狠天天叉| 夜夜夜夜撸夜夜操| 婷婷深爱五月| 五月丁香激情综合网| 丁香美女主播视频在线观看| 热99精品视频| 99色免费视频| 丁香五月综合在线播放| 校园激情 亚洲| 九九成人高清视频| 五月丁香婷色| 丁香五月天无码| 色婷婷丁香五月高清在线| 99综合| enecarbon-materials.com污K127封锁请涟系@wip1688 | 九九99九九99九九99视频网| 99色网站| 五月丁香婷婷成人网| 99色色网| www.婷婷五月天| 亚洲第一第二网站| 97干在线| 亚洲操b| 婷婷色五月激情| 99爱爱| 91操片| 丁香九九九九| 激情五月天在线视频| 亚洲激情网| 99久久婷婷国产综合精品草原| 久热九九| 国产亚洲99久久精品| 久久久五月天| 少妇搡BBBB搡BBB搡毛茸茸| 在线理论片| 亚洲色无码A片一区二区麻豆| 99精品国产在热久久| 亚洲国产精品SUV| 51精品国自产在线| 免费色婷婷| 9色天堂| 亚洲蜜乳AV| 婷婷狠狠青青| 丁香六月欧美| 久久久久8888| 久久狠狠欧美| 天堂五月婷婷| 天天天天天久久久久久| 五月天婷婷激情在线色图| 来吧亚洲综合网| 久草狼人| 日韩欧洲亚洲| 色爱综合网| 婷婷丁香社区| 偷拍99在线视频观看| 大香伊人婷婷| 伊人碰碰碰| 色婷婷五月影视| 亚洲色色在线| 五月婷婷六月激情在线| 99热99re6国产在线播放| 99国产在线| 无码髙清| 天天操天天操天天操天天操天天操| 91色婷婷综合久久中文字幕二区| 亚洲深喉aV| 在线色婷婷| 六月婷婷操逼| 97狠狠色| 婷婷瑟五月天久久综合| 激情五月六月婷婷| WWW.夜夜| 亚洲欧美丁香五月天亚洲欧美| 精品久久久999| 99无码黄色视频| 中文成人在线| 色天使久久综合| 久久加勒比| 伊人干综合| 99这里只有精品8| 六月婷婷色宗合| av操一操| 天天色综网| 丁香婷婷综合激情五月色| 99久99久| 另类亚洲2| 婷婷五月天日本国产| 五月天婷婷五月| 精品久久这里热66| 97人人干人人操| 婷婷久综合| 久久99看免费| 玖玖在线资源视频| 裸体美女丁香五月天。| 就99这里只有精品| 五月天成人小说| 丁香婷婷大香蕉| 国产高潮A片羞羞视频涩涩| 激情色五月天| 激情久久综合| av在线色五月丁香婷区久| 大天天伊人| 超碰99在线| 日韩无码亚欧无码| 四色综合网| 五月天六月婷婷电影| 丁香婷婷九月| 黄色中文字目| 外国碰视频网站97| 综合深爱五月| 99久久99九九99九九九| av操B网站| 久久久ww| 五月天激情开心网| 欧美色宗和激情| 国产精品久久久久久亚洲毛片| 影院久久久| 丁香五月电影| www夜夜操com| 天天影院色| 色婷小说| 97超碰在线免费观看| 九九免费精品在线视频| 日本色婷婷| 亚洲激情在线| 人人操操| 狠狠做五月婷婷| 丁香五月偷拍| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 色情婷婷| 亚洲综合五月天婷婷| 丁香五月婷婷六月| 91精品国产色猫| 99re99热| 五月婷婷六月丁香玖玖玫瑰91| 精品人妻伦一二三区久久| 9精品一区| 丁香五月综合激情久久潮喷| 色丁香五月婷婷| 日本乱子人伦在线视频| 亚洲天堂热| 激情五婷网| 国产这里只有精品| 91视频五月丁香| 日日鲁鲁夜夜爽爽| 久久女婷| 亚洲av网址| 开心五月天私房婷婷| 玖玖热视频| 三男玩一女三A片| 婷婷五月综激情| 99热视精品| 天天做夜夜爽| 成人午夜免费电影| 在热视频精品| 五月丁香影院| 超碰免费人人| 色欧洲| 香蕉AV777XXX色综合一区| 欧美六月| 色婷婷五月天在线观看| 五月婷婷伊| 色天天综合天天综合频道。| 婷婷五月激情小说| 雪千夏麻豆| 激情五月伊人婷婷| 五月天堂色| av五月丁香婷婷网| 久噜久噜| 国产在线aaa片一区二区99| 久久综合影院| 婷婷开心五月| 91人人爱| 91dy.av| 在线观看中文字幕亚洲| 97超碰在线观看免费| 五月天色婷伊人| 色综合区| 色老久久| 久热只有精品| 97性高潮久久久| 婷婷欧美偷拍综合| 丁香五月天堂| 伊人玖玖精品| 五月婷婷丁香五月| 操操熟女| 婷婷 月 丁香| 婷婷影院A成人| 成人深爱丁香五月| 99热在线精品观看| 9191avse| 久操综合| 激情综合网激情五月天| 色情成人五月天| Www.se.久久| 久久婷婷五月丁香| 河北真实伦对白精彩脏话| 99色综合网| 99九九在线| 国产午夜精品一区二区| 六月综合婷婷开心伊人| 色婷婷亚洲综合av| 日本操逼九九九九58日本操逼| 日本强伦片中文字幕免费看| 26uuu欧美日韩| 欧美熟女99| 六月婷色| 婷婷射丁香| 中文字幕丰满乱孑伦无码专区| 26uuu四色| 久久狠狠干| 激情综合网五月婷婷| 成人五月天丁香婷| 99爽视频| 超碰人人艹| 色婷婷69| 五月丁香无码| 99日本黄站| 停婷丁五月在线| 久久资源综合| www.操.com| 91碰九色| 丁香婷婷激情五月天无毒不卡蜜桃| 二区成人视频| 五月婷婷婷| 日本欧美啪啪| 五月激情六月丁香| 国产av网| 99热精品在线免费观看| 国产中文字幕在线视频免费观看| 人妻内射视频| 成人VAV视频在线观看| 亭亭五月色男人| 91丨九色丨国产打屁股网站| 婷婷色Av| 日韩AV在线电影| 五月激情婷婷六月| www.99免费视频| 婷婷六月天激情| 婷婷丁香五月天熟女丝袜| 日韩五月丁香| 色9月| 五月丁香琪琪| 婷婷综合久久| 日本三级大片| 99热20| 亚洲妇女熟BBW| 五月色情网| 成人 在线观看国产| 大伊久久| 日韩啪啪自拍| 五月婷婷天天| 久久五月激情| 26uuu成人网| 亚洲性图一区二区三区| 成人草榴视频| 夜夜夜夜撸夜夜操| 成人在线视频一区| 日本精品99网站| av九九| 99精品久久| 日批在线看| 日韩不卡123| 99A片| 怡春院久操| 免费黄色片子| 丁香婷婷免费| 亚洲一二三网| 色婷婷亚洲六月婷婷中文字幕| 婷婷色中文| 欧美va视频| 97碰在线| 国产成人精品一区二区三区视频 | 午夜丁香婷婷| 天天操天天操天天操| 1024AV视频| 欧洲色| 亚洲欧美婷婷五月色综合| 激情综合五月婷婷| 天天爽综合| 六月丁香成人| 欧美成人A片AAA片在线播放| 啄木鸟黑丝一区二区| 国产99久| 激情六月天婷婷| site:hcxsz888.com| 国产偷人爽久久久久久老妇APP | 丁香九月激情| 五月丁香婷婷俺| 婷婷五月天丁香社区| 五月成人网站| 婷婷5月天av| 99九九99九九九视频精品| 久久视频婷婷| 七七九九色色| 综合精品啪啪| 夜夜夜夜夜操| 婷婷丁香五月天亚洲| 激情婷婷视频在线| 精品乱码久久久久| 久久精彩视频99| 欧美超碰亚洲| 99精品久久久久| 婷婷丁香77777| 丁香五月玖玖| 狠狠色婷婷7777久| 久久ER视频com| 色五月色五天色情网址| 亚洲综合激情五月久久| 天插天啪天啪天啪| 99久久五月天| 综合色99| 99热国产这里只有精品| 激情综合五| 最近中文字幕2019视频1| 婷婷五月丁香六月天亚洲综合| 丁香六月成人网| 色五月激情| 丁香欧美| 色色五月天丁香婷婷| 天天操天天插| 99这里有精品视频| 丁六月激情| 婷婷成人在线| 做爰丰满少妇1313| 久99久99精品免| 五月色情婷婷开心五月色情| 丁香五月停停基地| 色五月婷婷中文字幕| 婷婷五月久久| 99久久综合网| 亚洲免费成人电影AV| 97精品综合| 亚洲小视频| 色欲婷婷五月天| 9视频在线成人网站| 大香蕉五月丁香| 深爱丁香激情| 婷婷综合五月| 爱狠射| 亚洲精品色| 26uuu| 电影爱拉战争免费观看| 中文AV在线观看| 丰满少妇乱A片无码| 国产婷婷五月天| 天天操天天谢| 久久98| 91VIP在线观看| 久久婷婷亚洲| 欧美婷婷精品激情| 久久婷五月综合色| 久9久9热久热| 99在线免费视频播放| 亚洲综合婷婷| 天天综合五月| 丁香五月在线观看完整版| 天天日天天舔天天摸| 影音先锋综合网| 国产av天堂| 久热AA| 激情小说 五月天| 国产精品久久久99视频| 五月丁香少妇| 精品AV无码超碰| 色情五月丁香| 狠狠狠狠狠狠色| 思思99re这里只有| 日韩成人电影AV| 免费成片在线观看| 欧美色图片88| 婷婷色五月天在线观看| 丁香狠狠色婷婷久久无码视频| 夜夜骑日日操| 日韩av在线电影| 东北熟女视频99| 五月丁香综合| 婷婷永久在线| 天天日综合| 婷婷丁香五月天亚洲| 久久中文人妻系列| 日韩色五月| txt五月激情四射网综合俺也来了 五月天婷婷丁香人人操91 | 在线播放人妻| 变态另类9| 天天爽天天爽视频| 婷婷五月天性| 久久久久久久久久久久久久人妻视频 | 嫩BBB槡BBBB搡BBBB视频| 婷婷激情肏屄网| 亚洲啪啪网| 日韩精品一曲二曲三曲四曲五曲| 激情AV网| 亚洲精品V天堂中文字幕| 91九色首页| 九月色婷婷综合| 人人草人人视| 欧美亚洲操逼| 五月婷婷久久激情 | 久久久久思思热| 六月婷五月丁香| 激情五月丁香婷婷夜夜操| 国产五月天婷婷| 综合精品99| 久久99激情五月天| 色色五月婷婷网| 国产伦亲子伦亲子视频观看| 五月丁香影视| 欧美人妻一区二区| 在线观看av网站| 俺去啦综合网| 狠狠草综合网| 色综合久久88色综合中文字幕| 久这里只有精品| 五月丁香六月在线欧美| 色狠狠综合| 一本久道综合99| 色综合色综合色综合| 影音 五月 婷婷 久久| 国精产品一区一区三区免费视频 | 9久9久| 丁香五月天AV在线| 北条麻妃九九九国产精品视频| 国产真人做爰视频免费| 丁香五月成人| 激情综合五月| 婷婷九月| 婷婷亚洲综合| 色五月av| 少妇高潮A片无套内谢麻豆传| 国产成人99久久亚洲综合精品| 五月丁香啪啪啪啪| 4399在线日本A片| 五月天丁香成人| 五月婷婷偷拍| 变态另类9| 日本啪啪天堂| www超碰| 伊人91| 思思re99视频在线观看| 亚洲综合激情五月久久| 五月婷婷六月色| 天天色粽合合合合合合合| 婷婷成人视频| 激情五月天色色网| 国产精品18久久久| AA片在线观看视频在线播放| 99热精品免费| 免费看欧美成人A片无码| 国产AV一区二区三区最新精品 | 婷婷久久久| 五月天婷婷激情小说电影| 思思精品视频| 91精品综合久久久久久五月丁香| 精品一二三区久久AAA片| 色五月激情五月| 99视频这里有精品| 国产亚洲AV人片在线| 9精品国产在热久久| 欧美日韩日韩成人| 九九人人自拍| 97操在线视频| 久婷婷五月丁香在线观看| 亚洲婷婷月丁香五月| 色色丁香五月婷婷| 丁香婷在线| 人人射人人高潮| 伊人色综合网| 久热大香蕉| 色五月在线播放| 色婷婷激情| 超碰在线免费观看日韩| 高清av在线国产| 色五月自偷自拍婷婷婷婷| 99丁香五月婷| AV堂狠狠干| 五月婷婷亚洲综合网| 久久这里有精品99| 婷婷五月天激情诱惑| 色婷婷综合影院| www狠狠| 婷婷在线视频| 久综合4| 日韩伊人大香蕉| 五月丁香福利| 国产裸舞福利资源在线视频| 欧美综合五月丁香六月婷| 亚洲视色| 啊V视频在线观看| 午夜无码精品色综合久久| 婷婷五月天免费视频| 99视频| 97人人干| 五月丁香成人网| 激情内射人妻1区2区3区| 色五月美女| 婷婷综合另类| 天天摸天天肏| 丁香无五月网| 国精产品一区二区三区| www.婷婷| 欧美日韩99| 99re8热精品免费视频| 99热在线看片| 这里只有精彩小视频视频网站| 激情亚洲婷婷六月| 五月婷婷激情网| 色色色图| 思思久久99热只有频精品66| 欧美在线视频9| 67194国产| 婷婷成人丁香色情基地30| 开心深爱激情网| 五月天婷婷色综合| 国产99久| 伊人婷婷大香蕉| 婷婷五月天 偷拍| 天天爱夜夜爽| 色婷婷丁香五月天| 黄色录像网点| 91丁香五月| 狠狠五月丁香色婷| 欧洲婷婷五月天| 婷婷5月九九| 9有码中文| 天天爽天天| 亚洲图色五月天| 亚洲午夜av| 婷婷五月天亚洲精品| 99久久玖玖| 国产AV一区二区三区最新精品| 色婷婷色五月综合| 婷婷免费精品视频| 丁香五月婷婷色情综合| 亚洲激情五月天| 成人免费超碰| 九九热超碰| www.操逼comm| 日韩99视频| 无码人妻AV久久久一区二区三区| 国产小网站| 天天日,天天射,天天插| 色屌丝中文字幕| 婷婷中文字幕| www.玖玖婷婷在线| 综合在线网| 99热这里只有精品免费| 另类激情综合| 9精品一区| 99小视频在线| 成人精品亚洲性爱| 99在线免费观看| 99热费观看| 森林影视大全,最好看的2019年视频| 另类激情首页| 无码少妇高潮喷水A片免费| 26uuu偷拍亚洲欧洲综合| 情欲综合网| 国产激情av| 色色色九九九五月婷婷| a在线观看| 丁香色综合| 五月天婷婷色| 久久九九99桃花视频| 狠狠干在线视频| 色碰碰视频| 微拍92| 久久黄色免费视频| 97人妻碰碰碰久久香蕉| 美女久久天堂| 色情五月天视频网| 天天综合网在线| 亚洲精品又粗又大又爽A片 | 啪啪激情网| 吉澤明步Av一區二區| 亚洲五月天激情| 99在线视频女女视频| 五月天色婷婷图片| 色99网| 嫩草国产| www.狠狠干com| 一本色道久久综合狠狠躁小说| 97成人在线视频精品| 5月婷婷激情6月| 欧美婷婷五月丁香| 一区二区三区XXXXXX| 人妻肉射免费观看| 99视频这里有精品| 久久艹99| site:feetmall.com| 九九色逼| 日本成人综合| 九九热视频精品| 最新高清无码专区| 91色色色| 日韩AAAAAAAAAAA片| 五月开心播播网| 热的五码久久精品| 久久久久亚洲AV无码网影音先锋| 丁香影院五月综合| 激情亚洲五月| 五月婷婷综合网| 九九色院| 色久综合天天做视频| 99热| 超碰色综合| 日日干天天爽| 激情五月婷婷| 麻豆科斗777| 婷婷九月在线| www.99热精品99.com| 操丝袜视频影院导航| 99激情| 国产婷婷色五月| 九九婷婷综合| 99免费在线视频| 久久久精品色色色| 婷婷五月天桃花网| 国产xxxxx在线观看| 色碰碰视频| 青996青| 国产无套精品一区二区| 大香蕉在线99热| 色五月丁香激情视频| 激情综合五月婷婷| 色爽九九| 99综合视频| 97在线天堂| 五月婷婷手机在线| 日本一级黄色片。| 色欲Av五月天| 婷婷六月综合激情| 色播婷婷大香蕉| 五月 成人 婷婷| 秋霞丝袜啪啪啪| 婷婷丁香五月亚洲| 日韩AC在线免费观看| 久热最新视频| 五月天婷婷色| 涩综合在线| 五月丁香综合激情| 婷婷丁香五月天综合AV| 五月色网| 九九热99视频| 久9视频| 激情五月婷| 五月婷婷五月色| 色婷婷操逼网| 五月天久久婷婷| 五月丁香久久激情综合| 1010日日无码| 五月天婷婷青青草| 天天操夜夜爱| 99在线视频观看| 五月丁香六月婷婷婷婷| 丁香五月天天久久综合小说| 色婷婷先锋| 色婷婷亚洲综合网站| 激情五月狠狠| 丁香花婷婷五月天| 五月丁香激情综合久久| 9久久精品视频| 91九色熟女| 91碰在线| 色五月人妻| 丁香婷婷六月婷婷六月婷婷六月婷婷| 五月天社区| 日本va网站| 亚洲无AV在线中文字幕| 亚洲 在线 性爱| 欧洲第一无人区观看| www.夜夜夜| 性欧美大战久久久久久久83| 久久久精久人妻| 好叼操在线观看| 久久这里只| 久久玖玖99| 丁香六月婷婷色XXXXX| 久久人五月| 久青操| 97中文在线| 91超级碰碰| 思思99热热热99| 激情综合网五月天| 久热这里只有精品在线观看| 粉嫩AV久久一区二区三区| 成人狠狠成人狠狠成人狠狠成人狠狠| 9九九久久精品无码专区| 日日夜夜狠狠干| 日韩xx在线| 亚洲综合视频网| 97人人草| 国产亚洲精品久久久久久郑州| 丁香婷婷射| 热久综合| 夜夜操,天天撸| 9视频1在线| 丁香婷婷色情| 久久久com| 伊人色综合网| 欧美英丁香开心快乐六月天网| 五月婷婷综合成人| 丁香五月欧美| 狠狠综合久久| 天天天天操| 婷婷激情五月综合丁| 久久激情婷婷| 91大神操美女| 综合丁香婷婷五月天| 色色热| 国产26uuu视频| 亚洲一二三网| 久久与婷婷| 人妻射精AV| 五婷婷综合网| 婷婷综合在线| 日本色天堂| 99视频只有精品| 成人欧美Va| 五月丁香中文婷婷中文| 久久99网站| 色婷綜合网| 六月婷在线| 久草婷婷| 思思热在线精品视频网站| 五月天另类小说久久小说网| 久99久在线观看| 狠狠五月激情在线| 97成人操| 久9无码视频| 久久五月人人摸| 色婷婷五月丁香色| 丁香五月天堂| 五六月丁香激情视频| 色网站9| 婷婷五月天色色| 欧洲日韩一区二区三区| 激情AV中文| 51国精产品自偷自偷综合 | 超碰97人人操| 五月天另类综合网| AV免费在线网站| 中文字幕成人| 一级二级香港秋霞欧美欧美秋霞| 超碰a女人的天堂| 国产亚洲精品久久久久久牛牛| 九九精品在线观看视频6| 成片免费观看视频大全| 五月天丁香婷婷网| 五月天六月色| 热久久思思热思思| 婷婷丁香黄色| 丁香六月婷婷久久综合| 亚洲成人va| 淫视馆aV二区一区| 久久婷综| 成人AV免费观看| 99这里只有精品在线| 男人的天堂五月丁香| 这里只有精品视频| 一级二级色大片| 婷婷成人在线| 久久中国毛毛片爱久久| 五月天精品| 桔色成人在线| 久久久久久xxxxx| 色婷婷第四色| 九九综合色| 婷婷五月丁香在线视频| 色色色视频免费无码| 成人片在线免费看| 久久久天堂国产精品女人| 偷拍五月丁香| 丁香五月激情欧欧美| 综合网啪| 久久人人做人人妻人人玩精品va| 日韩99视频| 久久这里只有精品16| 99精品热视频| 久草婷| 成人丁香| 五月婷婷激情综合| 丁香花五月天| 成人短视频在线免费观看| 色狠狠色噜噜AV天堂五区| 人人九色| 夜夜做夜夜愛| 天天操夜夜爽天天操| 在线看av| 国产午夜精品一区二区三区四区| 婷婷月综合| 第一区久久网站| 丁香五月婷婷狠狠色| 婷婷丁香五月基地| 国产亚洲精品久久久久久郑州| 婷婷五月天丁香社区| 色性日本| 色狠狠五月天| 97干婷婷| 秋霞av吧| 99这里有精品| 欧洲色色| 九九机热| 激情六月丁香综合| 99大香蕉| 日本97在线观看| 五月激情在线| 五月天激情久久| 日日夜夜爽| 妻久久久久| 婷婷五月天久久久| 久婷视频| 综合色、色综合| www.婷婷五月| 久99热在线观看| 99色免费视频| 五月丁香拍拍激情综合| 综合久久97| www.com色播五月天| 艹B高清无码| 久久五月丁香| 久久婷婷综合基地| 五月婷婷啪| 五月丁香婷婷六月天| 五月天丁香六月综合| 婷婷五月综合啪| 五月天婷婷无码| 天天做天天爱天天高潮| 婷婷伊人| 五月婷婷色| 五月婷在线播放| 婷婷激情区| 九九热这里精品| 五月婷网| 99热99美国在线观看| 就爱日五月天| 色香蕉精品五夜婷| 99热精品免费| 男女99免费视频| 人人摸人人干| 99热这里只有精品3| 九九热这里只有精品一| 激情伊人六| 久久这里只有精彩| 九九色图| 日本色久| 激情 婷婷| 91日婷婷在线| 亚洲狠9| 男女啪啪做爰高潮无遮挡| 九九色热| 亚洲啪视频| 九九99热久久精品66中文字幕| 色五月天婷婷| 99久久免费精品| 99免费视频精品| 五月婷高清视频| 亚洲性爱99| 99这里有精品视频3| 99精品在线播放| 丁香五月天.com| 99re热在线视频观看| 婷婷丁香黄色| 欲求不满的人妻| 五月天丁香啪啪网| 另类五月激情| 婷婷97狠狠成人网站| 五月开心网| 俺去也五月天| 色五月婷婷久久| 另类专区在线观看| 色情丁香五月婷婷精品| 色婷婷综合亚洲| 99爱视频| 激情 婷婷| 青青草五月天| 色色a| 色婷婷久久综合中文久久一本 | 久色大| 综合图片色色| 亚洲六月婷婷| 五月丁香婷婷综合网| 天天日综合| 五月婷婷六月丁香综合在线| 综合五月婷婷| 婷婷六月丁| 99re8在这里只有精品| 五月婷婷 激情五月| 五月天狠狠网| 六月丁AV| 九九视频这里只有精品| 丁香五月天激情视频| 色色日本| 狠狠综合网| 丁香五月天社区| 99热99久久| 丁香九九九九| 婷婷五月天综合中文| 狠狠五月天婷婷激情网。| 欧美色色色| 丁香五月婷在线观看| 欧美色五月天| 99久在线精品99re8热| 天天狠狠六月婷丁香影院| 99热这里有精品| 最新va在线播放| 精品在线网站| 婷婷导航| 五月丁香激情综合| 被强行糟蹋的女人A片| 夫妇交换刺激做爰| 丁香六月天婷婷色| 九九色插| 91丁香婷婷综合资源| 另类激情四射| 丁香九月婷婷综合| 丁香五月天激情网址| 亚州欧美国产久精国产99综合视频| 婷婷五月天,影院| 99久久思思| 婷婷五月花西瓜| 五月天色五月| 无码区婷婷五月花开| 99热免费在线| 91色色色| 在线播放人妻| 情色五月天 网站| 天天摸夜夜爽天天做| 五月丁香网站| 亚洲成人高清在线| 色丁香五月天射婷婷爱婷婷| 精品色情一区二区三区四区| 五月婷丁香久久久| 五月丁香九九九综合| 狠狠色丁香久久婷婷综合五月| 538在线精品| 26uuu丁香婷婷五月| 五月婷婷综合网| 色综合色色| 九九99精品免费播放| 丁香色影院| 大香蕉久久青青| 久9草在线观看视频| 婷婷色片| 99亚洲天堂| 亚洲激情网| 五月天婷婷激情小说| 天天狠狠干| 九九99热| 99日韩| 乱精品一区字幕二区| 日本97在线看片| 丁香六月婷婷久久高清| 精品久热| 亚洲综合色丁香五月天| 九九99一区| 91久久综合亚洲鲁鲁五月天| 色婷婷视频| 夜精品无码A片一区二区蜜桃| www91色网站| 玖玖午夜视频| 人妻射精AV| 狠狠色狠狠鲁| 久久婷婷五月天蜜桃| 五月丁香综合| 99ER热精品视频| 一区无码| 国产av基地| 中文字幕丰满乱孑伦无码专区| 国精产品一区二区三区| 天天日综合| 激情五月天视频| 九九色情网站| 噜噜狠狠色综合久| 天天色·欧美| 丁香六月亚洲综合| 99热在线精品观看| 免费看欧美成人A片无码| 香蕉99网| 91Chinese在线| 午夜不卡成人一区二区| 人人操AV| 五月丁香六月激情综合| 色9999综合久久| 九九九九国产| 色在线五月天免费| 亚洲欧美一区二区三区爱爱动图 | www.粉嫩av.com| 天天干狠狠艹| 婷婷激情性爱| 国产无遮挡又黄又爽免费网站| 久久婷婷激情四射五月天| 色综合网上班开心婷婷久久| 亚洲狠狠狠| 伊人激情啪啪| 日韩无码AV电影网站| 日本天堂爱爱| 婷婷综合五月天激情| 夜夜爽天天爽| 婷婷五月天网| 成人AV综合在线| 伊人丁香六月婷婷| 日本不卡五月婷婷丁香| 丁香婷婷基地| 3p九色在线| AV在线观看网站| 五月天激情网页| 亚洲色综合| 六月婷综合| 日本人妻A片成人免费看片| 婷婷五月噜噜| 久9视频| 欧美精品狠狠色丁香婷婷| 色99热| 亚洲综合狠狠艹| 97色色色色色|