javacv 使用
最近,我一直在基于Scala的项目中进行一些简单的人脸检测。 这类任务的“行业标准”是OpenCV 。 人脸检测是其基本用例之一。
但是OpenCV是用C / C ++编写的,因此显然要从Scala使用它,需要JVM接口。 JavaCV是此类接口之一 ,它包装了一些与计算机视觉相关的库,其中一个是OpenCV。 使用JavaCV从Java实际进行人脸检测的过程已经有相当详细的文档(请参阅此处的示例),但是我遇到的麻烦是,要让SBT从Maven中央存储库中获取JavaCV jar。 有两个步骤。 首先,您需要将依赖项添加到构建设置中:
val javacv =
"com.googlecode.javacv" %
"javacv" %
"0.7" classifier "linux-x86_64" classifier "macosx-x86_64" classifier ""
libraryDependencies += javacv
这里不寻常的是分类器。 要获取基本的jar,您需要一个空的分类器,但还需要一些与平台相关的对本机库的绑定。 这里包括OSX(我的开发平台)和Linux(我的部署平台)的绑定。 还有Windows的绑定,例如windows-x86
。 但这还不能解决所有问题。 您必须修改的第二个SBT设置是:
classpathTypes += "maven-plugin"
这是因为某些依赖的jar( javacpp
)与maven-plugin
打包在一起打包。 由于SBT不是Maven,因此默认情况下不会包含它们。 通过以上两个设置,您应该都准备好开始使用JavaCV,SBT和Scala进行计算机视觉。
翻译自: https://www.javacodegeeks.com/2014/02/using-javacv-with-scala-and-sbt.html
javacv 使用