999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

PictureBox(C#)+百度離線SDK實(shí)現(xiàn)人臉識(shí)別

2020-12-16 02:58:40安國(guó)有王淑妍

安國(guó)有 王淑妍

【摘 ?要】基于VS2012編程工具,論文通過(guò)C#語(yǔ)言調(diào)用Picture控件和百度人臉離線識(shí)別SDK,實(shí)現(xiàn)基本的人臉識(shí)別與跟蹤。

【Abstract】Based on VS2012 programming tools, the paper calls Picture controls and Baidu offline face recognition SDK through C# language to realize basic face recognition and tracking.

【關(guān)鍵詞】C#;Picture控件;百度人臉識(shí)別離線SDK;人臉識(shí)別與跟蹤

【Keywords】C#; Picture controls; Baidu offline face recognition SDK; face recognition and tracking

【中圖分類(lèi)號(hào)】TP391.4 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻(xiàn)標(biāo)志碼】A ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 【文章編號(hào)】1673-1069(2020)07-0170-02

1 引言

隨著各大公司(百度、騰訊等)AI開(kāi)放平臺(tái)的推出,及其各自功能的日臻完善,對(duì)于一般的程序編寫(xiě)者,結(jié)合工作需求,利用開(kāi)放平臺(tái)的SDK和API功能,量身開(kāi)發(fā)應(yīng)用程序已成為可能。作為初學(xué)者,利用已知的開(kāi)發(fā)工具和語(yǔ)言調(diào)用開(kāi)放的SDK或API的能力不足,為此將自己開(kāi)發(fā)的心得加以總結(jié),以供同行借鑒與交流,進(jìn)而推進(jìn)AI技術(shù)在各行業(yè)的應(yīng)用與普及。

2 百度人臉識(shí)別離線SDK下載與激活

2.1 “人臉識(shí)別SDK”下載

通過(guò)百度AI開(kāi)發(fā)平臺(tái)下載所需SDK,例如,通過(guò)VS2012編程工具,利用C#語(yǔ)言,開(kāi)發(fā)B/S運(yùn)行模式的人臉識(shí)別應(yīng)用軟件,則需下載“Win C# 離線識(shí)別SDK”。

2.2 SDK申請(qǐng)與激活

無(wú)論試用,還是永久使用百度人臉識(shí)別離線SDK,都需要通過(guò)百度AI開(kāi)放平臺(tái)注冊(cè)合法用戶(hù)賬號(hào),然后通過(guò)賬號(hào)登錄平臺(tái),按照如下操作步驟逐一完成方可。

2.2.1 SDK申請(qǐng)

根據(jù)下載的SDK以及開(kāi)發(fā)意向,填寫(xiě)相關(guān)申請(qǐng)信息,并提交信息,等待百度AI開(kāi)發(fā)平臺(tái)的后臺(tái)審核。如果審核通過(guò),再次登錄平臺(tái)時(shí),即可看到兩條審核通過(guò)信息,每條信息中含有序號(hào),因此一定保存好“序號(hào)”,以便后續(xù)離線激活SDK使用。

2.2.2 離線激活SDK

解壓已下載的“Baidu_Face_Offline_SDK_Windows_Csharp.zip”文件,找到bin文件,其下有兩個(gè)文件夾:“X64”和“X86”,如開(kāi)發(fā)程序64位應(yīng)用程序,則運(yùn)行“X64”文件夾下的“LicenseTool.exe”程序,反之則運(yùn)行“X86”的“LicenseTool.exe”,然后填寫(xiě)對(duì)應(yīng)的“序號(hào)”即可激活SDK,激活成功后,在“X64”或“X86”文件夾下會(huì)生成兩個(gè)文件:icense.ini和license.key,這兩個(gè)文件切記不能刪除。

3 開(kāi)發(fā)環(huán)境部署

如果基于VS2012編輯器,利用C#語(yǔ)言調(diào)用百度“人臉離線識(shí)別SDK”,開(kāi)發(fā)C/S模式Windows應(yīng)用程序,因此其開(kāi)發(fā)環(huán)境要求如下:

①Windows7以上操作系統(tǒng),安裝VS2012工具軟件;

②由于百度人臉識(shí)別離線SDK的運(yùn)行需要.NET Framework 4.5.2,因此安裝完VS2012工具軟件,應(yīng)該下載.NET Framework 4.5.2,并進(jìn)行安裝。

4 項(xiàng)目首顯窗體設(shè)置

通過(guò)解壓后的“testface.sln”文件打開(kāi)項(xiàng)目,由于此應(yīng)用程序希望通過(guò)自建窗體的pictureBox控件顯示人臉識(shí)別與跟蹤情況,因此需要按下述步驟操作:

①通過(guò)項(xiàng)目屬性,設(shè)置“應(yīng)用程序”選項(xiàng)中的“輸出類(lèi)型”為:Windows應(yīng)用程序。

②在項(xiàng)目中創(chuàng)建form1窗體,在窗體中添加pictureBox1、button1、button2控件。

③修改Face.cs類(lèi)文件,實(shí)現(xiàn)項(xiàng)目啟動(dòng)首先顯示form1窗體。

在此文件命名空間引用處,添加using System.Windows.Forms;

刪除Main方法原有語(yǔ)句,然后輸入如下語(yǔ)句:

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

Application.Run(new form1());

這時(shí)運(yùn)行程序,即可看到首先顯示的界面即為form1窗體。

5 定義、修改相關(guān)方法,實(shí)現(xiàn)人臉識(shí)別與跟蹤

第一,在Face.cs類(lèi)文件中定義如下方法,實(shí)現(xiàn)百度人臉識(shí)別離線SDK初始化:

public void InitSDK()

{

bool id=false;//表示以生活照識(shí)別

int n = sdk_init(false);

}

第二,在FaceTrack.cs文件中,定義數(shù)據(jù)轉(zhuǎn)換函數(shù),修改相關(guān)方法,實(shí)現(xiàn)pictureBox控件顯示人臉識(shí)別與跟蹤。

為了確保函數(shù)的定義和方法的修改,在命名空間引用處,添加下面語(yǔ)句:

Using System.IO;

Using System.Drawing;

①定義數(shù)據(jù)轉(zhuǎn)換函數(shù)

private Bitmap BToBp(byte[] Bytes)

{

MemoryStream stream = null;

try

{

stream = new MemoryStream(Bytes);

return new Bitmap((Image) new Bitmap(stream));

}

catch (ArgumentNullException ex){throw ex;}

catch (ArgumentException ex){throw ex;}

finally{stream.Close();}

}

②修改usb_csharp_track_face方法,實(shí)現(xiàn)pictureBox控件顯示人臉識(shí)別與跟蹤

首先給方法定義兩個(gè)形參,如下:

public void usb_csharp_track_face(int dev, System.Windows.Forms pictureBox p1);

其次分別刪除using (var window=new Window(“face”))和window.ShowImage(image)語(yǔ)句;

最后在Marshal.FreeHGlobal(ptT)下面增加兩條獨(dú)立語(yǔ)句:

Bitmap b=BToBp(image.ToBytes());p1.Image=b;

第三,通過(guò)窗體按鈕調(diào)用相關(guān)方法,實(shí)現(xiàn)SDK初始化和人臉識(shí)別與跟蹤。

①在form1中創(chuàng)建對(duì)象實(shí)例,定義無(wú)形參的人臉識(shí)別與跟蹤方法,具體如下:

首先,創(chuàng)建對(duì)象實(shí)例:Face Fa=new Face();FaceTrack Ft=new FaceTrack();

其次,定義無(wú)形參方法,以供線程調(diào)用:

Private void run()

{

Ft.usb_csharp_track_face(0,pictureBox1);

}

②通過(guò)button1按鈕單擊事件,調(diào)用相關(guān)方法,實(shí)現(xiàn)SDK初始化。

private void button1_Click(object sender,EventArgs e)

{

Fa.InitSDK();

}

③通過(guò)buttion2按鈕的單擊事件,創(chuàng)建新線程,調(diào)用run方法,實(shí)現(xiàn)人臉識(shí)別與跟蹤。

private void button2_Click(object sender,EventArgs e)

{

Thread MyThread=new Thread(run);

MyThread.Start();

}

第四,運(yùn)行方法。首先單擊button1,進(jìn)行SDK初始化,使之常駐內(nèi)容,支撐其他方法的調(diào)用,待初始化完成,然后單擊button2,執(zhí)行人臉識(shí)別和跟蹤,并通過(guò)form1 窗體上的pictureBox1控件識(shí)別與跟蹤效果。

綜上所述,即為通過(guò)C#語(yǔ)言調(diào)用百度人臉識(shí)別離線SDK,通過(guò)自建窗體上的pictureBox1呈現(xiàn)識(shí)別與跟蹤效果,可以說(shuō)這只是一個(gè)人臉識(shí)別與跟蹤的基本功能,但是由于通過(guò)自建窗體的控件實(shí)現(xiàn)了識(shí)別與跟蹤,這樣就為廣大編程愛(ài)好者結(jié)合自身需求,在窗體上調(diào)用其他控件提供了方法。

主站蜘蛛池模板: 91香蕉视频下载网站| 国产微拍一区| 日韩一级毛一欧美一国产| 白丝美女办公室高潮喷水视频| 国模极品一区二区三区| 亚洲最大情网站在线观看 | 欧美黄色a| 不卡无码网| 成人av专区精品无码国产| 18黑白丝水手服自慰喷水网站| 欧美不卡视频在线观看| 免费A级毛片无码免费视频| 18禁色诱爆乳网站| 久久大香伊蕉在人线观看热2| 亚洲美女AV免费一区| 在线免费观看AV| 四虎精品黑人视频| 72种姿势欧美久久久大黄蕉| 精品剧情v国产在线观看| 国产国拍精品视频免费看| 成人在线观看不卡| 伊人蕉久影院| 黄色三级毛片网站| 国产自产视频一区二区三区| 亚洲精品男人天堂| 亚洲精品视频在线观看视频| 国产视频你懂得| 91尤物国产尤物福利在线| 国产毛片片精品天天看视频| 精品无码人妻一区二区| 国产成人亚洲精品色欲AV| 国产微拍一区| 青青草国产精品久久久久| 538国产视频| 人人看人人鲁狠狠高清| 黄色网站在线观看无码| 日本一本正道综合久久dvd| 97免费在线观看视频| 国产97区一区二区三区无码| 91福利在线看| 97精品久久久大香线焦| 精品超清无码视频在线观看| 天堂成人在线| 91 九色视频丝袜| 色天天综合| 欧美在线黄| 五月六月伊人狠狠丁香网| 亚洲精品无码不卡在线播放| 欧美区在线播放| 国产91精品调教在线播放| 国产精品亚洲专区一区| 一级成人a做片免费| 欧美日韩高清在线| 国产精品第一区在线观看| 国产靠逼视频| 国产精品不卡永久免费| 中国美女**毛片录像在线| 欧美一区二区自偷自拍视频| 色视频久久| 日a本亚洲中文在线观看| 色综合国产| 免费一极毛片| 一区二区三区国产| 精品国产aⅴ一区二区三区| 2021最新国产精品网站| 丰满少妇αⅴ无码区| 国产成人福利在线视老湿机| 91年精品国产福利线观看久久| 91免费观看视频| 日韩福利在线观看| 久久久久久久久18禁秘| 国产中文一区a级毛片视频| 老汉色老汉首页a亚洲| 5555国产在线观看| 国产一级毛片在线| 毛片网站观看| 国产亚洲欧美日韩在线一区二区三区| 在线欧美a| 中文字幕人妻无码系列第三区| 久久免费精品琪琪| 2020精品极品国产色在线观看 | 伊人狠狠丁香婷婷综合色|