在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【EASY EAI Nano開(kāi)源套件試用體驗(yàn)】4AI功能測(cè)試之人臉檢測(cè)

開(kāi)發(fā)板試用精選 ? 來(lái)源:開(kāi)發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-10-11 16:40 ? 次閱讀

本文來(lái)源電子發(fā)燒友社區(qū),作者:碼農(nóng)愛(ài)學(xué)習(xí), 帖子地址:https://bbs.elecfans.com/jishu_2307951_1_1.html


EASY EAI Nano AI人臉檢測(cè)測(cè)試(附上體驗(yàn)視頻,詳細(xì)見(jiàn)原作者帖子)

本篇介紹EASY EAI Nano的AI人臉檢測(cè)功能,先看下測(cè)試效果:

1.jpg

本篇參考官方文檔:https://www.easy-eai.com/document_details/3/109

1 代碼下載

下載官方測(cè)試代碼:https://github.com/EASY-EAI/EASY-EAI-Toolkit-C-Solution.git,本篇來(lái)修改face_detect中的代碼并測(cè)試。

下載AI算法模型face_detect.model,百度網(wǎng)盤(pán):https://pan.baidu.com/s/1mrhVHxHWJ8cY9Fl9k5KtYg#list/path=%2F提取碼:0k7j

總的資料百度網(wǎng)盤(pán)了也有算法模型:https://pan.baidu.com/s/1AjOIu77mzFM4cDA0MMVr2A#list/path=%2F,提取碼:5ttf

我先使用總的資料里下載的模型測(cè)試。

2 人臉檢測(cè)API接口介紹

組件 頭文件以及庫(kù)路徑 描述
系統(tǒng)操作組件 easyeai-api/common_api/system_opt 提供線程操作函數(shù)
攝像頭組件 easyeai-api/peripheral_api/camera 提供攝像頭操作函數(shù)
顯示屏組件 easyeai-api/peripheral_api/display 提供顯示屏操作函數(shù)
人臉檢測(cè)組件 easyeai-api/algorithm_api/face_detect 提供人臉檢測(cè)操作函數(shù)

主要來(lái)看下人臉檢測(cè)組件。

face_detect.h主要內(nèi)容如下,包括一個(gè)det(detect)類(lèi)的3個(gè)人臉檢測(cè)API函數(shù):

class det {
public:
    det(){
landmarks.resize(5);
    }
    ~det(){
    }
?
    bool operator<(const det &t) const {
return score < t.score;
}
?
    bool operator>(const det &t) const {
return score > t.score;
}
?
    cv::Rect_ box;
    std::vector landmarks;
    float score;
?
    void print() {
printf("finalbox(x1y1x2y2) %f %f %f %f, score %fn", box.x, box.y, box.br().x, box.br().y, score);
printf("landmarks ");
int point_number = landmarks.size();
for (int i = 0; i < point_number; i++) {
printf("%f %f, ", landmarks[i].x, landmarks[i].y);
}
printf("n");
}
    
};
?
int face_detect_init(rknn_context *ctx, const char *path);
?
int face_detect_run(rknn_context ctx, cv::Mat &input_image, std::vector &result);
?
int face_detect_release(rknn_context ctx);

一些參數(shù)

  • ctx:輸入?yún)?shù),rknn_context句柄
  • path:輸入?yún)?shù),算法模型路徑
  • input_image:輸入?yún)?shù), Opencv Mat格式圖像
  • result:輸出參數(shù), 人臉檢測(cè)的結(jié)果輸出

3 代碼分析與修改

官方例程使用的是雙目攝像頭中的RGB攝像頭,本篇測(cè)試修改為使用外接USB攝像頭來(lái)采集圖像,并將采集的圖像橫屏顯示。另外,在識(shí)別到人臉后,通過(guò)OpenCV函數(shù),在屏幕左上角顯示出識(shí)別到的人臉個(gè)數(shù)。

3.1 圖像采集與顯示線程(主線程)

修改后的主程序邏輯如下:

2.png

主要代碼結(jié)構(gòu)如下:

