91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

項(xiàng)目分享|基于ELF 1開(kāi)發(fā)板的遠(yuǎn)程監(jiān)測(cè)及人臉識(shí)別項(xiàng)目

ElfBoard ? 2024-03-13 16:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天非常榮幸地向各位小伙伴分享一個(gè)由共創(chuàng)社成員完成的遠(yuǎn)程監(jiān)測(cè)及人臉識(shí)別項(xiàng)目,該項(xiàng)目依托ELF 1開(kāi)發(fā)板為核心硬件平臺(tái),構(gòu)建了一套完整的視頻監(jiān)控系統(tǒng),并在此基礎(chǔ)上集成了人臉識(shí)別功能。接下來(lái),就為各位小伙伴詳盡展示這一項(xiàng)目的相關(guān)細(xì)節(jié)。

項(xiàng)目實(shí)現(xiàn)步驟

1.視頻監(jiān)控

這一步驟中需要實(shí)現(xiàn)兩個(gè)程序:

(1)在連接攝像頭的ELF 1開(kāi)發(fā)板上實(shí)現(xiàn)一個(gè)服務(wù)器程序:它一邊讀取攝像頭數(shù)據(jù),一邊等待客戶端連接并發(fā)送數(shù)據(jù)??梢杂脙蓚€(gè)線程實(shí)現(xiàn),一個(gè)負(fù)責(zé)采集圖像信息;一個(gè)負(fù)責(zé)等待鏈接,并發(fā)送數(shù)據(jù)。

(2)在手機(jī)電腦上,編寫客戶端程序,它會(huì)從ELF 1開(kāi)發(fā)板上獲得數(shù)據(jù)并顯示出來(lái)。同樣,也可以用兩個(gè)線程來(lái)實(shí)現(xiàn)。一個(gè)負(fù)責(zé)接受數(shù)據(jù),一個(gè)負(fù)責(zé)顯示數(shù)據(jù)。這2個(gè)程序之間,并不需要實(shí)現(xiàn)復(fù)雜的協(xié)議。

MJPG‐streamer是一個(gè)開(kāi)源軟件。MJPG-streamer從Linux UVC兼容的網(wǎng)絡(luò)攝像頭、文件系統(tǒng)或其他輸入插件獲取JPG,并通過(guò)HTTP、RTSP、UDP等將其作為M-JPEG流式傳輸?shù)絎ebBrowser、VLC和其他軟件。

MJPG-streamer 需要很少的CPU和內(nèi)存資源就可以工作,大部分編碼工作都是攝像頭完成的,所以對(duì)于內(nèi)存和性能都有限的嵌入式系統(tǒng)十分適用。

將MJPG-streamer移植并運(yùn)行在ARM板上,在同一局域網(wǎng)內(nèi)的設(shè)備輸入正確的ip地址即可直接觀看到視頻畫面。對(duì)ARM板的性能要求不高,主頻200MHz的ARM芯片也能實(shí)現(xiàn)。

下載MJPG-streamer:

git clone https://github.com/shrkey/mjpg-streamer

啟動(dòng)MJPG-streamer后,輸入ip地址以及端口號(hào)即可看到攝像頭內(nèi)容如下圖:

wKgaomXxZX2AHZ8CAAdzp1_venQ147.png

同時(shí)后續(xù)人臉識(shí)別功能中需要能夠從視屏流中提取出照片,需要修改MJPG-streamer源碼,使其支持拍照功能。具體修改如下:

修改完成之后只要向有名管道/tmp/webcom寫入相應(yīng)的字符串就能實(shí)現(xiàn)拍照功能。

