我正在使用java中的开放图形库通过eclipse 4.5.0创建一个人脸检测程序,并将一个jar文件添加到java项目中,用于打开CV 2.4.1以及我已经尝试了在web上指定的所有方法通过eclipse IDE中提供的构建路径选项设置NATIVE_LIBRARY_NAME的位置,但仍无法找到解决方案......请帮我解决此错误
我的面部检测Java文件
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.MatOfRect;
import org.opencv.core.Point;
import org.opencv.core.Rect;
import org.opencv.core.Scalar;
import org.opencv.highgui.Highgui;
import org.opencv.objdetect.CascadeClassifier;
public class FaceDetection
{
public static void main(String[] args)
{
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
System.out.println("\nRunning FaceDetector");
CascadeClassifier faceDetector = new CascadeClassifier(FaceDetection.class.getResource("haarcascade_frontalface_alt.xml").getPath());
Mat image = Highgui
.imread(FaceDetection.class.getResource("shekhar.JPG").getPath());
MatOfRect faceDetections = new MatOfRect();
faceDetector.detectMultiScale(image, faceDetections);
System.out.println(String.format("Detected %s faces", faceDetections.toArray().length));
for (Rect rect : faceDetections.toArray())
{
Core.rectangle(image, new Point(rect.x, rect.y), new Point(rect.x + rect.width, rect.y + rect.height),
new Scalar(0, 255, 0));
}
String filename = "ouput.png";
System.out.println(String.format("Writing %s", filename));
Highgui.imwrite(filename, image);
}
}
我已关注此链接 https://blog.openshift.com/day-12-opencv-face-detection-for-java-developers/
答案 0 :(得分:2)
由于您提供了OpenCV的jar文件但未配置本机库位置。
您需要首先在您的计算机上安装OpenCV,并使用安装OpenCV后创建的文件夹(或使用已下载的jar文件)在构建路径中提供jar文件的路径。此外,本机库位置的位置应该是" opencv-2.4.7 / build / lib文件夹"
下载OpenCV的链接 - https://opencv.org/releases.html
请参阅此链接以配置eclipse - http://docs.opencv.org/2.4/doc/tutorials/introduction/java_eclipse/java_eclipse.html