Mat algorithm_image;
pthread_mutex_t img_lock;
?
int main(int argc, char **argv)
{
//省略...
pthread_t mTid;
Result_t Result;
Mat image;
// 1.打開(kāi)USB攝像頭
//省略...
// 2.創(chuàng)建識(shí)別線程,以及圖像互斥鎖
pthread_mutex_init(&img_lock, NULL);
Result.result.clear();
Result.face_number = 0;
CreateNormalThread(detect_thread_entry, &Result, &mTid);
// 3.顯示初始化
    //省略...
// 4.(取流 + 顯示)循環(huán)
while(1){
// 4.1、取流
pthread_mutex_lock(&img_lock);
ret = usbcamera_getframe(USB2_0, USB_DIRECT, pbuf);
if (ret) {
printf("error: %s, %dn", __func__, __LINE__);
pthread_mutex_unlock(&img_lock);
continue;
}
algorithm_image = Mat(CAMERA_HEIGHT, CAMERA_WIDTH, CV_8UC3, pbuf);
image = algorithm_image.clone();
pthread_mutex_unlock(&img_lock);
// 4.2、顯示
        cv::putText(image, std::string("detect faces: ") + std::to_string((int)Result.result.size()), 
                    cv::Point2f(30, 50), cv::FONT_HERSHEY_SIMPLEX,1.45, CV_RGB(255,0,0),3.0);
for (int i = 0; i < (int)Result.result.size(); i++)
{
// 標(biāo)出人臉框
int x = (int)(Result.result[i].box.x);
int y = (int)(Result.result[i].box.y);
int w = (int)(Result.result[i].box.width);
int h = (int)(Result.result[i].box.height);
rectangle(image, Rect(x, y, w, h), Scalar(0, 255, 0), 2, 8, 0);
// 標(biāo)出人臉定位標(biāo)記
for (int j = 0; j < (int)Result.result[i].landmarks.size(); ++j) {
cv::circle(image, cv::Point((int)Result.result[i].landmarks[j].x, (int)Result.result[i].landmarks[j].y), 2, cv::Scalar(0, 255, 0), 3, 8);
}
}
        disp_commit(image.data, IMAGE_SIZE);

        usleep(20*1000);
}
?
//省略...
}

3.2 人臉檢測(cè)處理

人臉檢測(cè)處理序邏輯如下:

3.png

代碼如下:

// 識(shí)別線程
void *detect_thread_entry(void *para)
{
int ret;
Result_t *pResult = (Result_t *)para;

// 人臉檢測(cè)初始化
rknn_context ctx;
face_detect_init(&ctx, "face_detect.model");

Mat image;
while(1)
{
        if(algorithm_image.empty()) {
usleep(5);
            continue;
        }

pthread_mutex_lock(&img_lock);
image = algorithm_image.clone();
pthread_mutex_unlock(&img_lock);
// 算法分析
ret = face_detect_run(ctx, image, pResult->result);
pResult->face_number = pResult->result.size();
if(ret <= 0){
pResult->result.clear();
usleep(1000);
continue;
}

printf("n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>n");
printf("face number : %dn", pResult->face_number);

        usleep(16*1000);
}
/* 人臉檢測(cè)釋放 */
face_detect_release(ctx);
return NULL;
}

4 測(cè)試

測(cè)試效果如下,可以同時(shí)檢測(cè)到多張人臉,在屏幕左上角標(biāo)注有檢測(cè)到的人臉個(gè)數(shù):

4.png

5 總結(jié)

