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

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

3天內不再提示

低亮度人臉檢測、附源碼——CVPR2021之 Low Light Face Detection【一文讀懂】

張嘉振 ? 來源:jf_63760997 ? 作者:jf_63760997 ? 2023-07-03 15:43 ? 次閱讀

聲明:作為全網 AI 領域 干貨最多的博主之一,?? 不負光陰不負卿 ??

10w+讀者

論文基本信息【 CVPR2021 】

  • HLA-Face: Joint High-Low Adaptation for Low Light Face Detection
  • 用于弱光人臉檢測的聯合高低自適應算法

https://github.com/daooshee/HLA-Face-Code?github.com/daooshee/HLA-Face-Code

HLA-Face: Joint High-Low Adaptation for Low Light Face Detection?arxiv.org/abs/2104.01984

摘要翻譯

0. Abstract

微光下的人臉檢測對許多實際應用來說具有挑戰(zhàn)性,但卻至關重要,例如監(jiān)控視頻、夜間自動駕駛。大多數現有的人臉探測器嚴重依賴于大量的注釋,而收集數據是費時費力的。為了減少在弱光條件下建立新的數據集的負擔,我們充分利用現有的正常光數據,探索如何將人臉探測器從正常光適應到弱光。這項任務的挑戰(zhàn)在于,對于像素級和物體級來說,普通光和弱光之間的差距太大,太復雜。因此,大多數現有的低光增強和適應方法并沒有達到理想的性能。為了解決這個問題,我們提出了一個聯合高-低適配(HLA)框架。通過雙向的低水平適應和多任務高水平適應方案,我們的HLA-Face即使沒有使用黑色面孔標簽進行訓練,也比最先進的方法表現得更好。

1. Introduction

人臉檢測是許多視覺任務的基礎,已廣泛應用于各種實際應用中,如智慧城市智能監(jiān)控、人臉解鎖、手機美容濾鏡等。在過去的幾十年里,大量的研究在人臉檢測方面取得了很大的進展。然而,在不利光照條件下的人臉檢測仍然具有挑戰(zhàn)性。在光照不足的情況下拍攝的圖像會遭受一系列的退化,例如低能見度、強烈的噪聲和色彩。這些退化不僅會影響人類的視覺質量,還會使機器視覺任務的性能惡化,在監(jiān)控視頻分析和夜間自動駕駛中可能會產生潛在的風險。在圖1 (a)中,目前最先進的人臉檢測器DSFD[1]很難檢測到光照不足的人臉,這與它在WIDER face[2]上超過90%的精度形成了直接對比。

為了促進微光人臉檢測的研究,構建了一個大尺度基準DARK face[3]。暗臉數據的出現催生了大量的暗臉檢測研究[4]。然而,現有的方法依賴于廣泛的注釋,因此健壯性和可伸縮性較差。

本文基于DARK FACE提供的標桿平臺,探討了如何在不需要DARK FACE標注的情況下,將普通光照人臉檢測模型適應于微光場景。我們發(fā)現在正常光和弱光之間存在兩級間隙。一個是像素級外觀上的差距,如照明不足、相機噪音和顏色偏差。另一個是普通燈光場景和弱光場景之間的對象層次語義差異,包括但不限于路燈、汽車前照燈和廣告牌的存在。傳統(tǒng)的低光照增強方法(5、6)設計用于提高視覺質量,因此不能填補語義空白,如圖1所示(b)。典型的適應方法[7,8]主要為場景設計的兩個域共享相同的場景,如適應從城市多霧的城市風光[10][9]。但就我們的任務而言,領域差距更大,為適應氣候變化提出了更艱巨的挑戰(zhàn)

