国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

GroundingDINO(一種開集目標(biāo)檢測算法)服務(wù)化,根據(jù)文本生成檢測框

這篇具有很好參考價值的文章主要介紹了GroundingDINO(一種開集目標(biāo)檢測算法)服務(wù)化,根據(jù)文本生成檢測框。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

背景

最近發(fā)現(xiàn)一個叫GroundingDINO的開集目標(biāo)檢測算法,所謂開集目標(biāo)檢測就是能檢測的目標(biāo)類別不局限于訓(xùn)練的類別,這個算法可以通過輸入文本的prompt然后輸出對應(yīng)的目標(biāo)框。可以用來做預(yù)標(biāo)注或者其他應(yīng)用,比如我們要訓(xùn)練某個細(xì)分場景的算法時,我們找不到足夠的已經(jīng)標(biāo)注的數(shù)據(jù),就可以先用這個算法預(yù)打標(biāo), 與SAM結(jié)合,還能做根據(jù)text去分割出物體。
GroundingDINO:https://github.com/IDEA-Research/GroundingDINO
GroundingDINO(一種開集目標(biāo)檢測算法)服務(wù)化,根據(jù)文本生成檢測框

將GroundingDINO服務(wù)化

為什么要服務(wù)化

原始的項(xiàng)目是一個python腳本,不適合單人使用,而不是和團(tuán)隊一起使用。服務(wù)化之后,其他人可以通過http請求的方式來訪問,而不需要每個人都搭建環(huán)境,也便于批量處理數(shù)據(jù)。

如何服務(wù)化

最簡單的是通過flask api把python腳本包裝一層,這種方式實(shí)現(xiàn)簡單,但擴(kuò)展性不夠,比如如果想要動態(tài)組batch,就需要自己寫這部分邏輯。更好的方式是使用成熟的模型推理服務(wù),TorchServe就是其中的一種,比較適合pytorch模型(其實(shí)其他格式比如onnx也可以),使用TorchServe,我們只用寫好模型的預(yù)處理、推理和后處理邏輯,其他的比如實(shí)例擴(kuò)展、動態(tài)batch、資源監(jiān)控這些都不需要我們自己實(shí)現(xiàn)。我們有其他模型,也可以用同樣的方式服務(wù)起來,而不需要為每個模型都寫一個服務(wù)。因此本文選擇TorchServe來作為模型的推理服務(wù)。

過程

克隆文末的項(xiàng)目后按順序執(zhí)行下面步驟:

1.下載模型

新建一個weights目錄,并把下面的模型放入:

wget -q https://github.com/IDEA-Research/GroundingDINO/releases/download/v0.1.0-alpha/groundingdino_swint_ogc.pth

新建一個bert-base-uncased 目錄,下載bert模型:
https://huggingface.co/bert-base-uncased/tree/main

config.json
pytorch_model.bin
tokenizer_config.json
tokenizer.json
vocab.txt

2.制作torchserve鏡像

Dockerfile:

FROM pytorch/pytorch:2.0.1-cuda11.7-cudnn8-devel
ARG DEBIAN_FRONTEND=noninteractive

#for Chinese User, uncomment this line
# COPY sources.list /etc/apt/sources.list

RUN apt update && \
     apt install openjdk-17-jdk -y

RUN apt install git -y

#install python packages
COPY requirements.txt /root/
RUN pip install -r /root/requirements.txt --no-cache -i https://repo.huaweicloud.com/repository/pypi/simple/
docker build -t torchserve:groundingdino .

3.轉(zhuǎn)換模型

docker run --rm -it -v $(pwd):/data -w /data torchserve:groundingdino bash -c "torch-model-archiver --model-name groundingdino --version 1.0 --serialized-file weights/groundingdino_swint_ogc.pth --handler grounding_dino_handler.py --extra-files GroundingDINO_SwinT_OGC.py,bert-base-uncased/*"

執(zhí)行完畢后,將得到一個groundingdino.mar文件。

4.開啟服務(wù)

根據(jù)需要修改服務(wù)的配置

docker run -d --name groundingdino -v $(pwd)/model_store:/model_store -p 8080:8080 -p 8081:8081 -p 8082:8082 torchserve:groundingdino bash -c "torchserve --start --foreground --model-store /model_store --models groundingdino=groundingdino.mar"

5.調(diào)用服務(wù)

import requests
import base64
import time
# URL for the web service
url = "http://ip:8080/predictions/groundingdino"
headers = {"Content-Type": "application/json"}

# Input data
with open("test.jpg", "rb") as f:
    image = f.read()