本篇介紹了EASY EAI Nano的AI人臉檢測(cè)功能,修改官方代碼,改用外接USB攝像頭來(lái)采集圖像,并在識(shí)別到人臉后,通過(guò)OpenCV函數(shù),在屏幕左上角顯示出識(shí)別到的人臉個(gè)數(shù)。


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5082

    瀏覽量

    97708
  • 靈眸
    +關(guān)注

    關(guān)注

    0

    文章

    19

    瀏覽量

    3212
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    NVIDIA發(fā)布小巧高性?xún)r(jià)比的Jetson Orin Nano Super開(kāi)發(fā)者套件

    Nano Super開(kāi)發(fā)者套件體積小巧,僅相當(dāng)于一個(gè)手掌大小,但其功能卻異常強(qiáng)大。該套件旨在為商業(yè)AI開(kāi)發(fā)者、科技愛(ài)好者以及學(xué)生等各類(lèi)用戶(hù)
    的頭像 發(fā)表于 12-19 11:28 ?409次閱讀

    如何用OpenCV的相機(jī)捕捉視頻進(jìn)行人臉檢測(cè)--基于米爾NXP i.MX93開(kāi)發(fā)板

    本篇測(cè)評(píng)由優(yōu)秀測(cè)評(píng)者“eefocus_3914144”提供。 本文將介紹基于米爾電子MYD-LMX93開(kāi)發(fā)板(米爾基于NXP i.MX93開(kāi)發(fā)板)的基于OpenCV的人臉檢測(cè)方案測(cè)試。 OpenCV
    發(fā)表于 11-15 17:58

    基于迅為RK3568/RK3588開(kāi)發(fā)板的AI圖像識(shí)別方案

    01_官方模型測(cè)試 02_人臉識(shí)別 03_口罩檢測(cè) 04_工地防護(hù) 05_撲克牌識(shí)別 06_手掌關(guān)鍵點(diǎn)檢測(cè) 07_人臉特征點(diǎn)
    發(fā)表于 08-28 09:50

    人臉檢測(cè)模型有哪些

    人臉檢測(cè)是計(jì)算機(jī)視覺(jué)領(lǐng)域的一個(gè)重要研究方向,它涉及到從圖像或視頻中檢測(cè)出人臉的位置和大小。隨著深度學(xué)習(xí)技術(shù)的發(fā)展,人臉檢測(cè)模型的性能得到了顯
    的頭像 發(fā)表于 07-03 17:05 ?1082次閱讀

    人臉檢測(cè)人臉識(shí)別的區(qū)別是什么

    人臉檢測(cè)人臉識(shí)別是計(jì)算機(jī)視覺(jué)領(lǐng)域的兩個(gè)重要技術(shù),它們?cè)谠S多應(yīng)用場(chǎng)景中都有廣泛的應(yīng)用,如安全監(jiān)控、身份驗(yàn)證、社交媒體等。盡管它們?cè)谀承┓矫嬗邢嗨浦帲鼈冎g存在一些關(guān)鍵的區(qū)別。本文將詳細(xì)介紹
    的頭像 發(fā)表于 07-03 14:49 ?1299次閱讀

    聆思CSK6視覺(jué)語(yǔ)音大模型AI開(kāi)發(fā)板入門(mén)資源合集(硬件資料、大模型語(yǔ)音/多模態(tài)交互/英語(yǔ)評(píng)測(cè)SDK合集)

    自定義大模型應(yīng)用并接入到開(kāi)發(fā)套件上實(shí)現(xiàn)語(yǔ)音交互,由淺入深地展示如何開(kāi)發(fā)自己的大模型助手。 離線AI能力示例SDK清單 序號(hào)AI 能力 1語(yǔ)音喚醒 + 坐姿檢測(cè) 2語(yǔ)音合成 3坐姿
    發(fā)表于 06-18 17:33

    谷歌安卓系統(tǒng)引入AI詐騙電話(huà)檢測(cè)功能

    谷歌解釋稱(chēng),新功能依靠本地運(yùn)行的Gemini Nano模型。當(dāng)AI系統(tǒng)監(jiān)測(cè)到異常信息(如銀行工作人員查詢(xún)密碼等隱私信息)時(shí),便會(huì)觸發(fā)警報(bào)。
    的頭像 發(fā)表于 05-15 11:16 ?382次閱讀

    DEKRA被CSA指定為Zigbee統(tǒng)一測(cè)試工具開(kāi)發(fā)和優(yōu)化新功能測(cè)試用

    DEKRA德凱被CSA聯(lián)盟(Connectivity Standards Alliance,CSA)指定負(fù)責(zé)為Zigbee統(tǒng)一測(cè)試工具(Zigbee Unified Test Harness,ZUTH)開(kāi)發(fā)和優(yōu)化新功能測(cè)試用
    的頭像 發(fā)表于 04-09 14:10 ?541次閱讀

    【LicheeRV-Nano開(kāi)發(fā)套件試用體驗(yàn)】LicheeRV-Nano上的IAI技術(shù)應(yīng)用

    開(kāi)發(fā)板,之前試用過(guò) DUO對(duì)其清奇骨骼,小巧的身板,強(qiáng)勁的性能所吸引,在知道其更加強(qiáng)悍的兄弟板出來(lái)后,第一時(shí)間申請(qǐng)到試用。 此次開(kāi)發(fā)板包含物料比較充分,除了有Nano開(kāi)發(fā)板,還有帶觸摸的全貼合屏幕
    發(fā)表于 03-07 17:32

    【LicheeRV-Nano開(kāi)發(fā)套件試用體驗(yàn)】+智能平板開(kāi)發(fā)

    開(kāi)發(fā) 6.攝像頭開(kāi)發(fā) 7.AI人臉識(shí)別、運(yùn)動(dòng)偵測(cè)、姿態(tài)檢測(cè)調(diào)試開(kāi)發(fā) 預(yù)期成果 1.熟練算能軟件工具使用,代碼編寫(xiě)調(diào)試 2.外設(shè)功能驅(qū)動(dòng)達(dá)成相應(yīng)效果 3.網(wǎng)絡(luò)、音頻調(diào)通
    發(fā)表于 03-06 23:05

    【LicheeRV-Nano開(kāi)發(fā)套件試用連載體驗(yàn)】+ 實(shí)現(xiàn)三麥克納姆輪小車(chē)自主導(dǎo)航

    【LicheeRV-Nano開(kāi)發(fā)套件試用連載體驗(yàn)】+ 實(shí)現(xiàn)三麥克納姆輪小車(chē)自主導(dǎo)航 非常感謝被選中成為Sipeed矽速科技、電子發(fā)燒友論壇組織的此次試用體驗(yàn)幸運(yùn)兒,有機(jī)會(huì)參與
    發(fā)表于 03-03 14:20

    EASY-EAI攜手Hailo推出高性能、高算力的邊緣AI硬件組合

    EASY-EAI與Hailo建立合作關(guān)系,共同推出高算力的邊緣AI產(chǎn)品組合。
    的頭像 發(fā)表于 02-21 09:56 ?851次閱讀

    對(duì)基于 FPGA 的 AI 視覺(jué)應(yīng)用進(jìn)行基準(zhǔn)測(cè)試

    ,這里沒(méi)有運(yùn)行 NLP-SmartVision 或 AI。 操作系統(tǒng) 沒(méi)有人工智能 獨(dú)立式 31-64 PetaLinux GStreamer 140-190 USB攝像頭 操作系統(tǒng) 人臉檢測(cè) 物體
    發(fā)表于 02-02 10:26

    【新品體驗(yàn)】LicheeRV-Nano開(kāi)發(fā)套件免費(fèi)試用

    名單:2024年 2 月 27 日 3. 發(fā)貨日期:2024年 2 月 28 日 4. 試用期限:2024年 2 月 28 日 - 2024年 3 月 28 日 點(diǎn)擊立即申請(qǐng)&gt;&gt;
    發(fā)表于 01-26 16:34

    EASY EAI Nano】RV1126實(shí)時(shí)讀取攝像頭并進(jìn)行yolo檢測(cè)顯示

    實(shí)現(xiàn)了三個(gè)并行模塊,分別是 攝像頭讀取,使用opencv轉(zhuǎn)換到適合大小 yolo檢測(cè) 托管到Qt進(jìn)行現(xiàn)實(shí) 檢測(cè)的DEMO從每幀10次改到每幀2次,可以看到還是具備一定實(shí)時(shí)性。 代碼:倉(cāng)庫(kù)
    發(fā)表于 01-14 18:53
    主站蜘蛛池模板: 亚洲一区色| 人人插人人草| 性无码专区无码| 天天色天天| 丁香花在线视频观看免费| 欧美色欧美色| 色综合久久综合欧美综合网| 国内精品99| 亚洲高清一区二区三区四区| 456性欧美欧美在线视频| 久久久午夜精品| 天天在线天天在线天天影视| 国产高清视频免费最新在线 | 女同毛片免费网站| 午夜小片| 1024视频色版在线网站| 国产精品永久免费| 国产乱人视频免费播放| 波多久久夜色精品国产| 高清欧美一级在线观看| 国产一级特黄全黄毛片| 久久性久久性久久久爽| 女人张开腿让男人做爽爽| 日韩a一级欧美一级| 色婷婷基地| 天堂福利视频| 亚洲色图在线视频| 亚洲三级黄色| 色姑娘网| 日本成人视屏| 欧美淫| 日本国产黄色片| 久久美女精品国产精品亚洲| 97久久伊人精品影院| 午夜在线观看免费高清在线播放| 日韩特黄特色大片免费视频| 立即播放免费毛片一级| 91av在线免费观看| 久久精品国产免费中文| 一区二区三区免费视频网站| 亚洲成在人线中文字幕|