Processing结合Kinect2实现人影互动
| 本文提供详细教程 记录遇到的难点并帮助同行的朋友们 坚持以最简单的方法传授和把更好的阅读体验带给你们! |
一:Processing介绍
1:起源和简介
Processing是一种具有革命前瞻性的新兴计算机语言,它的概念是在电子艺术的环境下介绍程序语言,并将电子艺术的概念介绍给程序设计师。它是 Java 语言的延伸,并支持许多现有的 Java 语言架构,不过在语法 (syntax) 上简易许多,并具有许多贴心及人性化的设计。Processing 可以在 Windows、MAC OS X、MAC OS 9 、Linux 等操作系统上使用。以 Processing 完成的作品可在个人本机端作用,或以Java Applets 的模式外输至网络上发布。Processing的源代码是开放的
2:用户群
是对科学与艺术之间的跨领域表现有兴趣的人。一般的数字艺术家或设计师会以现有的软件(例如PhotoShop、Illustrator、Flash或Director等)来从事创作,往往在不知不觉中,被大企业所主导的制式化生产工具,限制了创意及表现形式的可能性。但是如果你刚好拥有撰写计算机语言的能力,你大可以为了实现脑海里的杰作,专门来打造一个能跑它的程序,如此一来,不但作品的内容是艺术,其工具,形式及创作过程本身亦是一桩艺术。
二:下载和安装
这里提供一个版本下载,你也可以用下面的方法下载
百度云下载
提取码:mqzy
Processing官网下载

切记一定是适合自己的电脑版本呦
选择下载储存的位置,然后解压使用

三:Processing界面
没错,就是这个界面,很是简单
四:与Kinect2结合
1;Kinect环境搭建
因为要与Kinect2互动,所以要把环境搭建出来

2;下载好后,代码调用Kinect2,实现
1:效果,人影图
2:代码
import KinectPV2.*;
KinectPV2 kinect;
PImage img;
int densityNum = 100;
float[] x= new float[densityNum];
float[] y= new float[densityNum];
float[] speed = new float[densityNum];
float[] pointZ = new float[densityNum];
float[] size = new float[densityNum];
float colorNumR = 0f;
float colorNumG = 0f;
float colorNumB = 0f;
void setup()
{
fullScreen(P3D);
kinect = new KinectPV2(this);
kinect.enableColorImg(true);
kinect.enableDepthImg(true);
kinect.enableInfraredImg(true);
kinect.enableBodyTrackImg(true);
kinect.init();
stroke(255);
strokeWeight(5);
int i = 0;
while (i < densityNum) {
x[i] = random(0, width);
y[i] = random(0, height);
speed[i] = random(1, 5);
pointZ[i] = random(-50, 50);
size[i] = random(4, 7);
i = i + 1;
}
}
void draw()
{
background(0);
image(kinect.getBodyTrackImage(),0, 0,width,height);
int i = 0;
while (i < densityNum) {
colorMode(HSB,255,255,255);
float r = map(speed[i],1,5,0,255);
float g = map(speed[i],1,5,0,255);
float b = map(speed[i],1,5,0,255);
println(60,60,60);
stroke(r, g, b);
strokeWeight(size[i]);
point(x[i], y[i], pointZ[i]);
y[i] = y[i] + speed[i];
if (y[i] > height) {
y[i] = 0;
}
i = i + 1;
}
}
3:更多代码效果文本下载
百度云下载
提取码:mqzy
五:程序打包输出
1:做程序的都知道,做好的一个程序或者效果如果不能输出,很让人烦心的,这个艺术效果的Processing软件
也是可以把写好的程序输出打包的
请详情下面的图文

2:找到自己输出的位置文件

3:这是你编写的效果已经在电脑上运行了
六:博主支持
| 拥有自己的服务器 让开发工作不再难 |