今天暂时web的项目可以停一下了,所以又有时间可以看图像处理。JavaCV除了封装了opencv外,还整合了将视频转化为流的库,以及AR的工具等,比较容易开发项目并实现跨平台。目前最新版本是1.2,下载地址:http://search.maven.org/remotecontent?filepath=org/bytedeco/javacv/1.2/javacv-1.2-bin.zip
下载完直接解压,我们需要用到里面的jar包。
首先打开eclipse新建一个java工程,再新建一个文件夹,命名为lib。从下载的文件里找到javacpp.jar,javacv.jar,opencv.jar以及一个包含自己平台opencv库的jar包,比如我是Debian,那么就是opencv-linux-x86_64.jar。将它们复制到lib文件夹下。
之后就将lib下的jar包添加进依赖。右键->Build Path->Configure Build Path,然后在Libraries里点击Add JARS,选中lib文件夹下的jar包。
配置完成后如图:
多生成了Referenced Libraries!
之后就写个代码测试一下:
package cn.canva.javacv;
import javax.swing.JFrame;
import org.bytedeco.javacv.CanvasFrame;
import org.bytedeco.javacv.OpenCVFrameGrabber;
public class Test {
public static void main(String[] args) throws Exception {
OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);
grabber.start();
CanvasFrame canvas = new CanvasFrame("摄像头显示窗口");
canvas.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
canvas.setAlwaysOnTop(true);
while(true){
if(!canvas.isDisplayable()){
grabber.stop();
System.exit(2);
}
canvas.showImage(grabber.grab());
Thread.sleep(10);
}
}
}