Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import hypermedia.video.*;
- import processing.opengl.*;
- import codeanticode.gsvideo.*;
- import codeanticode.glgraphics.*;
- import codeanticode.gltexture.*;
- GSCapture cam;
- OpenCV opencv;
- GLGraphicsOffScreen capoff;
- PImage img1, img2, img3, img4, img5, img6, img7, img8, img9, img10, img11, img12, img13, img14, img15, img16 ;
- //GLTexture tex1, tex2, tex3, tex4, tex5, tex6, tex7, tex8, tex9, tex10, tex11, tex12, tex13, tex14, tex15, tex16;
- String[] imgs1 = {
- "images/cell1_01.png","images/cell1_02.png","images/cell1_03.png","images/cell1_04.png","images/cell1_05.png","images/cell1_06.png","images/cell1_07.png","images/cell1_08.png","images/cell1_09.png","images/cell1_10.png", "images/cell1_t.png"};
- String[] imgs2 = {
- "images/cell2_01.png","images/cell2_02.png","images/cell2_03.png","images/cell2_04.png","images/cell2_05.png","images/cell2_06.png","images/cell2_07.png","images/cell2_08.png","images/cell2_09.png","images/cell2_10.png", "images/cell2_t.png"};
- String[] imgs3 = {
- "images/cell3_01.png","images/cell3_02.png","images/cell3_03.png","images/cell3_04.png","images/cell3_05.png","images/cell3_06.png","images/cell3_07.png","images/cell3_08.png","images/cell3_09.png","images/cell3_10.png", "images/cell3_t.png"};
- String[] imgs4 = {
- "images/cell4_01.png","images/cell4_02.png","images/cell4_03.png","images/cell4_04.png","images/cell4_05.png","images/cell4_06.png","images/cell4_07.png","images/cell4_08.png","images/cell4_09.png","images/cell4_10.png", "images/cell4_t.png"};
- String[] imgs5 = {
- "images/cell5_01.png","images/cell5_02.png","images/cell5_03.png","images/cell5_04.png","images/cell5_05.png","images/cell5_06.png","images/cell5_07.png","images/cell5_08.png","images/cell5_09.png","images/cell5_10.png", "images/cell5_t.png"};
- String[] imgs6 = {
- "images/cell6_01.png","images/cell6_02.png","images/cell6_03.png","images/cell6_04.png","images/cell6_05.png","images/cell6_06.png","images/cell6_07.png","images/cell6_08.png","images/cell6_09.png","images/cell6_10.png", "images/cell6_t.png"};
- String[] imgs7 = {
- "images/cell7_01.png","images/cell7_02.png","images/cell7_03.png","images/cell7_04.png","images/cell7_05.png","images/cell7_06.png","images/cell7_07.png","images/cell7_08.png","images/cell7_09.png","images/cell7_10.png", "images/cell7_t.png"};
- String[] imgs8 = {
- "images/cell8_01.png","images/cell8_02.png","images/cell8_03.png","images/cell8_04.png","images/cell8_05.png","images/cell8_06.png","images/cell8_07.png","images/cell8_08.png","images/cell8_09.png","images/cell8_10.png", "images/cell8_t.png"};
- String[] imgs9 = {
- "images/cell9_01.png","images/cell9_02.png","images/cell9_03.png","images/cell9_04.png","images/cell9_05.png","images/cell9_06.png","images/cell9_07.png","images/cell9_08.png","images/cell9_09.png","images/cell9_10.png", "images/cell9_t.png"};
- String[] imgs10 = {
- "images/cell10_01.png","images/cell10_02.png","images/cell10_03.png","images/cell10_04.png","images/cell10_05.png","images/cell10_06.png","images/cell10_07.png","images/cell10_08.png","images/cell10_09.png","images/cell10_10.png", "images/cell10_t.png"};
- String[] imgs11 = {
- "images/cell11_01.png","images/cell11_02.png","images/cell11_03.png","images/cell11_04.png","images/cell11_05.png","images/cell11_06.png","images/cell11_07.png","images/cell11_08.png","images/cell11_09.png","images/cell11_10.png", "images/cell11_t.png"};
- String[] imgs12 = {
- "images/cell12_01.png","images/cell12_02.png","images/cell12_03.png","images/cell12_04.png","images/cell12_05.png","images/cell12_06.png","images/cell12_07.png","images/cell12_08.png","images/cell12_09.png","images/cell12_10.png", "images/cell12_t.png"};
- String[] imgs13 = {
- "images/cell13_01.png","images/cell13_02.png","images/cell13_03.png","images/cell13_04.png","images/cell13_05.png","images/cell13_06.png","images/cell13_07.png","images/cell13_08.png","images/cell13_09.png","images/cell13_10.png", "images/cell13_t.png"};
- String[] imgs14 = {
- "images/cell14_01.png","images/cell14_02.png","images/cell14_03.png","images/cell14_04.png","images/cell14_05.png","images/cell14_06.png","images/cell14_07.png","images/cell14_08.png","images/cell14_09.png","images/cell14_10.png", "images/cell14_t.png"};
- String[] imgs15 = {
- "images/cell15_01.png","images/cell15_02.png","images/cell15_03.png","images/cell15_04.png","images/cell15_05.png","images/cell15_06.png","images/cell15_07.png","images/cell15_08.png","images/cell15_09.png","images/cell15_10.png", "images/cell15_t.png"};
- String[] imgs16 = {
- "images/cell16_01.png","images/cell16_02.png","images/cell16_03.png","images/cell16_04.png","images/cell16_05.png","images/cell16_06.png","images/cell16_07.png","images/cell16_08.png","images/cell16_09.png","images/cell16_10.png", "images/cell16_t.png"};
- //Cell[] = cells;
- void setup(){
- size(640, 480, GLConstants.GLGRAPHICS);
- colorMode(RGB, 255, 255, 255, 100);
- smooth();
- frameRate(30);
- opencv = new OpenCV( this );
- opencv.capture( width, height );
- opencv.cascade( OpenCV.CASCADE_FRONTALFACE_ALT );
- // cells = new Cell[16];
- // for(int c=0;c<faces.length;c++) {
- //
- // cells = new Cell[c];
- // }
- }
- public void stop() {
- opencv.stop();
- super.stop();
- }
- void draw(){
- opencv.read();
- Rectangle[] faces = opencv.detect( 1.2, 2, OpenCV.HAAR_DO_CANNY_PRUNING, 40, 40 );
- image( opencv.image(), 0, 0 );
- // //capture area //
- translate(0,0);
- for( int i=0; i< faces.length ; i++ )
- for( int cap=0; cap< faces.length ; cap++ ) {
- int captX = 140;
- int captY = 48;
- int captSize = 20;
- noStroke();
- fill(255,255,0);
- ellipse(captX,captY,captSize,captSize);
- noFill();
- rect(captX,captY,360,360);
- // noFill();
- // stroke(0);
- // rect( faces[i].x, faces[i].y , faces[i].width, faces[i].height );
- fill(255,0,0);
- noStroke();
- ellipse(faces[cap].x - 10, faces[cap].y - 10, 10, 10);
- if(captX < faces[cap].x && faces[cap].x < captX + captSize){
- if(captY < faces[cap].y & faces[cap].y < captY + captSize){
- fill(255,255,0);
- rect(0,height-10,width,height);
- //save("face + num + .png");
- // offscreen //
- capoff = new GLGraphicsOffScreen(this, 100, 100);
- capoff.beginDraw();
- noFill();
- noStroke();
- capoff.rect(0,0,100, 100);
- capoff.getCapabilities();
- capoff.getTexture();
- // for(int capCount = 0; capCount<1; capCount++)
- int capCount = 1;
- capoff.save("cell1_" + capCount + ".png");
- capoff.endDraw();
- }
- }
- }
- // cell draw //
- for( int j=0; j< faces.length ; j++ ){
- float cellSizeX = faces[j].width / 4;
- float cellSizeY = faces[j].height / 4;
- int cellSizeXInt = int(cellSizeX);
- int cellSizeYInt = int(cellSizeY);
- // float cellX = i*cellSizeX;
- // float cellY = j*cellSizeY;
- float spacingX = faces[j].width / 4;
- float spacingY = faces[j].height / 4;
- translate(faces[j].x , faces[j].y);
- // for ( float k=0; k<4; k++)
- // for ( float l=0; l<4; l++){
- //
- // // float(frameCount) = randomizor , assign different frameRate animation on different objects
- // // image(cells[c], faces[j].x*k , faces[j].y*l , cellSizeX , cellSizeY);
- // noFill();
- // stroke(0);
- // // image = cells[].filename;
- // rect(k*spacingX,l*spacingY,cellSizeX,cellSizeY);
- // }
- if(mousePressed){
- save("face.jpg");
- }
- noStroke();
- pushMatrix();
- //img test
- int mapping1 = round(random(0,imgs1.length-1));
- int mapping2 = round(random(0,imgs2.length-1));
- int mapping3 = round(random(0,imgs3.length-1));
- int mapping4 = round(random(0,imgs4.length-1));
- int mapping5 = round(random(0,imgs5.length-1));
- int mapping6 = round(random(0,imgs6.length-1));
- int mapping7 = round(random(0,imgs7.length-1));
- int mapping8 = round(random(0,imgs8.length-1));
- int mapping9 = round(random(0,imgs9.length-1));
- int mapping10 = round(random(0,imgs10.length-1));
- int mapping11 = round(random(0,imgs11.length-1));
- int mapping12 = round(random(0,imgs12.length-1));
- int mapping13 = round(random(0,imgs13.length-1));
- int mapping14 = round(random(0,imgs14.length-1));
- int mapping15 = round(random(0,imgs15.length-1));
- int mapping16 = round(random(0,imgs16.length-1));
- //
- //1
- img1 = loadImage(imgs1[mapping1]);
- image(img1,0,0,cellSizeX,cellSizeY);
- //2
- img2 = loadImage(imgs2[mapping2]);
- image(img2,spacingX,0,cellSizeX,cellSizeY);
- //3
- img3 = loadImage(imgs3[mapping3]);
- image(img3,spacingX*2,0,cellSizeX,cellSizeY);
- //4
- img4 = loadImage(imgs4[mapping4]);
- image(img4,spacingX*3,0,cellSizeX,cellSizeY);
- //5
- img5 = loadImage(imgs5[mapping5]);
- image(img5,0,spacingY,cellSizeX,cellSizeY);
- //6
- img6 = loadImage(imgs6[mapping6]);
- image(img6,spacingX,spacingY,cellSizeX,cellSizeY);
- //7
- img7 = loadImage(imgs7[mapping7]);
- image(img7,spacingX*2,spacingY,cellSizeX,cellSizeY);
- //8
- img8 = loadImage(imgs8[mapping8]);
- image(img8,spacingX*3,spacingY,cellSizeX,cellSizeY);
- //9
- img9 = loadImage(imgs9[mapping9]);
- image(img9,0,spacingY*2,cellSizeX,cellSizeY);
- //10
- img10 = loadImage(imgs10[mapping10]);
- image(img10,spacingX,spacingY*2,cellSizeX,cellSizeY);
- //11
- img11 = loadImage(imgs11[mapping11]);
- image(img11,spacingX*2,spacingY*2,cellSizeX,cellSizeY);
- //12
- img12 = loadImage(imgs12[mapping12]);
- image(img12,spacingX*3,spacingY*2,cellSizeX,cellSizeY);
- //13
- img13 = loadImage(imgs13[mapping13]);
- image(img13,0,spacingY*3,cellSizeX,cellSizeY);
- //14
- img14 = loadImage(imgs14[mapping14]);
- image(img14,spacingX,spacingY*3,cellSizeX,cellSizeY);
- //15
- img15 = loadImage(imgs15[mapping15]);
- image(img15,spacingX*2,spacingY*3,cellSizeX,cellSizeY);
- //16
- img16 = loadImage(imgs16[mapping16]);
- image(img16,spacingX*3,spacingY*3,cellSizeX,cellSizeY);
- //delay(10);
- // //1
- //
- // fill(255,0,0,50);
- // rect(0,0,cellSizeX,cellSizeY);
- //
- //
- // //2
- // fill(255,50,0,50);
- // rect(spacingX,0,cellSizeX,cellSizeY);
- //
- // //3
- // fill(255,100,0,50);
- // rect(spacingX*2,0,cellSizeX,cellSizeY);
- //
- // //4
- // fill(255,150,0,50);
- // rect(spacingX*3,0,cellSizeX,cellSizeY);
- //
- // //5
- // fill(255,50,0,50);
- // rect(0,spacingY,cellSizeX,cellSizeY);
- //
- // //6
- // fill(255,100,0,50);
- // rect(spacingX,spacingY,cellSizeX,cellSizeY);
- //
- // //7
- // fill(255,150,0,50);
- // rect(spacingX*2,spacingY,cellSizeX,cellSizeY);
- //
- // //8
- // fill(255,100,0,50);
- // rect(spacingX*3,spacingY,cellSizeX,cellSizeY);
- //
- // //9
- // fill(255,100,0,50);
- // rect(0,spacingY*2,cellSizeX,cellSizeY);
- //
- // //10
- // fill(255,150,0,50);
- // rect(spacingX,spacingY*2,cellSizeX,cellSizeY);
- //
- // //11
- // fill(255,100,0,50);
- // rect(spacingX*2,spacingY*2,cellSizeX,cellSizeY);
- //
- // //12
- // fill(255,50,0,50);
- // rect(spacingX*3,spacingY*2,cellSizeX,cellSizeY);
- //
- // //13
- // fill(255,200,0,50);
- // rect(0,spacingY*3,cellSizeX,cellSizeY);
- //
- // //14
- // fill(255,100,0,50);
- // rect(spacingX,spacingY*3,cellSizeX,cellSizeY);
- //
- // //15
- // fill(255,50,0,50);
- // rect(spacingX*2,spacingY*3,cellSizeX,cellSizeY);
- //
- // //16
- // fill(255,0,0,50);
- // rect(spacingX*3,spacingY*3,cellSizeX,cellSizeY);
- //tint(255, 50);
- popMatrix();
- // println("faces.length = " + faces.length);
- // println("faces[j].x = " + faces[j].x);
- // println("faces[j].y = " + faces[j].y);
- // println("faces.width = " + faces[j].width);
- // println("faces.height = " + faces[j].height);
- }
- }
Add Comment
Please, Sign In to add comment