色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

細粒度圖像識別深度學習開源工具庫Hawkeye解析

新機器視覺 ? 來源:機器之心 ? 作者:機器之心 ? 2022-11-06 20:26 ? 次閱讀

細粒度圖像識別是視覺感知學習的重要研究課題,在智能新經濟和工業互聯網等方面具有巨大應用價值,且在諸多現實場景已有廣泛應用…… 鑒于當前領域內尚缺乏該方面的深度學習開源工具庫,南京理工大學魏秀參教授團隊用時近一年時間,開發、打磨、完成了 Hawkeye——細粒度圖像識別深度學習開源工具庫,供相關領域研究人員和工程師參考使用。本文是對 Hawkeye 的詳細介紹。

目錄

1. 什么是 Hawkeye 庫

2. Hawkeye 支持的模型及方法

3. 安裝 Hawkeye

4. 使用 Hawkeye 訓練模型

1. 什么是 Hawkeye 庫

Hawkeye 是一個基于 PyTorch 的細粒度圖像識別深度學習工具庫,專為相關領域研究人員和工程師設計。目前,Hawkeye 包含多種代表性范式的細粒度識別方法,包括 “基于深度濾波器”、“基于注意力機制”、“基于高階特征交互”、“基于特殊損失函數”、“基于網絡數據” 以及其他方法。

Hawkeye 項目代碼風格良好,結構清晰易讀,可拓展性較強。對于剛接觸細粒度圖像識別領域的相關人員而言,Hawkeye 較易上手,便于其理解細粒度圖像識別的主要流程和代表性方法,同時也方便在本工具庫上快速實現自己的算法。此外,我們還給出了庫中各模型的訓練示例代碼,自研方法也可按照示例快速適配并添加至 Hawkeye 中。

Hawkeye 開源庫鏈接:https://github.com/Hawkeye-FineGrained/Hawkeye

2. Hawkeye 支持的模型及方法

Hawkeye 目前支持細粒度圖像識別中主要學習范式的共 16 個模型與方法,具體如下:

基于深度濾波器

S3N (ICCV 2019)

Interp-Parts (CVPR 2020)

ProtoTree (CVPR 2021)

基于注意力機制

OSME+MAMC (ECCV 2018)

MGE-CNN (ICCV 2019)

APCNN (IEEE TIP 2021)

基于高階特征交互

BCNN (ICCV 2015)

CBCNN (CVPR 2016)

Fast MPN-COV (CVPR 2018)

基于特殊損失函數

Pairwise Confusion (ECCV 2018)

API-Net (AAAI 2020)

CIN (AAAI 2020)

基于網絡數據

Peer-Learning (ICCV 2021)

其他方法

NTS-Net (ECCV 2018)

CrossX (ICCV 2019)

DCL (CVPR 2019)

3. 安裝 Hawkeye

安裝依賴

使用 conda 或者 pip 安裝相關依賴:

Python 3.8

PyTorch 1.11.0 or higher

torchvison 0.12.0 or higher

numpy

yacs

tqdm

克隆倉庫:

git clone https://github.com/Hawkeye-FineGrained/Hawkeye.git

cd Hawkeye

準備數據集

首先,下載一個數據集(以 CUB200 為例):

cd Hawkeye/data

wget https://data.caltech.edu/records/65de6-vp158/files/CUB_200_2011.tgz

mkdir bird && tar -xvf CUB_200_2011.tgz -C bird/

我們提供了上述 8 個數據集的 meta-data 文件,能夠匹配庫中的 FGDataset 方便地加載訓練集和測試集,訓練集和測試集為各個數據集官方提供的劃分。使用不同數據集時,只需在實驗的 config 文件中修改 dataset 配置即可,方便切換。

在實驗的 config 文件中修改 dataset 配置,示例如下:

dataset:

name: cub

root_dir: data/bird/CUB_200_2011/images

meta_dir: metadata/cub

4. 使用 Hawkeye 訓練模型

對于 Hawkeye 支持的每個方法,我們均提供了單獨的訓練模板和配置文件。例如訓練 APINet 只需一條命令:

python Examples/APINet.py --config configs/APINet.yaml

實驗的參數都在相應的 yaml 文件中,可讀性高、便于修改,如:

experiment:
name: API_res101 2        # 實驗名稱
  log_dir: results/APINet   # 實驗日志、結果等的輸出目錄
  seed: 42                  # 可以選擇固定的隨機數種子
