介绍
这篇文章将为大家详细讲解有关OpenCV Java如何实现人脸识别和裁剪功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
<强>安装及配置强>
<强> 1。首先安装OpenCV, >强地址
这里我下载的是Windows版的3.4.5
然后安装即可……
<强> 2. eclipse配置OpenCV 强>
窗口→选项→Java→用户库
新输入你的图书馆名
这里我的安装目录是D: \ OpenCV,所以是:
然后引入dll,我是64位机子,所以是:
好的,下面创建Java项目做Java与OpenCV的人脸识别。
<强>人脸识别强>
创建项目后首先右击选择<强>属性强>
然后引入即可。
引入<强> haarcascade_frontalface_alt。xml 强>这个xml文件:
我的pom文件如下:
, & lt; dependencies> ,& lt; dependency> ,& lt; groupId> org.springframework.boot ,& lt; artifactId> spring-boot-starter-web ,& lt;/dependency> , , ,& lt; dependency> ,& lt; groupId> org.bytedeco.javacpp-presets ,& lt; artifactId> ffmpeg ,& lt; version> 3.1.2-1.2 ,& lt;/dependency> ,& lt; dependency> ,& lt; groupId> org.bytedeco ,& lt; artifactId> javacv ,& lt; version> 1.4.1 ,& lt;/dependency> ,& lt; !——, https://mvnrepository.com/artifact/org.bytedeco.javacpp-presets/ffmpeg-platform ——比; ,& lt; dependency> ,& lt; groupId> org.bytedeco.javacpp-presets ,& lt; artifactId> ffmpeg-platform ,& lt; version> 3.4.2-1.4.1 ,& lt;/dependency> ,& lt; dependency> ,& lt; groupId> commons-io ,& lt; artifactId> commons-io ,& lt; version> 2.4 & lt;/version> ,& lt;/dependency> , , ,& lt; !——,视频摄像头,——比; ,& lt; !——, https://mvnrepository.com/artifact/org.bytedeco/javacv-platform ——比; ,& lt; dependency> ,& lt; groupId> org.bytedeco ,& lt; artifactId> javacv-platform ,& lt; version> 1.4.1 ,& lt;/dependency> ,& lt; !——, https://mvnrepository.com/artifact/org.bytedeco.javacpp-presets/opencv-platform ——比; ,& lt; dependency> ,& lt; groupId> org.bytedeco.javacpp-presets ,& lt; artifactId> opencv-platform ,& lt; version> 3.4.1-1.4.1 ,& lt;/dependency> , ,& lt; dependency> ,& lt; groupId> junit ,& lt; artifactId> junit ,& lt; version> 4.12 & lt;/version> ,& lt; scope> test ,& lt;/dependency> , ,& lt; dependency> ,& lt; groupId> org.springframework.boot ,& lt; artifactId> spring-boot-starter-test ,& lt; scope> test ,& lt;/dependency> ,& lt;/dependencies>
修改我的端口号:
服务器。端口=8889
最后代码如下:
import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; , import javax.servlet.http.HttpServletResponse; , import org.apache.commons.io.FileUtils; 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.core.Size; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; import org.opencv.objdetect.CascadeClassifier; import org.springframework.beans.factory.annotation.Value; import org.springframework.core.io.Resource; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullOpenCV Java如何实现人脸识别和裁剪功能