# cd mjpg-streamer-rc63/plugins/output_file # vim output_file.c //在96行 函數(shù) void*worker_thread(void *arg) 體中加入以下代碼: charbuf[10]; // intflags = 0; // intfd_com = 0; //打開(kāi)管道 stop_num = 0; //拍照計(jì)數(shù) if ( access(“/tmp/webcom”,F_OK) < 0 ) //創(chuàng)建有名管道用于接收拍照命令 { if ( mkfifo(“/tmp/webcom”,0666 ) < 0) { Printf(“ photo fifo create failed\n”); } } fd_com = open (“/tmp/webcom”,O_RDONLY,0666); if (fd < 0) { perror (“open the file webcom error”); } //在while( ok >= 0 && !pglobal->stop){ 后加入 if (flags == 0) { while(1) { reade(fd_com,buf,sizeof(buf)); if(strncmp(buf,”danger”,6) == 0) //拍11張照片 { flags = 1; bzero(buf,sizeof(buf)); break; } if(strncmp(buf,”one”,3) == 0) //拍1張照片 { flags = 2; bzero(buf,sizeof(buf)); break; } } } //在if (delay > 0){ usleep(1000*delay); }后加入 stop_num++ if(flags == 1) //判斷拍照的數(shù)量 { if ( stop_num > 9) { stop_num= 0; flsgs= 0; } } elseif (flags == 2) { stop_num= 0; flags= 0; }

2.人臉檢測(cè)

'haarcascade_frontalface_default.xml'是Opencv中已經(jīng)訓(xùn)練好的人臉?lè)诸惼魑募?。它是基于Haar特征的級(jí)聯(lián)分類器,可以用于檢測(cè)正面的人臉。該文件是通過(guò)大量的正負(fù)樣本訓(xùn)練而成,可以用于人臉檢測(cè)的應(yīng)用中。具體調(diào)用代碼如下:

#! user/bin/python #- * -coding:UTF-8 - * - import cv2 import numpy as np def myfilter(img): # 圖像轉(zhuǎn)化為灰度格式 gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) # 導(dǎo)入人臉級(jí)聯(lián)分類器引擎,'xml'文件包含訓(xùn)練好的人臉特征 face_cascade=cv2.CascadeClassifier(' \ /home/xuyang/test1/haarcascade_frontalface_default.xml') #為防止報(bào)錯(cuò)使用該文件在opencv下的絕對(duì)路徑 # 用人臉級(jí)聯(lián)分類器引擎進(jìn)行人臉識(shí)別,返回的faces為人臉坐標(biāo)列表 faces = face_cascade.detectMultiScale(gray) return faces def myfaces_count(img,faces): count = 0 #人臉計(jì)數(shù)初值 # 對(duì)每張臉,操作如下 for (x,y,w,h) in faces: '''畫矩形圈出人臉 輸入?yún)?shù)依次為:圖片,右上角的點(diǎn)坐標(biāo),矩形大小,線條顏色,寬度 ''' cv2.rectangle(img,(x,y),(x+w,y+h),(255,255,255),2) count += 1 # 累計(jì)人數(shù) # 把統(tǒng)計(jì)人數(shù)顯示出來(lái) cv2.putText(img,'{}'.format(count),(x,y-7),3,1.2,(0,0,255),2) return img #打開(kāi)mjpg-streamer視頻流(通過(guò)URL) #cap = cv2.VideoCapture('http://192.168.106.128:8080/?action=stream') #打開(kāi)視頻 cap = cv2.VideoCapture('video.mp4') y = 0 #獲取視頻相關(guān)數(shù)據(jù)以便于保存視頻 width = int(cap.get(3)) height = int(cap.get(4)) fps = cap.get(5) fourcc = cv2.VideoWriter_fourcc(*'MJPG') output_file = 'output_video.mp4' video_writer = cv2.VideoWriter(output_file,fourcc,fps,(width,height),isColor = True) while True: # 讀取每一幀圖像 ret, frame = cap.read() if not ret: break if y == 0: faces = myfilter(frame) #人臉識(shí)別特征每10次循環(huán)做一次 不然運(yùn)行速度太慢了 y = y + 1 if y == 10: y =0 frame = myfaces_count(frame,faces) # 在窗口上顯示當(dāng)前幀的圖像 cv2.imshow("Frame", frame) video_writer.write(frame) #保存視頻 # 按下 'q' 退出循環(huán) if cv2.waitKey(1) & 0xFF == ord('q'): break # 關(guān)閉所有窗口及釋放對(duì)象 cap.release() video_writer.release() cv2.destroyAllWindows()