#  resume: results/APINet/API_res101 2/checkpoint_epoch_19.pth    # 可以從訓練中斷的 checkpoint 中恢復訓練
dataset:
  name: cub          # 使用 CUB200 數據集
  root_dir: data/bird/CUB_200_2011/images   # 數據集中圖像放置的路徑
  meta_dir: metadata/cub                  # CUB200 的 metadata 路徑
  n_classes: 10         # 類別數,APINet 需要的數據集
  n_samples: 4          # 每個類別的樣本數
  batch_size: 24        # 測試時的批樣本數
  num_workers: 4      # Dataloader 加載數據集的線程數
  transformer:        # 數據增強的參數配置
    image_size: 224      # 圖像輸入模型的尺寸 224x224
    resize_size: 256    # 圖像增強前縮放的尺寸 256x256
model:
  name: APINet        # 使用 APINet 模型,見 `model/methods/APINet.py`
  num_classes: 200      # 類別數目
#  load: results/APINet/API_res101 1/best_model.pth     # 可以加載訓練過的模型參數
train:
  cuda: [4]          # 使用的 GPU 設備 ID 列表,[] 時使用 CPU
  epoch: 100        # 訓練的 epoch 數量
  save_frequence: 10    # 自動保存模型的頻率
#  val_first: False      # 可選是否在訓練前進行一次模型精度的測試
  optimizer:
    name: Adam        # 使用 Adam 優化器
    lr: 0.0001        # 學習率為 0.0001
    weight_decay: 0.00000002
  scheduler:
    # 本例使用自定義組合的 scheduler,由 warmup 和余弦退火學習率組合而成,見 `Examples/APINet.py`
    name: ''
    T_max: 100        # scheduler 的總迭代次數
    warmup_epochs: 8    # warmup 的 epoch 數
    lr_warmup_decay: 0.01  # warmup 衰減的比例
  criterion:
    name: APINetLoss    # APINet 使用的損失函數,見 `model/loss/APINet_loss.py`

實驗的主程序 Examples/APINet.py 中的訓練器 APINetTrainer 繼承自 Trainer,不需要再寫復雜的訓練流程、logger、模型保存、配置加載等代碼,只用按需修改部分模塊即可。我們也提供了訓練階段的多個 hook 鉤子,可以滿足一些方法特別的實現方式。

日志文件、模型權重文件、訓練使用的訓練代碼以及當時的配置文件都會保存在實驗輸出目錄 log_dir 中,備份配置和訓練代碼便于日后對不同實驗進行對比。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4780

    瀏覽量

    68527
  • 深度學習
    +關注

    關注

    73

    文章

    5500

    瀏覽量

    121113