data = {
        "image": base64.b64encode(image).decode("utf-8"), # base64 encoded image or BytesIO
        "caption": "steel pipe", # text prompt, split by "." for multiple phrases
        "box_threshold": 0.25, # threshold for object detection
        "caption_threshold": 0.25 # threshold for text similarity
        }

# Make the request and display the response

resp = requests.post(url=url, headers=headers, json=data)
outputs = resp.json()
'''
the outputs will be like:
    {
        "boxes": [[0.0, 0.0, 1.0, 1.0]], # list of bounding boxes in xyxy format
        "scores": [0.9999998807907104], # list of object detection scores
        "phrases": ["steel pipe"] # list of text phrases
    }

'''

完整項(xiàng)目:GroundingDINO-Service文章來源地址http://www.zghlxwxcb.cn/news/detail-460079.html

到了這里,關(guān)于GroundingDINO(一種開集目標(biāo)檢測算法)服務(wù)化,根據(jù)文本生成檢測框的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【AIGC】15、Grounding DINO | 將 DINO 擴(kuò)展到開集目標(biāo)檢測

    【AIGC】15、Grounding DINO | 將 DINO 擴(kuò)展到開集目標(biāo)檢測

    論文:Grounding DINO: Marrying DINO with Grounded Pre-Training for Open-Set Object Detection 代碼:https://github.com/IDEA-Research/GroundingDINO 出處:清華、IDEA 時間:2023.03.20 貢獻(xiàn): 本文提出了一種 open-set 的目標(biāo)檢測器,Grounding DINO,將 Transformer based 檢測器 DINO 和 grounded pre-training 結(jié)合起來,能夠輸出

    2024年02月09日
    瀏覽(46)
  • 【多模態(tài)】18、ViLD | 通過對視覺和語言知識蒸餾來實(shí)現(xiàn)開集目標(biāo)檢測(ICLR2022)

    【多模態(tài)】18、ViLD | 通過對視覺和語言知識蒸餾來實(shí)現(xiàn)開集目標(biāo)檢測(ICLR2022)

    論文:Open-vocabulary Object Detection via Vision and Language Knowledge Distillation 代碼:https://github.com/tensorflow/tpu/tree/master/models/official/detection/projects/vild 效果: 在 zero-shot 測試下,coco 達(dá)到了 36.6 AP,PASCAL VOC 達(dá)到了 72.2AP,Object365 達(dá)到了 11.8AP 本文提出了 Vision and Language knowledge Distillation(

    2024年02月14日
    瀏覽(24)
  • CutLER:一種用于無監(jiān)督目標(biāo)檢測和實(shí)例分割的方法

    本文分享自華為云社區(qū)《CutLER:一種用于無監(jiān)督目標(biāo)檢測和實(shí)例分割的方法》,作者:Hint。 目標(biāo)檢測是計算機(jī)視覺中的一種重要任務(wù),使AI系統(tǒng)感知、推理、理解目標(biāo)。訓(xùn)練定位模型需要特別的標(biāo)注,比如目標(biāo)的框、掩膜、定位點(diǎn)等。本文的工作研究了無監(jiān)督的目標(biāo)檢測和實(shí)

    2024年02月12日
    瀏覽(21)
  • Drone-YOLO:一種有效的無人機(jī)圖像目標(biāo)檢測

    Drone-YOLO:一種有效的無人機(jī)圖像目標(biāo)檢測

    點(diǎn)擊藍(lán)字 關(guān)注我們 關(guān)注并星標(biāo) 從此不迷路 計算機(jī)視覺研究院 公眾號ID | 計算機(jī)視覺研究院 學(xué)習(xí)群 | 掃碼在主頁獲取加入方式 計算機(jī)視覺研究院專欄 Column of Computer Vision Institute 無人機(jī)圖像中的目標(biāo)檢測是各個研究領(lǐng)域的重要基礎(chǔ)。然而,無人機(jī)圖像帶來了獨(dú)特的挑戰(zhàn),

    2024年02月07日
    瀏覽(24)
  • Drone-Yolo:一種高效的無人機(jī)圖像目標(biāo)檢測神經(jīng)網(wǎng)絡(luò)方法

    https://www.mdpi.com/2504-446X/7/8/526 在各種研究領(lǐng)域中,對無人機(jī)的圖像進(jìn)行目標(biāo)檢測是一項(xiàng)有意義的任務(wù)。然而,無人機(jī)的圖像帶來了獨(dú)特的挑戰(zhàn),包括圖像尺寸大、檢測對象尺寸小、對象密集分布、對象重疊以及光線不足影響目標(biāo)檢測的準(zhǔn)確性。本文提出了Drone-YOLO,這是一系列

    2024年02月04日
    瀏覽(18)
  • 《一種改進(jìn)的YOLOv5用于無人機(jī)捕獲場景中的目標(biāo)檢測》論文筆記

    ? ? ? ?無人機(jī)圖像處理中的目標(biāo)檢測逐漸成為近年來的研究熱點(diǎn)。一般目標(biāo)檢測算法在應(yīng)用于無人機(jī)場景時往往會顯著下降。這是因?yàn)闊o人機(jī)圖像是從高空拍攝的,分辨率高,小物體比例很大。為了在滿足輕量化特性的同時提高無人機(jī)目標(biāo)檢測的精度,我們對YOLOv5s模型進(jìn)行

    2024年02月02日
    瀏覽(20)
  • 超越所有Anchor-free方法!PP-YOLOE-R:一種高效的目標(biāo)檢測網(wǎng)絡(luò)

    超越所有Anchor-free方法!PP-YOLOE-R:一種高效的目標(biāo)檢測網(wǎng)絡(luò)

    點(diǎn)擊下方 卡片 ,關(guān)注“ 自動駕駛之心 ”公眾號 ADAS巨卷干貨,即可獲取 點(diǎn)擊進(jìn)入→ 自動駕駛之心【目標(biāo)檢測】技術(shù)交流群 后臺回復(fù) 【PPYOLO】 獲取論文、代碼等更多資料! 超越所有Anchor-free方法!PP-YOLOE-R:一種高效的目標(biāo)檢測網(wǎng)絡(luò) PP-YOLOE-R是基于PP-YOLOE的高效anchor-free旋轉(zhuǎn)

    2024年02月08日
    瀏覽(17)
  • 一種峰值檢測算法——AMPD算法(C語言實(shí)現(xiàn))

    一種峰值檢測算法——AMPD算法(C語言實(shí)現(xiàn))

    本文算法的原始論文出處:Algorithms | Free Full-Text | An Efficient Algorithm for Automatic Peak Detection in Noisy Periodic and Quasi-Periodic Signals | HTML (mdpi.com) 有位老哥在知乎寫了Python代碼:python代碼 在數(shù)字信號處理中,經(jīng)常涉及到波峰查找算法,如振動信號分析,樣條插值法求包絡(luò)等。對于周

    2024年02月03日
    瀏覽(35)
  • YOLOv7改進(jìn)之WDLoss 獨(dú)家首發(fā)更新|高效漲點(diǎn)2%改進(jìn)用于小目標(biāo)檢測的歸一化高斯 Wasserstein Distance Loss,提升小目標(biāo)檢測的一種新的包圍框相似度度量

    YOLOv7改進(jìn)之WDLoss 獨(dú)家首發(fā)更新|高效漲點(diǎn)2%改進(jìn)用于小目標(biāo)檢測的歸一化高斯 Wasserstein Distance Loss,提升小目標(biāo)檢測的一種新的包圍框相似度度量

    ??該教程為改進(jìn)進(jìn)階指南,屬于 《芒果書》 ??系列,包含大量的原創(chuàng)首發(fā)改進(jìn)方式, 所有文章都是全網(wǎng)首發(fā)原創(chuàng)改進(jìn)內(nèi)容?? 內(nèi)容出品: CSDN博客獨(dú)家更新 @CSDN芒果汁沒有芒果 ?? ??????內(nèi)含·改進(jìn)源代碼· ,按步驟操作運(yùn)行改進(jìn)后的代碼即可 重點(diǎn) :??????有多個同學(xué)

    2024年02月05日
    瀏覽(29)
  • 2023-一種無監(jiān)督目標(biāo)檢測和實(shí)例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】

    2023-一種無監(jiān)督目標(biāo)檢測和實(shí)例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】

    Facebook 目標(biāo)檢測和分割依賴海量數(shù)據(jù)的標(biāo)注,模型訓(xùn)練耗時最大的是數(shù)據(jù)采集和標(biāo)注過程,無監(jiān)督學(xué)習(xí)在目標(biāo)檢測和分割中的應(yīng)用較少。 這篇文章提出提出了Cut-and-LEaRn(CutLER),一種用于訓(xùn)練無監(jiān)督對象檢測和分割模型的簡單方法。利用自監(jiān)督模型的特性在沒有監(jiān)督的情況

    2024年02月06日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包