JavaCV

  1. 环境准备
   
      org.bytedeco
      javacv-platform
      1.5
   
  1. 调用本地摄像头并且显示在CanvasFrame里面
  public static void main(String[] args) {
        OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);// 0就是本地摄像头
        try {
            grabber.start();   //开始获取摄像头数据
        } catch (FrameGrabber.Exception e) {
            e.printStackTrace();
        }

        CanvasFrame canvas = new CanvasFrame("JavaCV");//新建一个窗口
        canvas.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        while (true) {
            if (!canvas.isDisplayable())// 窗口状态控制线程
            {
                try {
                    grabber.stop();//停止抓取摄像头
                } catch (FrameGrabber.Exception e) {
                    e.printStackTrace();
                }
            }
            try {
                canvas.showImage(grabber.grab());//获取摄像头一帧视频图像并放到窗口上显示
            } catch (FrameGrabber.Exception e) {
                e.printStackTrace();
            }


//            try {
//                Thread.sleep(20);//可以加个间隔
//            } catch (InterruptedException e) {
//                e.printStackTrace();
//            }
        }
    }

你可能感兴趣的:(JavaCV)