栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

揭开电脑的眼睛————java在摄像头的应用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

揭开电脑的眼睛————java在摄像头的应用

俗话说工欲善其事必先利其器,而我们在尝试使用摄像头前,要导入相应的包,才可完成。

  http://webcam-capture.sarxos.pl/  这里下载好开发所需要的驱动 jar包(webcam-capture-0.3.10-dist.zip)

至于导入过程,网上具有教程可以自行搜索。

现在开始写摄像头代码,录制你的美:

1.写好所需界面。

2.在监听器上加上摄像头相关代码:

创建对象:Webcam webcam= null;

然后在actionPerformed方法中,加载并启动摄像头:

public void actionPerformed ( ActionEvent e ){ String str = e . getActionCommand (); if ( str . equals ( " 启动 " )){ // 加载摄像头 webcam = Webcam . getDefault (); // 启动 webcam . open ();

关键来了,由于屏幕的不断刷新,我们会发现如果只是绘制

BufferedImage image = webcam . getImage (); g . drawImage ( image , 50 , 50 , null ); 那么根本无法形成视频,而这时我们需要借助一个我们司空见惯的错误了——利用死循环,不断绘制图片。 但是我们会产生疑问,如果一直死循环,那么这个程序后续就无法操作了。 故我们要求助一个强力工具,多线程!!!(其实之前都算是为了这里铺垫) 3.完成多线程操作: 创建一个类来实现 Runnable接口。 public void open (){ flag = true ; } public void close (){ flag = false ; } 设置开关,方便后续操作,毕竟我们始终是要关闭的。 public void run (){ while ( flag ){ BufferedImage image = webcam . getImage (); g . drawImage ( image , 50 , 50 , null ); } } 开启后,不断循环,形成视频。 4.修改监听器逻辑: 值得强调的是,只有当我们摄像头以及多线程同时打开时,才可以录制视频。 多线程打开: 先创建对象,然后交给 Thread 对象去启动 RunVideoAble rvt = new RunVideoAble(); Thread t = new Thread(rvt); t.start(); 自己试一试吧!

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1020875.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号