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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Yolov5s模型在全志V853平台上的部署方法和应用

發布時間:2024/3/24 编程问答 79 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Yolov5s模型在全志V853平台上的部署方法和应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

AI部署這個詞兒大家肯定不陌生,可能有些人還不是很清楚這個是干嘛的,但總歸是聽過了。近些年來,在深度學習算法已經足夠卷之后,深度學習的另一個偏向于工程的方向–部署應用落地,才開始被談論的多了起來。當然這也是大勢所趨,畢竟AI算法那么多,如果用不著,只在學術圈搞研究的話沒有意義。因此很多AI部署相關行業和AI芯片相關行業也在迅速發展,現在雖然已經2022年了,但我認為AI部署相關的行業還未到頭,AI也遠遠沒有普及,還有很多的場景未能落地。隨著人工智能逐漸普及,使用神經網絡處理各種任務的需求越來越多,如何在生產環境中快速、穩定、高效地運行模型,成為很多公司不得不考慮的問題。不論是通過提升模型速度降低latency提高用戶的使用體驗,還是加速模型訓練降低訓練成本,都是很有用的,很多公司也需要這樣的人才。在經歷了算法的神仙打架、諸神黃昏,? 灰飛煙滅,再到現在的直接車毀人亡、人間地獄,唯有應用部署還能廣大工程師留點活路。

最常見的場景,AI算法部署需要涉及三種不同的分工角色,包括算法提供者(算法商,開源算法社區,比如商湯,darknet, github上各類開源算法等等),算力平臺提供者(SOC廠商,目的是提供算力平臺),以及深度學習IP Vendor(比如算豐,比特大陸,芯原等等).它們的關系簡單理解如下:

當然也會有些垂直類的廠商,比如RK,他既可以做神經網絡加速器IP,同是也具備集成研發SOC以及部署工具開發的能力,這樣的整合同時會加強它的競爭力。比較郁悶的是算法廠商,很難找到一條合適的盈利模式,純做算法的算法嘗試盈利模式單一,再加上各類AI應用場景的碎片化,這些年早已風光不再,生存比較艱難。

扯了這么多,主要是想說明AI部署是需要重視的專業技術方向,今天就以為全志V853部署YOLOV5模型為例,講一點AI應用部署的干貨,拋磚引玉。

V853 平臺介紹

根據官網資料得到的數據如下:

YOLOV5S模型介紹

2020年2月,yolo之父Joseph Redmon宣布退出計算機視覺研究的時候,很多人認為目標檢測器YOLO系列就此終結,沒想到的是,2020年4月份曾經參與YOLO項目維護Alexey Bochkovskiy帶著論文《Optimal Speed and Accuracy of Object Detection》和代碼在Github上重磅開源,YOLOv4正式發布!令我們更沒想到的是,2020年6月份,短短兩個月,Ultralytics LLC?公司的創始人兼 CEO Glenn Jocher 在 GitHub 上發布了YOLOV5?的一個開源實現,標志著YOLOv5的到來!

YOLOV5分為多個版本,它們詳細的推理數據如下,數據來源于github:

https://github.com/ultralytics/yolov5/releases

這里根據對V853 1T算力的評估,我們部署其中的小模型版本,yolov5s-v6.1,也就是圖中的第二行數據代表的模型。yolov5s-v6.1 mAP數據如下圖所示,橙色的線就是YOLOV5Sd的數據,可以看到它的最高mAP可以達到45個點,根據mAP的計算方式,這個指標表示它能對數據集中的絕大部分目標進行有效檢測了。

下面開始介紹具體的部署操作

部署邏輯

以darknet為例,端側部署和板端部署的對應關系如下:

模型部署的流程如下圖所示:

下面的操作我們會用到兩個工具,分別是acuity進行模型編譯,優化,而IDE則進行模型的仿真和性能,數據分析。

模型獲取

模型的下載地址:

https://github.com/ultralytics/yolov5/releases

使用最新的6.1版本的yolov5s模型,默認是pytorch版。

下載下來后,由于V853部署工具對ONNX模型的支持比較友好,所有按照博客:

pytorch yolov5 推理和訓練環境搭建_papaofdoudou的博客-CSDN博客_yolov5推理

中介紹的方式,將其轉換為onnx模型,并用工具onnxsim對模型進行優化,得到最終的部署模型yolov5s-sim.onnx.

模型結構:

YOLOV5S是一個但輸入,單輸出的網絡,但是我們可以修改其結構,將其變為多輸出網絡,這樣做是有一定好處的,后文我們將會針對具體問題加以闡述。

模型部署

按照文檔要求創建部署目錄如下,由于我們的目的是在端側進行推理部署,使用的是訓練好的模型,這里放入dataset數據集的目的是為工具提供量化的依據,我這里只是為了演示,僅僅放置了兩張圖片,實際產品部署的時候,這里最好放足夠多的圖像,并且這些圖像最好和算法實際部署場景的圖像保持同樣的像素分布為好。

浮點部署:

進行浮點部署的目的是獲取golden tensor,驗證原型模型的精度,由于浮點部署不需要經過量化,所以部署后的模型精度就是原始模型的精度(也就是說不會出現掉精度的情況). 依次執行如下命令,導入模型:

pegasus.py import onnx --model yolov5s-sim.onnx --output-data yolov5s-sim.data --output-model yolov5s-sim.jsonpegasus.py import onnx --model yolov5s-sim.onnx --output-data yolov5s-sim.data --output-model yolov5s-sim.json pegasus.py generate inputmeta --model yolov5s-sim.json --input-meta-output yolov5s-sim-inputmeta.yml pegasus.py generate postprocess-file --model yolov5s-sim.json --postprocess-file-output yolov5s-sim-postprocess-file.yml pegasus.py inference --model yolov5s-sim.json --model-data yolov5s-sim.data --batch-size 1 --dtype float32 --device CPU --with-input-meta yolov5s-sim-inputmeta.yml --postprocess-file yolov5s-sim-postprocess-file.yml pegasus.py export ovxlib --model yolov5s-sim.json --model-data yolov5s-sim.data --dtype float32 --batch-size 1 --save-fused-graph --target-ide-project 'linux64' --with-input-meta yolov5s-sim-inputmeta.yml --postprocess-file yolov5s-sim-postprocess-file.yml --output-path ovxlib/yolov5s/yolov5sprj --pack-nbg-unify --optimize "VIP9000PICO_PID0XEE" --viv-sdk ${VIV_SDK}

需要注意的是,需要在執行第三步結束后,將input yml scale參數設置為1/255=0.0039,為了和訓練時保持一致。?

這部操作專業的叫法叫做歸一化,具體操作是減均值,除標準差,用公式表示就是:

具體原理可以看下面博客的分析,這里不在贅述。

imagenet數據集的歸一化參數_papaofdoudou的博客-CSDN博客_imagenet歸一化l

非對稱UINT8量化版部署:

