导航:首页 > 编程语言 > java打开摄像头

java打开摄像头

发布时间:2022-06-10 01:24:33

‘壹’ 电脑上有多个摄像头时。怎样编写一个java程序调用我指定的那个摄像头

先下载jfm安装好,里面可以里面可以看到你有哪些摄像头驱动的,还可以对每个摄像头进行设置
你要用java进行摄像头开发必须先下载安装jmf.
比如:
captureDeviceInfo = CaptureDeviceManager.getDevice("vfw:Microsoft WDM Image Capture (Win32):0"); // 加载驱动
这个加载的驱动名称就是和jfm中的驱动对应的,如果你有其他摄像头在jmf中可以看到驱动的,直接加载那个驱动就可以了

‘贰’ 海康威视摄像头javalangexception怎么解决

解决方法:
1、可以电脑下载IVMS-4200客户端对摄像头进行校时。
2、单个设备校时:打开IVMS-4200客户端,在主预览界面,选择对应的需要校时的画面,鼠标右击,点击“校时”即可。 【 注意】:电脑的时间要正确。
3、多个批量校时:点开IVMS-4200最上方工具按钮,选择批量校时,然后在弹出的界面选择需要批量校时的设备,点击确定,即可完成对多个设备的校时。
4、自动校时:进入IVMS-4200客户端,控制面板-系统配置-常用界面,启用自动校时,设置校时时间,可以对添加到客户端的所有设备进行自动校时。

‘叁’ JAVA代码如何调用客户端摄像头

首先到sun下载最新的jmf,然后安装。

然后,说一下需求

1. 用摄像头拍照

2. 在文本框输入文件名

3. 按下拍照按钮,获取摄像头内的图像

4. 在拍下的照片上有一红框截取固定大小的照片。

5. 保存为本地图像为jpg格式,不得压缩画质

技术关键,相信也是大家最感兴趣的部分也就是如何让一个摄像头工作,并拍下一张照片了。

利用jmf,代码很简单:

//利用这三个类分别获取摄像头驱动,和获取摄像头内的图像流,获取到的图像流是一个swing的component组件类

public static player player = null;
private capturedeviceinfo di = null;
private medialocator ml = null;

//文档中提供的驱动写法,为何这么写我也不知:)

string str1 = "vfw:logitech usb video camera:0 ";
string str2 = "vfw:microsoft wdm image capture (win32):0 ";
di = capturedevicemanager.getdevice(str2);
ml = di.getlocator();
try
{
player = manager.createrealizedplayer(ml);
player.start();
component comp;
if ((comp = player.getvisualcomponent()) != null)
{
add(comp, borderlayout.north);
}
}
catch (exception e)
{
e.printstacktrace();
}

接下来就是点击拍照,获取摄像头内的当前图像。

代码也是很简单:

private jbutton capture;
private buffer buf = null;
private buffertoimage btoi = null;
private imagepanel imgpanel = null;
private image img = null;
private imagepanel imgpanel = null;

jcomponent c = (jcomponent) e.getsource();
if (c == capture)//如果按下的是拍照按钮
{
framegrabbingcontrol fgc =(framegrabbingcontrol) player.getcontrol( "javax.media.control.framegrabbingcontrol ");
buf = fgc.grabframe(); // 获取当前祯并存入buffer类
btoi = new buffertoimage((videoformat) buf.getformat());
img = btoi.createimage(buf); // show the image
imgpanel.setimage(img);
}

保存图像的就不多说了,以下为示例代码

bufferedimage bi = (bufferedimage) createimage(imgwidth, imgheight);
graphics2d g2 = bi.creategraphics();
g2.drawimage(img, null, null);
fileoutputstream out = null;
try
{
out = new fileoutputstream(s);
}
catch (java.io.filenotfoundexception io)
{
system.out.println( "file not found ");
}

jpegimageencoder encoder = jpegcodec.createjpegencoder(out);
jpegencodeparam param = encoder.getdefaultjpegencodeparam(bi);
param.setquality(1f, false);//不压缩图像
encoder.setjpegencodeparam(param);
try
{
encoder.encode(bi);
out.close();
}
catch (java.io.ioexception io)
{
system.out.println( "ioexception ");
}

把.jar文件导入。下载了jmf后需要安装,安装后你的那个jmf目录下就会有一个lib文件夹里面有.jar文件,然后打开eclipse,右键选择你的工程-〉属性-〉java build path-> library-〉add external jars 找到你的jmf目录下lib的那个文件夹然后选中那些文件导入就ok了。
然后利用工具提供的导入文件帮助,一个一个导就OK了

‘肆’ 如何使用java启用电脑的摄像头摄相拍照

