react-native-vision-camera-face-detector
Version:
Frame Processor Plugin to detect faces using MLKit Vision Face Detector for React Native Vision Camera!
53 lines (51 loc) • 1.08 kB
JavaScript
;
import { Image, NativeModules } from 'react-native';
/**
* Resolves input image
*
* @param {InputImage} image Image path
* @returns {string} Resolved image
*/
function resolveUri(image) {
const uri = (() => {
switch (typeof image) {
case 'number':
{
const source = Image.resolveAssetSource(image);
return source?.uri;
}
case 'string':
{
return image;
}
case 'object':
{
return image?.uri;
}
default:
{
return undefined;
}
}
})();
if (!uri) throw new Error('Unable to resolve image');
return uri;
}
/**
* Detect faces in a static image
*
* @param {InputImage} image Image path
* @returns {Promise<Face[]>} List of detected faces
*/
export async function detectFaces({
image,
options
}) {
const uri = resolveUri(image);
// @ts-ignore
const {
ImageFaceDetector
} = NativeModules;
return await ImageFaceDetector?.detectFaces(uri, options);
}
//# sourceMappingURL=ImageFaceDetector.js.map