pegasus.py import onnx --model yolov5s-sim.onnx --output-data yolov5s-sim.data --output-model yolov5s-sim.jsonpegasus.py import onnx --model yolov5s-sim.onnx --output-data yolov5s-sim.data --output-model yolov5s-sim.json pegasus.py generate inputmeta --model yolov5s-sim.json --input-meta-output yolov5s-sim-inputmeta.yml pegasus.py generate postprocess-file --model yolov5s-sim.json --postprocess-file-output yolov5s-sim-postprocess-file.yml pegasus.py quantize --model yolov5s-sim.json --model-data yolov5s-sim.data --batch-size 1 --device CPU --with-input-meta yolov5s-sim-inputmeta.yml --rebuild --model-quantize yolov5s-sim.quantize --quantizer asymmetric_affine --qtype uint8 pegasus.py inference --model yolov5s-sim.json --model-data yolov5s-sim.data --batch-size 1 --dtype quantized --model-quantize yolov5s-sim.quantize --device CPU --with-input-meta yolov5s-sim-inputmeta.yml --postprocess-file yolov5s-sim-postprocess-file.yml pegasus.py export ovxlib --model yolov5s-sim.json --model-data yolov5s-sim.data --dtype quantized --model-quantize yolov5s-sim.quantize --batch-size 1 --save-fused-graph --target-ide-project 'linux64' --with-input-meta yolov5s-sim-inputmeta.yml --postprocess-file yolov5s-sim-postprocess-file.yml --output-path ovxlib/yolov5s/yolov5sprj --pack-nbg-unify --optimize "VIP9000PICO_PID0XEE" --viv-sdk ${VIV_SDK}

部署結束后,對比輸出tensor的相似度,發現量化后,最后一層的相似度精度下降很多:

$ python /home/caozilong/VeriSilicon/acuity-toolkit-whl-6.6.1/bin/tools/compute_tensor_similarity.py ./quant quant_input.tensor quanti_output.tensor (vip) caozilong@AwExdroid-AI:~/Workspace/yolov5s-v6.1-deploy$ python /home/caozilong/VeriSilicon/acuity-toolkit-whl-6.6.1/bin/tools/compute_tensor_similarity.py ./quant quant_input.tensor quanti_output.tensor (vip) caozilong@AwExdroid-AI:~/Workspace/yolov5s-v6.1-deploy$ python /home/caozilong/VeriSilicon/acuity-toolkit-whl-6.6.1/bin/tools/compute_tensor_similarity.py ./quanti_output.tensor ./iter_0_attach_Concat_Concat_255_out0_0_out0_1_25200_85.tensor 2022-07-02 15:46:43.269805: W tensorflow/stream_executor/platform/default/dso_loader.cc:59] Could not load dynamic library 'libcudart.so.10.1'; dlerror: libcudart.so.10.1: cannot open shared object file: No such file or directory 2022-07-02 15:46:43.269853: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine. 2022-07-02 15:47:09.426509: W tensorflow/stream_executor/platform/default/dso_loader.cc:59] Could not load dynamic library 'libcuda.so.1'; dlerror: libcuda.so.1: cannot open shared object file: No such file or directory 2022-07-02 15:47:09.426556: W tensorflow/stream_executor/cuda/cuda_driver.cc:312] failed call to cuInit: UNKNOWN ERROR (303) 2022-07-02 15:47:09.426580: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:156] kernel driver does not appear to be running on this host (AwExdroid-AI): /proc/driver/nvidia/version does not exist 2022-07-02 15:47:09.453345: I tensorflow/core/platform/profile_utils/cpu_utils.cc:104] CPU Frequency: 2393990000 Hz 2022-07-02 15:47:09.455335: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x5598fe9cc010 initialized for platform Host (this does not guarantee that XLA will be used). Devices: 2022-07-02 15:47:09.455375: I tensorflow/compiler/xla/service/service.cc:176] StreamExecutor device (0): Host, Default Version WARNING:tensorflow:From /home/caozilong/anaconda3/envs/vip/lib/python3.6/site-packages/tensorflow/python/util/dispatch.py:201: calling cosine_distance (from tensorflow.python.ops.losses.losses_impl) with dim is deprecated and will be removed in a future version. Instructions for updating: dim is deprecated, use axis instead euclidean_distance 20061.037 cos_similarity 0.972248

余弦相似度只有97%,歐氏距離也很大,有問題,數據是有形狀的,我們在仔細看一下這兩筆tensor的分布情況:

量化輸入:

浮點輸入:

?可以看到兩筆tensor的形狀是非常相似的,這說明量化非常好的保留了輸入數據的特征,那再看輸出數據呢?

量化輸出:

浮點推理輸出:

輸出數據的特征非常明顯,大部分的數值集中在0附近,但是也有個別極大的點分布在0-600之間。雖然量化也很好的保留了原始數據的分布形狀,但是這種形態的輸出是對量化非常不友好的,量化最prefer那種接近于正態分布的數據分布。針對這個模型來說,如果按照量化方式部署,最終造成的后果,可能就是模型的精度掉的太厲害,無法滿足場景要求。

怎么解決這個問題呢?我們要找出癥結所在,這個癥結就在網絡最后幾層:

YOLOV5S網絡特殊的地方在于,圖中被紅色框框住的部分,數據分布不適合做量化處理,通常被認為被框住的三個紅色分支應屬于后處理的部分,應該由CPU去做而不是NPU。所以正確的做法應該是從transpose輸出頭哪里將輸出輸出出來,從新定義輸出節點,從圖中可以看到,這里有三個輸出頭,就應該有三個輸出節點。

之所以能這樣做還有一個原因,就是模型部署工具是支持自定義輸入層和數層的,你可以通過命令行指定的方式將任何一層定義為輸出或者輸入層。

指定輸出層重新部署

通過命令行指定輸出層--outputs "onnx::Sigmoid_339 onnx::Sigmoid_377 onnx::Sigmoid_415"

pegasus.py import onnx --model yolov5s-sim.onnx --output-data yolov5s-sim.data --output-model yolov5s-sim.json --outputs "onnx::Sigmoid_339 onnx::Sigmoid_377 onnx::Sigmoid_415" pegasus.py generate inputmeta --model yolov5s-sim.json --input-meta-output yolov5s-sim-inputmeta.yml pegasus.py generate postprocess-file --model yolov5s-sim.json --postprocess-file-output yolov5s-sim-postprocess-file.yml pegasus.py quantize --model yolov5s-sim.json --model-data yolov5s-sim.data --batch-size 1 --device CPU --with-input-meta yolov5s-sim-inputmeta.yml --rebuild --model-quantize yolov5s-sim.quantize --quantizer asymmetric_affine --qtype uint8 pegasus.py inference --model yolov5s-sim.json --model-data yolov5s-sim.data --batch-size 1 --dtype quantized --model-quantize yolov5s-sim.quantize --device CPU --with-input-meta yolov5s-sim-inputmeta.yml --postprocess-file yolov5s-sim-postprocess-file.yml --iterations 2 pegasus.py export ovxlib --model yolov5s-sim.json --model-data yolov5s-sim.data --dtype quantized --model-quantize yolov5s-sim.quantize --batch-size 1 --save-fused-graph --target-ide-project 'linux64' --with-input-meta yolov5s-sim-inputmeta.yml --postprocess-file yolov5s-sim-postprocess-file.yml --output-path ovxlib/yolov5s/yolov5sprj --pack-nbg-unify --optimize "VIP9000PICO_PID0XEE" --viv-sdk ${VIV_SDK}