原文標題:基于PyTorch、易上手,細粒度圖像識別深度學習工具庫Hawkeye開源

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    AI圖像識別攝像機

    ?AI圖像識別攝像機是一種集成了先進算法和深度學習模型的智能監控設備。這些攝像機不僅能夠捕捉視頻畫面,還能實時分析和處理所拍攝的內容,從而實現對特定對象、場景或行
    的頭像 發表于 11-08 10:38 ?230次閱讀
    AI<b class='flag-5'>圖像識別</b>攝像機

    GPU深度學習應用案例

    GPU在深度學習中的應用廣泛且重要,以下是一些GPU深度學習應用案例: 一、圖像識別 圖像識別
    的頭像 發表于 10-27 11:13 ?383次閱讀

    AI大模型在圖像識別中的優勢

    AI大模型在圖像識別中展現出了顯著的優勢,這些優勢主要源于其強大的計算能力、深度學習算法以及大規模的數據處理能力。以下是對AI大模型在圖像識別中優勢的介紹: 一、高效性與準確性 處理速
    的頭像 發表于 10-23 15:01 ?605次閱讀

    圖像識別算法有哪幾種

    計算機科學家開始嘗試使用計算機來處理和分析圖像數據。最初的圖像識別算法主要基于模板匹配和邊緣檢測等簡單方法,但隨著計算機硬件和算法的不斷發展,圖像識別算法逐漸變得更加復雜和高效。 20世紀80年代,隨著神經網絡和機器
    的頭像 發表于 07-16 11:22 ?1052次閱讀

    圖像識別算法都有哪些方法

    圖像識別算法是計算機視覺領域的核心任務之一,它涉及到從圖像中提取特征并進行分類、識別和分析的過程。隨著深度學習技術的不斷發展,
    的頭像 發表于 07-16 11:14 ?5515次閱讀

    圖像識別算法的提升有哪些

    引言 圖像識別是計算機視覺領域的核心任務之一,旨在使計算機能夠自動地識別和理解圖像中的內容。隨著計算機硬件的發展和深度學習技術的突破,
    的頭像 發表于 07-16 11:12 ?641次閱讀

    圖像識別算法的優缺點有哪些

    圖像識別算法可以快速地處理大量圖像數據,提高工作效率。與傳統的人工識別方法相比,圖像識別算法可以在短時間內完成對大量圖像的分析和
    的頭像 發表于 07-16 11:09 ?1546次閱讀

    圖像識別算法的核心技術是什么

    圖像識別算法是計算機視覺領域的一個重要研究方向,其目標是使計算機能夠像人類一樣理解和識別圖像中的內容。圖像識別算法的核心技術包括以下幾個方面: 特征提取 特征提取是
    的頭像 發表于 07-16 11:02 ?625次閱讀

    圖像識別技術的原理是什么

    圖像識別技術是一種利用計算機視覺和機器學習技術對圖像進行分析和理解的技術。它可以幫助計算機識別和理解圖像中的對象、場景和活動。
    的頭像 發表于 07-16 10:46 ?914次閱讀

    圖像識別屬于人工智能嗎

    屬于。圖像識別是人工智能(Artificial Intelligence, AI)領域的一個重要分支。 一、圖像識別概述 1.1 定義 圖像識別是指利用計算機技術對圖像中的內容進行分析
    的頭像 發表于 07-16 10:44 ?1081次閱讀

    opencv圖像識別有什么算法

    OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺和機器學習軟件,提供了大量的圖像處理和計算機視覺相關的算法。以下是一些常見
    的頭像 發表于 07-16 10:40 ?1008次閱讀

    如何利用CNN實現圖像識別

    卷積神經網絡(CNN)是深度學習領域中一種特別適用于圖像識別任務的神經網絡結構。它通過模擬人類視覺系統的處理方式,利用卷積、池化等操作,自動提取圖像中的特征,進而實現高效的
    的頭像 發表于 07-03 16:16 ?1316次閱讀

    圖像識別技術原理 圖像識別技術的應用領域

    圖像識別技術是一種通過計算機對圖像進行分析和理解的技術。它借助計算機視覺、模式識別、人工智能等相關技術,通過對圖像進行特征提取和匹配,找出圖像
    的頭像 發表于 02-02 11:01 ?2415次閱讀

    基于TensorFlow和Keras的圖像識別

    TensorFlow和Keras最常見的用途之一是圖像識別/分類。通過本文,您將了解如何使用Keras達到這一目的。定義如果您不了解圖像識別的基本概念,將很難完全理解本文的內容。因此在正文開始之前
    的頭像 發表于 01-13 08:27 ?810次閱讀
    基于TensorFlow和Keras的<b class='flag-5'>圖像識別</b>

    如何使用Python進行圖像識別的自動學習自動訓練?

    如何使用Python進行圖像識別的自動學習自動訓練? 使用Python進行圖像識別的自動學習和自動訓練需要掌握一些重要的概念和技術。在本文中,我們將介紹如何使用Python中的一些常用
    的頭像 發表于 01-12 16:06 ?578次閱讀
    主站蜘蛛池模板: 免费国产在线观看| 国产成人一区二区三中文 | 欧美性xxxxxx爱| 欧洲日韩av无线在码| 日日夜夜噜噜| 亚州视频一区| 用快播看黄的网站| 97国产精品久久精品国产| 免费毛片网站在线观看| 暖暖日本在线手机免费完整版| 欧美高清69vivo| 99精品国产AV一区二区麻豆| 99视频精品国产免费观看| YELLOW日本免费观看播放| 国产精品九九久久| 精品视频一区二区三三区四区| 老鸭窝毛片| 色www.亚洲免费视频| 亚洲国产剧情中文视频在线| 中国老太婆xxxxx| www伊人网| 国产一级做a爰片久久毛片男| 久久久久激情免费观看| 人和拘一级毛片| 亚洲精品久久久WWW游戏好玩| 3a丝袜论坛| 国产成人无码精品久久久影院| 精品国产品国语在线不卡丶| 免费看毛片的网址| 午夜日本大胆裸艺术| 2018高清国产一区二区三区| 国产69精品久久久熟女| 九九99国产香蕉视频| 日本乱hd高清videos| 亚洲综合免费视频| 石原莉奈rbd806中文字幕| 亚洲人成在线观看一区二区| 97国产视频| 国产在线一卡二卡| 欧美精品久久久久性色AV苍井| 性888xxxx入欧美|