import controlP5.*; import KinectPV2.*; import blobDetection.*; KinectPV2 kinect; ControlP5 cp5; int KmaxD = 4000; // 4m int KminD = 100; // 0m int MoveX; int MoveY; int R1X; int R1Y; int R2X; int R2Y; int R3X; int R3Y; int R4X; int R4Y; float Scale_Depth = 2.0; PGraphics pg; PImage img; void setup() { size(1600, 1000); pg = createGraphics(512, 424); cp5 = new ControlP5(this); kinect = new KinectPV2(this); kinect.enableDepthImg(true); kinect.enablePointCloud(true); kinect.enableColorImg(true); kinect.init(); cp5.addSlider("KminD") .setPosition(40,40) .setRange(0,2000) .setSize(200,20) .setValue(200) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("KmaxD") .setPosition(40,80) .setRange(0,2000) .setSize(200,20) .setValue(1250) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("Scale_Depth") .setPosition(40,120) .setRange(0,10) .setSize(200,20) .setValue(2) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("MoveX") .setPosition(40,160) .setRange(-400,400) .setSize(200,20) .setValue(0) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("MoveY") .setPosition(40,200) .setRange(-400,400) .setSize(200,20) .setValue(0) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R1X") .setPosition(300,40) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R1Y") .setPosition(300,80) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R2X") .setPosition(560,40) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R2Y") .setPosition(560,80) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R3X") .setPosition(820,40) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R3Y") .setPosition(820,80) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R4X") .setPosition(1080,40) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; cp5.addSlider("R4Y") .setPosition(1080,80) .setRange(0,600) .setSize(200,20) .setValue(100) .setColorForeground(color(20,200,200)) .setColorLabel(color(255)) .setColorBackground(color(70,70,70)) .setColorValue(color(0,0,0)) .setColorActive(color(0,255,255)) ; } void draw() { background(40); kinect.setLowThresholdPC(KminD); kinect.setHighThresholdPC(KmaxD); img = kinect.getPointCloudDepthImage(); float sc = Scale_Depth; pushMatrix(); translate(width/2,height/2); pg.beginDraw(); pg.background(100); pg.image(img,0,0); pg.filter(INVERT); pg.fill(0); pg.rect(0,0,R1X,R1Y); pg.rect(0,0,R2X,R2Y); pg.rect(0,424,R3X,-R3Y); pg.rect(512,0,-R4X,R4Y); pg.endDraw(); scale(sc); image(pg,-512/2+MoveX,-424/2+MoveY); popMatrix(); }