js实现初始化调用摄像头
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>人脸识别</title>
<style type="text/css">
*{
margin:0;padding:0;
}
body{
font-size:12px;
font-family:"微软雅黑";
}
/* message start */
.message{color:red;text-align:center;font-size:25px;font-weight:bold;margin:30px auto;}
/* end message */
/* content start */
.content{height:600px;width:800px;margin:100px auto 0px;position:relative;overflow:hidden;}
.content .f_scan{width:100%;height:100%;background:url(images/intro.png) no-repeat;background-size:cover;position:absolute;}
/*end content *
/* btn start */
#btn{width:280px;height:50px;border-radius:25px;margin:80px auto;
background:#66cc66;font-size:22px;text-align:center;line-height:50px;
color:#fff;display:block;text-decoration:none;}
#btn:hover{background:#ff9999;}
/*end btn */
#canvas{border:1px solid red}
</style>
</head>
<body>
<div class="message"></div>
<div class="content">
<video id="video" width="800" height="600"></video>
<canvas id="canvas" width="800" height="600"></canvas>
<div class="f_scan"></div>
</div>
<div id="btn">人脸识别</div>
</body>
<script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function(){
var video = document.getElementById("video");
var canvas = document.getElementById("canvas");
init_getvideo();
$("#btn").click(function(){
scan();
var context = canvas.getContext("2d"); context.drawImage(video,0,0,800,600); var base = canvas.toDataURL("image/png");
var base64 = base.split("64,")[1]; $.ajax({
type:"post",
url:"register.jsp",
data:{"imgBase64":base64},
success:function(data){
if(data){
window.location.href = "http://www.itstaredu.com/";
} else {
$(".message").html("你长得太丑了!");
} } }); }); });
//初始化调用摄像头
function init_getvideo(){
var video = document.getElementById("video");
//navigator浏览器得到内置对象
var getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);
getUserMedia.call(navigator,{
video:true,
audio:false
},function(LocalMediaStream){
//将摄像头的流媒体赋值给video标签src地址
video.src = window.URL.createObjectURL(LocalMediaStream);
video.onloadedmetadata = function(e){//加载元数据
video.play();
}
},function(e){
console.log("获取流媒体错误",e);
}); }; //图像扫描
function scan(){
var box = $(".content");
$(".f_scan").css({"bottom":box.height()}).animate(
{bottom:0},2000,function(){
$(this).css({"bottom":box.height()})
});
} ; </script>
</html>
js实现初始化调用摄像头的更多相关文章
- 使用js调用摄像头拍照
在一些浏览器里已经可以使用web api调用摄像头功能了. 基于此可以经行拍照摄像功能,网上找了些资料,然后实现了简单的拍照功能 演示地址 bingxl.cn/webrtc.html 代码 <! ...
- 微信公众号开发调用摄像头、拍摄或选择图片、OCR识别
一 .准备工作 <1> 域名认证准备工作 在需要调用摄像头的接口页面引入微信的js,具体地址为:(支持https):http://res.wx.qq.com/open/js/ ...
- [转]html5调用摄像头实例
原文:https://blog.csdn.net/binquan_liang/article/details/79489989 最近在学习在做HTML5的项目,看了博客上html5调用摄像头拍照的文章 ...
- C/C++ OpenCV读取视频与调用摄像头
原文:http://blog.csdn.net/qq78442761/article/details/54173104 OpenCV通过VideoCapture类,来对视频进行读取,调用摄像头 读取视 ...
- 转载 iOS js oc相互调用(JavaScriptCore) --iOS调用js
iOS js oc相互调用(JavaScriptCore) 从iOS7开始 苹果公布了JavaScriptCore.framework 它使得JS与OC的交互更加方便了. 下面我们就简单了解一下这 ...
- 调试opencv调用摄像头程序时碰到的问题
昨天晚上想把opencv学习笔记整理一下,当跑opencv调用摄像头的程序的时候老是出现Assertion failed (size.width>0 && size.height ...
- C# - VS2019调用AForge库实现调用摄像头拍照功能
前言 作为一名资深Delphi7程序员,想要实现摄像头扫描一维码/二维码功能,发现所有免费的第三方库都没有简便的实现办法,通用的OpenCV或者ZXing库基本上只支持XE以上的版本,而且一维码的识别 ...
- C#调用摄像头(AForge)实现扫描条码解析(Zxing)功能
网上找了很多代码,都比较零散,以下代码纯自己手写,经过测试.下面有链接,下载后可以直接使用. 介绍: 自动识别:点击Start按钮会调用PC摄像头,代码内置Timer,会每100毫秒识别一下当前摄像头 ...
- Android 调用摄像头功能【拍照与视频】
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/ma_hoking/article/details/28292973 应用场景: 在Android开发 ...
随机推荐
- 「雕爷学编程」Arduino动手做(32)——雨滴传感器模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
- node的stream
stream在Unix系统中是个标准的概念. In computer programming, standard streams are preconnected input and output c ...
- LAMP搭建wordpress
centos7安装Apache centos7安装mysql8 centos7安装php7 先登录mysql创建一个wordpress的数据库 create database wordpress 下载 ...
- eslint插件开发教程
开发eslint插件目的:根据项目需要,自定义满足项目特殊需要的校验规则 参考eslint官方文档展开阐述 插件开发 自定义规则 单元测试 下面开始通过一个示例demo来介绍插件整个开发流程 代码中出 ...
- JQuery动态创建表单并提交
// 捕捉链接的点击事件 $('#btn').click(function(){ // 取得要提交的参数 var my_val = $.trim($('#ipt').val()); // 取得要提交页 ...
- LSM设计一个数据库引擎
Log-Structured Merge-Tree,简称 LSM. 以 Mysql.postgresql 为代表的传统 RDBMS 都是基于 b-tree 的 page-orented 存储引擎.现代 ...
- 推荐一款复式记账软件——GnuCash
本文需要搞清楚两个事情,第一,什么是复式记账:第二,GnuCash操作 复式记账,来自百度百科的解释:复式记账法是以资产与权益平衡关系作为记账基础,对于每一笔经济业务,都要以相等的金额在两个或两个以上 ...
- hdu6314 容斥+数学
题意 : n*m的矩阵 可以涂黑白两色 问至少A行B列为黑色的涂色方案种类数,答案对998244353取模,1<=n,m,A,B<=3000 题解: ans=sum{A,..n}sum( ...
- SPL基础接口
Iterator 迭代器接口 SPL规定,所有实现了Iterator接口的class,都可以用在foreach Loop中.Iterator接口中包含5个必须实现的方法: interface Iter ...
- async/await 内幕【译文】
C# Under the Hood: async/await 原文地址:https://www.markopapic.com/csharp-under-the-hood-async-await/ 前言 ...