加载中…
个人资料
airhand
airhand
  • 博客等级:
  • 博客积分:0
  • 博客访问:56,427
  • 关注人气:19
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

[转载]摄像头延时显示 (processing实现)

(2012-12-12 08:55:14)
标签:

转载

分类: 2012
国外有个艺术家做了个互动装置,看起来是面镜子,不过镜子里的像是1秒钟以前的

我通过processing的图像数组预存实现了这一技术,记录如下:

import processing.video.*;
PImage myImage;//预存的图像
PImage myImage2;// 取回的图像
PImage[] Image30 = new PImage[30];//30帧的图像数组

int num;//预存计数
int num2;//取图计数
Capture video;//摄像头
int pixelCount;//640*480的像素计数
int xsstart;//预存状态
void setup() {
  frameRate(30);
  size(640, 480);
  video=new Capture(this, 640, 480, 30);
  video.start();
  num=0;
  num2=0;
  pixelCount = width*height;

  xsstart=0;
}
void draw() {
  if (video.available())
  {
    video.read();
    video.loadPixels(); 
    myImage=loadImage("row.png");
    myImage.loadPixels();
    for (int i = 0; i < pixelCount; i++) {
      myImage.pixels[i] = video.pixels[i];
    }
    myImage.updatePixels();

    //image(video,0,0);
    // image(myImage, 0, 0, width/2, height/2);

    if (num<30)
    {

      // Image30.add(myImage);
      Image30[num]=myImage;
      num=num+1;
    }
    else
    {
      xsstart=1;
      num=0;
    }
    if (xsstart==1)
    {
      if (num2<30)
      {
        myImage2=Image30[num2];
        image(myImage2, 0, 0, width, height);
        num2=num2+1;
      }
      else
      {
        num2=0;
      }
    }
  }
}

0

  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有