opencv3_java 图像检测人脸图像CascadeClassifier DetectObjects lbpcascade_frontalface

原创 2017年05月31日 21:29:35

图像检测人脸图像CascadeClassifier DetectObjects lbpcascade_frontalface


package opencv_java_demo;

import org.opencv.core.*;
import org.opencv.imgcodecs.*;
import org.opencv.objdetect.*;
import org.opencv.imgproc.*;

public class DetectObjects {
	private static Mat dobj(Mat src){
		Mat dst=src.clone();
		
		CascadeClassifier objDetector=new CascadeClassifier("./data/lbpcascades/lbpcascade_frontalface.xml");
		
		MatOfRect objDetections=new MatOfRect();
		
		objDetector.detectMultiScale(dst, objDetections);
		
		if(objDetections.toArray().length<=0){
			return src;
		}
		for(Rect rect:objDetections.toArray()){
			Imgproc.rectangle(dst, new Point(rect.x,rect.y), new Point(rect.x+rect.width,rect.y+rect.width), new Scalar(0,0,255),2);
		}
		return dst;
	}

	public static void main(String[] args) {
		try{
			System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
			
			Mat src=Imgcodecs.imread("./images/lenna.jpg");
			if(src.empty()){
				throw new Exception("no file");
			}
			Mat dst=dobj(src);
			Imgcodecs.imwrite("./images/dobj.jpg", dst);
		}catch(Exception e){
			System.out.println("例外:"+e);
		}
	}
}




版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

opencv学习之(三)-LBP算法的研究及其实现

一,原始LBP算法 LBP的基本思想是对图像的像素和它局部周围像素进行对比后的结果进行求和。把这个像素作为中心,对相邻像素进行阈值比较。如果中心像素的亮度大于等于他的相邻像素,把他标记为1,否则标记...

人脸识别特征提取(LBP)及其opencv实现

LBP是一种简单,有效的纹理分类的特征提取算法。LBP算子是由Ojala等人于1996年提出的,主要的论文是"Multiresolution gray-scale and rotation invar...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

【CascadeClassifier】detectMultiScale函数学习

CascadeClassifier检测的基本原理:xml中存放的是训练后的特征池,特征size大小根据训练时的参数而定,检测的时候可以简单理解为就是将每个固定size特征(检测窗口)与输入图像的同样大...

VS2010及各版本的VS快捷键操作

Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 ...

opencv3_java 摄像头图形图像检测DetectObjectsCamera videoioVideoCapture

摄像头图形图像检测DetectObjectsCamera videoioVideoCapture package opencv_java_demo; import javax.swing.*; ...

opencv3_java 修改图像大小Resize Imgproc.resize

修改图像大小Resize Imgproc.resize

opencv3_java 图像的旋转Rotate getRotationMatrix2D

图像的旋转Rotate getRotationMatrix2D package opencv_java_demo; import org.opencv.core.*; import org.op...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)