為了適應從正常光照到低光照,我們提出了一種高-低適應人臉檢測框架(hlface)。我們考慮聯合低水平和高水平的適應。具體來說,對于低水平的適應,典型的方法要么使暗圖像變亮,要么使亮圖像變暗。然而,由于域隙巨大,它們并沒有達到理想的性能。我們不是單向的低到正?;蛘5降偷姆g,而是雙向地使兩個領域彼此走向對方。通過使弱光圖像變亮,使正常光圖像失真,我們建立了介于正常和弱光之間的中間狀態(tài)。對于高階自適應,我們使用多任務自監(jiān)督學習來縮小低階自適應建立的中間狀態(tài)之間的特征距離。

通過結合低級和高級自適應,即使我們不使用深色人臉的標簽,我們也勝過最先進的人臉檢測方法。

主要工作:

wKgaomSifDGAfLgxAAE7LrOfrzI45.webp

墨理學AI

2. Related Works

- Low Light Enhancement.

低照度是一種常見的視覺失真,可能由不良的拍攝條件、錯誤的相機操作、設備故障等引起。關于低照度增強的文獻很多。 直方圖均衡化及其變體 [11] 擴展了圖像的動態(tài)范圍。 基于去霧的方法 [12] 將暗圖像視為倒置的模糊圖像。Retinex 理論假設圖像可以分解為光照和反射。 基于 Retinex 理論,大部分作品 [5, 13] 估計光照和反射率,然后單獨或同時處理每個組件。 最近的方法主要基于深度學習。 一些設計端到端的處理模型[14],而一些則注入了傳統(tǒng)的思想,例如 Retinex 理論 [15,16,6]。 除了處理 8 位 RGB 圖像外,還有用于 RAW 圖像的模型 [17]。

問題是這些方法主要是為人類視覺而不是機器視覺設計的。 像素級調整如何有益于和指導高級任務尚未得到很好的探索。 在本文中,我們?yōu)樯钌四槞z測提供了相應的解決方案。

- Face Detection.

早期的人臉檢測器依賴于手工制作的特征 [18],現在這些特征被從數據驅動的卷積神經網絡中學習到的深度特征所取代。 繼承通用對象檢測,典型的人臉檢測器可以分為兩類:兩階段和一階段。 兩階段模型 [19, 20] 首先生成區(qū)域提議,然后對其進行細化以進行最終檢測。 一階段模型 [21] 直接預測邊界框和置信度。 通用對象和人臉檢測之間的區(qū)別在于,在人臉檢測中,尺度變化通常要大得多。 現有方法通過多尺度圖像和特征金字塔 [22, 23] 或各種錨點采樣和匹配策略 [24, 25, 26] 解決了這個問題。

盡管人臉檢測研究蓬勃發(fā)展,但現有模型很少考慮光照不足的場景。 在本文中,我們提出了一種暗臉檢測器,even without using dark annotations,其性能也優(yōu)于最先進的方法。

- Dark Object Detection.

With the rapid development of deep learning, object detection has attracted more and more attention. However, few efforts have been made for dark objects. For RAW images, YOLO-in-the-Dark [27] merges models pre-trained in different domains using glue layers and a generative model. For RGB images, Loh et al. build the ExDark [28] dataset and analyze the low light images using both hand-crafted and learned features. DARK FACE [3] is a large-scale low light face dataset, giving birth to a series of dark face detectors in the UG2 Prize Challenge1 . However, most of these models highly rely on annotations, thus are of limited flexibility and robustness.

為了擺脫對標簽的依賴,無監(jiān)督域適應(Unsupervised Domain Adaptation, UDA)可能是一種簡單的解決方案[8,29]。雖然UDA方法在許多應用中已被證明是有效的,但由于正常和微光之間的巨大差距,這些方法在黑暗人臉檢測方面的性能有限。本文提出了一種結合低水平和高水平自適應的較優(yōu)方法。

此處就不繼續(xù)有道翻譯了,了解到 該論文和代碼是用于 Low Light Face Detection 任務即可

wKgZomSifDKASHFyAAJZH13wyAk27.webp