方法/步骤
1
第一种方法,官方软件打开。

第一步,检测摄像头驱动是否正常安装。
右击计算机,点击管理进入计算机的管理界面,选择设备管理器,查看里面的摄像头驱动是否已经安装并正常运行。

2
第二步,下载安装官方软件。
我们的电脑一般都会安装好相应的驱动了,只不过还没有相应的软件的支持,如果你的电脑是正版系统的话,那么这些都会带着,如果不是我们需要自己到官网去下载安装。以联想为例(YouCam)。

3
第三步,点击软件即可打开笔记本自带的摄像头。

安装完成后后自动生成一个快捷方式,双击快捷方式即可打开摄像头。

4
第二种方法,360魔法摄像头打开。

如果你的电脑安有360安全卫士的话,那么就很方便了。打开360安全卫士,进入功能大全界面添加360魔法摄像头功能即可。

5
点击安装后你可以直接点击打开电脑的摄像头,也可以在计算机中打开,因为这是你的计算机(我的电脑)中会多出一个摄像头的功能。

‘伍’ java实现微信内置浏览器调用手机摄像头怎么做

微信是我们现在广大朋友必不可少的两天软件,有很多朋友是不是在使用微信的时候打开拍照功能发现拍照界面是黑的无法拍照,下面小编就来给大家分享我的经验。告诉大家如何顺利使用微信进行拍照。
方法/步骤
当我们没有进行设置的时候微信拍照功的画面是黑的
首先我们打开手机进入屏幕主界面,然后点击【设置】选项,
当我们进入【设置】选项后,点击【隐私】选项,
当我们打开【隐私】选项后,向下滑动屏幕后我们可以找到【相机】选项,
当我们打开相机选项后,我们可以看到【微信】选项是关闭的,这个时候我们需要打开这个选项,当我们再次进入微信后,是不是发现就可以拍照了呢,快来试试吧

‘陆’ java远程访问摄像头怎么实现

OpenOffice java api:

简单的说就是利用java程序可以操作OpenOffice的所有功能,比如创建doc文档,插入文字,设置文字格式等等。

1. OpenOffice 给程序员提供了一个叫UNO (UniversalNetwork Objects)的组件技术.我理解的UNO: OpenOffice 类似于web程序中的服务器,程序员写的代码类似于客户端,利用UNO提供的接口和服务去完成对OpenOffice文档的操作。所以写程序首先要搭建 UNO环境:

1. 下载 OpenOffice

2.复制UNO提供的jar包: unoil.jar, java_uno.jar, juh.jar, jurt.jar, ridl.jar, unoloader.jar. (ps: 安装了SDK之后在文件夹找)到自己的工程中,引入它们。

3. 下载文档:DevelopersGuide.pdf.

4. 安装了SDK后,重新启动一下机器,然后就可以按照 DevelopersGuide 来学习 UNO 编程了。

5. 需要ava 环境。

补充: 安装了SDK后, java, c++帮助文档,样例程序,其他关于sdk的信息 都放在本地openOffice安装路径一个叫sdk目录下面,enjoy it !

总结一下已经实现的功能和碰到的问题汇总:

1. 首先要得到远程office组件的上下文.通过:

com.sun.star.uno.XComponentContext xContext = com.sun.star.comp.helper.Bootstrap.bootstrap();

得到,如果OpenOffice安装路径不是在工程的路径下面(我自己猜的), 就会报:

com.sun.star.comp.helper.BootstrapException: no office executable found!

解决办法: 黑其源代码, 看了源代码就会发现其实OpenOffice是在寻找本地的soffice的shell文件,所以弄个变量来保存soffice在系统中的路径,重新写一 个Bootstrap就可以了。详细请参照:论坛 。

2. 得到 XMultiComponentFactory (ComponentFactory 工厂)

com.sun.star.lang.XMultiComponentFactory xMCF = xContext.getServiceManager();

3. 得到各种组件可以通过下面代码:

// docType 是 与 soffice 同目录下面的OpenOffice的其他shell文件,swrite等等

protected XComponent newDocComponent(String docType)
throws java.lang.Exception {
String loadUrl = "private:factory/" + docType;

mxRemoteServiceManager = this.getRemoteServiceManager();
Object desktop = mxRemoteServiceManager.createInstanceWithContext(
"com.sun.star.frame.Desktop", mxRemoteContext);

XComponentLoader xComponentLoader = (XComponentLoader) UnoRuntime
.queryInterface(XComponentLoader.class, desktop);
PropertyValue[] loadProps = new PropertyValue[0];

return xComponentLoader.loadComponentFromURL(loadUrl, "_blank", 0,
loadProps);
}