得到推理階段的tensor,由于是現在模型改成了三個輸出,所以,data目錄中的兩張圖像對應了六筆輸出tensor.

更改輸出層后的網絡模型結構,可以看到之前需要后處理的那一坨不見了,轉而成了三個獨立的輸出層:

后處理:

參考如下連接的代碼,將后處理部分摳出來改成綠色小程序:

https://github.com/OAID/Tengine/blob/tengine-lite/examples/tm_yolov5s_timvx.cpp

代碼如下:

#include <iostream> #include <stdio.h> #include <vector> #include <math.h> #include <float.h> #include <stdlib.h> #include <string.h> using namespace std;enum Yolov5OutType {p8_type = 1,p16_type = 2,p32_type = 3, };typedef struct __Rect__ {float x, y, width, height; } Rect;struct Object {Rect rect;int label;float prob; };static float overlap(float x1, float w1, float x2, float w2) {float l1 = x1 - w1/2;float l2 = x2 - w2/2;float left = l1 > l2 ? l1 : l2;float r1 = x1 + w1/2;float r2 = x2 + w2/2;float right = r1 < r2 ? r1 : r2;return right - left; }float box_intersection(Rect a, Rect b) {float w = overlap(a.x, a.width, b.x, b.width);float h = overlap(a.y, a.height, b.y, b.height);if(w < 0 || h < 0) return 0;float area = w*h;return area; }static inline float sigmoid(float x) {return static_cast<float>(1.f / (1.f + exp(-x))); }static inline float intersection_area(const Object& a, const Object& b) {return box_intersection(a.rect, b.rect); }static void qsort_descent_inplace(std::vector<Object>& faceobjects, int left, int right) {int i = left;int j = right;float p = faceobjects[(left + right) / 2].prob;while (i <= j){while (faceobjects[i].prob > p)i++;while (faceobjects[j].prob < p)j--;if (i <= j){// swapstd::swap(faceobjects[i], faceobjects[j]);i++;j--;}}#pragma omp parallel sections{ #pragma omp section{if (left < j) qsort_descent_inplace(faceobjects, left, j);} #pragma omp section{if (i < right) qsort_descent_inplace(faceobjects, i, right);}} }static void qsort_descent_inplace(std::vector<Object>& faceobjects) {if (faceobjects.empty())return;qsort_descent_inplace(faceobjects, 0, faceobjects.size() - 1); }static void nms_sorted_bboxes(const std::vector<Object>& faceobjects, std::vector<int>& picked, float nms_threshold) {picked.clear();const int n = faceobjects.size();std::vector<float> areas(n);for (int i = 0; i < n; i++){areas[i] = faceobjects[i].rect.width * faceobjects[i].rect.height;;}for (int i = 0; i < n; i++){const Object& a = faceobjects[i];int keep = 1;for (int j = 0; j < (int)picked.size(); j++){const Object& b = faceobjects[picked[j]];// intersection over unionfloat inter_area = intersection_area(a, b);float union_area = areas[i] + areas[picked[j]] - inter_area;if (inter_area / union_area > nms_threshold)keep = 0;}if (keep)picked.push_back(i);} }static void generate_proposals(int stride, const float* feat, float prob_threshold, std::vector<Object>& objects,int letterbox_cols, int letterbox_rows) {static float anchors[18] = {10, 13, 16, 30, 33, 23, 30, 61, 62, 45, 59, 119, 116, 90, 156, 198, 373, 326};int anchor_num = 3;int feat_w = letterbox_cols / stride;int feat_h = letterbox_rows / stride;int cls_num = 80;int anchor_group;if (stride == 8)anchor_group = 1;if (stride == 16)anchor_group = 2;if (stride == 32)anchor_group = 3;for (int h = 0; h <= feat_h - 1; h++){for (int w = 0; w <= feat_w - 1; w++){for (int a = 0; a <= anchor_num - 1; a++){//process cls scoreint class_index = 0;float class_score = -FLT_MAX;for (int s = 0; s <= cls_num - 1; s++){float score = feat[a * feat_w * feat_h * (cls_num + 5) + h * feat_w * (cls_num + 5) + w * (cls_num + 5) + s + 5];if (score > class_score){class_index = s;class_score = score;}}//process box scorefloat box_score = feat[a * feat_w * feat_h * (cls_num + 5) + (h * feat_w) * (cls_num + 5) + w * (cls_num + 5) + 4];float final_score = sigmoid(box_score) * sigmoid(class_score);if (final_score >= prob_threshold){int loc_idx = a * feat_h * feat_w * (cls_num + 5) + h * feat_w * (cls_num + 5) + w * (cls_num + 5);float dx = sigmoid(feat[loc_idx + 0]);float dy = sigmoid(feat[loc_idx + 1]);float dw = sigmoid(feat[loc_idx + 2]);float dh = sigmoid(feat[loc_idx + 3]);float pred_cx = (dx * 2.0f - 0.5f + w) * stride;float pred_cy = (dy * 2.0f - 0.5f + h) * stride;float anchor_w = anchors[(anchor_group - 1) * 6 + a * 2 + 0];float anchor_h = anchors[(anchor_group - 1) * 6 + a * 2 + 1];float pred_w = dw * dw * 4.0f * anchor_w;float pred_h = dh * dh * 4.0f * anchor_h;float x0 = pred_cx - pred_w * 0.5f;float y0 = pred_cy - pred_h * 0.5f;float x1 = pred_cx + pred_w * 0.5f;float y1 = pred_cy + pred_h * 0.5f;Object obj;obj.rect.x = x0;obj.rect.y = y0;obj.rect.width = x1 - x0;obj.rect.height = y1 - y0;obj.label = class_index;obj.prob = final_score;objects.push_back(obj);}}}} }static int detect_yolov5(std::vector<Object>& objects, float **output) {int size0 = 1*3*80*80*85;int size1 = 1*3*40*40*85;int size2 = 1*3*20*50*85;std::vector<float> p8_data(output[0], &output[0][size0-1]);std::vector<float> p16_data(output[1], &output[1][size1-1]);std::vector<float> p32_data(output[2], &output[2][size2-1]);// set default letterbox sizeint letterbox_rows = 640;int letterbox_cols = 640;/* postprocess */const float prob_threshold = 0.4f;const float nms_threshold = 0.45f;std::vector<Object> proposals;std::vector<Object> objects8;std::vector<Object> objects16;std::vector<Object> objects32;//std::vector<Object> objects;generate_proposals(32, p32_data.data(), prob_threshold, objects32, letterbox_cols, letterbox_rows);proposals.insert(proposals.end(), objects32.begin(), objects32.end());generate_proposals(16, p16_data.data(), prob_threshold, objects16, letterbox_cols, letterbox_rows);proposals.insert(proposals.end(), objects16.begin(), objects16.end());generate_proposals(8, p8_data.data(), prob_threshold, objects8, letterbox_cols, letterbox_rows);proposals.insert(proposals.end(), objects8.begin(), objects8.end());qsort_descent_inplace(proposals);std::vector<int> picked;nms_sorted_bboxes(proposals, picked, nms_threshold);/* yolov5 draw the result */float scale_letterbox;int resize_rows;int resize_cols;if ((letterbox_rows * 1.0 / 640) < (letterbox_cols * 1.0 / 640)){scale_letterbox = letterbox_rows * 1.0 / 640;}else{scale_letterbox = letterbox_cols * 1.0 / 640;}resize_cols = int(scale_letterbox * 640);resize_rows = int(scale_letterbox * 640);int tmp_h = (letterbox_rows - resize_rows) / 2;int tmp_w = (letterbox_cols - resize_cols) / 2;float ratio_x = (float)640 / resize_rows;float ratio_y = (float)640 / resize_cols;int count = picked.size();fprintf(stderr, "detection num: %d\n", count);objects.resize(count);for (int i = 0; i < count; i++){objects[i] = proposals[picked[i]];float x0 = (objects[i].rect.x);float y0 = (objects[i].rect.y);float x1 = (objects[i].rect.x + objects[i].rect.width);float y1 = (objects[i].rect.y + objects[i].rect.height);x0 = (x0 - tmp_w) * ratio_x;y0 = (y0 - tmp_h) * ratio_y;x1 = (x1 - tmp_w) * ratio_x;y1 = (y1 - tmp_h) * ratio_y;x0 = std::max(std::min(x0, (float)(640 - 1)), 0.f);y0 = std::max(std::min(y0, (float)(640 - 1)), 0.f);x1 = std::max(std::min(x1, (float)(640 - 1)), 0.f);y1 = std::max(std::min(y1, (float)(640 - 1)), 0.f);objects[i].rect.x = x0;objects[i].rect.y = y0;objects[i].rect.width = x1 - x0;objects[i].rect.height = y1 - y0;printf("%s line %d, x:%f, y %f, w: %f, h %f.\n", __func__, __LINE__, objects[i].rect.x, objects[i].rect.y, objects[i].rect.width, objects[i].rect.height);}return 0; }int yolov5s_postprocess(float **output) {printf("yolov5s_postprocess.c run. \n");std::vector<Object> objects;detect_yolov5(objects, output);return 0; }int get_tensor_data(string file_path, float **data) {int len = 0;static float *memory = NULL;static int max_len = 10*1024*1024;if (memory == NULL){memory = (float *)malloc(max_len * sizeof(float));}FILE *fp = NULL;if ((fp = fopen(file_path.c_str(), "r")) == NULL){cout << "open tensor file error ! file name : " << file_path << endl;exit(-1);}int file_len = 0;while (!feof(fp)){fscanf(fp, "%f ", &memory[len++]);}*data = (float *)malloc(len * sizeof(float));memcpy(*data, memory, len * sizeof(float));fclose(fp);if (len == 0 || *data == NULL){cout << "read tensor error happened ! " << "len : " << len << " data address: " << *data << endl;exit(-1);}return len; }int main(int argc, char **argv) {float *tensor0;float *tensor1;float *tensor2;float *tensor[3];get_tensor_data(argv[1], &tensor0);get_tensor_data(argv[2], &tensor1);get_tensor_data(argv[3], &tensor2);tensor[0] = tensor0;tensor[1] = tensor1;tensor[2] = tensor2;yolov5s_postprocess(tensor);return 0; }

