一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

【HarmonyOS 5】VisionKit人臉活體檢測詳解

HarmonyOS解決方案 ? 來源:HarmonyOS解決方案 ? 作者:HarmonyOS解決方案 ? 2025-06-21 11:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

HarmonyOS 5】VisionKit人臉活體檢測詳解

##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財#

一、VisionKit人臉活體檢測是什么?

VisionKit是HamronyOS提供的場景化視覺服務(wù)工具包。

華為將常見的解決方案,通常需要三方應(yīng)用使用SDK進行集成。華為以Kit的形式集成在HarmoyOS系統(tǒng)中,方便三方應(yīng)用快速開發(fā)和賦能。

而VisionKit中包含人臉活體檢測的功能接口interactiveLiveness 。人臉活體檢測見名知意,主要是為了檢測當(dāng)前人是否為活人本人,而不是照片,硅膠面具,AI視頻仿真的可能。

雖然該算法接口已通過中金金融(CECA)認證。但是官方還是建議添加額外的安全措施后,在使用該人臉檢測接口,盡量不要直接使用在高風(fēng)險性的支付和金融場景中。推薦在低危險場景,例如登錄,考勤,實名認證等業(yè)務(wù)場景進行使用。

需要注意的是**,人臉活體檢測,不支持模擬器和預(yù)覽器。**

