Skip to content

Make Processing

조회 수 95 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

안녕하세요 PGraphics 관련 질문 드립니다. 원하는 색상값만을 비디오에서 추출하여 PGraphics 로 layer 생성 후 비디오 배경 없이 저장할려고 하는데 

문제는 원하는 값을 추출은 잘하는데 PGraphics 가 layer 개념이라 그런지, 코드를 잘못이해해서 그런지 원하는 색상값만 실시간으로 잡는것이 아닌 비디오 시작부터 끝까지 색상값을 계속 그려버리는(?) 문제가 생기고 있습니다. 

(글을 잘 못써서..예를 들어 캠으로 받아들인 비디오에 빨간색 펜뚜껑이 있으면 실시간으로 빨간색 펜뚜껑 부분만 tracking 해야 하는데 PGraphics 를 쓰면 빨간펜뚜껑이 움직이며 지나간 흔적을 그려버리고 있는 문제가 있습니다 ㅠㅠ) 


밑에 코드는 제가 코딩한 것인데 아마 for문에서? 뭔가 고쳐야 할거 같은데 어떤 부분을 고치거나 다른 reference 를 참고해야할까요 ? 


답변 주시면 정말 감사하겠습니다!!



    

    import processing.video.*;

    

    Capture video;

    

    color trackColor= color(145,43,54);

    float threshold = 25;

    PGraphics topLayer;

    

    float r2;

    float g2;

    float b2;

    

    float distSq(float x1, float y1, float z1, float x2, float y2, float z2) {

      float d = (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) +(z2-z1)*(z2-z1);

      return d;

    }

    

    void setup() {

      size(640, 360);

      String[] cameras = Capture.list();

      printArray(cameras);

      video = new Capture(this, cameras[3]);

      video.start();

      trackColor = color(145,43,54);

      topLayer = createGraphics(width, height, g.getClass().getName());

    }

    

    void captureEvent(Capture video) {

      video.read();

    }

    

    void draw() {

    

      video.loadPixels();

      image(video, 0, 0);

    

      //threshold = map(mouseX, 0, width, 0, 100);

      threshold = 50;

      float thresholdSquare = threshold * threshold;

      

      

      // Begin loop to walk through every pixel

      for (int x = 0; x < video.width; x++ ) {

        for (int y = 0; y < video.height; y++ ) {

          int loc = x + y * video.width;

          // What is current color

          color currentColor = video.pixels[loc];

          float r1 = (currentColor>>16)&0xFF;

          float g1 = (currentColor>>7) & 0xFF ;

          float b1 = (currentColor) & 0xFF;

          r2 = (trackColor>>16)&0xFF;

          g2 = (trackColor>>7) & 0xFF;

          b2 = (trackColor) & 0xFF;

          float d = distSq(r1, g1, b1, r2, g2, b2); 

          if (d < thresholdSquare) {

            //worldRecord = d;

            topLayer.beginDraw();

            topLayer.stroke(trackColor);

            topLayer.noStroke();

            topLayer.fill(trackColor);

            topLayer.ellipse(x, y,1,1);        

         ////////////////////////////////////////

            topLayer.endDraw();

            image(topLayer, 0, 0);

       }

      }

     } 

        if(mousePressed){

          topLayer.save("example.jpg");

        }

    }

  • profile
    smileblue 2018.04.15 09:18

    if (d < thresholdSquare) {

                //worldRecord = d;

                topLayer.beginDraw();

                topLayer.stroke(trackColor);

          topLayer.background(0,0);

                topLayer.noStroke();

                topLayer.fill(trackColor);

                topLayer.ellipse(x, y,1,1);        

             ////////////////////////////////////////

                topLayer.endDraw();

                image(topLayer, 0, 0);

           }


    아마 이렇게 하면 투명이면서 이전 프레임의 영상은 나오지 않게 저장 될것 같은데요..


Q&A

질문하는 공간입니다. 회원이면 누구나 질문/답변 할 수 있습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
309 Muscles Size Skills The Experts Manipulated After that Endorse obebuha 2018.06.23 1
308 Homeowner's Insurance policy Can Be Done Simple By Simply Following These Great Tips ejybima 2018.06.22 2
307 Effortless Strategies For Accomplishment In Almost everything Football ezibi 2018.06.22 2
306 프로세싱 에어드로잉 anhong 2018.06.19 10
305 프로세싱 카메라캡쳐 anhong 2018.06.16 20
304 if문과 %수식의 관계 SHSY 2018.06.14 12
303 마우스 클릭을 이용하여 원하는 색상 4가지를 랜덤하게 나타나게하기 어떻게하나요 ㅜㅜ 킁주 2018.06.10 23
302 아두이노로 각각 스피커에 mp3파일 여러개 재생 안녀영 2018.05.29 17
301 사이즈를 줄이고 싶습니다...ㅠㅠ 프로세싱초짜예영 2018.05.14 38
300 이미지 지우기 물병자 2018.05.11 34
299 이미지 60프레임동안 회색빛으로 변하기 & 모자이크효과 이미지 만들기 구구단 2018.05.07 51
298 삼각형 rotate 프프하하 2018.05.06 48
297 key pressed로 이미지 불러오는법 1 bubcoco 2018.04.28 97
296 googleImageloader 라이브러리 질문드립니다! jamessss 2018.04.24 51
» PGraphics 관련 질문드립니다! 1 jamessss 2018.04.12 95
294 WASD로 시점을 움직이는 것에 대해 질문이 있습니다. Sinon 2018.04.08 104
293 프로세싱 class 에러 1 hemel 2018.04.06 91
292 for loop의 회전에 관해 질문 드립니다! 1 호오오안 2018.04.05 98
291 도형에 빛효과 1 상히공주 2018.04.03 108
290 신발같이 작은 오브젝트를 프로젝션 맵핑할 때 빔 프로젝터 고민. 이상권 2018.03.06 197
Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 ... 16 Next ›
/ 16

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Copyright (c) 2012 Make Processing. All Right Reserved.

smileblue

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소