3.人臉識(shí)別

鑒于開(kāi)發(fā)板運(yùn)行人臉檢測(cè)模型已經(jīng)有一定的運(yùn)算壓力,同時(shí)為了豐富項(xiàng)目?jī)?nèi)容,人臉識(shí)別部分我們通過(guò)傳送照片在云端完成。

本文通過(guò)libcurl庫(kù)調(diào)用云端API實(shí)現(xiàn)人臉識(shí)別。需要libcurl庫(kù)支持https協(xié)議。要讓LibCurl庫(kù)支持https協(xié)議實(shí)現(xiàn)人臉識(shí)別,就需要安裝移植Openssl這個(gè)庫(kù)。此篇人臉識(shí)別介紹主要目的是判斷兩張人臉圖片的相似程度或者接近程度。安裝移植LibCurl庫(kù)和Openssl庫(kù)不多贅述。

首先是注冊(cè)一個(gè)OCR云識(shí)別平臺(tái)賬號(hào)如圖:

wKgZomXxZfaAeh-AAAEHOC4OGxA671.png

詢對(duì)應(yīng)平臺(tái)的API和接口地址:

wKgaomXxZhSARgfgAARfyoy2h9Q860.png

下面是調(diào)用人臉識(shí)別API的代碼

#include #include #include #include #include #include #include #include #include typedef unsigned int bool; #define true 1 #define false 0 char buf[1024]={'\0'}; size_t readData(void *ptr, size_t size, size_t nmemb, void *stream) { strncpy(buf,ptr,1024); } char* getPic(char *pic) { char cmd[128]={'\0'}; memset(cmd,'\0',128); sprintf(cmd,"base64 %s > tmpFile",pic); system(cmd); int fd = open("./tmpFile",O_RDWR); int filelen = lseek(fd,0,SEEK_END); lseek(fd,0,SEEK_SET); char *base64Buf = (char*)malloc(filelen + 8); memset(base64Buf,'\0',filelen + 8); read(fd,base64Buf,filelen+8); close(fd); system("rm -f tmpFile"); return base64Buf; } bool postUrl()//POST請(qǐng)求 { char buf1[1024] = {0},buf2[1024] = {0}; unsigned long long counter = 0; static char *folder = "/tmp"; time_t t; struct tm *now; t = time(NULL); now = localtime(&t); system("echo one > /tmp/webcom"); //向有名管道webcom寫入字符串實(shí)現(xiàn)拍照 strftime(buf1, sizeof(buf1), "%%s/%Y_%m_%d_%H_%M_%S_picture_%%09llu.jpg", now); snprintf(buf2, sizeof(buf2), buf1,"/tmp", counter); sleep(1); CURL *curl; CURLcode res; char *postString = NULL; char *base64Buf1 = getPic(buf2); char *base64Buf2 = getPic("./me5.jpg"); char *key = "xxxxxxxxxxxxxxxxxxxxxxx"; char *secret = "xxxxxxxxxxxxxxxxxxxxxxx"; int typeld = 21; char *format = "xml"; int len = strlen(key)+strlen(secret)+strlen(format)+ \ strlen(base64Buf1)+strlen(base64Buf2)+128; printf("%d",len); postString = (char *)malloc(len); sprintf(postString,"img1=%s&img2=%s&key=%s&secret=%s&typeId=%d&format=%s",\ base64Buf1,base64Buf2,key,secret,typeld,format); curl = curl_easy_init(); if (curl) { curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "/tmp/cookie.txt"); // 指定cookie文件 curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postString); // 指定post內(nèi)容 curl_easy_setopt(curl, CURLOPT_URL, "https://netocr.com/api/faceliu.do"); //指定url curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, readData); res = curl_easy_perform(curl);//執(zhí)行 //printf("res = %d\n",res); if(strstr(buf,"是")!=NULL) { printf("is same people\n"); } else { printf("not the same people\n"); } curl_easy_cleanup(curl); } return true; } int main(void) { postUrl(); }

