婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Html5調用手機攝像頭并實現人臉識別的實現

Html5調用手機攝像頭并實現人臉識別的實現

熱門標簽:欣鼎電銷機器人 效果 如何查看地圖標注 ok電銷機器人 惡搞電話機器人 黃石ai電銷機器人呼叫中心 智能電銷機器人被禁用了么 地圖標注軟件打印出來 高德地圖標注商戶怎么標 電話機器人技術

需求

混合App開發,原生殼子+webApp,在web部分調用原生攝像頭功能并且在網頁指定區域顯示攝像頭內容,同時可以手動拍照并進行人臉識別,將識別結果顯示在網頁上。

技術棧

vue、Html5、video標簽、Android、IOS、百度AI

分析

1、使用navigator.mediaDevices.getUserMedia調用系統原生攝像頭功能
2、video標簽顯示攝像頭內容
3、canvas標簽獲取圖片
4、將圖像上傳服務器,通過百度AI識別圖片
5、web顯示識別結果

核心代碼

1、調用系統原生攝像頭功能并使用video標簽顯示html:

      <video
        id="webcam"
        :style="videoStyle"
        :width="videoWidth"
        :height="videoHeight"
        loop
        preload
      >
      </video>

JavaScript:

 initVideo() {
      let that = this;
      this.video = document.getElementById("webcam");
      setTimeout(() => {
        if (
          navigator.mediaDevices.getUserMedia ||
          navigator.getUserMedia ||
          navigator.webkitGetUserMedia ||
          navigator.mozGetUserMedia
        ) {
          //調用用戶媒體設備, 訪問攝像頭
          this.getUserMedia(
            {
              video: {
                width: {
                  ideal: that.videoWidth,
                  max: that.videoWidth
                },
                height: {
                  ideal: that.videoHeight,
                  max: that.videoHeight
                },
                facingMode: "user",    //前置攝像頭
                frameRate: {
                  ideal: 30,
                  min: 10
                }
              }
            },
            this.videoSuccess,
            this.videoError
          );
        } else {
          this.$toast.center("攝像頭打開失敗,請檢查權限設置!");
        }
      }, 300);
    },
     getUserMedia(constraints, success, error) {
      if (navigator.mediaDevices.getUserMedia) {
        //最新的標準API
        navigator.mediaDevices
          .getUserMedia(constraints)
          .then(success)
          .catch(error);
      } else if (navigator.webkitGetUserMedia) {
        //webkit核心瀏覽器
        navigator.webkitGetUserMedia(constraints, success, error);
      } else if (navigator.mozGetUserMedia) {
        //firfox瀏覽器
        navigator.mozGetUserMedia(constraints, success, error);
      } else if (navigator.getUserMedia) {
        //舊版API
        navigator.getUserMedia(constraints, success, error);
      }
    },
    videoSuccess(stream) {
      this.mediaStreamTrack = stream;
      this.video.srcObject = stream;
      this.video.play();
    },
    videoError(error) {
      console.error(error);
      this.$toast.center("攝像頭打開失敗,請檢查權限設置!");
    },

2、canvas獲取攝像頭圖片

JavaScript:

 this.canvas = document.createElement("canvas");
  ....
 let context = this.canvas.getContext("2d");
 context.drawImage(this.video, 0, 0, this.videoWidth, this.videoHeight);
 this.imgSrc = this.canvas.toDataURL("image/png");

3、調用百度AI識別圖片

JavaScript:

        let that = this;
        let base64Data = this.canvas.toDataURL();
        let blob = this.dataURItoBlob(base64Data);           //
        var file = new FormData();
        file.append("file", blob);
        file.append("key", that.uuid);
        util.ajax
          .post("XXXXXXXXXX", file, {
            headers: {
              "Content-Type": "multipart/form-data"
            }
          })
          .then(function(response) {
            if ((response.status = 200)) {
                .....識別成功,顯示結果
            } else {
                ......識別失敗
            }
          })
          .catch(function(error) {
            console.error(error);
          });
          
    //base64轉換為Blob
    dataURItoBlob(base64Data) {
      var byteString;
      if (base64Data.split(",")[0].indexOf("base64") >= 0)
        byteString = atob(base64Data.split(",")[1]);
      else byteString = unescape(base64Data.split(",")[1]);
      var mimeString = base64Data
        .split(",")[0]
        .split(":")[1]
        .split(";")[0];
      var ia = new Uint8Array(byteString.length);
      for (var i = 0; i < byteString.length; i++) {
        ia[i] = byteString.charCodeAt(i);
      }
      return new Blob([ia], { type: mimeString });
    },