編譯后,對輸出的兩張圖像的tensor做后處理:

?可以看到,針對圖像1,檢測出來了3個目標,坐標狂也被打印出來:

修改輸出層后的輸出數據分布情況

iter_0_attach_Transpose_Transpose_200_out0_0_out0_1_3_80_80_85.tensor:

iter_0_attach_Transpose_Transpose_219_out0_1_out0_1_3_40_40_85.tensor:

iter_0_attach_Transpose_Transpose_238_out0_2_out0_1_3_20_20_85.tensor:

iter_1_attach_Transpose_Transpose_200_out0_0_out0_1_3_80_80_85.tensor:

iter_1_attach_Transpose_Transpose_219_out0_1_out0_1_3_40_40_85.tensor:

iter_1_attach_Transpose_Transpose_238_out0_2_out0_1_3_20_20_85.tensor:

通過直方圖可以看出,新定義的三個輸出節點的分布形狀很接近于正態分布,就像前文所講,正態分布對量化是非常友好的。所以能夠解決精度丟失的問題。

關于直方圖的生成方式,可以參考博客:

根據歐式距離和余弦相似度來計算tensor之間的相似度的代碼實現_papaofdoudou的博客-CSDN博客


結束

總結

以上是生活随笔為你收集整理的Yolov5s模型在全志V853平台上的部署方法和应用的全部內容,希望文章能夠幫你解決所遇到的問題。

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