墨理學AI

環(huán)境搭建

wKgaomSifDKAb3JKAABhtY90N3M14.webp

官方readME

經測試 pytorch==1.4.0 一樣可以順利運行該代碼,因此這里安裝的是 pytorch 1.4.0
torch 1.6.0 運行 測試代碼 則會遇到一個小的報錯

cat /etc/issue

Ubuntu 18.04.5 LTS n l

conda create -n torch14 python=3.6.6

conda activate torch14

conda install pytorch==1.4.0 torchvision==0.5.0 cudatoolkit=10.0 -c pytorch

pip install opencv-python

pip install scipy

pip install thop

pip install easydict

人臉檢測測試

模型準備:

wKgZomSifDKAfci9AAHt53gaDzM60.webp

項目結構如下

wKgaomSifDOASE_PAACHZmoEzyk80.webp

測試命令如下

python test.py 

# 或者指定 gpu 編號

CUDA_VISIBLE_DEVICES=3  python test.py 
wKgZomSifDOABW3FAAB-Ku7tPW064.webp

GPU 占用 7539MiB

可視化檢測框

# 首先要正確設置 檢測圖像的 名字

vim draw_result.py +32
wKgaomSifDOAd-mKAAIImFqz4w055.webp

正確設置 檢測圖像的 名字

> 運行命令如下

python draw_result.py 

- 效果如下
- 各位小伙伴,學會此文、可以換其他更有趣圖片進行實驗哈

可能遇到的報錯:RuntimeError: CUDA out of memory

RuntimeError: CUDA out of memory. Tried to allocate 190.00 MiB (GPU 0; 15.75 GiB total capacity; 1.40 GiB already allocated; 144.31 MiB free; 1.84 GiB reserved in total by PyTorch)

> 解決方法,使用一塊閑置并且 超過 8G的顯卡 進行測試即可

CUDA_VISIBLE_DEVICES=3  python test.py 
wKgaomSifDSAJATpAAO24i-14yI59.webp

nvidia-smi

此次運行源碼+模型+論文

按照此次博文環(huán)境搭建教程,即可運行成功
倘若鏈接失效、請評論區(qū)告知

鏈接:https://pan.baidu.com/s/1zt6j8uQDcj68W5U-0WYCNA 
提取碼:nice

訓練 【這里就不展開啦】

官方該代碼訓練文檔 -- 已經足夠清晰?github.com/daooshee/HLA-Face-Code/tree/main/train_code

wKgZomSifDSAQX3PAAIZOni69GA44.webp

訓練數據集準備

wKgaomSifDWAeZLiAATTmL5nq_k65.webp

魔法加速-即可下載

?? 歡迎和墨理一起學AI

點贊 收藏 ?留言 都是博主堅持寫作、更新高質量博文的最大動力!

各種技術Club : 計算機視覺、超分重建、圖像修復、目標檢測、模型部署等方向小伙伴可簡單交流

審核編輯 黃宇

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

    關注

    87

    文章

    29401

    瀏覽量

    267703
  • 源碼
    +關注

    關注

    8

    文章

    630

    瀏覽量

    29074
  • 人臉識別
    +關注

    關注

    76

    文章

    4000

    瀏覽量

    81582
