JMF调用摄像头粉屏的问题(win10 64位系统)

最近突然想做一个人脸识别的程序,图像的获取可以从本地或者摄像头获取。

1、从本地获取比较简单,不多说。

2、从摄像头获取图片。网上查了一下,都是用的JMF(但是JMF已经很久没有更新,而且只支持32位的JDK,如果知道有更好的麻烦推荐一下!)

下载JMF(http://www.oracle.com/technetwork/java/javase/download-142937.html)

安装

安装完之后桌面上回出现JMStudio的快捷图标,

 点开测试一下,file->capture;

摄像头驱动正常加载,点击OK,然后

我靠,这什么鬼?一片粉啊,一定要这么嫩吗 -_-||。 晃动一下窗口,会显示图像,但是是卡住的。

摄像头正常打开了,但是显示不了画面,这样完全没用啊!于是就去网上查了一下,没有答案,再看看回答时间,瞬间怀疑自己是不是用了个老古董了!

 

没办法,先试着写程序吧

 1 public static Component loadDiver() 
 2     {
 3         //String str1 = "vfw:logitech usb video camera:0";
 4         String str2 = "vfw:Microsoft WDM Image Capture (Win32):0";
 5         
 6         deviceInfo = CaptureDeviceManager.getDevice(str2);   //加载设备驱动
 7         mLocator = deviceInfo.getLocator();
 8         try
 9         {
10             
11             player = Manager.createRealizedPlayer(mLocator);  //获取就绪的播放器
12             
13             Component cp;
14             if((cp = player.getVisualComponent())!=null)
15             {
16                 player.start();
17                 return cp;                               //返回窗体组件
18             }
19         }
20         catch(Exception e)
21         {
22             e.printStackTrace();
23         }
24         return null;
25     }

运行之后发现一样出现粉屏的问题, 弄了一会儿发现好像在画面上覆盖了一层JLabel或者JTextArea就可以正常显示图像(感觉好low啊/捂脸),可能是打开的方式不对!

最后无意中发现,只要窗体对准电脑屏幕的最左边就可以正常显示了,这程序是不是有强迫症啊?_?

 

好吧,虽然莫名其妙,但是也勉强算是解决了显示问题了。

下面就是截图了,于是就用了笨办法,屏幕截图(求聪明的办法^_^):

 1 BufferedImage buffImg = null;
 2 try
 3 {
 4    buffImg = (new Robot()).createScreenCapture(new
 5    Rectangle(0, 100, c1.getWidth(), c1.getHeight()-100));   //c1是上面方法返回的Component
 6 }
 7 catch(AWTException e1)
 8 {
 9    e1.printStackTrace();
10 }
11 try
12 {
13    ImageIO.write(buffImg, "jpg", new File(path));
14 }
15 catch(IOException e1)
16 {
17    e1.printStackTrace();
18 }

成功获取图像

 

总结:JMF调用摄像头产生粉屏,把窗体放在屏幕最左侧可以正常显示,具体原因未知!个人猜测可能是系统不兼容的造成。

 

转载于:https://www.cnblogs.com/jiuliblog-2016/p/6905349.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488261.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

科技部5个6G重点项目

来源:5G重要信息未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图…

mysqlsql怎么比较当前月与去年的这个月的同比_沃尔沃汽车8月全球销量同比增7.2% 中美两大地区领涨...

加入盖世行业交流群,请加微信(盖世汽车冬冬:gasgoo2015)出示名片,了解更多行业资讯盖世汽车讯 根据沃尔沃汽车官方发布的销量数据,今年8月份,得益于广受欢迎的SUV系列产品,该公司继续保持强劲的销售势头&am…

c#语言程序设计上机实验,C#语言程序设计基础实验指导(第3版)

第1章 绪论1.1 知识点回顾1.2 实验目的和要求1.3 实验内容1.4 实验指导实验1-1 模拟电子邮箱注册实验1-2 创建和调用C#类库程序1.5 补充上机练习第2章 C#数据类型2.1 知识点回顾2.2 实验目的和要求2.3 实验内容2.4 实验指导实验2-1 字符及其ASCII码转换实验2-2 使用ConsoleColo…

POI(java 操作excel,word等)编程

一、下载所需jar包 下载地址:http://poi.apache.org/download.html http://download.csdn.net/detail/likai22/534250 二、上代码 package com.sxdx.excelpoi.action;import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.File…

一文读懂测序技术在新冠病毒检测中的应用(文末附FAQ)

来源:生物探索随着世界疫情的发展,多个国家进入公共卫生紧急状态,全球科学家都在抓紧研究更好的检测、治疗、防控手段。从最初未知β属冠状病毒的快速鉴定到病毒序列的完整破译,再到病毒序列的变异监测,高通量测序技术…

可以用中文编写python_用中文也能寫Python程式

目前的程式設計中,Android平臺上的App開發算是相當熱門,從電腦書的熱賣,也可看出端倪。在網路書店博客來2011年的年度暢銷榜中,就有好幾本是關於Android開發的電腦書,其中奪下電腦類別第五名的就是《Google!Android 3手…

c 高级语言,C作为高级语言?

So, what C do YOU use in you practice? Do you mix the styles, say, arrays and vectors? Are there any rules or best practices here?…现代C,绝对。但是在我看来,这并不排除阵列。仍然存在阵列优于载体的情况。但是当我使用数组时,…

2020技术趋势报告-中文版

来源:德勤咨询今年的技术趋势报告继续在开篇回顾了11年来的技术趋势发展,展示了技术趋势随时间推移的演进全过程,及最新宏观科技力量作为业务转型基础带来的共生效益,和不久的未来的新兴科技力量。随着企业需要适应不断变化的技术…

HBase:分布式列式NoSQL数据库

传统的ACID数据库,可扩展性上受到了巨大的挑战。而HBase这类系统,兼具可扩展性的同时,也提出了类SQL的接口。 HBase架构组成 HBase采用Master/Slave架构搭建集群,它隶属于Hadoop生态系统,由一下类型节点组成&#xff1…

LINUX装魂斗罗游戏,魂斗罗战甲1-支援形态装置搭配思路及攻略

哈喽,老伙计们大家好,虽然真魂战甲这个机制已经出了有段时间了,但是今天我还是要给大家搞一个深度攻略,别问!问就是真男人必须开机甲!其实是很多小伙伴向我吐槽血隼副本和虚空副本太过变态,自己…

ui和python_python 将ui转成py(和UI文件放在同一目录,运行)

-- coding: utf-8 --【简介】ui转换成py的转换工具import osimport os.pathUI文件所在的路径dir ./列出目录下的所有ui文件def listUiFile():list []files os.listdir(dir)for filename in files:#print( dir os.sep f )#print(filename)if os.path.splitext(filename)[1]…

好文 | “智能经济”时代,协作机器人的应用前景与趋势探讨

来源:赛迪顾问本文要点一、协作机器人定义及分类二、全球协作机器人发展概况三、中国协作机器人发展概况四、中国协作机器人发展面临瓶颈及趋势展望1、研发设计人才短缺,协作机器人产业创新驱动力不强2、核心零部件技术缺失,是制约我国工业机…

C/C++ scanf 函数中%s 和%c 的简单差别

首先声明:在键盘中敲入字符后,字符会首先保存在键盘缓冲区中供scanf函数读取(scanf。getchar等函数是读取缓冲区,getch函数是读取的控制台信息,即为直接从键盘读取)。另外特别注意键盘上敲入回车实际为“\r…

c语言求100以内整除13的最大,VB程序设计的一道题,找出100以内能被3整除的所有数之和,并把值保存在一维数组中...

VB程序设计的一道题,找出100以内能被3整除的所有数之和,并把值保存在一维数组中以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!VB程序设计的一道题,找出1…

Cdn英文的读音音标_宋sir的美式音标教程 Unit 1 /i/ tea

剑桥国际英语语音教程(Pronunciation Pairs)是一本很优秀的美式口音学习教材,其特点是对一些读音相近的音标进行对比,可以帮助学习者进行更准确地道地发音。该教材唯一的缺点就是不够深入,很多知识点并没有进一步详细阐…

兰德报告:思维机器时代的威慑

来源:中国指挥与控制学会从全球来看人工智能和自主系统在军事上的应用逐渐增多,这可能影响危机和冲突中使用的威慑策略以及冲突的升级变化。到目前为止,威慑主要指人类设法阻止其他人采取特定行动的行为。如果参与思维和决策过程的不止人类&a…

c语言设计一维数组,一维数组 (1)C语言程序设计.pdf

C语言程序设计一维数组 C语焉不详内容提要1 一维数组的定义2 一维数组的初始化3 一维数组的引用怎样学好C语言?引例【案例】从键盘上输入某学科竞赛组6名成员的成绩(整数),求平均成绩、并找出最高分和最低分。分析:6名学生的成绩,…

在windows 2008 R2上安装sharepoint 2013时遇到提示必须安装 .netframeword4.5的处理办法...

近日,有个客户需要个测试环境,需要搭建一个sps2013的测试服务器 但基于服务器软件授权的考虑,让使用windows2008 作为系统服务器 但一安装就碰到个提示,要求先安装framework4.5。结合以往的经验 ,估计是系统太新了。后…

转子接地保护原理_转子一点接地保护和转子两点接地保护的作用及发生的原因和处理...

转子一点接地保护和转子两点接地保护的作用及发生的原因和处理转子一点接地保护:作用:用于监视发电机转子励磁回路绝缘(即发生接地或某处绝缘下降时报警)发生的原因:滑环绝缘环,转子槽口绝缘损坏,引线绝缘损坏&#xf…

华为等向联合国提议重构互联网:提议采用一种新的核心网络技术新标准,名为“New IP”...

来源:云头条新架构将支持尖端技术,华为曾表示,新技术的一些部分已经在建造中,相关部分已准备好在2021年之前进行测试。以下为《演示文稿》:《金融时报》消息,中国已向联合国建议对互联网的运作方式进行彻底…