手機適配

1、由于Android6之后,Android的權限管理出現變化,Android原生的殼子,需要做如下處理:

myWebView.setWebChromeClient(new WebChromeClient() {

         @TargetApi(Build.VERSION_CODES.LOLLIPOP)
         @Override
         public void onPermissionRequest(final PermissionRequest request) {
                   request.grant(request.getResources());
        }
});

2、IOS系統,Safari11之后可用

3、OverconstrainedError錯誤,部分Android手機會報OverconstrainedError錯誤,原因是攝像頭參數設置不合理,找不到指定設置。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:阿壩 盤錦 金昌 綏化 赤峰 萍鄉 中山 聊城

巨人網絡通訊聲明:本文標題《Html5調用手機攝像頭并實現人臉識別的實現》,本文關鍵詞  Html5,調用,手機,攝像頭,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Html5調用手機攝像頭并實現人臉識別的實現》相關的同類信息!
  • 本頁收集關于Html5調用手機攝像頭并實現人臉識別的實現的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲一区二区三区四区的| 精品久久久久久久久久久久久久久| 日本一不卡视频| 亚洲午夜在线观看视频在线| 亚洲欧美怡红院| 国产精品久线观看视频| 1024成人网色www| 亚洲欧洲日本在线| 一区二区三区**美女毛片| 亚洲影视在线播放| 亚洲一区二区三区在线| 五月天激情综合| 日韩va欧美va亚洲va久久| 久久av资源站| 成人精品鲁一区一区二区| 99久久国产综合色|国产精品| 91农村精品一区二区在线| 欧美亚洲另类激情小说| 欧美精品日韩精品| 26uuu久久天堂性欧美| 国产精品少妇自拍| 一区二区三区产品免费精品久久75| 亚洲综合成人在线视频| 六月丁香婷婷色狠狠久久| 国产精品99久久久| 色偷偷88欧美精品久久久| 3atv一区二区三区| 欧美极品xxx| 亚洲成人动漫一区| 六月婷婷色综合| 99综合影院在线| 欧美一区二区在线不卡| 国产日韩欧美精品综合| 亚洲午夜在线视频| 国产精品99久久久久久似苏梦涵 | 久久99久久精品| 成人激情黄色小说| 欧美高清一级片在线| 中文字幕不卡在线播放| 日韩精品欧美成人高清一区二区| 久久91精品国产91久久小草| 91无套直看片红桃| 日韩网站在线看片你懂的| 亚洲人成7777| 粉嫩av一区二区三区在线播放| 欧美亚一区二区| 国产区在线观看成人精品| 亚洲成人自拍网| 99久久久国产精品免费蜜臀| 欧美一级在线视频| 亚洲国产婷婷综合在线精品| 国产风韵犹存在线视精品| 欧美福利视频导航| 亚洲人吸女人奶水| 国产成都精品91一区二区三| 91精品国产色综合久久不卡电影| 亚洲日本在线a| 国产成人免费xxxxxxxx| 欧美成人性战久久| 奇米影视一区二区三区| 欧美男男青年gay1069videost| 久久精品人人爽人人爽| 久久精品国产亚洲一区二区三区| 99久久久国产精品免费蜜臀| 中文字幕精品一区二区精品绿巨人| 男女男精品网站| 7777精品伊人久久久大香线蕉超级流畅| 国产精品人成在线观看免费| 免费观看成人鲁鲁鲁鲁鲁视频| 色诱视频网站一区| 亚洲卡通欧美制服中文| 99久久综合国产精品| 欧美极品少妇xxxxⅹ高跟鞋 | 中文字幕一区二区三区四区 | 亚洲制服丝袜av| 91性感美女视频| 国产精品嫩草99a| 从欧美一区二区三区| 久久精品人人做人人综合 | 亚洲色图都市小说| 成人精品鲁一区一区二区| 欧美激情一区在线| av在线不卡电影| 亚洲欧洲av色图| 欧美色综合影院| 婷婷开心激情综合| 欧美一区二区视频网站| 看电视剧不卡顿的网站| 2023国产精品自拍| 国产不卡一区视频| 亚洲精品一二三区| 欧美区视频在线观看| 日本亚洲最大的色成网站www| 欧美一卡二卡三卡| 国产凹凸在线观看一区二区| 国产精品女同一区二区三区| 色综合久久99| 另类欧美日韩国产在线| 久久精品在线观看| 色婷婷狠狠综合| 男女激情视频一区| 国产精品萝li| 欧美日韩精品一区视频| 国产一区免费电影| 亚洲欧美电影院| 91精品国产色综合久久ai换脸| 国产酒店精品激情| 一区二区在线观看免费| 日韩欧美国产麻豆| 不卡区在线中文字幕| 图片区小说区国产精品视频| 久久综合九色欧美综合狠狠| 成人黄色免费短视频| 亚洲成人自拍网| 亚洲国产精华液网站w| 欧美色倩网站大全免费| 国产精品一区二区久久不卡| 一区二区激情视频| 国产视频一区在线播放| 在线观看av一区| 国产成人精品免费网站| 日韩和欧美一区二区| 国产精品美女久久久久久2018| 欧美性色欧美a在线播放| 国产乱人伦偷精品视频不卡| 午夜精品国产更新| 1区2区3区精品视频| 久久久久久久久伊人| 欧美精品tushy高清| 在线免费观看日韩欧美| 99r精品视频| 国产美女主播视频一区| 日本不卡不码高清免费观看| 亚洲柠檬福利资源导航| 中文字幕不卡三区| 久久一区二区视频| 3d成人动漫网站| 欧美日韩一级二级| 欧美日韩亚洲综合一区| 色噜噜狠狠色综合中国| 国产.欧美.日韩| 国产又黄又大久久| 美国三级日本三级久久99| 婷婷成人激情在线网| 一二三四区精品视频| 亚洲人成电影网站色mp4| 1024亚洲合集| 亚洲色图视频网站| 亚洲美女少妇撒尿| 自拍偷拍国产亚洲| 亚洲综合激情另类小说区| 亚洲激情欧美激情| 亚洲成在人线在线播放| 天天色天天操综合| 日韩av二区在线播放| 免费日本视频一区| 国内精品不卡在线| 国产.欧美.日韩| 91美女片黄在线| 一本到不卡免费一区二区| 欧美视频一二三区| 欧美二区三区91| 欧美一区二区三区四区在线观看| 欧美精选一区二区| 欧美成人video| 欧美激情一区二区三区在线| 国产精品欧美一区二区三区| 国产精品免费aⅴ片在线观看| 综合久久久久久| 日韩不卡在线观看日韩不卡视频| 美女网站在线免费欧美精品| 国产91高潮流白浆在线麻豆| 在线一区二区视频| 欧美精品少妇一区二区三区| 26uuu另类欧美| 亚洲欧美日本韩国| 麻豆成人av在线| 成人美女视频在线观看18| www.成人在线| 欧美日韩国产一区| 久久久久久久综合狠狠综合| 中文字幕在线视频一区| 亚洲成av人片一区二区三区| 国产精品自在欧美一区| 欧美自拍偷拍一区| xfplay精品久久| 亚洲国产一区视频| 国产精品亚洲а∨天堂免在线| 在线观看av不卡| 亚洲国产精品激情在线观看| 一区二区三区不卡在线观看 | 亚洲精品国产成人久久av盗摄| 亚洲国产精品久久人人爱| 久久成人免费日本黄色| 91蜜桃免费观看视频| 精品久久久久久亚洲综合网 | 亚洲欧美另类在线| 九九精品一区二区| 欧美日韩一级二级三级| 国产欧美日韩在线|