一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java+opencv3.2.0實現人臉檢測功能

Java+opencv3.2.0實現人臉檢測功能

2021-04-02 16:05帥氣的貓爪 Java教程

這篇文章主要為大家詳細介紹了Java+opencv3.2.0實現人臉檢測功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下

說到人臉檢測,首先要了解haar特征分類器。haar特征分類器說白了就是一個個的xml文件,不同的xml里面描述人體各個部位的特征值,比如人臉、眼睛等等。opencv3.2.0中提供了如下特征文件:

haarcascade_eye.xml
haarcascade_eye_tree_eyeglasses.xml
haarcascade_frontalcatface.xml
haarcascade_frontalcatface_extended.xml
haarcascade_frontalface_alt.xml
haarcascade_frontalface_alt_tree.xml
haarcascade_frontalface_alt2.xml
haarcascade_frontalface_default.xml
haarcascade_fullbody.xml
haarcascade_lefteye_2splits.xml
haarcascade_licence_plate_rus_16stages.xml
haarcascade_lowerbody.xml
haarcascade_profileface.xml
haarcascade_righteye_2splits.xml
haarcascade_russian_plate_number.xml
haarcascade_smile.xml
haarcascade_upperbody.xml

通過加載不同的特征文件,就能達到相應的檢測效果。

opencv3.2.0中detectmultiscale函數參數說明:
detectmultiscale(mat image, matofrect objects, double scalefactor, int minneighbors, int flags, size minsize, size maxsize)
image:待檢測圖片,一般為灰度圖(提高效率)
objects:被檢測物體的矩形框向量組
scalefactor:前后兩次相繼的掃描中,搜索窗口的比例系數。默認為1.1即每次搜索窗口依次擴大10%
minneighbors:構成檢測目標的相鄰矩形的最小個數(默認為3個)
flags:要么使用默認值,要么使用cv_haar_do_canny_pruning,如果設置為cv_haar_do_canny_pruning,那么函數將會使用canny邊緣檢測來排除邊緣過多或過少的區域,因此這些區域通常不會是人臉所在區域
minsize:得到的目標區域的最小范圍
maxsize:得到的目標區域的最大范圍

人臉檢測示例代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
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.imgcodecs.imgcodecs;
import org.opencv.imgproc.imgproc;
import org.opencv.objdetect.cascadeclassifier;
public class facedetect
{
 
  public static void main(string[] args)
  {
    // todo auto-generated method stub
    system.loadlibrary(core.native_library_name);
    system.out.println("\nrunning facedetector");
    cascadeclassifier facedetector = new cascadeclassifier();
    facedetector.load(
        "c:\\program files\\opencv\\sources\\data\\haarcascades\\haarcascade_frontalface_alt.xml");
    mat image = imgcodecs.imread("f:\\1114.jpg");
 
    matofrect facedetections = new matofrect();
    facedetector.detectmultiscale(image, facedetections);
    system.out.println(string.format("detected %s faces", facedetections.toarray().length));
    for (rect rect : facedetections.toarray())
    {
      imgproc.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 = "f:\\ouput.jpg";
    imgcodecs.imwrite(filename, image);
  }
}

源圖像與結果圖:

Java+opencv3.2.0實現人臉檢測功能

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/m1109048058/article/details/78192269

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品国产一区二区在线观看 | 精品亚洲国产一区二区 | 国产成人综合手机在线播放 | 成人看的羞羞视频免费观看 | 羞羞答答影院在线 | 暖暖中国免费观看高清完整版 | 亚洲 色 欧美 爱 视频 日韩 | 四虎国产精品免费入口 | 国产精品合集久久久久青苹果 | 亚裔aⅴ艳星katsuni | 精品一区二区高清在线观看 | 免费a视频在线观看 | 欧美男男gaygaysxxx | 国产精品国产高清国产专区 | 日本精品久久久久久久久免费 | 91短视频社区在线观看 | 耽美肉文高h| www.羞羞答答 | 亚洲天堂.com | 草莓香蕉绿巨人丝瓜榴莲18 | 国产区一二三四区2021 | 校花小雪灌满了男人们的浓浆 | 国产精品一区二区三区免费 | 夫承子液by免费阅读 | 闺蜜的样子小说安沁在线阅读 | 精品国产乱码久久久久久人妻 | 亚洲免费黄色网 | 奇米影视小说 | 激情视频在线播放 | 1769亚洲资源站365在线 | 精品小视频在线观看 | 国产馆在线观看免费的 | 小伙无套内射老女人 | 无人区乱码1区2区3区网站 | 欧美日韩一本 | 51国产| 2021日本三级理论影院 | 99久久国产综合精品女小说 | 91久久99热青草国产 | 给我免费观看的视频在线播放 | 香蕉免费高清完整 |