Package org.opencv.objdetect
Class FaceDetectorYN
- java.lang.Object
-
- org.opencv.objdetect.FaceDetectorYN
-
public class FaceDetectorYN extends java.lang.Object
DNN-based face detector model download link: https://github.com/opencv/opencv_zoo/tree/master/models/face_detection_yunet
-
-
Field Summary
Fields Modifier and Type Field Description protected long
nativeObj
-
Constructor Summary
Constructors Modifier Constructor Description protected
FaceDetectorYN(long addr)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static FaceDetectorYN
__fromPtr__(long addr)
static FaceDetectorYN
create(java.lang.String model, java.lang.String config, Size input_size)
Creates an instance of face detector class with given parametersstatic FaceDetectorYN
create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold)
Creates an instance of face detector class with given parametersstatic FaceDetectorYN
create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold)
Creates an instance of face detector class with given parametersstatic FaceDetectorYN
create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold, int top_k)
Creates an instance of face detector class with given parametersstatic FaceDetectorYN
create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id)
Creates an instance of face detector class with given parametersstatic FaceDetectorYN
create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id, int target_id)
Creates an instance of face detector class with given parametersstatic FaceDetectorYN
create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size)
static FaceDetectorYN
create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold)
static FaceDetectorYN
create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold)
static FaceDetectorYN
create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold, int top_k)
static FaceDetectorYN
create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id)
static FaceDetectorYN
create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id, int target_id)
int
detect(Mat image, Mat faces)
Detects faces in the input image.protected void
finalize()
Size
getInputSize()
long
getNativeObjAddr()
float
getNMSThreshold()
float
getScoreThreshold()
int
getTopK()
void
setInputSize(Size input_size)
Set the size for the network input, which overwrites the input size of creating model.void
setNMSThreshold(float nms_threshold)
Set the Non-maximum-suppression threshold to suppress bounding boxes that have IoU greater than the given valuevoid
setScoreThreshold(float score_threshold)
Set the score threshold to filter out bounding boxes of score less than the given valuevoid
setTopK(int top_k)
Set the number of bounding boxes preserved before NMS
-
-
-
Method Detail
-
getNativeObjAddr
public long getNativeObjAddr()
-
__fromPtr__
public static FaceDetectorYN __fromPtr__(long addr)
-
setInputSize
public void setInputSize(Size input_size)
Set the size for the network input, which overwrites the input size of creating model. Call this method when the size of input image does not match the input size when creating model- Parameters:
input_size
- the size of the input image
-
getInputSize
public Size getInputSize()
-
setScoreThreshold
public void setScoreThreshold(float score_threshold)
Set the score threshold to filter out bounding boxes of score less than the given value- Parameters:
score_threshold
- threshold for filtering out bounding boxes
-
getScoreThreshold
public float getScoreThreshold()
-
setNMSThreshold
public void setNMSThreshold(float nms_threshold)
Set the Non-maximum-suppression threshold to suppress bounding boxes that have IoU greater than the given value- Parameters:
nms_threshold
- threshold for NMS operation
-
getNMSThreshold
public float getNMSThreshold()
-
setTopK
public void setTopK(int top_k)
Set the number of bounding boxes preserved before NMS- Parameters:
top_k
- the number of bounding boxes to preserve from top rank based on score
-
getTopK
public int getTopK()
-
detect
public int detect(Mat image, Mat faces)
Detects faces in the input image. Following is an example output. ![image](pics/lena-face-detection.jpg)- Parameters:
image
- an image to detectfaces
- detection results stored in a 2D cv::Mat of shape [num_faces, 15] - 0-1: x, y of bbox top left corner - 2-3: width, height of bbox - 4-5: x, y of right eye (blue point in the example image) - 6-7: x, y of left eye (red point in the example image) - 8-9: x, y of nose tip (green point in the example image) - 10-11: x, y of right corner of mouth (pink point in the example image) - 12-13: x, y of left corner of mouth (yellow point in the example image) - 14: face score- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id, int target_id)
Creates an instance of face detector class with given parameters- Parameters:
model
- the path to the requested modelconfig
- the path to the config file for compability, which is not requested for ONNX modelsinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given valuetop_k
- keep top K bboxes before NMSbackend_id
- the id of backendtarget_id
- the id of target device- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id)
Creates an instance of face detector class with given parameters- Parameters:
model
- the path to the requested modelconfig
- the path to the config file for compability, which is not requested for ONNX modelsinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given valuetop_k
- keep top K bboxes before NMSbackend_id
- the id of backend- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold, int top_k)
Creates an instance of face detector class with given parameters- Parameters:
model
- the path to the requested modelconfig
- the path to the config file for compability, which is not requested for ONNX modelsinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given valuetop_k
- keep top K bboxes before NMS- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold, float nms_threshold)
Creates an instance of face detector class with given parameters- Parameters:
model
- the path to the requested modelconfig
- the path to the config file for compability, which is not requested for ONNX modelsinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given value- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String model, java.lang.String config, Size input_size, float score_threshold)
Creates an instance of face detector class with given parameters- Parameters:
model
- the path to the requested modelconfig
- the path to the config file for compability, which is not requested for ONNX modelsinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given value- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String model, java.lang.String config, Size input_size)
Creates an instance of face detector class with given parameters- Parameters:
model
- the path to the requested modelconfig
- the path to the config file for compability, which is not requested for ONNX modelsinput_size
- the size of the input image- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id, int target_id)
- Parameters:
framework
- Name of origin frameworkbufferModel
- A buffer with a content of binary file with weightsbufferConfig
- A buffer with a content of text file contains network configurationinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given valuetop_k
- keep top K bboxes before NMSbackend_id
- the id of backendtarget_id
- the id of target device- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold, int top_k, int backend_id)
- Parameters:
framework
- Name of origin frameworkbufferModel
- A buffer with a content of binary file with weightsbufferConfig
- A buffer with a content of text file contains network configurationinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given valuetop_k
- keep top K bboxes before NMSbackend_id
- the id of backend- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold, int top_k)
- Parameters:
framework
- Name of origin frameworkbufferModel
- A buffer with a content of binary file with weightsbufferConfig
- A buffer with a content of text file contains network configurationinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given valuetop_k
- keep top K bboxes before NMS- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold, float nms_threshold)
- Parameters:
framework
- Name of origin frameworkbufferModel
- A buffer with a content of binary file with weightsbufferConfig
- A buffer with a content of text file contains network configurationinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given valuenms_threshold
- the threshold to suppress bounding boxes of IoU bigger than the given value- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size, float score_threshold)
- Parameters:
framework
- Name of origin frameworkbufferModel
- A buffer with a content of binary file with weightsbufferConfig
- A buffer with a content of text file contains network configurationinput_size
- the size of the input imagescore_threshold
- the threshold to filter out bounding boxes of score smaller than the given value- Returns:
- automatically generated
-
create
public static FaceDetectorYN create(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig, Size input_size)
- Parameters:
framework
- Name of origin frameworkbufferModel
- A buffer with a content of binary file with weightsbufferConfig
- A buffer with a content of text file contains network configurationinput_size
- the size of the input image- Returns:
- automatically generated
-
finalize
protected void finalize() throws java.lang.Throwable
- Overrides:
finalize
in classjava.lang.Object
- Throws:
java.lang.Throwable
-
-