kinect java_Kinect for Java
Kinect for windows 10月在中国发布。发布第二天通过京东Kinec我就到手了。
微软的Kinect for windows sdk 发现范例中只包含C#或VB语言开发的项目.
网络上开源的OpenNI仅支持Xbox 360 Kinect 不支持 PC Kinect.
现发布一个JAVA调用kinect for windows的一个工具包(JAVASE).
工具包实现了身体每个部位的监听和语言识别。
安装说明:
需要安装kinect for windows Runtime.
不支持Xbox 360 kinect.不支持OpenNI kinect驱动,仅支持微软的kinect驱动.
kinectbridge.jar中已经包含了所有身体部位的监听listener,在代码中只需注册相应部位的监听器即可.
压缩包内personImage.png是每个节点的名称供大家参考。
需要安装.NET framework4.0
代码中注释就不详细,范例代码有点乱别见怪.那是我从我的java kinect for mario游戏项目中直接抠出来的。^_^
现在分享给大家。
范例中部分代码:
public class Runner extends Thread{
/**
* @param args
* @throws InterruptedException
*/
public static void main(String[] args) throws InterruptedException {
ManagerHelper.INSTANCEOF.openKinect();//开启kinect
ManagerHelper.INSTANCEOF.regsitListener();//注册监听器
}
}
package org;
import org.base.SystemListener;
import org.control.listener.HeadListener;
import org.control.listener.LeftFootListener;
import org.control.listener.LeftHandListener;
import org.control.listener.LeftKneeListener;
import org.control.listener.RightFootListener;
import org.control.listener.RightHandListener;
import org.control.listener.RightKneeListener;
import org.cxy.kinect.KinectManager;
import org.cxy.kinect.body.Body;
public class ManagerHelper {
public static ManagerHelper INSTANCEOF=new ManagerHelper();
/**
* 注册身体监控事件
*/
public void regsitListener()
{
KinectManager.INSTANCEOF.getBody().getHead().setPartChangeListener(new HeadListener());
KinectManager.INSTANCEOF.getBody().getLeftFoot().setPartChangeListener(new LeftFootListener());
KinectManager.INSTANCEOF.getBody().getLeftHand().setPartChangeListener(new LeftHandListener());
KinectManager.INSTANCEOF.getBody().getRightFoot().setPartChangeListener(new RightFootListener());
KinectManager.INSTANCEOF.getBody().getRightHand().setPartChangeListener(new RightHandListener());
KinectManager.INSTANCEOF.getBody().getRightKnee().setPartChangeListener(new RightKneeListener());
KinectManager.INSTANCEOF.getBody().getLeftKnee().setPartChangeListener(new LeftKneeListener());
}
public void openKinect()
{
SystemListener systemListener=new SystemListener();
KinectManager.INSTANCEOF.openKinect(systemListener);
KinectManager.INSTANCEOF.openBodyProcess();//开启身体监控进程
}
/**
* 开启语言识别
* @param words 关键词
*/
public void openSpeech(String[]words)
{
KinectManager.INSTANCEOF.openSpeechProcess(words);
}
public void stopKinect()
{
KinectManager.INSTANCEOF.stopKinect();
}
public Body getBody()
{
return KinectManager.INSTANCEOF.getBody();
}
}
/**
* 监听类
* @author Administrator
*
*/
public class HeadListener implements PartChangeListener {
@Override
public void notifyChanged(Part part) {
System.out.println("头:Y:"+part.getY());
float newy=(part.getY());
if(newy<0)
{
System.out.println("你跳了");
}else
{
}
}
}
public class SystemListener implements KinectListener{
@Override
public void kinectStarted() {
System.out.println("kinect 启动");
}
@Override
public void kinectStoped() {
System.out.println("kinect 停止");
}
@Override
public void onNotifyBody() {
ControlCenter.INSTANCEOF.doWork();
}
@Override
public void onSpeechListened(String word) {
System.out.println("你说:"+word);
}
}
范例和工具包下载地址:
kinect java_Kinect for Java相关推荐
- java kinect 人体识别_深度图像的Kinect骨架算法
要使用Kinect跟踪骨架,您必须启用SkeletonStream并获取其中包含骨架信息的帧(而不是从深度帧获取信息 . 它们内部不存储骨架信息) . 首先,您必须在应用程序中启用骨架流,就像使用深度 ...
- JAVA world转图片,将Kinect深度图像转换为真实世界坐标
我正在使用kinect,使用OpenNI 2.x,c,OpenCV . 我能够获得kinect深度流并获得灰度cv :: Mat . 只是为了说明它是如何定义的: cv::Mat m_depthIma ...
- java kinect 人体识别_基于三个kinect的人体建模
基于三个kinect的人体重建,首先要对三个kinect相机进行标定,得到相机内外参数.这样每个相机看到空间一点的坐标是一致的,三个相机坐标系得以统一.标定方法是两两标定,即取某一kinect相机(记 ...
- java openni rgb显示_3D将深度映射到RGB(Kinect OpenNI Depthmap到OpenCV RGB Cam)
我正在尝试将我的OpenNI(1.5.4.0)Kinect 4 Windows Depthmap映射到OpenCV RGB图像 . 我跳过了失真部分,但除此之外,我做了我认为的一切: //with d ...
- java kinect 人体识别_基于kinect的人体动作识别系统
[实例简介] 基于kinect v2的人体动作识别,配套博客(http://blog.csdn.net/baolinq/article/),基于mfc,可以识别左移右移.上蹦下跳等,也可以自己自定义其 ...
- visual studio 运行java_Visual Studio 支持 Java?谣言止于智者
在去年的某一段时间内,我们经常会看到标题类似为"宇宙第一 IDE Visual Studio 支持 Java 了!"的文章.当时,韩老师看到这篇文章也是一脸懵逼.公司里做 Java ...
- [其他]JAVA与C#的Socket通信
在日常的开发中,不同的传感器支持的开发语言常常是不同的.例如Kinect一般是用C++开发的,Leapmotion用JAVA开发比较多. 去年暑假(17年暑假)做的一个项目是:用Leapmotion捕 ...
- azure kinect三维点云_【干货】三维重建技术综述
三维重建技术通过深度数据获取.预处理.点云配准与融合.生成表面等过程,把真实场景刻画成符合计算机逻辑表达的数学模型.这种模型可以对如文物保护.游戏开发.建筑设计.临床医学等研究起到辅助的作用. 三维重 ...
- ubuntu12.04 安装kinect V1驱动
在网上七拼八凑终于在ubuntu12.04上成功安装kinectV1驱动,自己整理下. 一共需要装三个东东,OpenNI,SensorKinect,NITE 首先安装依赖项: sudo apt-get ...
- java list e 查找_源码(04) -- java.util.ListE
java.util.List 源码分析(JDK1.7) ------------------------------------------------------------------------ ...
最新文章
- 问一下,线程池里面到底该设置多少个线程?
- 解决人际矛盾的英语口语10条
- 电脑科学性计算机怎么用,怎么使用科学计算器59 000×(1+r)-2
- java类的实现_java类的实现
- TailwindCSS v3.0 正式发布!一大波新特性来袭!
- 表达式求值(NOIP2013 普及组第二题)
- Ubuntu 安装MySQL报共享库找不到
- javascript案例---简单的视觉效应
- 拓端tecdat|R语言深度学习探索德国数据科学就业市场
- 您应该购买卡巴斯基安全产品吗
- python合并两个txt列_python如何将两个txt文件内容合并
- 高通CAMERA 调试
- jh锂电保护电路_锂电池保护电路工作原理
- Trunk详解(笔记)
- 1.19.10.Flink SQL工程案例\Flink批式处理\自定义函数\Window窗口计算\将DataSet数据转成Table数据\将Table数据转成DataSet等
- pandas之dropna()的用法
- 常用的嵌入式硬件通信接口协议(UART、IIC、SPI、RS-232、RS-485、RS-422、CAN、USB、IRDA)(一)
- Java Date Calendar类的使用 如何计算两个日期之间有多少天
- 蚂蚁金服通讯框架学习一
- 关于云服务及网络的几个基础概念
热门文章
- Python学习_053.双分支选择结构_三元运算符的使用详解
- windows pe安装系统
- iphone打出空心心形_空心心形符号(类似的心形符号)
- python拟合线性函数_Python线性拟合实现函数与用法示例
- Houdini+UE4制作好看的地形(材质篇)
- 如何用 Python 实现手机远程控制电脑
- 食品机械怎么找客户,如何转型
- unity自动生成敌人_Unity3D 敌人AI 和 动画( Animator )系统的实例讲解
- php fpm在哪配置,php配置php-fpm启动参数及配置详解
- 计算机驱动程序的安装过程,电脑怎么安装驱动程序