java 打开笔记本摄像头_如何使用java启用电脑的摄像头摄相拍照
在Java语言编程中,如何使用java启用电脑的摄像头摄相拍照?
注意:需要访问网址: , 下载一个OpenCV软件包。这里下载最新版本:opencv-3.2.0-vc14.exe并解压此文件到D:softwareopencv目录中。
项目结构如下图所示 –
添加一个用户自定义库:OpenCV3.2,并指配置构建路径为:D:softwareopencvopencvbuildjavax64,如下图所示 –
注:可参考:
以下是使用Java从系统摄像头拍摄快照的程序 –
package com.yiibai; import java.awt.image.BufferedImage; import java.awt.image.DataBufferByte; import java.awt.image.WritableRaster; import java.io.FileNotFoundException; import java.io.IOException; import javafx.application.Application; import javafx.embed.swing.SwingFXUtils; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.image.ImageView; import javafx.scene.image.WritableImage; import javafx.stage.Stage; import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.videoio.VideoCapture; public class TakingSnapshotUsingCamera extends Application { Mat matrix = null; @Override public void start(Stage stage) throws FileNotFoundException, IOException { // Capturing the snapshot from the camera TakingSnapshotUsingCamera obj = new TakingSnapshotUsingCamera(); WritableImage writableImage = obj.capureSnapShot(); // Setting the image view ImageView imageView = new ImageView(writableImage); // setting the fit height and width of the image view imageView.setFitHeight(400); imageView.setFitWidth(600); // Setting the preserve ratio of the image view imageView.setPreserveRatio(true); // Creating a Group object Group root = new Group(imageView); // Creating a scene object Scene scene = new Scene(root, 600, 400); // Setting title to the Stage stage.setTitle("启用摄向头照像"); // Adding scene to the satge stage.setScene(scene); // Displaying the contents of the stage stage.show(); } public WritableImage capureSnapShot() { WritableImage WritableImage = null; // Loading the OpenCV core library System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // Instantiating the VideoCapture class (camera:: 0) VideoCapture capture = new VideoCapture(0); // Reading the next video frame from the camera Mat matrix = new Mat(); capture.read(matrix); // If camera is opened if (capture.isOpened()) { // If there is next video frame if (capture.read(matrix)) { // Creating BuffredImage from the matrix BufferedImage image = new BufferedImage(matrix.width(), matrix.height(), BufferedImage.TYPE_3BYTE_BGR); WritableRaster raster = image.getRaster(); DataBufferByte dataBuffer = (DataBufferByte) raster.getDataBuffer(); byte[] data = dataBuffer.getData(); matrix.get(0, 0, data); this.matrix = matrix; // Creating the Writable Image WritableImage = SwingFXUtils.toFXImage(image, null); } } return WritableImage; } public static void main(String args[]) { launch(args); } }
在执行上面示例代码成功后,应该会看到如下输出 –
问题
F:workspjavaexamplesjava_opencv Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java320 in java.library.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at com.yiibai.CopyAndPasteAnImage.main(CopyAndPasteAnImage.java:13)
解决上述问题可通过参考:
¥ 我要打赏 纠错/补充 收藏
java 打开笔记本摄像头_如何使用java启用电脑的摄像头摄相拍照相关推荐
- java代码启动电脑相机_如何使用java启用电脑的摄像头摄相拍照
在Java语言编程中,如何使用java启用电脑的摄像头摄相拍照? 注意:需要访问网址:http://book2s.com/java/jar/o/opencv/download-opencv-3.2.0 ...
- java js 打开摄像头_基于HTML5实现的超酷摄像头(HTML5 webcam)拍照功能 - photobooth.js...
日期:2012-12-10 来源:GBin1.com WebRTC可能是明年最受关注的HTML5标准了,Mozilla为此开发了一套帮助你控制硬件的API,例如,摄像头,麦克风,或者是加速表.你可以 ...
- opencv java 摄像头_使用OpenCV Java创建Windows摄像头扫码程序
OpenCV提供了一些基本的Webcam控制接口.用OpenCV C/C++或者Python,可以在任意平台快速创建一个摄像头预览应用.然而使用Java,情况就复杂的多,因为OpenCV Java并没 ...
- java 打开gc日志_在运行时打开GC日志记录
java 打开gc日志 总是有下一个JVM表现不佳. 而且,您内心深知,如果您只有少数启动选项可以公开一些有关正在发生的事情的信息,那么您可能就有机会真正修复该死的东西. 但是不,您需要的标志( -X ...
- java获取机器号_(转)JAVA获得机器码的实现
http://yangshangchuan.iteye.com/blog/2012401 首先,定义了一个统一的接口,以支持不同操作系统不同实现的透明切换: Java代码 收藏代码 /** *生成机 ...
- 新手学java 学哪方面_初学者学Java应从哪些方面学习?
原标题:初学者学Java应从哪些方面学习? Java作为应用于网络的最好语言,前景无限看好.然而,就算用Java建造一个不是很烦琐的web应用,也不是件轻松的事情.那么,初学者学Java应从哪些方面学 ...
- java查找文件路径_如何查找java路径?
展开全部 Java的路径问题,非常难搞.最近的工作涉及到创建和读取文件的工作,这里我就给大家彻底得解决e69da5e6ba9062616964757a686964616f31333365633838J ...
- java访问domino数据库_怎样实现Java远程访问Domino数据库
Java远程访问Domino数据库推荐采用CORBA实现,但配置非常关键,笔者在工作中也遇到了这个问题,在查阅资料的过程中发现,很多文章明显存在一些误区或者说没有写清楚的地方,现将笔者的实践经验总结出 ...
- java关闭安全警告_如何禁用Java“安全警告”弹出窗口?
将文本文档放在名为deployment.properties c:\ windows \ sun \ Java \ deployment \ deployment.properties的位置 尽管Ja ...
最新文章
- 2021年大数据常用语言Scala(十二):基础语法学习 方法调用方式
- 漫画讲述人工智能简史
- 给url添加时间戳,解决浏览器缓存
- Oracle四舍五入,向上取整,向下取整
- 系统安装操作优化:chapter5 安装驱动程序与检测电脑
- 怎么导出费用科目凭证明细_公司做账:小规模公司怎么做账?
- 使用Microsoft Unity进行日志记录
- 欲瘦其包,必先探清其底细
- android 解决setbackgrounddrawable过时
- 分区数据导出功能(页面调整)
- ado.net mysql 下载_ADO.Net连接Mysql
- 软件工程第八次作业——例行报告
- Set集合框架(HashSet and TreeSet)
- js中DOM, DOCUMENT, BOM, WINDOW 区别
- 传奇世界手游公益服【剑指轩辕2】服务端搭建源码使用指南
- 黑马python培训视频网盘下载
- win10远程关机命令
- 华为 36 岁工程师猝死,曾 22 月无休:比挣钱更重要的是活着
- php乘法表颜色渐变图片,用标准标签库写的九九乘法表(带渐变颜色)
- 流量负载_指挥流量:揭开互联网规模负载平衡的神秘面纱
热门文章
- 深夜爬虫, 我很抱歉 , 附微信 “ 网抑云” 公众号爬虫教程!
- mysql mmm搭建_搭建mysql-mmm高可用MySQL集群
- 非参数统计:两样本和多样本的Brown-Mood中位数检验;Wilcoxon(Mann-Whitney)秩和检验及有关置信区间;Kruskal-Wallis秩和检验
- 《转怒为喜---顾客抱怨投诉处理技巧》
- linux 设置开机自启动服务命令,linux开机自启动服务优化设置命令
- UVA - 10118Free Candies(记忆化搜索)
- 我的世界服务器物品展示怎么得,我的世界怎么使用物品展示框
- 创业阶段如何找客户_创业者如何找客户群
- 软 RAID 和硬 RAID的比较概览
- 反射望远镜的发展历程(4)