本項(xiàng)目的工作流程設(shè)計(jì)邏輯是,首先系統(tǒng)啟動(dòng)視頻監(jiān)控機(jī)制,智能判斷畫面中是否存在人臉;一旦檢測(cè)到人臉,則觸發(fā)拍照動(dòng)作,然后通過(guò)調(diào)用云端API進(jìn)行人臉識(shí)別對(duì)比并返回結(jié)果,上述視頻的對(duì)比結(jié)果如下:

wKgZomXxZk-Ae-nBAAVrvxL1zDQ043.png

左圖為提前準(zhǔn)備好的相關(guān)人臉的照片,右圖為拍照得到的照片,下面為對(duì)比結(jié)果判定為是同一個(gè)人。同時(shí)開(kāi)發(fā)板返回結(jié)果也正確:

wKgZomXxZniAO-gjAAHxpbDUyN0544.png

至此,關(guān)于基于ELF 1開(kāi)發(fā)板實(shí)現(xiàn)的遠(yuǎn)程監(jiān)測(cè)及人臉識(shí)別項(xiàng)目的介紹告一段落。衷心期待這項(xiàng)案例能夠?qū)φ阢@研嵌入式開(kāi)發(fā)的小伙伴帶來(lái)啟示與借鑒,助力各位的學(xué)習(xí)之旅。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5199

    文章

    20454

    瀏覽量

    334270
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11763

    瀏覽量

    219090
  • 遠(yuǎn)程監(jiān)測(cè)

    關(guān)注

    0

    文章

    170

    瀏覽量

    18957
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    26

    文章

    6293

    瀏覽量

    118239
  • 人臉識(shí)別
    +關(guān)注

    關(guān)注

    77

    文章

    4127

    瀏覽量

    88503
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【超值首選!僅88元】ELF-RK3506開(kāi)發(fā)板限時(shí)優(yōu)惠震撼來(lái)襲

    ElfBoard特別推出了ELF-RK3506開(kāi)發(fā)板,助力大家快速掌握實(shí)際應(yīng)用場(chǎng)景下的嵌入式Linux開(kāi)發(fā)技能?!拘阅茏吭?,技術(shù)領(lǐng)先】ELF-RK3506
    的頭像 發(fā)表于 01-16 16:41 ?1185次閱讀
    【超值首選!僅88元】<b class='flag-5'>ELF</b>-RK3506<b class='flag-5'>開(kāi)發(fā)板</b>限時(shí)優(yōu)惠震撼來(lái)襲

    不到百元的開(kāi)發(fā)板,能跑AI局端人臉識(shí)別?實(shí)測(cè)樂(lè)鑫科技ESP32-P4C5全功能開(kāi)發(fā)板方案!啟明云端樂(lè)鑫代理

    不到百元的開(kāi)發(fā)板能跑AI局端大模型?實(shí)測(cè)ESP32-P4C5全功能開(kāi)發(fā)板實(shí)現(xiàn)局端人臉識(shí)別你是否想過(guò)用一塊不到百元的開(kāi)發(fā)板,獨(dú)立完成
    的頭像 發(fā)表于 01-07 18:03 ?530次閱讀
    不到百元的<b class='flag-5'>開(kāi)發(fā)板</b>,能跑AI局端<b class='flag-5'>人臉</b><b class='flag-5'>識(shí)別</b>?實(shí)測(cè)樂(lè)鑫科技ESP32-P4C5全功能<b class='flag-5'>開(kāi)發(fā)板</b>方案!啟明云端樂(lè)鑫代理

    ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開(kāi)發(fā)板實(shí)現(xiàn)GPIO功能復(fù)用

    【RK3588】ELF2開(kāi)發(fā)板的GPIO引腳為例,詳細(xì)闡述從硬件查找到軟件配置的完整流程。1.引腳確認(rèn)在開(kāi)始配置之前,首先需要了解【RK3588】ELF2
    的頭像 發(fā)表于 12-29 10:37 ?1089次閱讀
    ElfBoard技術(shù)貼|如何在【RK3588】<b class='flag-5'>ELF</b> 2<b class='flag-5'>開(kāi)發(fā)板</b>實(shí)現(xiàn)GPIO功能復(fù)用

    Comake D1 開(kāi)發(fā)板 快速開(kāi)始

    本文檔介紹了COMAKEPID1開(kāi)發(fā)板的快速入門指南,包括硬件連接、AlkaidSDK環(huán)境搭建和示例程序開(kāi)發(fā)。該開(kāi)發(fā)板基于Pcupid系列SoC芯片,支持豐富的外設(shè)功能,適用于智能音頻
    的頭像 發(fā)表于 08-25 15:49 ?752次閱讀
    Comake D<b class='flag-5'>1</b> <b class='flag-5'>開(kāi)發(fā)板</b> 快速開(kāi)始

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】人臉檢測(cè)

    【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】人臉檢測(cè) 本文介紹了 Milk-V Duo S 開(kāi)發(fā)板結(jié)合 OV5647 攝像頭模塊,實(shí)現(xiàn)人臉檢測(cè)的項(xiàng)目
    發(fā)表于 07-27 16:53

    【EASY EAI Orin Nano開(kāi)發(fā)板試用體驗(yàn)】EASY-EAI-Toolkit人臉識(shí)別

    、編譯與測(cè)試 1.組件人臉識(shí)別代碼如下 2.開(kāi)發(fā)板掛載服務(wù)器,編譯 掛載上服務(wù)器后,切換到EASY-EAI-Toolkit-3576/Demos/algorithm-face_dete
    發(fā)表于 07-20 14:40

    ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開(kāi)發(fā)板上進(jìn)行根系統(tǒng)的定制

    ELF 2開(kāi)發(fā)板已經(jīng)適配了Linux 5.10及Elf2 Desktop 22.04操作系統(tǒng),其中Elf2 Desktop 22.04系統(tǒng)是專為嵌入式設(shè)計(jì)的Ubuntu base。雖然
    的頭像 發(fā)表于 07-02 16:33 ?3017次閱讀
    ElfBoard技術(shù)貼|如何在【RK3588】<b class='flag-5'>ELF</b> 2<b class='flag-5'>開(kāi)發(fā)板</b>上進(jìn)行根系統(tǒng)的定制

    基于LockAI視覺(jué)識(shí)別模塊:C++人臉識(shí)別

    cap.release(); return 0; } 4. 編譯調(diào)試 4.1 編譯環(huán)境搭建 請(qǐng)確保你已經(jīng)按照 開(kāi)發(fā)環(huán)境搭建指南 正確配置了開(kāi)發(fā)環(huán)境。 同時(shí)已經(jīng)正確連接開(kāi)發(fā)板。 4.2 Cmake介紹
    發(fā)表于 07-01 12:01

    ElfBoard技術(shù)貼|【RK3588】ELF 2開(kāi)發(fā)板開(kāi)機(jī)自啟動(dòng)詳解

    在嵌入式系統(tǒng)開(kāi)發(fā)中,合理管理開(kāi)機(jī)自啟動(dòng)項(xiàng)目能夠優(yōu)化系統(tǒng)啟動(dòng)流程,確保關(guān)鍵服務(wù)和應(yīng)用按時(shí)加載運(yùn)行。本文將詳細(xì)介紹在ELF2開(kāi)發(fā)板Linux5.10.209系統(tǒng)下基于SystemVinit
    的頭像 發(fā)表于 06-27 16:20 ?2056次閱讀
    ElfBoard技術(shù)貼|【RK3588】<b class='flag-5'>ELF</b> 2<b class='flag-5'>開(kāi)發(fā)板</b>開(kāi)機(jī)自啟動(dòng)詳解

    基于RK3576開(kāi)發(fā)板人臉識(shí)別算法

    RK3576開(kāi)發(fā)板展示人臉識(shí)別算法例程和API說(shuō)明
    的頭像 發(fā)表于 05-07 16:48 ?2753次閱讀
    基于RK3576<b class='flag-5'>開(kāi)發(fā)板</b>的<b class='flag-5'>人臉</b><b class='flag-5'>識(shí)別</b>算法

    來(lái)自資深工程師對(duì)ELF 2開(kāi)發(fā)板的產(chǎn)品測(cè)評(píng)

    來(lái)自資深工程師對(duì)ELF 2開(kāi)發(fā)板的使用測(cè)評(píng)
    的頭像 發(fā)表于 04-28 15:03 ?1896次閱讀
    來(lái)自資深工程師對(duì)<b class='flag-5'>ELF</b> 2<b class='flag-5'>開(kāi)發(fā)板</b>的產(chǎn)品測(cè)評(píng)

    基于RV1126開(kāi)發(fā)板實(shí)現(xiàn)人臉識(shí)別方案

    在RV1126開(kāi)發(fā)板上實(shí)現(xiàn)人臉識(shí)別:在圖像中找出人臉,并與數(shù)據(jù)庫(kù)進(jìn)行比對(duì),得出該人臉對(duì)應(yīng)的身份信息。 方案設(shè)計(jì)邏輯流程圖,方案
    的頭像 發(fā)表于 04-21 10:24 ?107次閱讀
    基于RV1126<b class='flag-5'>開(kāi)發(fā)板</b>實(shí)現(xiàn)<b class='flag-5'>人臉</b><b class='flag-5'>識(shí)別</b>方案

    基于RV1126開(kāi)發(fā)板實(shí)現(xiàn)人臉識(shí)別方案

    在RV1126開(kāi)發(fā)板實(shí)現(xiàn)人臉識(shí)別:在圖像中找出人臉,并與數(shù)據(jù)庫(kù)進(jìn)行比對(duì),得出該人臉對(duì)應(yīng)的身份信息。 方案設(shè)計(jì)邏輯流程圖,方案代
    的頭像 發(fā)表于 04-18 16:55 ?83次閱讀
    基于RV1126<b class='flag-5'>開(kāi)發(fā)板</b>實(shí)現(xiàn)<b class='flag-5'>人臉</b><b class='flag-5'>識(shí)別</b>方案

    如何在米爾-STM32MP257開(kāi)發(fā)板上實(shí)現(xiàn)環(huán)境監(jiān)測(cè)系統(tǒng)

    本文將介紹基于米爾電子MYD-LD25X開(kāi)發(fā)板(米爾基于STM35MP257開(kāi)發(fā)板)的環(huán)境監(jiān)測(cè)系統(tǒng)方案測(cè)試。摘自優(yōu)秀創(chuàng)作者-lugl4313820一、前言環(huán)境監(jiān)測(cè)是當(dāng)前很多場(chǎng)景需要的
    的頭像 發(fā)表于 04-17 08:06 ?2833次閱讀
    如何在米爾-STM32MP257<b class='flag-5'>開(kāi)發(fā)板</b>上實(shí)現(xiàn)環(huán)境<b class='flag-5'>監(jiān)測(cè)</b>系統(tǒng)

    人臉識(shí)別指南:如何在樹(shù)莓派上安裝和設(shè)置 Dlib

    學(xué)習(xí)如何在樹(shù)莓派上安裝Dlib并配置人臉識(shí)別功能,為您的AI項(xiàng)目奠定基礎(chǔ)。在樹(shù)莓派上安裝Dlib的詳細(xì)步驟要為樹(shù)莓派安裝Dlib并確保人臉識(shí)別項(xiàng)目
    的頭像 發(fā)表于 03-24 17:31 ?1552次閱讀
    <b class='flag-5'>人臉</b><b class='flag-5'>識(shí)別</b>指南:如何在樹(shù)莓派上安裝和設(shè)置 Dlib