詳情參見官方接口:
[https://developer.huawei.com/consumer/cn/doc/harmonyos-references/vision-interactive-liveness] [https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/vision-interactiveliveness] 圖像 15.jpeg

二、人臉活體檢測如何使用?

人臉活體檢測功能interactiveLiveness ,起始版本為 5.0.0 (API12),可通過@kit.VisionKit模塊導(dǎo)入,支持動作活體檢測模式(INTERACTIVE_MODE),動作數(shù)量可配置為 3 或 4 個,包含點頭、張嘴、眨眼等 6 種動作。

通過InteractiveLivenessConfig配置檢測模式、跳轉(zhuǎn)路徑、語音播報等參數(shù),提供startLivenessDetection和getInteractiveLivenessResult接口,能抵御照片、視頻等GJ,適用于身份驗證場景,需申請ohos.permission.CAMERA相機權(quán)限,錯誤碼可參考 Vision Kit 錯誤碼文檔。

Vision Kit 錯誤碼文檔
https://developer.huawei.com/consumer/cn/doc/harmonyos-references/vision-error-code

1. 核心接口為人臉頁面喚起接口:
interactiveLiveness.startLivenessDetection,該接口需要配置config進行設(shè)置人臉的模式,動作等操作。

(1) Promise 方式:僅返回跳轉(zhuǎn)結(jié)果(boolean)。

interactiveLiveness.startLivenessDetection(routerOptions).then((DetectState: boolean) = > {
  hilog.info(0x0001, "LivenessCollectionIndex", `Succeeded in jumping.`);
}).catch((err: BusinessError) = > {
  hilog.error(0x0001, "LivenessCollectionIndex", `Failed to jump. Code:${err.code},message:${err.message}`);
})

(2) Promise + 回調(diào)方式:同時返回跳轉(zhuǎn)結(jié)果和檢測結(jié)果(僅適用于 BACK_MODE)。

interactiveLiveness.startLivenessDetection(routerOptions, (err: BusinessError, result: interactiveLiveness.InteractiveLivenessResult | undefined) = > {
  if(err.code !== 0 && !result) {
    hilog.error(0x0001, "LivenessCollectionIndex", `Failed to detect. Code:${err.code},message:${err.message}`);
    return;
  }
  hilog.info(0x0001, 'LivenessCollectionIndex', `Succeeded in detecting result:${result}`);
})

2. InteractiveLivenessConfig配置接口:
調(diào)用人臉活體檢測,需要填入該配置對象,進行相關(guān)設(shè)置,參數(shù)見以下表格:

  1. 檢測模式(DetectionMode)

    名稱說明
    SILENT_MODE"SILENT_MODE"靜默活體檢測(暫未支持)
    INTERACTIVE_MODE"INTERACTIVE_MODE"動作活體檢測(默認模式)
  2. 動作數(shù)量(ActionsNumber)

    名稱說明
    ONE_ACTION1隨機1個動作(暫未支持)
    TWO_ACTION2隨機2個動作(暫未支持)
    THREE_ACTION3隨機3個動作([眨眼,注視]不同時存在且不相鄰,相鄰動作不重復(fù))
    FOUR_ACTION4隨機4個動作(眨眼僅1次,注視最多1次,[眨眼,注視]不相鄰,相鄰動作不重復(fù))
  3. 跳轉(zhuǎn)模式(RouteRedirectionMode)

    名稱說明
    BACK_MODE"back"檢測完成后調(diào)用router.back返回上一頁
    REPLACE_MODE"replace"檢測完成后調(diào)用router.replaceUrl跳轉(zhuǎn)(默認模式)
  4. 配置項(InteractiveLivenessConfig)

    名稱類型必填/可選說明
    isSilentModeDetectionMode必填檢測模式(默認INTERACTIVE_MODE)
    actionsNumActionsNumber可選動作數(shù)量(3或4,默認3)
    successfulRouteUrlstring可選檢測成功跳轉(zhuǎn)路徑(未填則用系統(tǒng)默認頁面)
    failedRouteUrlstring可選檢測失敗跳轉(zhuǎn)路徑(未填則用系統(tǒng)默認頁面)
    routeModeRouteRedirectionMode可選跳轉(zhuǎn)模式(默認REPLACE_MODE)
    challengestring可選安全攝像頭場景挑戰(zhàn)值(16-128位,空值表示不使用)
    speechSwitchboolean可選語音播報開關(guān)(默認開啟)
    isPrivacyModeboolean可選隱私模式(需申請ohos.permission.PRIVACY_WINDOW權(quán)限,默認關(guān)閉)

人臉活體檢測的配置項對象除了isSilentMode是必填,其他屬性均為可選:

import { interactiveLiveness } from '@kit.VisionKit';

let isSilentMode = "INTERACTIVE_MODE" as interactiveLiveness.DetectionMode;
let routeMode = "replace" as interactiveLiveness.RouteRedirectionMode;
let actionsNum = 3 as interactiveLiveness.ActionsNumber;
let routerOptions: interactiveLiveness.InteractiveLivenessConfig= {
  isSilentMode: isSilentMode,
  routeMode: routeMode,
  actionsNum: actionsNum,
  failedRouteUrl: "pages/FailPage",
  successfulRouteUrl: "pages/SuccessPage"
}

3. getInteractiveLivenessResult獲取人臉活體檢測結(jié)果:
在調(diào)用人臉活體檢測成功后,可通過該接口獲取檢測結(jié)果。結(jié)果內(nèi)容如下表格所示:

名稱類型只讀可選說明
livenessTypeLivenessType活體檢測模式,值包括:-0(INTERACTIVE_LIVENESS,動作活體檢測)-1(SILENT_LIVENESS,靜默活體檢測,暫未支持)-2(NOT_LIVENESS,非活體)
mPixelMapimage.PixelMap檢測成功后返回的最具有活體特征的圖片(如包含人臉關(guān)鍵點的特征圖),檢測失敗時無此數(shù)據(jù)。
securedImageBufferArrayBuffer安全攝像頭場景下返回的安全流數(shù)據(jù)(加密后的圖像特征數(shù)據(jù)),非安全場景無此數(shù)據(jù)。
certificateArray安全攝像頭場景下返回的證書鏈(用于驗證安全流的合法性),非安全場景無此數(shù)據(jù)。
let successResult = interactiveLiveness.getInteractiveLivenessResult();
successResult.then(data = > {
  hilog.info(0x0001, "LivenessCollectionIndex", `Succeeded in detecting.`);
}).catch((err: BusinessError) = > {
  hilog.error(0x0001, "LivenessCollectionIndex", `Failed to detect. Code:${err.code},message:${err.message}`);
})

三、DEMO源碼示例

import { interactiveLiveness } from '@kit.VisionKit';
import { BusinessError } from '@kit.BasicServicesKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { abilityAccessCtrl, common } from '@kit.AbilityKit';

@Entry
@Component
struct FaceLivenessDemo {
  @State userGrant: boolean = false // 權(quán)限狀態(tài)
  @State detectionResult: string = "" // 檢測結(jié)果展示
  @State actionCount: interactiveLiveness.ActionsNumber = interactiveLiveness.ActionsNumber.THREE_ACTION; // 動作數(shù)量(3或4)
  @State speechEnabled: boolean = true // 語音播報開關(guān)
  // 表示人臉活體檢測完成后使用router.back返回到上一頁。
  @State routeMode: interactiveLiveness.RouteRedirectionMode = interactiveLiveness.RouteRedirectionMode.BACK_MODE; // 跳轉(zhuǎn)模式

  // 權(quán)限申請邏輯
  private async requestPermissions() {
    const context = getContext() as common.UIAbilityContext;
    const atManager = abilityAccessCtrl.createAtManager();
    const results = await atManager.requestPermissionsFromUser(context, ["ohos.permission.CAMERA"]);
    this.userGrant = results.authResults.every(status = > status === 0);
  }

  // 檢測配置生成
  private generateDetectionConfig(): interactiveLiveness.InteractiveLivenessConfig {
    return {
      // 表示的是人臉活體檢測模式,默認動作活體檢測模式。
      // INTERACTIVE_MODE表示動作活體檢測模式。
      isSilentMode: interactiveLiveness.DetectionMode.INTERACTIVE_MODE,

      // 表示動作活體檢測的動作數(shù)量,數(shù)量范圍3或4個,默認3個動作。隨機生成,規(guī)則如下:
      //
      // 當(dāng)actionsNum=3時,[眨眼,注視]組合中的動作元素不會同時存在并且相鄰的動作元素不會相同。
      //
      // 當(dāng)actionsNum=4時,眨眼動作元素有且僅有1次,注視動作元素最多出現(xiàn)1次,[眨眼,注視]組合中的動作元素不會相鄰,相鄰的動作元素不會相同。
      //
      // 該參數(shù)只有當(dāng)isSilentMode是INTERACTIVE_MODE的時候有效。
      actionsNum: this.actionCount,
      // 表示人臉活體檢測成功后跳轉(zhuǎn)的頁面路徑。如果不填,系統(tǒng)有默認的檢測成功頁面。
      // successfulRouteUrl: "pages/result/success", // 自定義成功跳轉(zhuǎn)路徑(需提前創(chuàng)建頁面)

      // 表示人臉活體檢測失敗后跳轉(zhuǎn)的頁面路徑。如果不填,系統(tǒng)有默認的檢測失敗頁面。
      // failedRouteUrl: "pages/result/fail", // 自定義失敗跳轉(zhuǎn)路徑(需提前創(chuàng)建頁面)

      routeMode: this.routeMode, // 跳轉(zhuǎn)模式

      // 語音播報的開關(guān)。
      //
      // true表示開啟語音播報。
      // false表示關(guān)閉語音播報。
      // 默認開啟語音播報。
      speechSwitch: this.speechEnabled, // 語音播報控制

      // 挑戰(zhàn)值。僅用于安全攝像頭場景(對應(yīng)initializeAttestContext方法中的“userData”字段)的活體檢測。
      //
      // 使用安全攝像頭場景的前提需要開通Device Security服務(wù)。
      //
      // 長度范圍是16-128之間(challenge傳空或者undefined表示不使用安全攝像頭)。
      // challenge: "自定義挑戰(zhàn)值1234567890abcdef", // 安全攝像頭場景可選

      // 是否設(shè)置隱私模式。
      //
      // true:設(shè)置隱私模式。
      // false:不設(shè)置隱私模式。
      // 默認值為false。
      // isPrivacyMode: true // 隱私模式需額外權(quán)限 當(dāng)設(shè)置隱私模式時,需要申請ohos.permission.PRIVACY_WINDOW權(quán)限。
    };
  }

  // 啟動檢測
  private async startDetection() {
    if (!this.userGrant) {
      this.detectionResult = "請先申請相機權(quán)限";
      return;
    }

    const config = this.generateDetectionConfig();

    try {
      const jumpSuccess = await interactiveLiveness.startLivenessDetection(config);
      if (jumpSuccess) {
        hilog.info(0x0001, "Detection", "跳轉(zhuǎn)檢測頁面成功");
        // 檢測完成后獲取結(jié)果(需在返回頁面時調(diào)用)
        const result = await interactiveLiveness.getInteractiveLivenessResult();
        this.processResult(result);
      }
    } catch (err) {
      const error = err as BusinessError;
      hilog.error(0x0001, "Detection", `檢測失敗: 錯誤碼${error.code}, 信息${error.message}`);
      this.detectionResult = `檢測異常:錯誤碼${error.code}`;
    }
  }

  // 結(jié)果處理
  private processResult(result: interactiveLiveness.InteractiveLivenessResult) {
    let status = "";
    let livenessType = result.livenessType;
    switch (livenessType) {
      case 0: // 動作活體檢測成功
        status = "活體檢測通過";
        // 可在此處處理特征圖片或安全數(shù)據(jù)
        break;
      case 2: // 非活體
        status = "檢測到非活體(照片/視頻GJ)";
        break;
      default:
        status = "檢測結(jié)果異常";
    }
    this.detectionResult = status;
  }

  build() {
    Column({ space: 40 })
    {
      // 權(quán)限申請按鈕
      Button(this.userGrant ? "權(quán)限已授權(quán)" : "申請相機權(quán)限")
        .fontSize(18)
        .margin(10)
        .padding(12)
        .backgroundColor(this.userGrant ? Color.Green : Color.Blue)
        .onClick(() = > this.requestPermissions())

      // 動作數(shù)量選擇
      Row({ space: 20 }) {
        Text("動作數(shù)量:")
          .fontSize(16)

        Button("3個動作")
          .backgroundColor(this.actionCount === 3 ? Color.Blue : Color.White)
          .border({ width: 1, color: Color.Gray })
          .onClick(() = > this.actionCount = 3)

        Button("4個動作")
          .backgroundColor(this.actionCount === 4 ? Color.Blue : Color.White)
          .border({ width: 1, color: Color.Gray })
          .onClick(() = > this.actionCount = 4)
      }

      // 語音播報開關(guān)
      Toggle({ type: ToggleType.Checkbox, isOn: this.speechEnabled })
        .onChange((isOn: boolean)= >{
          this.speechEnabled = isOn;
        })

      // 跳轉(zhuǎn)模式選擇
      Row({ space: 20 }) {
        Text("跳轉(zhuǎn)模式:")
          .fontSize(16)

        Button("替換頁面")
          .backgroundColor(this.routeMode === "replace" ? Color.Blue : Color.White)
          .border({ width: 1, color: Color.Gray })
          .onClick(() = > {
            this.routeMode = interactiveLiveness.RouteRedirectionMode.REPLACE_MODE;
          })

        Button("返回上頁")
          .backgroundColor(this.routeMode === "back" ? Color.Blue : Color.White)
          .border({ width: 1, color: Color.Gray })
          .onClick(() = > {
            this.routeMode = interactiveLiveness.RouteRedirectionMode.BACK_MODE;
          })
      }

      // 啟動檢測按鈕
      Button("開始人臉活體檢測")
        .fontSize(20)
        .padding(16)
        .backgroundColor(Color.Orange)
        .onClick(() = > this.startDetection())

      // 結(jié)果顯示
      Text(this.detectionResult)
        .fontSize(16)
        .margin({
          top: 30
        })
        .foregroundColor(this.detectionResult.includes("通過") ? Color.Green : Color.Red)
    }
    .width("100%")
    .height("100%")
    .justifyContent(FlexAlign.Center)
    .alignItems(HorizontalAlign.Center)
  }
}

注意:

1. 人臉活體檢測支持兩種模式
INTERACTIVE_MODE(動作活體檢測):默認模式,需用戶完成 3 或 4 個隨機動作(如眨眼、點頭等),通過動作組合驗證活體,規(guī)則限制避免相鄰動作重復(fù)或特定組合(如眨眼和注視不相鄰)。
SILENT_MODE(靜默活體檢測):暫未支持,無需用戶做動作,通過其他技術(shù)(如微表情、光線反射)檢測活體。

2. 配置人臉活體檢測的動作數(shù)量和跳轉(zhuǎn)邏輯
通過InteractiveLivenessConfig中的actionsNum配置,可選值為 3(默認)或 4,3 個動作時(眨眼,注視) 不同時存在且不相鄰,4 個動作時眨眼僅 1 次,注視最多 1 次。
通過routeMode配置跳轉(zhuǎn)模式(BACK_MODE 返回上一頁或 REPLACE_MODE 替換跳轉(zhuǎn),默認 REPLACE_MODE)。
successfulRouteUrl和failedRouteUrl設(shè)置成功 / 失敗后的自定義跳轉(zhuǎn)路徑(未填則用系統(tǒng)默認頁面)。

3. 常見錯誤及處理:
201(Permission denied):未申請ohos.permission.CAMERA權(quán)限

1008301002(Route switching failed):路由配置錯誤,檢查successfulRouteUrl/failedRouteUrl路徑是否正確,或routeMode是否與頁面路由匹配。

1008302000-1008302004(檢測相關(guān)錯誤):檢測過程中算法初始化失敗、超時或動作不符合規(guī)則,可通過回調(diào)或 Promise 的 catch 捕獲錯誤碼,提示用戶重新檢測并檢查動作合規(guī)性。

審核編輯 黃宇

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

    關(guān)注

    60

    文章

    2620

    瀏覽量

    44043
  • HarmonyOS
    +關(guān)注

    關(guān)注

    80

    文章

    2126

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    【Milk-V Duo S 開發(fā)板免費體驗】人臉檢測測試(視頻)

    https://bbs.elecfans.com/jishu_2494616_1_1.html我們編譯了人臉檢測的應(yīng)用,現(xiàn)在攝像頭到了, 我們就進行實際測試。 視頻見https
    發(fā)表于 07-11 22:33

    HarmonyOS 5】鴻蒙應(yīng)用隱私保護詳解

    HarmonyOS 5】鴻蒙應(yīng)用隱私保護詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、前言 在今天這個手機不離手的時代,我們每天
    的頭像 發(fā)表于 07-11 18:30 ?286次閱讀

    HarmonyOS 5】鴻蒙中進度條的使用詳解

    HarmonyOS 5】鴻蒙中進度條的使用詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、Ha
    的頭像 發(fā)表于 07-11 18:26 ?222次閱讀
    【<b class='flag-5'>HarmonyOS</b> <b class='flag-5'>5</b>】鴻蒙中進度條的使用<b class='flag-5'>詳解</b>

    HarmonyOS 5】鴻蒙星閃NearLink詳解

    HarmonyOS 5】鴻蒙星閃NearLink詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、前言 鴻蒙星閃NearLink K
    的頭像 發(fā)表于 07-11 18:24 ?304次閱讀
    【<b class='flag-5'>HarmonyOS</b> <b class='flag-5'>5</b>】鴻蒙星閃NearLink<b class='flag-5'>詳解</b>

    HarmonyOS 5】鴻蒙mPaaS詳解

    HarmonyOS 5】鴻蒙mPaaS詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、mPaaS是什么? mPaaS 是 Mobi
    的頭像 發(fā)表于 07-11 18:23 ?276次閱讀
    【<b class='flag-5'>HarmonyOS</b> <b class='flag-5'>5</b>】鴻蒙mPaaS<b class='flag-5'>詳解</b>

    HarmonyOS 5】鴻蒙中的UIAbility詳解(二)

    HarmonyOS 5】鴻蒙中的UIAbility詳解(二) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、前言 今天我們繼續(xù)深入講解
    的頭像 發(fā)表于 07-11 18:17 ?260次閱讀
    【<b class='flag-5'>HarmonyOS</b> <b class='flag-5'>5</b>】鴻蒙中的UIAbility<b class='flag-5'>詳解</b>(二)

    HarmonyOS 5】桌面快捷方式功能實現(xiàn)詳解

    HarmonyOS 5】桌面快捷方式功能實現(xiàn)詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、前言 在移動應(yīng)用開發(fā)中,如何讓用戶快速
    的頭像 發(fā)表于 06-21 16:42 ?290次閱讀
    【<b class='flag-5'>HarmonyOS</b> <b class='flag-5'>5</b>】桌面快捷方式功能實現(xiàn)<b class='flag-5'>詳解</b>

    HarmonyOS 5 makeObserved接口詳解

    HarmonyOS 5】makeObserved接口詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、makeObserved接口
    的頭像 發(fā)表于 06-16 17:58 ?281次閱讀

    HarmonyOS 5】鴻蒙中的UIAbility詳解(三)

    HarmonyOS 5】鴻蒙中的UIAbility詳解(三) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財# 一、前言 本文是鴻蒙中的UIA
    的頭像 發(fā)表于 06-14 22:32 ?44次閱讀

    云南恩田有毒有害氣體檢測系統(tǒng)# 的安全#隧道施工#有毒有害氣體檢測

    體檢測
    恩田智能設(shè)備
    發(fā)布于 :2025年05月15日 15:06:40

    筑牢人臉信息安全防線|安全芯片如何賦能《人臉識別技術(shù)應(yīng)用安全管理辦法》落地

    ,并提出全生命周期安全管控要求:采集環(huán)節(jié):需實現(xiàn)活體檢測、數(shù)據(jù)加密與本地化處理;傳輸環(huán)節(jié):強制端到端加密,禁止明文傳輸;存儲環(huán)節(jié):原始人臉圖像不得留存,特征模板須
    的頭像 發(fā)表于 04-28 09:33 ?464次閱讀
    筑牢<b class='flag-5'>人臉</b>信息安全防線|安全芯片如何賦能《<b class='flag-5'>人臉</b>識別技術(shù)應(yīng)用安全管理辦法》落地

    使用OpenVINO?模型的OpenCV進行人臉檢測,檢測到多張人臉時,伺服電機和步入器電機都發(fā)生移動是為什么?

    使用OpenVINO?模型的 OpenCV* 進行人臉檢測。 使用 cv2.矩形 函數(shù),能夠獲取檢測到的面部的坐標(biāo)。 檢測到多張人臉時,多
    發(fā)表于 03-07 06:35

    遠峰科技UWB活體檢測方案優(yōu)勢顯著,上市發(fā)布后獲廣泛關(guān)注

    科技研發(fā)的UWB活體檢測方案,可以通過復(fù)用UWB數(shù)字鑰匙系統(tǒng)的車內(nèi)錨點,發(fā)射UWB脈沖信號,接收并分析經(jīng)車內(nèi)障礙物(如人體/寵物)反射的回波信號,利用回波信號的幅值和相位變化來檢測活體胸腔因呼吸產(chǎn)生的起伏運動,從而準確判斷車內(nèi)是
    的頭像 發(fā)表于 09-29 09:06 ?2296次閱讀
    遠峰科技UWB<b class='flag-5'>活體檢測</b>方案優(yōu)勢顯著,上市發(fā)布后獲廣泛關(guān)注

    可存儲500張人臉的雙目3D人臉識別模塊

    。HLK-FM888是一款紅外+可見光雙目人臉識別算法模組,內(nèi)嵌雙目3D活體檢測算法和基于大數(shù)據(jù)訓(xùn)練的深度神經(jīng)網(wǎng)絡(luò)動態(tài)可見光識別算法,搭載高像素的攝像頭,在增強對環(huán)境光線的適應(yīng)性和
    的頭像 發(fā)表于 07-28 08:39 ?1736次閱讀
    可存儲500張<b class='flag-5'>人臉</b>的雙目3D<b class='flag-5'>人臉</b>識別模塊

    低功耗藍牙模塊+氣體檢測儀藍牙方案介紹

    在工業(yè)安全領(lǐng)域,氣體檢測儀是保障工作場所安全的關(guān)鍵設(shè)備之一。氣體檢測儀藍牙模組方案的出現(xiàn),使得氣體檢測數(shù)據(jù)可以通過藍牙技術(shù)傳輸?shù)街悄苁謾C、平板電腦等移動設(shè)備上,實現(xiàn)遠程監(jiān)測與管理。工作人員無需
    的頭像 發(fā)表于 07-17 16:59 ?723次閱讀
    低功耗藍牙模塊+氣<b class='flag-5'>體檢測</b>儀藍牙方案介紹