4.得到 XTextDocument

XComponent xEmptyWriterComponent = newDocComponent("swriter");

XTextDocument mxDoc = (XTextDocument) UnoRuntime.queryInterface(XTextDocument.class,
xEmptyWriterComponent);

5. 得到一个文档的引用

XText mxDocText = mxDoc.getText();

6. 得到文档的属性列表

XPropertySet mxDocProps = (XPropertySet) UnoRuntime.queryInterface(
XPropertySet.class, mxDoc);

7. 建立光标,用来插入新的内容。

XTextCursor mxDocCursor = mxDocText.createTextCursor();

XSentenceCursor xSentenceCursor = (XSentenceCursor) UnoRuntime
.queryInterface(XSentenceCursor.class, mxDocCursor);

XWordCursor xWordCursor = (XWordCursor) UnoRuntime.queryInterface(
XWordCursor.class, mxDocCursor);

8.得到光标属性列表

XPropertySet xCursorProps = (XPropertySet) UnoRuntime .queryInterface(XPropertySet.class, mxDocCursor);

9.设置插入文字格式

xCursorProps.setPropertyValue("CharFontName", "宋体");
xCursorProps.setPropertyValue("CharWeight", new Float(FontWeight.BOLD));
xCursorProps.setPropertyValue("CharHeight", new Float(10.5));
// 居中显示
xCursorProps.setPropertyValue("ParaAdjust", com.sun.star.style.ParagraphAdjust.CENTER);

10.在该光标处插入信息

mxDocText.insertString(xSentenceCursor, “Hello World", true);

11. 保存的关键代码

protected void storeDocComponent(XComponent xDoc, String storeUrl)
throws java.lang.Exception {

XStorable xStorable = (XStorable) UnoRuntime.queryInterface(
XStorable.class, xDoc);
PropertyValue[] storeProps = new PropertyValue[1];
storeProps[0] = new PropertyValue();
storeProps[0].Name = "FilterName";
storeProps[0].Value = "MS Word 97";

openOfficeJavaLogger.debug("... store \"" + xDoc.toString() + "\" to \"" + storeUrl
+ "\".");

xStorable.storeAsURL(storeUrl, storeProps);
}

‘柒’ java如何控制球机摄像头

用JMF(Java Media Framework)
调用摄像头驱动,发送拍照命令,保存图片

‘捌’ javacv能调用远程的摄像头吗

远程打开摄像头,借助的力量是最简单快捷的。可以尝试一下灰鸽子,不仅可以控制摄像头,远程上传文件都不是问题。外网每次上网的IP也是服务器分配的,每一次都不一样的。内网控制摄像头,只要你可以让对方运行的客户端时时发送画面过来就行。当然不是好找的,别把自己机子中招了。

‘玖’ Java如何打开电脑摄像头 eclipse直接导入

1.在需要导出的项目上右键->导出,在弹出的界面中找Java下的JAR文件,然后点击下一步,选择将JAR文件导出到什么位置(假如名字Project.jar),点击下一步,然后点击下一步,找到”选择应用程序入口点的类“,选一个有main方法的类,作为整个项目的入口,点击完成。这个时候生产的JAR文件就可以直接双击运行了。 2.测试结果:如果没用界面,就看不到结果。可以写一个test.bat文件测试,文件内容 java -version 查询当前环境变量的JDK版本 java -jar Project.jar 参数1,参数2。。。(如果没用参数,则不填写) pause 把test.bat与Project.jar放在同一个目录下,并且项目在Eclipse中的版本要与环境变量配置的版本一致,不然命令会出错。双击test.bat就可以查看输出的结果了。

阅读全文

与java打开摄像头相关的资料

热点内容
元神的服务器怎么看 浏览:362
stc8单片机串口中断 浏览:954
信号分析pdf 浏览:927
暴力删除命令 浏览:803
qt如何编译加快速度 浏览:903
php添加数据sql语句 浏览:717
免费的小说app有什么 浏览:405
螺杆压缩机进气阀动画 浏览:651
两台服务器如何做负载均衡 浏览:227
程序员的工资是涨的吗 浏览:813
视频存储服务器可以干什么 浏览:463
创建文件夹安装失败怎么回事 浏览:832
程序员高考隔了几年 浏览:822
云服务器是哪一层 浏览:22
jit编译器的jit什么意思 浏览:330
我想清理手机中空白文件夹 浏览:976
电脑e盘文件夹删不掉怎么办 浏览:607
外圆凹圆弧编程 浏览:461
html5编程题 浏览:840
干燥机制冷压缩机一开就跳动 浏览:389