收藏 人收藏

    評論

    相關推薦

    【飛騰派4G版免費試用】飛騰派SeetafaceEngine人臉檢測

    收到個飛騰派,周末有空玩玩。。。 Seetaface是2016年中科院老師開源的的人臉識別引擎。https://github.com/seetaface/SeetaFaceEngine 源碼
    發(fā)表于 12-18 10:53

    【飛騰派4G版免費試用】飛騰派SeetafaceEngine人臉對齊(PART2)

    demofacedet_test,人臉檢測用戶態(tài)庫libseeta_facedet_lib.so和face_detection.h頭文件。 2、飛騰派Ubuntu系統(tǒng)下編譯FaceAlignment
    發(fā)表于 12-19 09:57

    Firefly 百度人臉識別開發(fā)套件

    `Firefly推出了百度人臉識別套件,基于Firefly高性能主板,融合百度AI精準的離線人臉識別技術,集算法與軟硬件為體的開發(fā)平臺。僅需個套件,可
    發(fā)表于 07-25 10:19

    【百度人臉識別開發(fā)套件】開放人臉識別APP及SDK,加速二次開發(fā)進程

    度人臉識別套件是集算法與軟硬件為體的站式開發(fā)套件,目前人臉識別APP及SDK已開放,助力企業(yè)二次開發(fā),加速產品落地。人臉識別APP界面
    發(fā)表于 08-10 15:31

    opencv和face++如何進行人臉檢測嗎?

    網上的教程都是在人臉上加個框框,進行人臉識別,而不是進行人臉檢測。請問有誰嘗試過和face++進行交互,能夠識別攝像頭前的人是預存的人,嗯,
    發(fā)表于 06-10 09:28

    labview調用百度人臉識別SDK

    本帖最后由 故人心 于 2021-11-19 13:52 編輯 labview實現人臉識別有多種途徑,我這里調用的百度的人臉識別SDK(C#版本),實現離線人臉識別。過程中踩了很
    發(fā)表于 11-27 19:40

    讀懂什么是NEC協(xié)議

    讀懂什么是NEC協(xié)議?
    發(fā)表于 10-15 09:22

    魯班貓:人臉識別

    人臉ID并保存視頻幀圖片face_id = input(\'請輸入人臉ID,按回車鍵后系統(tǒng)自動保存視頻幀圖片==>\')# 對于每個人,輸入
    發(fā)表于 04-07 18:34

    如何使用nnstreamer-examples進行人臉識別?

    example_face_recognition_tflite.py 日志時無法檢測人臉:2023-05-11 17:27:14.039 警告:[次要] 總線錯誤內部數據流錯誤。../git/libs/gst/base/gs
    發(fā)表于 05-24 06:41

    人臉識別C/C++源代碼

    人臉識別C/C++源代碼 將生物特征識別應用于人臉,實際上是包含兩個方面:第,從圖像或視頻幀中檢測人臉,即所謂的“
    發(fā)表于 02-09 16:05 ?184次下載

    人臉識別技術大總結1—Face Detection Alignment

    介紹人臉識別的四大塊:Face detection, alignment, verification and identification(recognization),本別代表從
    發(fā)表于 11-16 13:52 ?5275次閱讀

    讀懂方殼電池倉段差缺陷檢測

    讀懂方殼電池倉段差缺陷檢測
    的頭像 發(fā)表于 01-12 15:46 ?834次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>讀懂</b>方殼電池倉段差缺陷<b class='flag-5'>檢測</b>

    夜間(光照)目標檢測數據集整理:人臉檢測,行人檢測

    1.夜間(光照)人臉檢測的數據集 DARK FACE: Face Detection in
    的頭像 發(fā)表于 07-02 13:46 ?3036次閱讀

    中國團隊包攬CVPR 2021弱光人臉檢測挑戰(zhàn)賽前三名!高分論文已公開播

    來源:CVPR 2021 UG2+ 編輯:好困 【新智元導讀】中國團隊包攬CVPR 2021 UG2+挑戰(zhàn)賽弱光人臉
    的頭像 發(fā)表于 07-02 15:35 ?606次閱讀
    中國團隊包攬<b class='flag-5'>CVPR</b> <b class='flag-5'>2021</b>弱光<b class='flag-5'>人臉</b><b class='flag-5'>檢測</b>挑戰(zhàn)賽前三名!高分論文已公開播

    讀懂,什么是BLE?

    讀懂,什么是BLE?
    的頭像 發(fā)表于 11-27 17:11 ?2003次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>讀懂</b>,什么是BLE?