# FaceMeshDetection

public class **FaceMeshDetection** extends [Object](https://developer.android.com/reference/java/lang/Object.html)  
Entry point to get a `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
for finding `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMesh`s in a
supplied image.

A `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
is created via `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetection#getClient(com.google.mlkit.vision.facemesh.FaceMeshDetectorOptions)` or `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetection#getClient()`
if you wish to use the default options. For example, the code below creates a `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
with default options.

    FaceMeshDetector faceMeshDetector = FaceMeshDetection.getClient();
     
To perform face mesh detection in an image, you first need to create an instance of `https://developers.google.com/android/reference/com/google/mlkit/vision/common/InputImage` from a `https://developer.android.com/reference/android/graphics/Bitmap.html`, `https://developer.android.com/reference/java/nio/ByteBuffer.html`, `https://developer.android.com/reference/android/media/Image.html` etc. See `https://developers.google.com/android/reference/com/google/mlkit/vision/common/InputImage` documentation for more details. For example, the code below creates an `https://developers.google.com/android/reference/com/google/mlkit/vision/common/InputImage` from a `https://developer.android.com/reference/android/graphics/Bitmap.html`.

    InputImage image = InputImage.fromBitmap(bitmap, rotationDegrees);
     
Then the code below can detect face mesh in the supplied `https://developers.google.com/android/reference/com/google/mlkit/vision/common/InputImage`.

    Task<List<FaceMesh>> task = faceMeshDetector.process(image);
     task.addOnSuccessListener(...).addOnFailureListener(...);
     
### Public Method Summary

|---|---|
| static [FaceMeshDetector](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector) | [getClient](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetection#getClient())() Gets an instance of `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector` that detects face mesh in a supplied image with a default `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetectorOptions`. |
| static [FaceMeshDetector](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector) | [getClient](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetection#getClient(com.google.mlkit.vision.facemesh.FaceMeshDetectorOptions))([FaceMeshDetectorOptions](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetectorOptions) options) Gets a new instance of `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector` that detects face mesh in a supplied image. |

### Inherited Method Summary

From class java.lang.Object

|---|---|
| [Object](https://developer.android.com/reference/java/lang/Object.html) | clone() |
| boolean | equals([Object](https://developer.android.com/reference/java/lang/Object.html) arg0) |
| void | finalize() |
| final [Class](https://developer.android.com/reference/java/lang/Class.html)\<?\> | getClass() |
| int | hashCode() |
| final void | notify() |
| final void | notifyAll() |
| [String](https://developer.android.com/reference/java/lang/String.html) | toString() |
| final void | wait(long arg0, int arg1) |
| final void | wait(long arg0) |
| final void | wait() |

## Public Methods

#### public static [FaceMeshDetector](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector)
**getClient** ()

Gets an instance of `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
that detects face mesh in a supplied image with a default `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetectorOptions`.

To release the resources associated with a `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`,
you need to ensure that `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector#close()`
is called on the resulting `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
object once it will no longer be used.

#### public static [FaceMeshDetector](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector)
**getClient** ([FaceMeshDetectorOptions](https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetectorOptions) options)

Gets a new instance of `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
that detects face mesh in a supplied image.

To release the resources associated with a `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`,
you need to ensure that `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector#close()`
is called on the resulting `https://developers.google.com/android/reference/com/google/mlkit/vision/facemesh/FaceMeshDetector`
object once it will no longer be used.

##### Parameters

| options | the options for the face mesh detector |
|---|---|