micaddress 2016-04-28 11:53
浏览 1021
已结题

求助 JavaCV 的 grabber.stop() 问题

以下是代码:
grabber.start();

CanvasFrame canvasFrame = new CanvasFrame("Camera");

canvasFrame.setVisible(false);
IplImage image;
image = grabber.grab();
int width = image.width();

int height = image.height();
canvasFrame.setCanvasSize(width, height);

final BufferedImage bImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

Graphics2D bGraphics = bImage.createGraphics();

TimerAction timerAction = new TimerAction(canvasFrame);

final Timer timer=new Timer(10, timerAction);

timerAction.setTimer(timer);

int checkPictureContextIsNull = 1;
while(checkPictureContextIsNull == 1){
if((image=grabber.grab()) == null){
continue;
}else{
if(!timer.isRunning()) {

// canvasFrame.showImage(image);

bGraphics.drawImage(image.getBufferedImage(),null,0,0);
timer.start();

// changePicturesNameType = Integer.toString(changePicturesName);
try {

ImageIO.write(bImage, "jpg", new File("d:\pictures.jpg"));

// changePicturesName++;
} catch (IOException e1) {

e1.printStackTrace();

}

checkPictureContextIsNull = 0;
}

}
}
cvReleaseImage(image);

grabber.stop();
canvasFrame.dispose();

        以下是main方法
        public static void main(String[] args) throws InterruptedException, com.googlecode.javacv.FrameGrabber.Exception {
    System.out.println("11111111111111111111111111111111111111111");
    getPictures();
    System.out.println("22222222222222222222222222222222222222222");
}

我每次执行都只能打印出 111111111  语句  因为一执行到 getPictures()这个方法的时候就直接中断了,后来DEBUG调试发现程序运行到 getPictures()方法的 grabber.stop(); 语句时 程序就中断了,在网上查了好多 都没有查到,希望CSDN的牛人可以帮忙解决一下 不胜感激
  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 聚类分析或者python进行数据分析
    • ¥15 如何用visual studio code实现html页面
    • ¥15 逻辑谓词和消解原理的运用
    • ¥15 三菱伺服电机按启动按钮有使能但不动作
    • ¥15 js,页面2返回页面1时定位进入的设备
    • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
    • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
    • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
    • ¥20 腾讯企业邮箱邮件可以恢复么
    • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?