一区二区在线电影 | 午夜视频一区二区三区 | 色噜噜日韩精品欧美一区二区 | 国产黄色电影 | 制服丝袜天堂 | 久久综合九色综合久久久精品综合 | 中文区中文字幕免费看 | 久久综合色天天久久综合图片 | 日日夜操| 日韩女同一区二区三区在线观看 | 人人澡人摸人人添学生av | 久操视频在线 | 中文字幕一区二区三区四区视频 | 精品久久久久国产免费第一页 | 在线观看免费高清视频大全追剧 | 51精品国自产在线 | 青草视频免费观看 | 在线观看黄网 | 在线中文字幕视频 | 欧美日韩精品免费观看 | 草久电影| 96久久精品 | 久久精品一区二区国产 | 日韩在线一二三区 | 欧美三级在线播放 | 欧美一区二区日韩一区二区 | 国产精品一区二区久久精品 | 国产h片在线观看 | 97超碰色偷偷 | av电影免费在线播放 | 黄色一级在线免费观看 | 亚洲影院天堂 | 国产高清无av久久 | 午夜av网站 | 国产99黄| 人人爽人人澡 | 婷婷网在线| 国产精彩视频一区 | 久热av | 午夜国产在线观看 | 五月婷婷在线视频观看 | 久久久精品小视频 | 国产精品一区欧美 | 免费一级片观看 | 久久久久久看片 | 日韩成人黄色av | 探花视频在线版播放免费观看 | 国产91全国探花系列在线播放 | 99热这里只有精品国产首页 | 国产精品网红福利 | 国产精品99久久久久久有的能看 | 美女网站视频色 | 国产尤物视频在线 | 久草久热 | 久久人人做| 色婷婷综合久久久久 | 91av在线免费视频 | www178ccom视频在线 | 久久精品视频在线免费观看 | 少妇资源站 | 欧美一级黄色视屏 | 国色天香永久免费 | 91福利试看| 国产精品久久久视频 | 五月婷婷六月丁香在线观看 | av在线等| 精品国产99| 亚洲精品国产成人av在线 | 91av在线看 | 亚洲精品久久久蜜臀下载官网 | 亚洲精品白浆高清久久久久久 | 天堂中文在线视频 | 国产无区一区二区三麻豆 | 视频国产在线观看18 | 日韩欧美在线中文字幕 | 日韩久久精品一区二区三区 | 亚洲成人免费观看 | 一区二区精品视频 | 美国人与动物xxxx | 丁香影院在线 | 92精品国产成人观看免费 | 国产96av| 色播五月激情五月 | 中文字幕在线免费观看视频 | 丁香视频全集免费观看 | 天天看天天操 | 色婷婷亚洲婷婷 | 激情在线网址 | 婷婷精品国产一区二区三区日韩 | 欧美大片www | 操夜夜操| 粉嫩av一区二区三区入口 | 成人免费观看大片 | 欧美做受xxx | 欧美色伊人 | 99久久婷婷国产综合精品 | 欧美日韩在线精品一区二区 | 欧美一级在线观看视频 | 亚洲成人av在线播放 | 久久av一区二区三区亚洲 | 91精品一区国产高清在线gif | 日韩网站一区 | 国产91免费在线 | 亚洲成人欧美 | 美女国产 | 黄色网大全 | 久久国产成人午夜av影院潦草 | 日韩午夜在线播放 | 久久高清精品 | 91资源在线播放 | 久久人人爽人人爽 | 亚洲精区二区三区四区麻豆 | www视频在线观看 | 久草在线免费新视频 | 免费亚洲视频在线观看 | 免费av网址在线观看 | 日本性xxx| www.日本色 | 日韩av片无码一区二区不卡电影 | 国产成人久久77777精品 | 九九精品视频在线看 | 久久蜜桃av | 国产精品亚洲人在线观看 | 色噜噜日韩精品一区二区三区视频 | 成年人在线观看免费视频 | 中文字幕视频网站 | 久久a热6 | 久久综合九色综合欧美狠狠 | 国产成人精品一区二 | 欧美一区二区三区在线视频观看 | 99r精品视频在线观看 | 992tv人人网tv亚洲精品 | 免费福利视频导航 | 99精品视频在线看 | 超碰人人在线观看 | 在线观看中文字幕第一页 | 国产精品毛片一区二区三区 | www.看片网站 | 免费看亚洲毛片 | 99国内精品久久久久久久 | 成人国产精品久久久春色 | 免费三级av | 久久福利精品 | 狠狠操导航 | 91亚洲精品久久久久图片蜜桃 | 成年人视频免费在线 | 九九热久久免费视频 | 日韩在线观看第一页 | 国产一区二区视频在线 | 亚洲色图激情文学 | 欧美黄色免费 | 亚洲视频h | 精品国产成人 | 亚洲天堂网在线视频 | av中文在线影视 | 激情婷婷在线观看 | 久久er99热精品一区二区三区 | 日韩免费不卡av | 久久视频这里有久久精品视频11 | 日韩精品无码一区二区三区 | 欧美日韩中文在线观看 | 国产一级片观看 | 在线亚洲播放 | 中文字幕av在线 | 成人教育av| av天天色 | 91喷水 | 亚洲精品 在线视频 | 99精品视频在线观看播放 | 又黄又爽又色无遮挡免费 | 91人人爽人人爽人人精88v | 超碰在线官网 | 91成人免费电影 | 涩五月婷婷 | 免费在线观看污网站 | 丁香婷婷激情网 | 日韩欧美精品在线 | 高潮久久久久久久久 | 久久国产亚洲视频 | 精品在线99 | 亚洲成人免费在线 | 久久tv| 最近中文字幕第一页 | 色综合天天在线 | 久久有精品 | 国产精品av在线免费观看 | 久久艹艹| 久久免费影院 | av福利网址导航 | 久久久影片 | 正在播放久久 | 日韩高清成人在线 | 亚洲狠狠丁香婷婷综合久久久 | 中文字幕 国产专区 | av线上免费观看 | 久久天天操 | av久久在线 | 最近日本字幕mv免费观看在线 | 青春草视频| 亚洲午夜精品久久久久久久久久久久 | 国产精品午夜av | 欧美成人播放 | 久久免费黄色网址 | 成人免费一区二区三区在线观看 | 天天干夜夜 | 成人永久视频 | 高清精品在线 | 久久久久成人精品亚洲国产 | 国产91精品一区二区 | 久久人人爽人人爽人人片 | 国内精品毛片 | 三级av网| www.黄色在线| 欧美国产在线看 | 欧美人人爱 | 久久综合久久综合久久综合 | 96av视频| 操综合| 亚洲一区免费在线 | 狠狠狠狠狠色综合 | 午夜久久福利影院 | 欧美另类视频 | 香蕉视频在线播放 | 毛片区 | 色999在线 | 久久天天躁夜夜躁狠狠85麻豆 | 丁香九月婷婷综合 | av在线免费网站 | 国产91在线看 | 一区中文字幕电影 | 黄色特级一级片 | 一本一本久久a久久精品牛牛影视 | 波多野结衣在线观看一区二区三区 | 成年人国产在线观看 | 最新色视频 | 成人精品福利 | 欧美小视频在线观看 | 伊人天堂网| 香蕉久草 | 国产一区二区在线观看免费 | 日韩视频免费在线观看 | 国产超碰97 | 992tv又爽又黄的免费视频 | 国产一卡二卡四卡国 | 又大又硬又黄又爽视频在线观看 | 久久久久久97三级 | 久青草国产在线 | 成人一级影视 | 在线综合 亚洲 欧美在线视频 | 日韩网站在线看片你懂的 | 91精品伦理 | 日韩色区 | 亚洲成人国产 | 99热在 | 黄a在线| 五月婷婷在线视频观看 | 天天操夜夜操夜夜操 | 国产精品嫩草69影院 | 国产精品18久久久 | 青春草国产视频 | 91欧美国产 | 久草视频视频在线播放 | 亚洲精品视频免费在线观看 | 国产69精品久久久久久 | 日本在线观看一区 | 九九久久影视 | 国产一区电影在线观看 | 欧美大片在线观看一区 | 国产精品二区三区 | 国内精品久久久久久久久久久久 | www在线免费观看 | 91豆麻精品91久久久久久 | 免费看搞黄视频网站 | 国产精品免费久久 | 91九色最新| 欧美日韩一区二区三区在线免费观看 | www.夜夜操 | 最近高清中文在线字幕在线观看 | 精品国产诱惑 | 91九色视频在线观看 | 在线日韩三级 | 六月婷婷色 | 在线a视频免费观看 | 国产精品午夜av | 伊人色综合久久天天 | 日本性视频 | 日本丶国产丶欧美色综合 | 成人一级免费视频 | 久久久久久久国产精品影院 | 久久伊人免费视频 | 国产综合片 | 91九色蝌蚪视频 | 亚洲黄色av网址 | 人人爽人人香蕉 | 人人玩人人添人人澡超碰 | 午夜视频色 | 国产免费叼嘿网站免费 | 久久国产精品99久久人人澡 | 久久99精品波多结衣一区 | 精品福利国产 | 亚洲另类久久 | 久久久国产精华液 | 久草视频网 | 国产亚洲成av片在线观看 | 中文字幕在线观看免费高清电影 | 久久久久久美女 | 国产精品久久久久久久免费 | 日韩美一区二区三区 | 最近中文字幕免费av | mm1313亚洲精品国产 | 亚洲婷婷网 | 久久久精品影视 | 8x成人在线 | 免费精品在线 | 日本精品久久久久中文字幕5 | 天天视频色版 | 久久一级片 | 福利视频区 | 女人18毛片a级毛片一区二区 | 日本公乱妇视频 | 国产高清 不卡 | 天天干天天弄 | 久久精品国产一区二区三 | 一级全黄毛片 | www.香蕉视频在线观看 | 国内小视频在线观看 | 中文字幕一区二区三区乱码不卡 | 国产69精品久久99不卡的观看体验 | 日本黄色黄网站 | 欧美一区二区在线免费看 | 国产女人免费看a级丨片 | 97在线视频免费 | 久久久九色精品国产一区二区三区 | 亚洲 成人 欧美 | 96av在线视频| 国产在线观看h | 久久精品一区八戒影视 | 丁香六月激情 | 久久精品成人 | 一级电影免费在线观看 | 日韩在线视频不卡 | 色婷婷a| 精品久久网 | 99在线国产| 五月婷婷在线观看 | 中文字幕在线不卡国产视频 | 亚洲精品在线免费播放 | 日韩av片无码一区二区不卡电影 | 天天综合成人 | 久久夜视频 | 国产一区二区在线精品 | 国产日韩欧美在线观看视频 | 97色资源| 国产一级二级在线观看 | 丁香免费视频 | 丁香激情综合国产 | 中文字幕永久在线 | 日日干激情五月 | 亚洲精品在 | 中文字幕超清在线免费 | 亚洲国产播放 | 最近中文字幕久久 | 久久99国产精品 | 狠狠色丁香久久婷婷综合五月 | 日韩综合第一页 | 欧美在线视频a | 国产午夜精品免费一区二区三区视频 | 国产精品免费久久久久 | 日韩激情影院 | 国产精品网在线观看 | 粉嫩av一区二区三区四区在线观看 | 亚洲欧美日韩国产一区二区三区 | 99精品亚洲| 九九在线国产视频 | 99日精品 | 在线看片日韩 | 日日骑| 日韩精品中文字幕在线观看 | 日本xxxx.com| 日日精品 | 蜜臀久久99精品久久久无需会员 | 一级免费片 | 日韩在线视频免费播放 | 国产一级片不卡 | 免费a网| 免费在线观看的av网站 | 国产精选在线 | 亚洲高清在线视频 | 天天射一射| 91av影视| 中午字幕在线观看 | 五月婷婷亚洲 | 国产成人免费高清 | 国内少妇自拍视频一区 | 久草在线观看 | 99久高清在线观看视频99精品热在线观看视频 | 免费看黄色毛片 | 婷婷丁香激情 | 日韩 国产 | 成人av在线一区二区 | 日韩精品最新在线观看 | 99色资源 | 欧美日韩在线免费观看视频 | www.av在线.com | 中文字幕高清有码 | 热久在线 | 国产剧情久久 | 久久调教视频 | 久色免费视频 | 亚洲首页 | 日本精品视频在线播放 | 丁香婷婷激情啪啪 | 97超碰免费 | 国产只有精品 | 日本动漫做毛片一区二区 | 四虎8848免费高清在线观看 | 国产婷婷视频在线 | 久久国产精品成人免费浪潮 | 国产成人精品亚洲a | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 色婷婷综合视频在线观看 | 日韩r级电影在线观看 | 日日夜精品 | 99精品久久99久久久久 | 最新av在线免费观看 | 成人免费观看网站 | 激情文学综合丁香 | 黄色网www| 亚洲免费av一区二区 | 午夜精品久久久久久久99婷婷 | 亚洲天天 | 日韩电影精品一区 | 亚洲爱爱视频 | 色噜噜在线观看视频 | 国产91国语对白在线 | 日韩mv欧美mv国产精品 | 91欧美视频网站 | 日韩久久精品一区二区三区 | 爱av在线网 | 嫩草伊人久久精品少妇av | av韩国在线 | 激情av资源 | 亚洲精品在线观 | 精品一区二区三区在线播放 | 国产视频精品免费播放 | 337p西西人体大胆瓣开下部 | av电影在线观看完整版一区二区 | 国产亚洲精品bv在线观看 | 狠狠色噜噜狠狠 | 欧美一区二区免费在线观看 | 日本xxxxav | 国产精品一区免费在线观看 | 久草五月 | 国产91在线免费视频 | 99久久久久免费精品国产 | 久久久亚洲电影 | 久久综合爱| 欧美男同视频网站 | 欧美一区二区三区四区夜夜大片 | 亚洲精品自拍视频在线观看 | 黄色网址在线播放 | 人人射人人澡 | 日韩电影中文字幕在线观看 | 字幕网在线观看 | 亚洲人成在线电影 | 欧美激情xxxx | 国产精品久久久久久久久久三级 | 在线观看av麻豆 | 99riav1国产精品视频 | av大片免费在线观看 | 伊人视频 | 五月天中文字幕 | 五月婷婷开心中文字幕 | 亚洲综合精品在线 | 天天射天天干 | 国产九九九精品视频 | 欧美乱熟臀69xxxxxx | 国产精品福利在线 | 中文字幕久久亚洲 | 日韩欧美xxxx | 免费黄色在线网站 | 欧美性大战久久久久 | 久久综合婷婷国产二区高清 | 久久,天天综合 | 性色av免费看 | 777奇米四色| 在线观看免费一级片 | 午夜男人影院 | 久久深爱网 | 久久成人综合 | 97超级碰碰 | 国产一区精品在线 | 亚洲精品国久久99热 | 成人欧美一区二区三区黑人麻豆 | 天天插狠狠干 | 成人aⅴ视频 | 亚洲在线不卡 | 日本 在线 视频 中文 有码 | 高清色免费 | 成人黄色在线看 | 视频成人永久免费视频 | 超碰免费97 | 综合国产视频 | 欧美色黄| 欧美一区影院 | 亚州精品在线视频 | 日本在线观看一区二区 | 日韩视频一区二区三区 | 成人91在线 | 婷婷在线不卡 | 麻豆一区二区 | 人人爱天天操 | 日韩精品一区二区三区外面 | 免费色av| 91在线日本| 一本一本久久a久久精品综合 | 欧美在线观看视频一区二区三区 | 久久精品网站视频 | 亚洲婷婷网 | 色综合久久精品 | 成人av资源站 | 人人干人人超 | 国产成人一区二 | 91社区国产高清 | 亚洲精品播放 | 午夜色影院 | 国产一区二区三区网站 | 免费视频一区二区 | 黄色国产区 | 成人免费一级片 | 久久夜色精品国产欧美一区麻豆 | 欧美色综合久久 | 亚洲黄色小说网址 | 成人国产精品 | 日韩色在线观看 | 激情网站免费观看 | 18岁免费看片 | 日韩爱爱片| 国产精品亚洲成人 | av网站免费看 | 国产精品99久久久久的智能播放 | 婷婷在线观看视频 | 欧美性大战久久久久 | 一区二区三区在线看 | 国产在线观看你懂得 | 99久久99久久免费精品蜜臀 | 五月天网页| 久久久久久免费 | 69国产精品成人在线播放 | 国产在线精品一区二区三区 | 黄色小网站在线 | 亚洲日日射 | 欧美一区二区三区在线观看 | 亚洲日本精品视频 | 日韩欧美国产免费播放 | 国产伦理久久精品久久久久_ | 一级一片免费观看 | 国产精品大尺度 | 狠狠躁日日躁狂躁夜夜躁av | 黄av资源 | 久久男女视频 | 日韩av在线看| 中文字幕在线观看免费高清电影 | 成人av高清| 奇米网444 | 999视频在线播放 | 久久免费视频一区 | 亚洲国产精品成人精品 | 久久成人免费电影 | 激情视频综合网 | 色福利网| 久久久久女教师免费一区 | 日韩三级一区 | 日韩视频一区二区三区 | 免费av一级电影 | 国产一区二区不卡视频 | 色婷婷九月 | 婷婷六月久久 | 免费观看的黄色片 | 99久久99久久免费精品蜜臀 | 久久婷亚洲五月一区天天躁 | 干天天 | 天天搞天天干 | 国产精品久久免费看 | 日韩天天综合 | 一级黄色大片在线观看 | a级国产乱理伦片在线观看 亚洲3级 | 97中文字幕 | 丁香婷婷综合网 | 干狠狠| 免费观看91 | 日韩大片在线免费观看 | 日韩视频在线不卡 | 九九有精品 | 免费看片成年人 | 欧美在线1区| www色| 免费av高清 | 麻豆精品传媒视频 | 欧美日韩午夜 | 国产精品igao视频网入口 | 午夜12点| 国产精品99久久久久久宅男 | 狠狠狠色丁香综合久久天下网 | 爱情影院aqdy鲁丝片二区 | 97网站| 免费在线观看av | 久久久蜜桃 | 黄色免费网战 | 国产视频综合在线 | 久久久久日本精品一区二区三区 | 91麻豆高清视频 | 久久综合九色综合97婷婷女人 | 亚洲精品黄色在线观看 | 久久精品欧美一区 | 在线观看日韩免费视频 | 欧美一级在线看 | 亚洲精品免费在线观看视频 | 日韩乱码中文字幕 | 天天插天天色 | 最近中文字幕高清字幕在线视频 | av网站播放 | 天天躁日日躁狠狠躁av麻豆 | 91看片在线播放 | 国产亚洲精品久久久久秋 | 久久婷婷色 | 色婷婷欧美 | 日本三级不卡 | 久久久精品国产免费观看同学 | 久久久久久久久久国产精品 | 日韩精品一区二区三区视频播放 | 亚洲精品在线观看不卡 | 91av视频导航| 欧美在线视频一区二区三区 | 国产字幕av| 久久亚洲欧美日韩精品专区 | 日韩激情综合 | 丁香六月在线观看 | 亚洲美女在线国产 | 超碰人在线| 国产视频每日更新 | 久久久久久免费网 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久艹国产 | 91免费观看视频在线 | 日韩中文字幕免费电影 | 中文字幕不卡在线88 | 不卡av电影在线观看 | 国产亚洲永久域名 | www日韩视频 | 色a在线观看 | 日韩视频在线不卡 | 99999精品视频| 国产三级午夜理伦三级 | 亚洲久草网 | 99热高清 | 一区二区三区四区久久 | 国产精品久久久久久久久久新婚 | 人人狠狠| 97碰碰视频 | www.com操| 欧美一级电影免费观看 | 色噜噜在线观看视频 | 日韩欧美xxx | 欧女人精69xxxxxx | 日本高清中文字幕有码在线 | 中文字幕2021 | 成人午夜在线电影 | 精品日韩在线一区 | av先锋影音少妇 | 免费在线色| 天天操天天干天天玩 | 日韩成人免费在线 | 国产精品福利在线播放 | 欧美一二三专区 | 四虎影视成人永久免费观看视频 | 午夜精品久久久久久久99 | 久久久麻豆视频 | 四虎影视成人永久免费观看视频 | 日韩电影在线观看中文字幕 | 亚洲视频一区二区三区在线观看 | 国产在线观看中文字幕 | 天天干天天操天天爱 | 在线观看日本高清mv视频 | 五月婷婷操 | 日韩在线观看小视频 | 一区二精品 | 最近的中文字幕大全免费版 | 日韩在线不卡 | 99久久99久久精品国产片果冰 | 久久亚洲欧美 | 九九视频热 | 69xxxx欧美 | 久久人人爽人人片av | 91成人在线视频观看 | 亚洲精品在线一区二区三区 | 色网av| av不卡中文字幕 | 日本不卡一区二区三区在线观看 | 国产最新网站 | 日本久久久久久久久 | av免费试看 | 92国产精品久久久久首页 | 国产成人免费av电影 | 免费特级黄毛片 | 韩日色视频 | 久久国产精品视频免费看 | 久久久久久久国产精品视频 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 国产精品毛片一区二区 | 成年人黄色在线观看 | 免费色av| 国产露脸91国语对白 | 蜜臀av免费一区二区三区 | 精品字幕在线 | 婷婷综合久久 | 天天搞天天 | 午夜av在线 | 97精品久久人人爽人人爽 | 又黄又刺激视频 | 国产精品3 | 黄色亚洲大片免费在线观看 | 亚洲一级电影视频 | 外国av网| 国产精品久久久久久久久搜平片 | 免费成人在线视频网站 | 欧美日韩国产精品爽爽 | 色香蕉网 | 亚洲一级影院 | 日韩黄色中文字幕 | 丁香一区二区 | 天天操夜夜爱 | 久久99网站 | 综合天天| 亚洲视频专区在线 | 在线之家免费在线观看电影 | 日本黄色免费大片 | 99久久日韩精品视频免费在线观看 | 日韩av电影免费观看 | 亚洲一二三在线 | 日韩一区二区三区高清免费看看 | 久草在线最新视频 | 91麻豆视频网站 | 欧美 日韩 国产 成人 在线 | 精品国产伦一区二区三区观看体验 | 综合五月婷婷 | 91黄色免费网站 | 2018亚洲男人天堂 | 天天草天天 | 成年人黄色免费看 | 91粉色视频| 最新91在线视频 | 香蕉视频在线视频 | 五月天色丁香 | 日日爱影视 | 国产精品免费在线播放 | www黄在线 | 精品高清美女精品国产区 | 久久99偷拍视频 | 久久五月精品 | 五月婷香蕉久色在线看 | 中文在线字幕免费观 | 日韩美女免费线视频 | 午夜精品久久久久久久久久久久久久 | 色小说av | 亚洲精品在线免费观看视频 | www.夜夜夜| 91香蕉视频 | 四虎影视国产精品免费久久 | 99久高清在线观看视频99精品热在线观看视频 | 欧美日韩亚洲在线观看 | 99久高清在线观看视频99精品热在线观看视频 | 中国一 片免费观看 | 999电影免费在线观看2020 | 五月婷婷激情网 | 五月婷久久 | 国产精国产精品 | 欧美精品久久久久久久久免 | 亚洲三级在线免费观看 | www国产精品com | 国产1区2区3区精品美女 | 人人插人人做 | 99在线精品免费视频九九视 | 久草手机视频 | 亚洲精品大全 | 国产流白浆高潮在线观看 | 国产免费一区二区三区最新 | av网在线观看 | 四虎国产精品免费观看视频优播 | 亚洲激色 | 亚洲精品久久久久中文字幕二区 | 在线视频欧美亚洲 | 九九久久婷婷 | 国产亚洲精品久久久久久电影 | 欧美在线视频精品 | 99精品国产一区二区三区麻豆 | 一区二区三区日韩视频在线观看 | 在线观看视频国产 | 在线观看黄色 | 国产一级免费在线 | 国产一二三四在线视频 | 久久伦理影院 | 天堂av免费观看 | 国产精品破处视频 | 亚洲资源 | 日韩久久午夜一级啪啪 | 九月婷婷人人澡人人添人人爽 | 国产精品久久久久久超碰 | 在线播放一区 | 国产福利资源 | www国产亚洲精品久久麻豆 | 久久99亚洲精品 | 亚洲女人天堂成人av在线 | 四虎在线免费观看视频 | 四虎在线观看视频 | 99久久精品免费看国产 | 99视频一区二区 | 欧美有色 | av大片免费| 在线免费观看成人 | 6080yy精品一区二区三区 | 国产高清不卡在线 | 亚洲欧美国产精品久久久久 | 五月天电影免费在线观看一区 | 国产成人精品一区在线 | 国语对白少妇爽91 | 麻豆精品视频在线观看免费 | 免费人人干 | 亚洲国产成人在线播放 | 欧美韩国日本在线 | 久久久久亚洲精品成人网小说 | 日韩高清一二三区 | 亚洲精品www| 91最新网址 | 精品国产乱码久久久久久1区二区 | 成人a视频在线观看 | 一区二区三区免费 | 日韩成人免费电影 | 中文字幕在线观看免费 | 视频在线日韩 | 国产成人av网 | 国产精品久久久久久一区二区 | 国产精品热| 一区 二区 精品 | www.com.黄| www.看片网站 | 人人添人人澡 | 欧美一区二区伦理片 | 久久精品直播 | 麻豆视频一区二区 | 日韩免费视频线观看 | 免费在线视频一区二区 | 四川妇女搡bbbb搡bbbb搡 | 久久免费视频7 | 日韩国产欧美在线播放 | 免费在线观看一级片 | 美女视频黄的免费的 | 四虎影视成人精品国库在线观看 | 成人免费在线播放视频 | 日韩精品一区在线观看 | 日本福利视频在线 | 亚洲成 人精品 | 久久久久久视频 | 91成熟丰满女人少妇 | 国产精品免费视频观看 | a在线免费观看视频 | 久久精品视频免费观看 | 天天草天天草 | 色av资源网 | 欧美成人在线免费 | 人人澡超碰碰 | 国产九九九精品视频 | 亚洲精品玖玖玖av在线看 | 天天操天天透 | 91视频在线免费 | 狠狠色丁香久久婷婷综合五月 | www视频在线播放 | 2019中文 | 亚洲最新av在线网站 | 欧美国产不卡 | 超碰国产在线观看 | 欧美aa一级 | 91精品播放 | 9在线观看免费高清完整版在线观看明 | 日韩欧美在线观看一区二区 | 99国产精品一区 | 亚洲精品一区二区三区新线路 | 岛国av在线不卡 | 一区二区三区四区五区在线视频 | 天天操天天射天天舔 | 久久99中文字幕 | 国产99亚洲 | 日韩av一区二区在线影视 | 久久综合色天天久久综合图片 | 久久男人视频 | 国产精品av电影 | www久 | 久久亚洲美女 | 国产成人精品一区二区三区免费 | 不卡日韩av| 中文字幕视频在线播放 | 五月黄色 | 狠狠操导航 | 天天鲁天天干天天射 | 日韩精品一区在线观看 | 三级黄色理论片 | 中国一级特黄毛片大片久久 | 免费日韩av片 | 日韩精品免费在线 | 国产免费三级在线观看 | 日韩免费视频播放 | 久久精品久久国产 | 黄色免费看片网站 | 国产成视频在线观看 | 欧美一区中文字幕 | 免费在线国产 | 欧美日韩裸体免费视频 | 97av超碰| 怡红院久久 | 久久精品免费播放 | 天天干天天干天天色 | 天天综合网 天天 | 国产美女久久久 | 日韩精品久久久久久久电影竹菊 | 久久久久成人精品免费播放动漫 | 狠狠色丁香婷婷综合 | 国产日韩精品在线观看 | 亚洲国产精品电影 | 综合网久久 | 成年人免费在线播放 | 欧美日韩国产综合一区二区 | 东方av免费在线观看 | 乱男乱女www7788 | 亚洲成人精品影院 | 国产精品成久久久久三级 | 色综合天天视频在线观看 | 欧美精品一区二区在线观看 | 国产色视频一区 | 黄色视屏av| 婷婷综合导航 | 国产精品色视频 | 五月天婷婷综合 | 激情综合六月 | 久久免费av电影 | 一区二区三区免费在线观看 | 九月婷婷色 | 国产精品久久久久一区二区三区共 | 青青草视频精品 | 99久久99久久精品 | 午夜成人免费电影 | 色久av| 夜夜干夜夜 | 精精国产xxxx视频在线播放 | 成 人 免费 黄 色 视频 | 日韩精品久久久免费观看夜色 | 91精品视频一区 | 欧美日韩国产区 | 久久av免费观看 | 亚洲精品国偷拍自产在线观看 | 亚洲九九九在线观看 | 丁香在线视频 | 91视频 - 88av | 国产精品激情偷乱一区二区∴ | 国内精品视频在线 | 激情五月综合 | 天天操人 | 夜色成人av| 玖玖精品在线 | 在线观看成人国产 | 五月婷av| 制服丝袜亚洲 | 久久国产精品二国产精品中国洋人 | 日韩在线观看视频在线 | 国产1级毛片| 看片网站黄色 | 日韩精品高清不卡 | 黄色影院在线免费观看 | av资源中文字幕 | 最近中文字幕大全 | 亚洲综合色婷婷 | www.国产视频 | 色99中文字幕 | 最近2019年日本中文免费字幕 | 中文字幕乱码视频 | 成人91在线观看 | 欧美伦理电影一区二区 | 欧美日韩二区在线 | avhd高清在线谜片 | 欧美日韩中文字幕视频 | 免费av看片 | 亚洲va欧美va人人爽 | 成人毛片网 | 亚洲精品午夜久久久久久久久久久 | 天天在线视频色 | 午夜色站 | 亚洲精品99 | 天天摸天天弄 | 国产一区二区视频在线 |