From a383608b2fc5fc96ba8d8e40a0288ec1fee39640 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Sun, 30 Aug 2020 18:44:59 -0400 Subject: [PATCH] change build process --- build/NeuralNetwork.d.ts | 45 ----- build/NeuralNetwork.d.ts.map | 1 - build/NeuralNetwork.js | 114 ----------- build/NeuralNetwork.js.map | 1 - build/ageGenderNet/AgeGenderNet.d.ts | 30 --- build/ageGenderNet/AgeGenderNet.d.ts.map | 1 - build/ageGenderNet/AgeGenderNet.js | 95 --------- build/ageGenderNet/AgeGenderNet.js.map | 1 - build/ageGenderNet/extractParams.d.ts | 7 - build/ageGenderNet/extractParams.d.ts.map | 1 - build/ageGenderNet/extractParams.js | 16 -- build/ageGenderNet/extractParams.js.map | 1 - .../extractParamsFromWeigthMap.d.ts | 8 - .../extractParamsFromWeigthMap.d.ts.map | 1 - .../extractParamsFromWeigthMap.js | 19 -- .../extractParamsFromWeigthMap.js.map | 1 - build/ageGenderNet/index.d.ts | 3 - build/ageGenderNet/index.d.ts.map | 1 - build/ageGenderNet/index.js | 3 - build/ageGenderNet/index.js.map | 1 - build/ageGenderNet/types.d.ts | 22 --- build/ageGenderNet/types.d.ts.map | 1 - build/ageGenderNet/types.js | 6 - build/ageGenderNet/types.js.map | 1 - build/classes/BoundingBox.d.ts | 11 -- build/classes/BoundingBox.d.ts.map | 1 - build/classes/BoundingBox.js | 7 - build/classes/BoundingBox.js.map | 1 - build/classes/Box.d.ts | 47 ----- build/classes/Box.d.ts.map | 1 - build/classes/Box.js | 140 ------------- build/classes/Box.js.map | 1 - build/classes/Dimensions.d.ts | 13 -- build/classes/Dimensions.d.ts.map | 1 - build/classes/Dimensions.js | 16 -- build/classes/Dimensions.js.map | 1 - build/classes/FaceDetection.d.ts | 13 -- build/classes/FaceDetection.d.ts.map | 1 - build/classes/FaceDetection.js | 11 -- build/classes/FaceDetection.js.map | 1 - build/classes/FaceLandmarks.d.ts | 43 ---- build/classes/FaceLandmarks.d.ts.map | 1 - build/classes/FaceLandmarks.js | 79 -------- build/classes/FaceLandmarks.js.map | 1 - build/classes/FaceLandmarks5.d.ts | 6 - build/classes/FaceLandmarks5.d.ts.map | 1 - build/classes/FaceLandmarks5.js | 13 -- build/classes/FaceLandmarks5.js.map | 1 - build/classes/FaceLandmarks68.d.ts | 13 -- build/classes/FaceLandmarks68.d.ts.map | 1 - build/classes/FaceLandmarks68.js | 33 ---- build/classes/FaceLandmarks68.js.map | 1 - build/classes/FaceMatch.d.ts | 13 -- build/classes/FaceMatch.d.ts.map | 1 - build/classes/FaceMatch.js | 13 -- build/classes/FaceMatch.js.map | 1 - build/classes/LabeledBox.d.ts | 10 - build/classes/LabeledBox.d.ts.map | 1 - build/classes/LabeledBox.js | 16 -- build/classes/LabeledBox.js.map | 1 - build/classes/LabeledFaceDescriptors.d.ts | 10 - build/classes/LabeledFaceDescriptors.d.ts.map | 1 - build/classes/LabeledFaceDescriptors.js | 27 --- build/classes/LabeledFaceDescriptors.js.map | 1 - build/classes/ObjectDetection.d.ts | 21 -- build/classes/ObjectDetection.d.ts.map | 1 - build/classes/ObjectDetection.js | 23 --- build/classes/ObjectDetection.js.map | 1 - build/classes/Point.d.ts | 19 -- build/classes/Point.d.ts.map | 1 - build/classes/Point.js | 30 --- build/classes/Point.js.map | 1 - build/classes/PredictedBox.d.ts | 12 -- build/classes/PredictedBox.d.ts.map | 1 - build/classes/PredictedBox.js | 19 -- build/classes/PredictedBox.js.map | 1 - build/classes/Rect.d.ts | 11 -- build/classes/Rect.d.ts.map | 1 - build/classes/Rect.js | 7 - build/classes/Rect.js.map | 1 - build/classes/index.d.ts | 15 -- build/classes/index.d.ts.map | 1 - build/classes/index.js | 15 -- build/classes/index.js.map | 1 - build/common/convLayer.d.ts | 4 - build/common/convLayer.d.ts.map | 1 - build/common/convLayer.js | 8 - build/common/convLayer.js.map | 1 - build/common/depthwiseSeparableConv.d.ts | 4 - build/common/depthwiseSeparableConv.d.ts.map | 1 - build/common/depthwiseSeparableConv.js | 9 - build/common/depthwiseSeparableConv.js.map | 1 - build/common/disposeUnusedWeightTensors.d.ts | 3 - .../disposeUnusedWeightTensors.d.ts.map | 1 - build/common/disposeUnusedWeightTensors.js | 8 - .../common/disposeUnusedWeightTensors.js.map | 1 - build/common/extractConvParamsFactory.d.ts | 3 - .../common/extractConvParamsFactory.d.ts.map | 1 - build/common/extractConvParamsFactory.js | 10 - build/common/extractConvParamsFactory.js.map | 1 - build/common/extractFCParamsFactory.d.ts | 3 - build/common/extractFCParamsFactory.d.ts.map | 1 - build/common/extractFCParamsFactory.js | 13 -- build/common/extractFCParamsFactory.js.map | 1 - .../extractSeparableConvParamsFactory.d.ts | 4 - ...extractSeparableConvParamsFactory.d.ts.map | 1 - .../extractSeparableConvParamsFactory.js | 20 -- .../extractSeparableConvParamsFactory.js.map | 1 - build/common/extractWeightEntryFactory.d.ts | 3 - .../common/extractWeightEntryFactory.d.ts.map | 1 - build/common/extractWeightEntryFactory.js | 12 -- build/common/extractWeightEntryFactory.js.map | 1 - build/common/extractWeightsFactory.d.ts | 5 - build/common/extractWeightsFactory.d.ts.map | 1 - build/common/extractWeightsFactory.js | 16 -- build/common/extractWeightsFactory.js.map | 1 - build/common/fullyConnectedLayer.d.ts | 4 - build/common/fullyConnectedLayer.d.ts.map | 1 - build/common/fullyConnectedLayer.js | 5 - build/common/fullyConnectedLayer.js.map | 1 - build/common/getModelUris.d.ts | 5 - build/common/getModelUris.d.ts.map | 1 - build/common/getModelUris.js | 28 --- build/common/getModelUris.js.map | 1 - build/common/index.d.ts | 11 -- build/common/index.d.ts.map | 1 - build/common/index.js | 11 -- build/common/index.js.map | 1 - build/common/loadConvParamsFactory.d.ts | 3 - build/common/loadConvParamsFactory.d.ts.map | 1 - build/common/loadConvParamsFactory.js | 8 - build/common/loadConvParamsFactory.js.map | 1 - build/common/types.d.ts | 21 -- build/common/types.d.ts.map | 1 - build/common/types.js | 8 - build/common/types.js.map | 1 - build/dom/NetInput.d.ts | 35 ---- build/dom/NetInput.d.ts.map | 1 - build/dom/NetInput.js | 113 ----------- build/dom/NetInput.js.map | 1 - build/dom/awaitMediaLoaded.d.ts | 2 - build/dom/awaitMediaLoaded.d.ts.map | 1 - build/dom/awaitMediaLoaded.js | 26 --- build/dom/awaitMediaLoaded.js.map | 1 - build/dom/bufferToImage.d.ts | 2 - build/dom/bufferToImage.d.ts.map | 1 - build/dom/bufferToImage.js | 21 -- build/dom/bufferToImage.js.map | 1 - build/dom/createCanvas.d.ts | 4 - build/dom/createCanvas.d.ts.map | 1 - build/dom/createCanvas.js | 27 --- build/dom/createCanvas.js.map | 1 - build/dom/extractFaceTensors.d.ts | 15 -- build/dom/extractFaceTensors.d.ts.map | 1 - build/dom/extractFaceTensors.js | 31 --- build/dom/extractFaceTensors.js.map | 1 - build/dom/extractFaces.d.ts | 12 -- build/dom/extractFaces.d.ts.map | 1 - build/dom/extractFaces.js | 39 ---- build/dom/extractFaces.js.map | 1 - build/dom/fetchImage.d.ts | 2 - build/dom/fetchImage.d.ts.map | 1 - build/dom/fetchImage.js | 11 -- build/dom/fetchImage.js.map | 1 - build/dom/fetchJson.d.ts | 2 - build/dom/fetchJson.d.ts.map | 1 - build/dom/fetchJson.js | 5 - build/dom/fetchJson.js.map | 1 - build/dom/fetchNetWeights.d.ts | 2 - build/dom/fetchNetWeights.d.ts.map | 1 - build/dom/fetchNetWeights.js | 5 - build/dom/fetchNetWeights.js.map | 1 - build/dom/fetchOrThrow.d.ts | 2 - build/dom/fetchOrThrow.d.ts.map | 1 - build/dom/fetchOrThrow.js | 10 - build/dom/fetchOrThrow.js.map | 1 - build/dom/getContext2dOrThrow.d.ts | 2 - build/dom/getContext2dOrThrow.d.ts.map | 1 - build/dom/getContext2dOrThrow.js | 18 -- build/dom/getContext2dOrThrow.js.map | 1 - build/dom/getMediaDimensions.d.ts | 3 - build/dom/getMediaDimensions.d.ts.map | 1 - build/dom/getMediaDimensions.js | 13 -- build/dom/getMediaDimensions.js.map | 1 - build/dom/imageTensorToCanvas.d.ts | 3 - build/dom/imageTensorToCanvas.d.ts.map | 1 - build/dom/imageTensorToCanvas.js | 12 -- build/dom/imageTensorToCanvas.js.map | 1 - build/dom/imageToSquare.d.ts | 2 - build/dom/imageToSquare.d.ts.map | 1 - build/dom/imageToSquare.js | 22 --- build/dom/imageToSquare.js.map | 1 - build/dom/index.d.ts | 22 --- build/dom/index.d.ts.map | 1 - build/dom/index.js | 22 --- build/dom/index.js.map | 1 - build/dom/isMediaElement.d.ts | 2 - build/dom/isMediaElement.d.ts.map | 1 - build/dom/isMediaElement.js | 8 - build/dom/isMediaElement.js.map | 1 - build/dom/isMediaLoaded.d.ts | 2 - build/dom/isMediaLoaded.d.ts.map | 1 - build/dom/isMediaLoaded.js | 7 - build/dom/isMediaLoaded.js.map | 1 - build/dom/loadWeightMap.d.ts | 3 - build/dom/loadWeightMap.d.ts.map | 1 - build/dom/loadWeightMap.js | 10 - build/dom/loadWeightMap.js.map | 1 - build/dom/matchDimensions.d.ts | 6 - build/dom/matchDimensions.d.ts.map | 1 - build/dom/matchDimensions.js | 10 - build/dom/matchDimensions.js.map | 1 - build/dom/resolveInput.d.ts | 2 - build/dom/resolveInput.d.ts.map | 1 - build/dom/resolveInput.js | 8 - build/dom/resolveInput.js.map | 1 - build/dom/toNetInput.d.ts | 11 -- build/dom/toNetInput.d.ts.map | 1 - build/dom/toNetInput.js | 44 ----- build/dom/toNetInput.js.map | 1 - build/dom/types.d.ts | 7 - build/dom/types.d.ts.map | 1 - build/dom/types.js | 2 - build/dom/types.js.map | 1 - build/draw/DrawBox.d.ts | 22 --- build/draw/DrawBox.d.ts.map | 1 - build/draw/DrawBox.js | 35 ---- build/draw/DrawBox.js.map | 1 - build/draw/DrawFaceLandmarks.d.ts | 29 --- build/draw/DrawFaceLandmarks.d.ts.map | 1 - build/draw/DrawFaceLandmarks.js | 60 ------ build/draw/DrawFaceLandmarks.js.map | 1 - build/draw/DrawTextField.d.ts | 35 ---- build/draw/DrawTextField.d.ts.map | 1 - build/draw/DrawTextField.js | 72 ------- build/draw/DrawTextField.js.map | 1 - build/draw/drawContour.d.ts | 3 - build/draw/drawContour.d.ts.map | 1 - build/draw/drawContour.js | 19 -- build/draw/drawContour.js.map | 1 - build/draw/drawDetections.d.ts | 6 - build/draw/drawDetections.d.ts.map | 1 - build/draw/drawDetections.js | 19 -- build/draw/drawDetections.js.map | 1 - build/draw/drawFaceExpressions.d.ts | 6 - build/draw/drawFaceExpressions.d.ts.map | 1 - build/draw/drawFaceExpressions.js | 25 --- build/draw/drawFaceExpressions.js.map | 1 - build/draw/index.d.ts | 7 - build/draw/index.d.ts.map | 1 - build/draw/index.js | 7 - build/draw/index.js.map | 1 - build/env/createBrowserEnv.d.ts | 3 - build/env/createBrowserEnv.d.ts.map | 1 - build/env/createBrowserEnv.js | 20 -- build/env/createBrowserEnv.js.map | 1 - build/env/createFileSystem.d.ts | 3 - build/env/createFileSystem.d.ts.map | 1 - build/env/createFileSystem.js | 26 --- build/env/createFileSystem.js.map | 1 - build/env/createNodejsEnv.d.ts | 3 - build/env/createNodejsEnv.d.ts.map | 1 - build/env/createNodejsEnv.js | 38 ---- build/env/createNodejsEnv.js.map | 1 - build/env/index.d.ts | 23 --- build/env/index.d.ts.map | 1 - build/env/index.js | 56 ------ build/env/index.js.map | 1 - build/env/isBrowser.d.ts | 2 - build/env/isBrowser.d.ts.map | 1 - build/env/isBrowser.js | 10 - build/env/isBrowser.js.map | 1 - build/env/isNodejs.d.ts | 2 - build/env/isNodejs.d.ts.map | 1 - build/env/isNodejs.js | 9 - build/env/isNodejs.js.map | 1 - build/env/types.d.ts | 15 -- build/env/types.d.ts.map | 1 - build/env/types.js | 2 - build/env/types.js.map | 1 - build/euclideanDistance.d.ts | 2 - build/euclideanDistance.d.ts.map | 1 - build/euclideanDistance.js | 10 - build/euclideanDistance.js.map | 1 - .../faceExpressionNet/FaceExpressionNet.d.ts | 16 -- .../FaceExpressionNet.d.ts.map | 1 - build/faceExpressionNet/FaceExpressionNet.js | 41 ---- .../FaceExpressionNet.js.map | 1 - build/faceExpressionNet/FaceExpressions.d.ts | 16 -- .../FaceExpressions.d.ts.map | 1 - build/faceExpressionNet/FaceExpressions.js | 17 -- .../faceExpressionNet/FaceExpressions.js.map | 1 - build/faceExpressionNet/index.d.ts | 3 - build/faceExpressionNet/index.d.ts.map | 1 - build/faceExpressionNet/index.js | 3 - build/faceExpressionNet/index.js.map | 1 - .../FaceFeatureExtractor.d.ts | 19 -- .../FaceFeatureExtractor.d.ts.map | 1 - .../FaceFeatureExtractor.js | 42 ---- .../FaceFeatureExtractor.js.map | 1 - .../TinyFaceFeatureExtractor.d.ts | 19 -- .../TinyFaceFeatureExtractor.d.ts.map | 1 - .../TinyFaceFeatureExtractor.js | 41 ---- .../TinyFaceFeatureExtractor.js.map | 1 - build/faceFeatureExtractor/denseBlock.d.ts | 5 - .../faceFeatureExtractor/denseBlock.d.ts.map | 1 - build/faceFeatureExtractor/denseBlock.js | 27 --- build/faceFeatureExtractor/denseBlock.js.map | 1 - build/faceFeatureExtractor/extractParams.d.ts | 7 - .../extractParams.d.ts.map | 1 - build/faceFeatureExtractor/extractParams.js | 19 -- .../faceFeatureExtractor/extractParams.js.map | 1 - .../extractParamsFromWeigthMap.d.ts | 8 - .../extractParamsFromWeigthMap.d.ts.map | 1 - .../extractParamsFromWeigthMap.js | 15 -- .../extractParamsFromWeigthMap.js.map | 1 - .../extractParamsFromWeigthMapTiny.d.ts | 8 - .../extractParamsFromWeigthMapTiny.d.ts.map | 1 - .../extractParamsFromWeigthMapTiny.js | 14 -- .../extractParamsFromWeigthMapTiny.js.map | 1 - .../extractParamsTiny.d.ts | 7 - .../extractParamsTiny.d.ts.map | 1 - .../faceFeatureExtractor/extractParamsTiny.js | 18 -- .../extractParamsTiny.js.map | 1 - .../extractorsFactory.d.ts | 7 - .../extractorsFactory.d.ts.map | 1 - .../faceFeatureExtractor/extractorsFactory.js | 23 --- .../extractorsFactory.js.map | 1 - build/faceFeatureExtractor/index.d.ts | 3 - build/faceFeatureExtractor/index.d.ts.map | 1 - build/faceFeatureExtractor/index.js | 3 - build/faceFeatureExtractor/index.js.map | 1 - .../loadParamsFactory.d.ts | 7 - .../loadParamsFactory.d.ts.map | 1 - .../faceFeatureExtractor/loadParamsFactory.js | 29 --- .../loadParamsFactory.js.map | 1 - build/faceFeatureExtractor/types.d.ts | 41 ---- build/faceFeatureExtractor/types.d.ts.map | 1 - build/faceFeatureExtractor/types.js | 2 - build/faceFeatureExtractor/types.js.map | 1 - build/faceLandmarkNet/FaceLandmark68Net.d.ts | 9 - .../FaceLandmark68Net.d.ts.map | 1 - build/faceLandmarkNet/FaceLandmark68Net.js | 14 -- .../faceLandmarkNet/FaceLandmark68Net.js.map | 1 - .../FaceLandmark68NetBase.d.ts | 14 -- .../FaceLandmark68NetBase.d.ts.map | 1 - .../faceLandmarkNet/FaceLandmark68NetBase.js | 65 ------ .../FaceLandmark68NetBase.js.map | 1 - .../FaceLandmark68TinyNet.d.ts | 9 - .../FaceLandmark68TinyNet.d.ts.map | 1 - .../faceLandmarkNet/FaceLandmark68TinyNet.js | 14 -- .../FaceLandmark68TinyNet.js.map | 1 - build/faceLandmarkNet/index.d.ts | 6 - build/faceLandmarkNet/index.d.ts.map | 1 - build/faceLandmarkNet/index.js | 6 - build/faceLandmarkNet/index.js.map | 1 - build/faceProcessor/FaceProcessor.d.ts | 29 --- build/faceProcessor/FaceProcessor.d.ts.map | 1 - build/faceProcessor/FaceProcessor.js | 55 ------ build/faceProcessor/FaceProcessor.js.map | 1 - build/faceProcessor/extractParams.d.ts | 7 - build/faceProcessor/extractParams.d.ts.map | 1 - build/faceProcessor/extractParams.js | 15 -- build/faceProcessor/extractParams.js.map | 1 - .../extractParamsFromWeigthMap.d.ts | 8 - .../extractParamsFromWeigthMap.d.ts.map | 1 - .../extractParamsFromWeigthMap.js | 16 -- .../extractParamsFromWeigthMap.js.map | 1 - build/faceProcessor/index.d.ts | 2 - build/faceProcessor/index.d.ts.map | 1 - build/faceProcessor/index.js | 2 - build/faceProcessor/index.js.map | 1 - build/faceProcessor/types.d.ts | 5 - build/faceProcessor/types.d.ts.map | 1 - build/faceProcessor/types.js | 2 - build/faceProcessor/types.js.map | 1 - build/faceProcessor/util.d.ts | 6 - build/faceProcessor/util.d.ts.map | 1 - build/faceProcessor/util.js | 10 - build/faceProcessor/util.js.map | 1 - .../FaceRecognitionNet.d.ts | 20 -- .../FaceRecognitionNet.d.ts.map | 1 - .../faceRecognitionNet/FaceRecognitionNet.js | 65 ------ .../FaceRecognitionNet.js.map | 1 - build/faceRecognitionNet/convLayer.d.ts | 6 - build/faceRecognitionNet/convLayer.d.ts.map | 1 - build/faceRecognitionNet/convLayer.js | 19 -- build/faceRecognitionNet/convLayer.js.map | 1 - build/faceRecognitionNet/extractParams.d.ts | 7 - .../faceRecognitionNet/extractParams.d.ts.map | 1 - build/faceRecognitionNet/extractParams.js | 87 -------- build/faceRecognitionNet/extractParams.js.map | 1 - .../extractParamsFromWeigthMap.d.ts | 8 - .../extractParamsFromWeigthMap.d.ts.map | 1 - .../extractParamsFromWeigthMap.js | 71 ------- .../extractParamsFromWeigthMap.js.map | 1 - build/faceRecognitionNet/index.d.ts | 4 - build/faceRecognitionNet/index.d.ts.map | 1 - build/faceRecognitionNet/index.js | 8 - build/faceRecognitionNet/index.js.map | 1 - build/faceRecognitionNet/residualLayer.d.ts | 5 - .../faceRecognitionNet/residualLayer.d.ts.map | 1 - build/faceRecognitionNet/residualLayer.js | 32 --- build/faceRecognitionNet/residualLayer.js.map | 1 - build/faceRecognitionNet/scaleLayer.d.ts | 4 - build/faceRecognitionNet/scaleLayer.d.ts.map | 1 - build/faceRecognitionNet/scaleLayer.js | 5 - build/faceRecognitionNet/scaleLayer.js.map | 1 - build/faceRecognitionNet/types.d.ts | 33 ---- build/faceRecognitionNet/types.d.ts.map | 1 - build/faceRecognitionNet/types.js | 2 - build/faceRecognitionNet/types.js.map | 1 - build/factories/WithAge.d.ts | 6 - build/factories/WithAge.d.ts.map | 1 - build/factories/WithAge.js | 8 - build/factories/WithAge.js.map | 1 - build/factories/WithFaceDescriptor.d.ts | 5 - build/factories/WithFaceDescriptor.d.ts.map | 1 - build/factories/WithFaceDescriptor.js | 5 - build/factories/WithFaceDescriptor.js.map | 1 - build/factories/WithFaceDetection.d.ts | 7 - build/factories/WithFaceDetection.d.ts.map | 1 - build/factories/WithFaceDetection.js | 9 - build/factories/WithFaceDetection.js.map | 1 - build/factories/WithFaceExpressions.d.ts | 7 - build/factories/WithFaceExpressions.d.ts.map | 1 - build/factories/WithFaceExpressions.js | 9 - build/factories/WithFaceExpressions.js.map | 1 - build/factories/WithFaceLandmarks.d.ts | 12 -- build/factories/WithFaceLandmarks.d.ts.map | 1 - build/factories/WithFaceLandmarks.js | 23 --- build/factories/WithFaceLandmarks.js.map | 1 - build/factories/WithGender.d.ts | 8 - build/factories/WithGender.d.ts.map | 1 - build/factories/WithGender.js | 11 -- build/factories/WithGender.js.map | 1 - build/factories/index.d.ts | 7 - build/factories/index.d.ts.map | 1 - build/factories/index.js | 7 - build/factories/index.js.map | 1 - build/globalApi/ComposableTask.d.ts | 5 - build/globalApi/ComposableTask.d.ts.map | 1 - build/globalApi/ComposableTask.js | 9 - build/globalApi/ComposableTask.js.map | 1 - .../ComputeFaceDescriptorsTasks.d.ts | 23 --- .../ComputeFaceDescriptorsTasks.d.ts.map | 1 - .../globalApi/ComputeFaceDescriptorsTasks.js | 43 ---- .../ComputeFaceDescriptorsTasks.js.map | 1 - build/globalApi/DetectFaceLandmarksTasks.d.ts | 30 --- .../DetectFaceLandmarksTasks.d.ts.map | 1 - build/globalApi/DetectFaceLandmarksTasks.js | 67 ------- .../globalApi/DetectFaceLandmarksTasks.js.map | 1 - build/globalApi/DetectFacesTasks.d.ts | 39 ---- build/globalApi/DetectFacesTasks.d.ts.map | 1 - build/globalApi/DetectFacesTasks.js | 75 ------- build/globalApi/DetectFacesTasks.js.map | 1 - build/globalApi/FaceMatcher.d.ts | 16 -- build/globalApi/FaceMatcher.d.ts.map | 1 - build/globalApi/FaceMatcher.js | 57 ------ build/globalApi/FaceMatcher.js.map | 1 - build/globalApi/PredictAgeAndGenderTask.d.ts | 32 --- .../PredictAgeAndGenderTask.d.ts.map | 1 - build/globalApi/PredictAgeAndGenderTask.js | 58 ------ .../globalApi/PredictAgeAndGenderTask.js.map | 1 - .../globalApi/PredictFaceExpressionsTask.d.ts | 31 --- .../PredictFaceExpressionsTask.d.ts.map | 1 - build/globalApi/PredictFaceExpressionsTask.js | 54 ----- .../PredictFaceExpressionsTask.js.map | 1 - build/globalApi/allFaces.d.ts | 7 - build/globalApi/allFaces.d.ts.map | 1 - build/globalApi/allFaces.js | 18 -- build/globalApi/allFaces.js.map | 1 - build/globalApi/detectFaces.d.ts | 6 - build/globalApi/detectFaces.d.ts.map | 1 - build/globalApi/detectFaces.js | 9 - build/globalApi/detectFaces.js.map | 1 - .../extractFacesAndComputeResults.d.ts | 8 - .../extractFacesAndComputeResults.d.ts.map | 1 - .../extractFacesAndComputeResults.js | 18 -- .../extractFacesAndComputeResults.js.map | 1 - build/globalApi/index.d.ts | 10 - build/globalApi/index.d.ts.map | 1 - build/globalApi/index.js | 10 - build/globalApi/index.js.map | 1 - build/globalApi/nets.d.ts | 106 ---------- build/globalApi/nets.d.ts.map | 1 - build/globalApi/nets.js | 100 ---------- build/globalApi/nets.js.map | 1 - build/globalApi/types.d.ts | 8 - build/globalApi/types.d.ts.map | 1 - build/globalApi/types.js | 2 - build/globalApi/types.js.map | 1 - build/index.d.ts | 22 --- build/index.d.ts.map | 1 - build/index.js | 22 --- build/index.js.map | 1 - build/ops/index.d.ts | 9 - build/ops/index.d.ts.map | 1 - build/ops/index.js | 13 -- build/ops/index.js.map | 1 - build/ops/iou.d.ts | 3 - build/ops/iou.d.ts.map | 1 - build/ops/iou.js | 9 - build/ops/iou.js.map | 1 - build/ops/minBbox.d.ts | 3 - build/ops/minBbox.d.ts.map | 1 - build/ops/minBbox.js | 11 -- build/ops/minBbox.js.map | 1 - build/ops/nonMaxSuppression.d.ts | 3 - build/ops/nonMaxSuppression.d.ts.map | 1 - build/ops/nonMaxSuppression.js | 23 --- build/ops/nonMaxSuppression.js.map | 1 - build/ops/normalize.d.ts | 3 - build/ops/normalize.d.ts.map | 1 - build/ops/normalize.js | 12 -- build/ops/normalize.js.map | 1 - build/ops/padToSquare.d.ts | 11 -- build/ops/padToSquare.d.ts.map | 1 - build/ops/padToSquare.js | 39 ---- build/ops/padToSquare.js.map | 1 - build/ops/shuffleArray.d.ts | 2 - build/ops/shuffleArray.d.ts.map | 1 - build/ops/shuffleArray.js | 11 -- build/ops/shuffleArray.js.map | 1 - build/resizeResults.d.ts | 3 - build/resizeResults.d.ts.map | 1 - build/resizeResults.js | 27 --- build/resizeResults.js.map | 1 - build/ssdMobilenetv1/SsdMobilenetv1.d.ts | 28 --- build/ssdMobilenetv1/SsdMobilenetv1.d.ts.map | 1 - build/ssdMobilenetv1/SsdMobilenetv1.js | 82 -------- build/ssdMobilenetv1/SsdMobilenetv1.js.map | 1 - .../ssdMobilenetv1/SsdMobilenetv1Options.d.ts | 13 -- .../SsdMobilenetv1Options.d.ts.map | 1 - build/ssdMobilenetv1/SsdMobilenetv1Options.js | 16 -- .../SsdMobilenetv1Options.js.map | 1 - build/ssdMobilenetv1/boxPredictionLayer.d.ts | 7 - .../boxPredictionLayer.d.ts.map | 1 - build/ssdMobilenetv1/boxPredictionLayer.js | 14 -- .../ssdMobilenetv1/boxPredictionLayer.js.map | 1 - build/ssdMobilenetv1/extractParams.d.ts | 7 - build/ssdMobilenetv1/extractParams.d.ts.map | 1 - build/ssdMobilenetv1/extractParams.js | 159 --------------- build/ssdMobilenetv1/extractParams.js.map | 1 - .../extractParamsFromWeigthMap.d.ts | 8 - .../extractParamsFromWeigthMap.d.ts.map | 1 - .../extractParamsFromWeigthMap.js | 100 ---------- .../extractParamsFromWeigthMap.js.map | 1 - build/ssdMobilenetv1/index.d.ts | 8 - build/ssdMobilenetv1/index.d.ts.map | 1 - build/ssdMobilenetv1/index.js | 15 -- build/ssdMobilenetv1/index.js.map | 1 - build/ssdMobilenetv1/mobileNetV1.d.ts | 7 - build/ssdMobilenetv1/mobileNetV1.d.ts.map | 1 - build/ssdMobilenetv1/mobileNetV1.js | 51 ----- build/ssdMobilenetv1/mobileNetV1.js.map | 1 - build/ssdMobilenetv1/nonMaxSuppression.d.ts | 3 - .../ssdMobilenetv1/nonMaxSuppression.d.ts.map | 1 - build/ssdMobilenetv1/nonMaxSuppression.js | 54 ----- build/ssdMobilenetv1/nonMaxSuppression.js.map | 1 - build/ssdMobilenetv1/outputLayer.d.ts | 7 - build/ssdMobilenetv1/outputLayer.d.ts.map | 1 - build/ssdMobilenetv1/outputLayer.js | 47 ----- build/ssdMobilenetv1/outputLayer.js.map | 1 - build/ssdMobilenetv1/pointwiseConvLayer.d.ts | 4 - .../pointwiseConvLayer.d.ts.map | 1 - build/ssdMobilenetv1/pointwiseConvLayer.js | 9 - .../ssdMobilenetv1/pointwiseConvLayer.js.map | 1 - build/ssdMobilenetv1/predictionLayer.d.ts | 7 - build/ssdMobilenetv1/predictionLayer.d.ts.map | 1 - build/ssdMobilenetv1/predictionLayer.js | 42 ---- build/ssdMobilenetv1/predictionLayer.js.map | 1 - build/ssdMobilenetv1/types.d.ts | 64 ------ build/ssdMobilenetv1/types.d.ts.map | 1 - build/ssdMobilenetv1/types.js | 2 - build/ssdMobilenetv1/types.js.map | 1 - build/tinyFaceDetector/TinyFaceDetector.d.ts | 18 -- .../TinyFaceDetector.d.ts.map | 1 - build/tinyFaceDetector/TinyFaceDetector.js | 31 --- .../tinyFaceDetector/TinyFaceDetector.js.map | 1 - .../TinyFaceDetectorOptions.d.ts | 7 - .../TinyFaceDetectorOptions.d.ts.map | 1 - .../TinyFaceDetectorOptions.js | 8 - .../TinyFaceDetectorOptions.js.map | 1 - build/tinyFaceDetector/const.d.ts | 5 - build/tinyFaceDetector/const.d.ts.map | 1 - build/tinyFaceDetector/const.js | 11 -- build/tinyFaceDetector/const.js.map | 1 - build/tinyFaceDetector/index.d.ts | 5 - build/tinyFaceDetector/index.d.ts.map | 1 - build/tinyFaceDetector/index.js | 9 - build/tinyFaceDetector/index.js.map | 1 - build/tinyYolov2/TinyYolov2.d.ts | 19 -- build/tinyYolov2/TinyYolov2.d.ts.map | 1 - build/tinyYolov2/TinyYolov2.js | 38 ---- build/tinyYolov2/TinyYolov2.js.map | 1 - build/tinyYolov2/TinyYolov2Base.d.ts | 43 ---- build/tinyYolov2/TinyYolov2Base.d.ts.map | 1 - build/tinyYolov2/TinyYolov2Base.js | 186 ------------------ build/tinyYolov2/TinyYolov2Base.js.map | 1 - build/tinyYolov2/TinyYolov2Options.d.ts | 19 -- build/tinyYolov2/TinyYolov2Options.d.ts.map | 1 - build/tinyYolov2/TinyYolov2Options.js | 23 --- build/tinyYolov2/TinyYolov2Options.js.map | 1 - build/tinyYolov2/config.d.ts | 13 -- build/tinyYolov2/config.d.ts.map | 1 - build/tinyYolov2/config.js | 28 --- build/tinyYolov2/config.js.map | 1 - build/tinyYolov2/const.d.ts | 8 - build/tinyYolov2/const.d.ts.map | 1 - build/tinyYolov2/const.js | 20 -- build/tinyYolov2/const.js.map | 1 - build/tinyYolov2/convWithBatchNorm.d.ts | 4 - build/tinyYolov2/convWithBatchNorm.d.ts.map | 1 - build/tinyYolov2/convWithBatchNorm.js | 13 -- build/tinyYolov2/convWithBatchNorm.js.map | 1 - build/tinyYolov2/depthwiseSeparableConv.d.ts | 4 - .../depthwiseSeparableConv.d.ts.map | 1 - build/tinyYolov2/depthwiseSeparableConv.js | 11 -- .../tinyYolov2/depthwiseSeparableConv.js.map | 1 - build/tinyYolov2/extractParams.d.ts | 8 - build/tinyYolov2/extractParams.d.ts.map | 1 - build/tinyYolov2/extractParams.js | 63 ------ build/tinyYolov2/extractParams.js.map | 1 - .../extractParamsFromWeigthMap.d.ts | 9 - .../extractParamsFromWeigthMap.d.ts.map | 1 - .../tinyYolov2/extractParamsFromWeigthMap.js | 62 ------ .../extractParamsFromWeigthMap.js.map | 1 - build/tinyYolov2/index.d.ts | 7 - build/tinyYolov2/index.d.ts.map | 1 - build/tinyYolov2/index.js | 11 -- build/tinyYolov2/index.js.map | 1 - build/tinyYolov2/leaky.d.ts | 3 - build/tinyYolov2/leaky.d.ts.map | 1 - build/tinyYolov2/leaky.js | 9 - build/tinyYolov2/leaky.js.map | 1 - build/tinyYolov2/types.d.ts | 35 ---- build/tinyYolov2/types.d.ts.map | 1 - build/tinyYolov2/types.js | 2 - build/tinyYolov2/types.js.map | 1 - build/utils/index.d.ts | 18 -- build/utils/index.d.ts.map | 1 - build/utils/index.js | 49 ----- build/utils/index.js.map | 1 - build/xception/TinyXception.d.ts | 20 -- build/xception/TinyXception.d.ts.map | 1 - build/xception/TinyXception.js | 65 ------ build/xception/TinyXception.js.map | 1 - build/xception/extractParams.d.ts | 7 - build/xception/extractParams.d.ts.map | 1 - build/xception/extractParams.js | 55 ------ build/xception/extractParams.js.map | 1 - .../xception/extractParamsFromWeigthMap.d.ts | 8 - .../extractParamsFromWeigthMap.d.ts.map | 1 - build/xception/extractParamsFromWeigthMap.js | 51 ----- .../extractParamsFromWeigthMap.js.map | 1 - build/xception/index.d.ts | 2 - build/xception/index.d.ts.map | 1 - build/xception/index.js | 2 - build/xception/index.js.map | 1 - build/xception/types.d.ts | 24 --- build/xception/types.d.ts.map | 1 - build/xception/types.js | 2 - build/xception/types.js.map | 1 - 664 files changed, 6921 deletions(-) delete mode 100644 build/NeuralNetwork.d.ts delete mode 100644 build/NeuralNetwork.d.ts.map delete mode 100644 build/NeuralNetwork.js delete mode 100644 build/NeuralNetwork.js.map delete mode 100644 build/ageGenderNet/AgeGenderNet.d.ts delete mode 100644 build/ageGenderNet/AgeGenderNet.d.ts.map delete mode 100644 build/ageGenderNet/AgeGenderNet.js delete mode 100644 build/ageGenderNet/AgeGenderNet.js.map delete mode 100644 build/ageGenderNet/extractParams.d.ts delete mode 100644 build/ageGenderNet/extractParams.d.ts.map delete mode 100644 build/ageGenderNet/extractParams.js delete mode 100644 build/ageGenderNet/extractParams.js.map delete mode 100644 build/ageGenderNet/extractParamsFromWeigthMap.d.ts delete mode 100644 build/ageGenderNet/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/ageGenderNet/extractParamsFromWeigthMap.js delete mode 100644 build/ageGenderNet/extractParamsFromWeigthMap.js.map delete mode 100644 build/ageGenderNet/index.d.ts delete mode 100644 build/ageGenderNet/index.d.ts.map delete mode 100644 build/ageGenderNet/index.js delete mode 100644 build/ageGenderNet/index.js.map delete mode 100644 build/ageGenderNet/types.d.ts delete mode 100644 build/ageGenderNet/types.d.ts.map delete mode 100644 build/ageGenderNet/types.js delete mode 100644 build/ageGenderNet/types.js.map delete mode 100644 build/classes/BoundingBox.d.ts delete mode 100644 build/classes/BoundingBox.d.ts.map delete mode 100644 build/classes/BoundingBox.js delete mode 100644 build/classes/BoundingBox.js.map delete mode 100644 build/classes/Box.d.ts delete mode 100644 build/classes/Box.d.ts.map delete mode 100644 build/classes/Box.js delete mode 100644 build/classes/Box.js.map delete mode 100644 build/classes/Dimensions.d.ts delete mode 100644 build/classes/Dimensions.d.ts.map delete mode 100644 build/classes/Dimensions.js delete mode 100644 build/classes/Dimensions.js.map delete mode 100644 build/classes/FaceDetection.d.ts delete mode 100644 build/classes/FaceDetection.d.ts.map delete mode 100644 build/classes/FaceDetection.js delete mode 100644 build/classes/FaceDetection.js.map delete mode 100644 build/classes/FaceLandmarks.d.ts delete mode 100644 build/classes/FaceLandmarks.d.ts.map delete mode 100644 build/classes/FaceLandmarks.js delete mode 100644 build/classes/FaceLandmarks.js.map delete mode 100644 build/classes/FaceLandmarks5.d.ts delete mode 100644 build/classes/FaceLandmarks5.d.ts.map delete mode 100644 build/classes/FaceLandmarks5.js delete mode 100644 build/classes/FaceLandmarks5.js.map delete mode 100644 build/classes/FaceLandmarks68.d.ts delete mode 100644 build/classes/FaceLandmarks68.d.ts.map delete mode 100644 build/classes/FaceLandmarks68.js delete mode 100644 build/classes/FaceLandmarks68.js.map delete mode 100644 build/classes/FaceMatch.d.ts delete mode 100644 build/classes/FaceMatch.d.ts.map delete mode 100644 build/classes/FaceMatch.js delete mode 100644 build/classes/FaceMatch.js.map delete mode 100644 build/classes/LabeledBox.d.ts delete mode 100644 build/classes/LabeledBox.d.ts.map delete mode 100644 build/classes/LabeledBox.js delete mode 100644 build/classes/LabeledBox.js.map delete mode 100644 build/classes/LabeledFaceDescriptors.d.ts delete mode 100644 build/classes/LabeledFaceDescriptors.d.ts.map delete mode 100644 build/classes/LabeledFaceDescriptors.js delete mode 100644 build/classes/LabeledFaceDescriptors.js.map delete mode 100644 build/classes/ObjectDetection.d.ts delete mode 100644 build/classes/ObjectDetection.d.ts.map delete mode 100644 build/classes/ObjectDetection.js delete mode 100644 build/classes/ObjectDetection.js.map delete mode 100644 build/classes/Point.d.ts delete mode 100644 build/classes/Point.d.ts.map delete mode 100644 build/classes/Point.js delete mode 100644 build/classes/Point.js.map delete mode 100644 build/classes/PredictedBox.d.ts delete mode 100644 build/classes/PredictedBox.d.ts.map delete mode 100644 build/classes/PredictedBox.js delete mode 100644 build/classes/PredictedBox.js.map delete mode 100644 build/classes/Rect.d.ts delete mode 100644 build/classes/Rect.d.ts.map delete mode 100644 build/classes/Rect.js delete mode 100644 build/classes/Rect.js.map delete mode 100644 build/classes/index.d.ts delete mode 100644 build/classes/index.d.ts.map delete mode 100644 build/classes/index.js delete mode 100644 build/classes/index.js.map delete mode 100644 build/common/convLayer.d.ts delete mode 100644 build/common/convLayer.d.ts.map delete mode 100644 build/common/convLayer.js delete mode 100644 build/common/convLayer.js.map delete mode 100644 build/common/depthwiseSeparableConv.d.ts delete mode 100644 build/common/depthwiseSeparableConv.d.ts.map delete mode 100644 build/common/depthwiseSeparableConv.js delete mode 100644 build/common/depthwiseSeparableConv.js.map delete mode 100644 build/common/disposeUnusedWeightTensors.d.ts delete mode 100644 build/common/disposeUnusedWeightTensors.d.ts.map delete mode 100644 build/common/disposeUnusedWeightTensors.js delete mode 100644 build/common/disposeUnusedWeightTensors.js.map delete mode 100644 build/common/extractConvParamsFactory.d.ts delete mode 100644 build/common/extractConvParamsFactory.d.ts.map delete mode 100644 build/common/extractConvParamsFactory.js delete mode 100644 build/common/extractConvParamsFactory.js.map delete mode 100644 build/common/extractFCParamsFactory.d.ts delete mode 100644 build/common/extractFCParamsFactory.d.ts.map delete mode 100644 build/common/extractFCParamsFactory.js delete mode 100644 build/common/extractFCParamsFactory.js.map delete mode 100644 build/common/extractSeparableConvParamsFactory.d.ts delete mode 100644 build/common/extractSeparableConvParamsFactory.d.ts.map delete mode 100644 build/common/extractSeparableConvParamsFactory.js delete mode 100644 build/common/extractSeparableConvParamsFactory.js.map delete mode 100644 build/common/extractWeightEntryFactory.d.ts delete mode 100644 build/common/extractWeightEntryFactory.d.ts.map delete mode 100644 build/common/extractWeightEntryFactory.js delete mode 100644 build/common/extractWeightEntryFactory.js.map delete mode 100644 build/common/extractWeightsFactory.d.ts delete mode 100644 build/common/extractWeightsFactory.d.ts.map delete mode 100644 build/common/extractWeightsFactory.js delete mode 100644 build/common/extractWeightsFactory.js.map delete mode 100644 build/common/fullyConnectedLayer.d.ts delete mode 100644 build/common/fullyConnectedLayer.d.ts.map delete mode 100644 build/common/fullyConnectedLayer.js delete mode 100644 build/common/fullyConnectedLayer.js.map delete mode 100644 build/common/getModelUris.d.ts delete mode 100644 build/common/getModelUris.d.ts.map delete mode 100644 build/common/getModelUris.js delete mode 100644 build/common/getModelUris.js.map delete mode 100644 build/common/index.d.ts delete mode 100644 build/common/index.d.ts.map delete mode 100644 build/common/index.js delete mode 100644 build/common/index.js.map delete mode 100644 build/common/loadConvParamsFactory.d.ts delete mode 100644 build/common/loadConvParamsFactory.d.ts.map delete mode 100644 build/common/loadConvParamsFactory.js delete mode 100644 build/common/loadConvParamsFactory.js.map delete mode 100644 build/common/types.d.ts delete mode 100644 build/common/types.d.ts.map delete mode 100644 build/common/types.js delete mode 100644 build/common/types.js.map delete mode 100644 build/dom/NetInput.d.ts delete mode 100644 build/dom/NetInput.d.ts.map delete mode 100644 build/dom/NetInput.js delete mode 100644 build/dom/NetInput.js.map delete mode 100644 build/dom/awaitMediaLoaded.d.ts delete mode 100644 build/dom/awaitMediaLoaded.d.ts.map delete mode 100644 build/dom/awaitMediaLoaded.js delete mode 100644 build/dom/awaitMediaLoaded.js.map delete mode 100644 build/dom/bufferToImage.d.ts delete mode 100644 build/dom/bufferToImage.d.ts.map delete mode 100644 build/dom/bufferToImage.js delete mode 100644 build/dom/bufferToImage.js.map delete mode 100644 build/dom/createCanvas.d.ts delete mode 100644 build/dom/createCanvas.d.ts.map delete mode 100644 build/dom/createCanvas.js delete mode 100644 build/dom/createCanvas.js.map delete mode 100644 build/dom/extractFaceTensors.d.ts delete mode 100644 build/dom/extractFaceTensors.d.ts.map delete mode 100644 build/dom/extractFaceTensors.js delete mode 100644 build/dom/extractFaceTensors.js.map delete mode 100644 build/dom/extractFaces.d.ts delete mode 100644 build/dom/extractFaces.d.ts.map delete mode 100644 build/dom/extractFaces.js delete mode 100644 build/dom/extractFaces.js.map delete mode 100644 build/dom/fetchImage.d.ts delete mode 100644 build/dom/fetchImage.d.ts.map delete mode 100644 build/dom/fetchImage.js delete mode 100644 build/dom/fetchImage.js.map delete mode 100644 build/dom/fetchJson.d.ts delete mode 100644 build/dom/fetchJson.d.ts.map delete mode 100644 build/dom/fetchJson.js delete mode 100644 build/dom/fetchJson.js.map delete mode 100644 build/dom/fetchNetWeights.d.ts delete mode 100644 build/dom/fetchNetWeights.d.ts.map delete mode 100644 build/dom/fetchNetWeights.js delete mode 100644 build/dom/fetchNetWeights.js.map delete mode 100644 build/dom/fetchOrThrow.d.ts delete mode 100644 build/dom/fetchOrThrow.d.ts.map delete mode 100644 build/dom/fetchOrThrow.js delete mode 100644 build/dom/fetchOrThrow.js.map delete mode 100644 build/dom/getContext2dOrThrow.d.ts delete mode 100644 build/dom/getContext2dOrThrow.d.ts.map delete mode 100644 build/dom/getContext2dOrThrow.js delete mode 100644 build/dom/getContext2dOrThrow.js.map delete mode 100644 build/dom/getMediaDimensions.d.ts delete mode 100644 build/dom/getMediaDimensions.d.ts.map delete mode 100644 build/dom/getMediaDimensions.js delete mode 100644 build/dom/getMediaDimensions.js.map delete mode 100644 build/dom/imageTensorToCanvas.d.ts delete mode 100644 build/dom/imageTensorToCanvas.d.ts.map delete mode 100644 build/dom/imageTensorToCanvas.js delete mode 100644 build/dom/imageTensorToCanvas.js.map delete mode 100644 build/dom/imageToSquare.d.ts delete mode 100644 build/dom/imageToSquare.d.ts.map delete mode 100644 build/dom/imageToSquare.js delete mode 100644 build/dom/imageToSquare.js.map delete mode 100644 build/dom/index.d.ts delete mode 100644 build/dom/index.d.ts.map delete mode 100644 build/dom/index.js delete mode 100644 build/dom/index.js.map delete mode 100644 build/dom/isMediaElement.d.ts delete mode 100644 build/dom/isMediaElement.d.ts.map delete mode 100644 build/dom/isMediaElement.js delete mode 100644 build/dom/isMediaElement.js.map delete mode 100644 build/dom/isMediaLoaded.d.ts delete mode 100644 build/dom/isMediaLoaded.d.ts.map delete mode 100644 build/dom/isMediaLoaded.js delete mode 100644 build/dom/isMediaLoaded.js.map delete mode 100644 build/dom/loadWeightMap.d.ts delete mode 100644 build/dom/loadWeightMap.d.ts.map delete mode 100644 build/dom/loadWeightMap.js delete mode 100644 build/dom/loadWeightMap.js.map delete mode 100644 build/dom/matchDimensions.d.ts delete mode 100644 build/dom/matchDimensions.d.ts.map delete mode 100644 build/dom/matchDimensions.js delete mode 100644 build/dom/matchDimensions.js.map delete mode 100644 build/dom/resolveInput.d.ts delete mode 100644 build/dom/resolveInput.d.ts.map delete mode 100644 build/dom/resolveInput.js delete mode 100644 build/dom/resolveInput.js.map delete mode 100644 build/dom/toNetInput.d.ts delete mode 100644 build/dom/toNetInput.d.ts.map delete mode 100644 build/dom/toNetInput.js delete mode 100644 build/dom/toNetInput.js.map delete mode 100644 build/dom/types.d.ts delete mode 100644 build/dom/types.d.ts.map delete mode 100644 build/dom/types.js delete mode 100644 build/dom/types.js.map delete mode 100644 build/draw/DrawBox.d.ts delete mode 100644 build/draw/DrawBox.d.ts.map delete mode 100644 build/draw/DrawBox.js delete mode 100644 build/draw/DrawBox.js.map delete mode 100644 build/draw/DrawFaceLandmarks.d.ts delete mode 100644 build/draw/DrawFaceLandmarks.d.ts.map delete mode 100644 build/draw/DrawFaceLandmarks.js delete mode 100644 build/draw/DrawFaceLandmarks.js.map delete mode 100644 build/draw/DrawTextField.d.ts delete mode 100644 build/draw/DrawTextField.d.ts.map delete mode 100644 build/draw/DrawTextField.js delete mode 100644 build/draw/DrawTextField.js.map delete mode 100644 build/draw/drawContour.d.ts delete mode 100644 build/draw/drawContour.d.ts.map delete mode 100644 build/draw/drawContour.js delete mode 100644 build/draw/drawContour.js.map delete mode 100644 build/draw/drawDetections.d.ts delete mode 100644 build/draw/drawDetections.d.ts.map delete mode 100644 build/draw/drawDetections.js delete mode 100644 build/draw/drawDetections.js.map delete mode 100644 build/draw/drawFaceExpressions.d.ts delete mode 100644 build/draw/drawFaceExpressions.d.ts.map delete mode 100644 build/draw/drawFaceExpressions.js delete mode 100644 build/draw/drawFaceExpressions.js.map delete mode 100644 build/draw/index.d.ts delete mode 100644 build/draw/index.d.ts.map delete mode 100644 build/draw/index.js delete mode 100644 build/draw/index.js.map delete mode 100644 build/env/createBrowserEnv.d.ts delete mode 100644 build/env/createBrowserEnv.d.ts.map delete mode 100644 build/env/createBrowserEnv.js delete mode 100644 build/env/createBrowserEnv.js.map delete mode 100644 build/env/createFileSystem.d.ts delete mode 100644 build/env/createFileSystem.d.ts.map delete mode 100644 build/env/createFileSystem.js delete mode 100644 build/env/createFileSystem.js.map delete mode 100644 build/env/createNodejsEnv.d.ts delete mode 100644 build/env/createNodejsEnv.d.ts.map delete mode 100644 build/env/createNodejsEnv.js delete mode 100644 build/env/createNodejsEnv.js.map delete mode 100644 build/env/index.d.ts delete mode 100644 build/env/index.d.ts.map delete mode 100644 build/env/index.js delete mode 100644 build/env/index.js.map delete mode 100644 build/env/isBrowser.d.ts delete mode 100644 build/env/isBrowser.d.ts.map delete mode 100644 build/env/isBrowser.js delete mode 100644 build/env/isBrowser.js.map delete mode 100644 build/env/isNodejs.d.ts delete mode 100644 build/env/isNodejs.d.ts.map delete mode 100644 build/env/isNodejs.js delete mode 100644 build/env/isNodejs.js.map delete mode 100644 build/env/types.d.ts delete mode 100644 build/env/types.d.ts.map delete mode 100644 build/env/types.js delete mode 100644 build/env/types.js.map delete mode 100644 build/euclideanDistance.d.ts delete mode 100644 build/euclideanDistance.d.ts.map delete mode 100644 build/euclideanDistance.js delete mode 100644 build/euclideanDistance.js.map delete mode 100644 build/faceExpressionNet/FaceExpressionNet.d.ts delete mode 100644 build/faceExpressionNet/FaceExpressionNet.d.ts.map delete mode 100644 build/faceExpressionNet/FaceExpressionNet.js delete mode 100644 build/faceExpressionNet/FaceExpressionNet.js.map delete mode 100644 build/faceExpressionNet/FaceExpressions.d.ts delete mode 100644 build/faceExpressionNet/FaceExpressions.d.ts.map delete mode 100644 build/faceExpressionNet/FaceExpressions.js delete mode 100644 build/faceExpressionNet/FaceExpressions.js.map delete mode 100644 build/faceExpressionNet/index.d.ts delete mode 100644 build/faceExpressionNet/index.d.ts.map delete mode 100644 build/faceExpressionNet/index.js delete mode 100644 build/faceExpressionNet/index.js.map delete mode 100644 build/faceFeatureExtractor/FaceFeatureExtractor.d.ts delete mode 100644 build/faceFeatureExtractor/FaceFeatureExtractor.d.ts.map delete mode 100644 build/faceFeatureExtractor/FaceFeatureExtractor.js delete mode 100644 build/faceFeatureExtractor/FaceFeatureExtractor.js.map delete mode 100644 build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts delete mode 100644 build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts.map delete mode 100644 build/faceFeatureExtractor/TinyFaceFeatureExtractor.js delete mode 100644 build/faceFeatureExtractor/TinyFaceFeatureExtractor.js.map delete mode 100644 build/faceFeatureExtractor/denseBlock.d.ts delete mode 100644 build/faceFeatureExtractor/denseBlock.d.ts.map delete mode 100644 build/faceFeatureExtractor/denseBlock.js delete mode 100644 build/faceFeatureExtractor/denseBlock.js.map delete mode 100644 build/faceFeatureExtractor/extractParams.d.ts delete mode 100644 build/faceFeatureExtractor/extractParams.d.ts.map delete mode 100644 build/faceFeatureExtractor/extractParams.js delete mode 100644 build/faceFeatureExtractor/extractParams.js.map delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMap.js delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMap.js.map delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts.map delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js delete mode 100644 build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js.map delete mode 100644 build/faceFeatureExtractor/extractParamsTiny.d.ts delete mode 100644 build/faceFeatureExtractor/extractParamsTiny.d.ts.map delete mode 100644 build/faceFeatureExtractor/extractParamsTiny.js delete mode 100644 build/faceFeatureExtractor/extractParamsTiny.js.map delete mode 100644 build/faceFeatureExtractor/extractorsFactory.d.ts delete mode 100644 build/faceFeatureExtractor/extractorsFactory.d.ts.map delete mode 100644 build/faceFeatureExtractor/extractorsFactory.js delete mode 100644 build/faceFeatureExtractor/extractorsFactory.js.map delete mode 100644 build/faceFeatureExtractor/index.d.ts delete mode 100644 build/faceFeatureExtractor/index.d.ts.map delete mode 100644 build/faceFeatureExtractor/index.js delete mode 100644 build/faceFeatureExtractor/index.js.map delete mode 100644 build/faceFeatureExtractor/loadParamsFactory.d.ts delete mode 100644 build/faceFeatureExtractor/loadParamsFactory.d.ts.map delete mode 100644 build/faceFeatureExtractor/loadParamsFactory.js delete mode 100644 build/faceFeatureExtractor/loadParamsFactory.js.map delete mode 100644 build/faceFeatureExtractor/types.d.ts delete mode 100644 build/faceFeatureExtractor/types.d.ts.map delete mode 100644 build/faceFeatureExtractor/types.js delete mode 100644 build/faceFeatureExtractor/types.js.map delete mode 100644 build/faceLandmarkNet/FaceLandmark68Net.d.ts delete mode 100644 build/faceLandmarkNet/FaceLandmark68Net.d.ts.map delete mode 100644 build/faceLandmarkNet/FaceLandmark68Net.js delete mode 100644 build/faceLandmarkNet/FaceLandmark68Net.js.map delete mode 100644 build/faceLandmarkNet/FaceLandmark68NetBase.d.ts delete mode 100644 build/faceLandmarkNet/FaceLandmark68NetBase.d.ts.map delete mode 100644 build/faceLandmarkNet/FaceLandmark68NetBase.js delete mode 100644 build/faceLandmarkNet/FaceLandmark68NetBase.js.map delete mode 100644 build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts delete mode 100644 build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts.map delete mode 100644 build/faceLandmarkNet/FaceLandmark68TinyNet.js delete mode 100644 build/faceLandmarkNet/FaceLandmark68TinyNet.js.map delete mode 100644 build/faceLandmarkNet/index.d.ts delete mode 100644 build/faceLandmarkNet/index.d.ts.map delete mode 100644 build/faceLandmarkNet/index.js delete mode 100644 build/faceLandmarkNet/index.js.map delete mode 100644 build/faceProcessor/FaceProcessor.d.ts delete mode 100644 build/faceProcessor/FaceProcessor.d.ts.map delete mode 100644 build/faceProcessor/FaceProcessor.js delete mode 100644 build/faceProcessor/FaceProcessor.js.map delete mode 100644 build/faceProcessor/extractParams.d.ts delete mode 100644 build/faceProcessor/extractParams.d.ts.map delete mode 100644 build/faceProcessor/extractParams.js delete mode 100644 build/faceProcessor/extractParams.js.map delete mode 100644 build/faceProcessor/extractParamsFromWeigthMap.d.ts delete mode 100644 build/faceProcessor/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/faceProcessor/extractParamsFromWeigthMap.js delete mode 100644 build/faceProcessor/extractParamsFromWeigthMap.js.map delete mode 100644 build/faceProcessor/index.d.ts delete mode 100644 build/faceProcessor/index.d.ts.map delete mode 100644 build/faceProcessor/index.js delete mode 100644 build/faceProcessor/index.js.map delete mode 100644 build/faceProcessor/types.d.ts delete mode 100644 build/faceProcessor/types.d.ts.map delete mode 100644 build/faceProcessor/types.js delete mode 100644 build/faceProcessor/types.js.map delete mode 100644 build/faceProcessor/util.d.ts delete mode 100644 build/faceProcessor/util.d.ts.map delete mode 100644 build/faceProcessor/util.js delete mode 100644 build/faceProcessor/util.js.map delete mode 100644 build/faceRecognitionNet/FaceRecognitionNet.d.ts delete mode 100644 build/faceRecognitionNet/FaceRecognitionNet.d.ts.map delete mode 100644 build/faceRecognitionNet/FaceRecognitionNet.js delete mode 100644 build/faceRecognitionNet/FaceRecognitionNet.js.map delete mode 100644 build/faceRecognitionNet/convLayer.d.ts delete mode 100644 build/faceRecognitionNet/convLayer.d.ts.map delete mode 100644 build/faceRecognitionNet/convLayer.js delete mode 100644 build/faceRecognitionNet/convLayer.js.map delete mode 100644 build/faceRecognitionNet/extractParams.d.ts delete mode 100644 build/faceRecognitionNet/extractParams.d.ts.map delete mode 100644 build/faceRecognitionNet/extractParams.js delete mode 100644 build/faceRecognitionNet/extractParams.js.map delete mode 100644 build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts delete mode 100644 build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/faceRecognitionNet/extractParamsFromWeigthMap.js delete mode 100644 build/faceRecognitionNet/extractParamsFromWeigthMap.js.map delete mode 100644 build/faceRecognitionNet/index.d.ts delete mode 100644 build/faceRecognitionNet/index.d.ts.map delete mode 100644 build/faceRecognitionNet/index.js delete mode 100644 build/faceRecognitionNet/index.js.map delete mode 100644 build/faceRecognitionNet/residualLayer.d.ts delete mode 100644 build/faceRecognitionNet/residualLayer.d.ts.map delete mode 100644 build/faceRecognitionNet/residualLayer.js delete mode 100644 build/faceRecognitionNet/residualLayer.js.map delete mode 100644 build/faceRecognitionNet/scaleLayer.d.ts delete mode 100644 build/faceRecognitionNet/scaleLayer.d.ts.map delete mode 100644 build/faceRecognitionNet/scaleLayer.js delete mode 100644 build/faceRecognitionNet/scaleLayer.js.map delete mode 100644 build/faceRecognitionNet/types.d.ts delete mode 100644 build/faceRecognitionNet/types.d.ts.map delete mode 100644 build/faceRecognitionNet/types.js delete mode 100644 build/faceRecognitionNet/types.js.map delete mode 100644 build/factories/WithAge.d.ts delete mode 100644 build/factories/WithAge.d.ts.map delete mode 100644 build/factories/WithAge.js delete mode 100644 build/factories/WithAge.js.map delete mode 100644 build/factories/WithFaceDescriptor.d.ts delete mode 100644 build/factories/WithFaceDescriptor.d.ts.map delete mode 100644 build/factories/WithFaceDescriptor.js delete mode 100644 build/factories/WithFaceDescriptor.js.map delete mode 100644 build/factories/WithFaceDetection.d.ts delete mode 100644 build/factories/WithFaceDetection.d.ts.map delete mode 100644 build/factories/WithFaceDetection.js delete mode 100644 build/factories/WithFaceDetection.js.map delete mode 100644 build/factories/WithFaceExpressions.d.ts delete mode 100644 build/factories/WithFaceExpressions.d.ts.map delete mode 100644 build/factories/WithFaceExpressions.js delete mode 100644 build/factories/WithFaceExpressions.js.map delete mode 100644 build/factories/WithFaceLandmarks.d.ts delete mode 100644 build/factories/WithFaceLandmarks.d.ts.map delete mode 100644 build/factories/WithFaceLandmarks.js delete mode 100644 build/factories/WithFaceLandmarks.js.map delete mode 100644 build/factories/WithGender.d.ts delete mode 100644 build/factories/WithGender.d.ts.map delete mode 100644 build/factories/WithGender.js delete mode 100644 build/factories/WithGender.js.map delete mode 100644 build/factories/index.d.ts delete mode 100644 build/factories/index.d.ts.map delete mode 100644 build/factories/index.js delete mode 100644 build/factories/index.js.map delete mode 100644 build/globalApi/ComposableTask.d.ts delete mode 100644 build/globalApi/ComposableTask.d.ts.map delete mode 100644 build/globalApi/ComposableTask.js delete mode 100644 build/globalApi/ComposableTask.js.map delete mode 100644 build/globalApi/ComputeFaceDescriptorsTasks.d.ts delete mode 100644 build/globalApi/ComputeFaceDescriptorsTasks.d.ts.map delete mode 100644 build/globalApi/ComputeFaceDescriptorsTasks.js delete mode 100644 build/globalApi/ComputeFaceDescriptorsTasks.js.map delete mode 100644 build/globalApi/DetectFaceLandmarksTasks.d.ts delete mode 100644 build/globalApi/DetectFaceLandmarksTasks.d.ts.map delete mode 100644 build/globalApi/DetectFaceLandmarksTasks.js delete mode 100644 build/globalApi/DetectFaceLandmarksTasks.js.map delete mode 100644 build/globalApi/DetectFacesTasks.d.ts delete mode 100644 build/globalApi/DetectFacesTasks.d.ts.map delete mode 100644 build/globalApi/DetectFacesTasks.js delete mode 100644 build/globalApi/DetectFacesTasks.js.map delete mode 100644 build/globalApi/FaceMatcher.d.ts delete mode 100644 build/globalApi/FaceMatcher.d.ts.map delete mode 100644 build/globalApi/FaceMatcher.js delete mode 100644 build/globalApi/FaceMatcher.js.map delete mode 100644 build/globalApi/PredictAgeAndGenderTask.d.ts delete mode 100644 build/globalApi/PredictAgeAndGenderTask.d.ts.map delete mode 100644 build/globalApi/PredictAgeAndGenderTask.js delete mode 100644 build/globalApi/PredictAgeAndGenderTask.js.map delete mode 100644 build/globalApi/PredictFaceExpressionsTask.d.ts delete mode 100644 build/globalApi/PredictFaceExpressionsTask.d.ts.map delete mode 100644 build/globalApi/PredictFaceExpressionsTask.js delete mode 100644 build/globalApi/PredictFaceExpressionsTask.js.map delete mode 100644 build/globalApi/allFaces.d.ts delete mode 100644 build/globalApi/allFaces.d.ts.map delete mode 100644 build/globalApi/allFaces.js delete mode 100644 build/globalApi/allFaces.js.map delete mode 100644 build/globalApi/detectFaces.d.ts delete mode 100644 build/globalApi/detectFaces.d.ts.map delete mode 100644 build/globalApi/detectFaces.js delete mode 100644 build/globalApi/detectFaces.js.map delete mode 100644 build/globalApi/extractFacesAndComputeResults.d.ts delete mode 100644 build/globalApi/extractFacesAndComputeResults.d.ts.map delete mode 100644 build/globalApi/extractFacesAndComputeResults.js delete mode 100644 build/globalApi/extractFacesAndComputeResults.js.map delete mode 100644 build/globalApi/index.d.ts delete mode 100644 build/globalApi/index.d.ts.map delete mode 100644 build/globalApi/index.js delete mode 100644 build/globalApi/index.js.map delete mode 100644 build/globalApi/nets.d.ts delete mode 100644 build/globalApi/nets.d.ts.map delete mode 100644 build/globalApi/nets.js delete mode 100644 build/globalApi/nets.js.map delete mode 100644 build/globalApi/types.d.ts delete mode 100644 build/globalApi/types.d.ts.map delete mode 100644 build/globalApi/types.js delete mode 100644 build/globalApi/types.js.map delete mode 100644 build/index.d.ts delete mode 100644 build/index.d.ts.map delete mode 100644 build/index.js delete mode 100644 build/index.js.map delete mode 100644 build/ops/index.d.ts delete mode 100644 build/ops/index.d.ts.map delete mode 100644 build/ops/index.js delete mode 100644 build/ops/index.js.map delete mode 100644 build/ops/iou.d.ts delete mode 100644 build/ops/iou.d.ts.map delete mode 100644 build/ops/iou.js delete mode 100644 build/ops/iou.js.map delete mode 100644 build/ops/minBbox.d.ts delete mode 100644 build/ops/minBbox.d.ts.map delete mode 100644 build/ops/minBbox.js delete mode 100644 build/ops/minBbox.js.map delete mode 100644 build/ops/nonMaxSuppression.d.ts delete mode 100644 build/ops/nonMaxSuppression.d.ts.map delete mode 100644 build/ops/nonMaxSuppression.js delete mode 100644 build/ops/nonMaxSuppression.js.map delete mode 100644 build/ops/normalize.d.ts delete mode 100644 build/ops/normalize.d.ts.map delete mode 100644 build/ops/normalize.js delete mode 100644 build/ops/normalize.js.map delete mode 100644 build/ops/padToSquare.d.ts delete mode 100644 build/ops/padToSquare.d.ts.map delete mode 100644 build/ops/padToSquare.js delete mode 100644 build/ops/padToSquare.js.map delete mode 100644 build/ops/shuffleArray.d.ts delete mode 100644 build/ops/shuffleArray.d.ts.map delete mode 100644 build/ops/shuffleArray.js delete mode 100644 build/ops/shuffleArray.js.map delete mode 100644 build/resizeResults.d.ts delete mode 100644 build/resizeResults.d.ts.map delete mode 100644 build/resizeResults.js delete mode 100644 build/resizeResults.js.map delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1.d.ts delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1.d.ts.map delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1.js delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1.js.map delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts.map delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1Options.js delete mode 100644 build/ssdMobilenetv1/SsdMobilenetv1Options.js.map delete mode 100644 build/ssdMobilenetv1/boxPredictionLayer.d.ts delete mode 100644 build/ssdMobilenetv1/boxPredictionLayer.d.ts.map delete mode 100644 build/ssdMobilenetv1/boxPredictionLayer.js delete mode 100644 build/ssdMobilenetv1/boxPredictionLayer.js.map delete mode 100644 build/ssdMobilenetv1/extractParams.d.ts delete mode 100644 build/ssdMobilenetv1/extractParams.d.ts.map delete mode 100644 build/ssdMobilenetv1/extractParams.js delete mode 100644 build/ssdMobilenetv1/extractParams.js.map delete mode 100644 build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts delete mode 100644 build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/ssdMobilenetv1/extractParamsFromWeigthMap.js delete mode 100644 build/ssdMobilenetv1/extractParamsFromWeigthMap.js.map delete mode 100644 build/ssdMobilenetv1/index.d.ts delete mode 100644 build/ssdMobilenetv1/index.d.ts.map delete mode 100644 build/ssdMobilenetv1/index.js delete mode 100644 build/ssdMobilenetv1/index.js.map delete mode 100644 build/ssdMobilenetv1/mobileNetV1.d.ts delete mode 100644 build/ssdMobilenetv1/mobileNetV1.d.ts.map delete mode 100644 build/ssdMobilenetv1/mobileNetV1.js delete mode 100644 build/ssdMobilenetv1/mobileNetV1.js.map delete mode 100644 build/ssdMobilenetv1/nonMaxSuppression.d.ts delete mode 100644 build/ssdMobilenetv1/nonMaxSuppression.d.ts.map delete mode 100644 build/ssdMobilenetv1/nonMaxSuppression.js delete mode 100644 build/ssdMobilenetv1/nonMaxSuppression.js.map delete mode 100644 build/ssdMobilenetv1/outputLayer.d.ts delete mode 100644 build/ssdMobilenetv1/outputLayer.d.ts.map delete mode 100644 build/ssdMobilenetv1/outputLayer.js delete mode 100644 build/ssdMobilenetv1/outputLayer.js.map delete mode 100644 build/ssdMobilenetv1/pointwiseConvLayer.d.ts delete mode 100644 build/ssdMobilenetv1/pointwiseConvLayer.d.ts.map delete mode 100644 build/ssdMobilenetv1/pointwiseConvLayer.js delete mode 100644 build/ssdMobilenetv1/pointwiseConvLayer.js.map delete mode 100644 build/ssdMobilenetv1/predictionLayer.d.ts delete mode 100644 build/ssdMobilenetv1/predictionLayer.d.ts.map delete mode 100644 build/ssdMobilenetv1/predictionLayer.js delete mode 100644 build/ssdMobilenetv1/predictionLayer.js.map delete mode 100644 build/ssdMobilenetv1/types.d.ts delete mode 100644 build/ssdMobilenetv1/types.d.ts.map delete mode 100644 build/ssdMobilenetv1/types.js delete mode 100644 build/ssdMobilenetv1/types.js.map delete mode 100644 build/tinyFaceDetector/TinyFaceDetector.d.ts delete mode 100644 build/tinyFaceDetector/TinyFaceDetector.d.ts.map delete mode 100644 build/tinyFaceDetector/TinyFaceDetector.js delete mode 100644 build/tinyFaceDetector/TinyFaceDetector.js.map delete mode 100644 build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts delete mode 100644 build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts.map delete mode 100644 build/tinyFaceDetector/TinyFaceDetectorOptions.js delete mode 100644 build/tinyFaceDetector/TinyFaceDetectorOptions.js.map delete mode 100644 build/tinyFaceDetector/const.d.ts delete mode 100644 build/tinyFaceDetector/const.d.ts.map delete mode 100644 build/tinyFaceDetector/const.js delete mode 100644 build/tinyFaceDetector/const.js.map delete mode 100644 build/tinyFaceDetector/index.d.ts delete mode 100644 build/tinyFaceDetector/index.d.ts.map delete mode 100644 build/tinyFaceDetector/index.js delete mode 100644 build/tinyFaceDetector/index.js.map delete mode 100644 build/tinyYolov2/TinyYolov2.d.ts delete mode 100644 build/tinyYolov2/TinyYolov2.d.ts.map delete mode 100644 build/tinyYolov2/TinyYolov2.js delete mode 100644 build/tinyYolov2/TinyYolov2.js.map delete mode 100644 build/tinyYolov2/TinyYolov2Base.d.ts delete mode 100644 build/tinyYolov2/TinyYolov2Base.d.ts.map delete mode 100644 build/tinyYolov2/TinyYolov2Base.js delete mode 100644 build/tinyYolov2/TinyYolov2Base.js.map delete mode 100644 build/tinyYolov2/TinyYolov2Options.d.ts delete mode 100644 build/tinyYolov2/TinyYolov2Options.d.ts.map delete mode 100644 build/tinyYolov2/TinyYolov2Options.js delete mode 100644 build/tinyYolov2/TinyYolov2Options.js.map delete mode 100644 build/tinyYolov2/config.d.ts delete mode 100644 build/tinyYolov2/config.d.ts.map delete mode 100644 build/tinyYolov2/config.js delete mode 100644 build/tinyYolov2/config.js.map delete mode 100644 build/tinyYolov2/const.d.ts delete mode 100644 build/tinyYolov2/const.d.ts.map delete mode 100644 build/tinyYolov2/const.js delete mode 100644 build/tinyYolov2/const.js.map delete mode 100644 build/tinyYolov2/convWithBatchNorm.d.ts delete mode 100644 build/tinyYolov2/convWithBatchNorm.d.ts.map delete mode 100644 build/tinyYolov2/convWithBatchNorm.js delete mode 100644 build/tinyYolov2/convWithBatchNorm.js.map delete mode 100644 build/tinyYolov2/depthwiseSeparableConv.d.ts delete mode 100644 build/tinyYolov2/depthwiseSeparableConv.d.ts.map delete mode 100644 build/tinyYolov2/depthwiseSeparableConv.js delete mode 100644 build/tinyYolov2/depthwiseSeparableConv.js.map delete mode 100644 build/tinyYolov2/extractParams.d.ts delete mode 100644 build/tinyYolov2/extractParams.d.ts.map delete mode 100644 build/tinyYolov2/extractParams.js delete mode 100644 build/tinyYolov2/extractParams.js.map delete mode 100644 build/tinyYolov2/extractParamsFromWeigthMap.d.ts delete mode 100644 build/tinyYolov2/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/tinyYolov2/extractParamsFromWeigthMap.js delete mode 100644 build/tinyYolov2/extractParamsFromWeigthMap.js.map delete mode 100644 build/tinyYolov2/index.d.ts delete mode 100644 build/tinyYolov2/index.d.ts.map delete mode 100644 build/tinyYolov2/index.js delete mode 100644 build/tinyYolov2/index.js.map delete mode 100644 build/tinyYolov2/leaky.d.ts delete mode 100644 build/tinyYolov2/leaky.d.ts.map delete mode 100644 build/tinyYolov2/leaky.js delete mode 100644 build/tinyYolov2/leaky.js.map delete mode 100644 build/tinyYolov2/types.d.ts delete mode 100644 build/tinyYolov2/types.d.ts.map delete mode 100644 build/tinyYolov2/types.js delete mode 100644 build/tinyYolov2/types.js.map delete mode 100644 build/utils/index.d.ts delete mode 100644 build/utils/index.d.ts.map delete mode 100644 build/utils/index.js delete mode 100644 build/utils/index.js.map delete mode 100644 build/xception/TinyXception.d.ts delete mode 100644 build/xception/TinyXception.d.ts.map delete mode 100644 build/xception/TinyXception.js delete mode 100644 build/xception/TinyXception.js.map delete mode 100644 build/xception/extractParams.d.ts delete mode 100644 build/xception/extractParams.d.ts.map delete mode 100644 build/xception/extractParams.js delete mode 100644 build/xception/extractParams.js.map delete mode 100644 build/xception/extractParamsFromWeigthMap.d.ts delete mode 100644 build/xception/extractParamsFromWeigthMap.d.ts.map delete mode 100644 build/xception/extractParamsFromWeigthMap.js delete mode 100644 build/xception/extractParamsFromWeigthMap.js.map delete mode 100644 build/xception/index.d.ts delete mode 100644 build/xception/index.d.ts.map delete mode 100644 build/xception/index.js delete mode 100644 build/xception/index.js.map delete mode 100644 build/xception/types.d.ts delete mode 100644 build/xception/types.d.ts.map delete mode 100644 build/xception/types.js delete mode 100644 build/xception/types.js.map diff --git a/build/NeuralNetwork.d.ts b/build/NeuralNetwork.d.ts deleted file mode 100644 index 01078d8..0000000 --- a/build/NeuralNetwork.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from './common'; -export declare abstract class NeuralNetwork { - protected _name: string; - protected _params: TNetParams | undefined; - protected _paramMappings: ParamMapping[]; - constructor(_name: string); - get params(): TNetParams | undefined; - get paramMappings(): ParamMapping[]; - get isLoaded(): boolean; - getParamFromPath(paramPath: string): tf.Tensor; - reassignParamFromPath(paramPath: string, tensor: tf.Tensor): void; - getParamList(): { - path: string; - tensor: tf.Tensor; - }[]; - getTrainableParams(): { - path: string; - tensor: tf.Tensor; - }[]; - getFrozenParams(): { - path: string; - tensor: tf.Tensor; - }[]; - variable(): void; - freeze(): void; - dispose(throwOnRedispose?: boolean): void; - serializeParams(): Float32Array; - load(weightsOrUrl: Float32Array | string | undefined): Promise; - loadFromUri(uri: string | undefined): Promise; - loadFromDisk(filePath: string | undefined): Promise; - loadFromWeightMap(weightMap: tf.NamedTensorMap): void; - extractWeights(weights: Float32Array): void; - private traversePropertyPath; - protected abstract getDefaultModelName(): string; - protected abstract extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: TNetParams; - paramMappings: ParamMapping[]; - }; - protected abstract extractParams(weights: Float32Array): { - params: TNetParams; - paramMappings: ParamMapping[]; - }; -} -//# sourceMappingURL=NeuralNetwork.d.ts.map \ No newline at end of file diff --git a/build/NeuralNetwork.d.ts.map b/build/NeuralNetwork.d.ts.map deleted file mode 100644 index 8d88bd8..0000000 --- a/build/NeuralNetwork.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NeuralNetwork.d.ts","sourceRoot":"","sources":["../src/NeuralNetwork.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKxC,8BAAsB,aAAa,CAAC,UAAU;IAKhC,SAAS,CAAC,KAAK,EAAE,MAAM;IAHnC,SAAS,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAY;IACrD,SAAS,CAAC,cAAc,EAAE,YAAY,EAAE,CAAK;gBAEvB,KAAK,EAAE,MAAM;IAEnC,IAAW,MAAM,IAAI,UAAU,GAAG,SAAS,CAAwB;IACnE,IAAW,aAAa,IAAI,YAAY,EAAE,CAA+B;IACzE,IAAW,QAAQ,IAAI,OAAO,CAAyB;IAEhD,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,EAAE,CAAC,MAAM;IAK9C,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM;IAM1D,YAAY;;;;IAOZ,kBAAkB;;;;IAIlB,eAAe;;;;IAIf,QAAQ;IAMR,MAAM;IAQN,OAAO,CAAC,gBAAgB,GAAE,OAAc;IAUxC,eAAe,IAAI,YAAY;IAQzB,IAAI,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IASpE,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;IASnC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS;IAoB/C,iBAAiB,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;IAU9C,cAAc,CAAC,OAAO,EAAE,YAAY;IAU3C,OAAO,CAAC,oBAAoB;IAqB5B,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,MAAM;IAChD,SAAS,CAAC,QAAQ,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,aAAa,EAAE,YAAY,EAAE,CAAA;KAAE;IAClI,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,aAAa,EAAE,YAAY,EAAE,CAAA;KAAE;CAC/G"} \ No newline at end of file diff --git a/build/NeuralNetwork.js b/build/NeuralNetwork.js deleted file mode 100644 index 9fe968e..0000000 --- a/build/NeuralNetwork.js +++ /dev/null @@ -1,114 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { getModelUris } from './common/getModelUris'; -import { loadWeightMap } from './dom'; -import { env } from './env'; -export class NeuralNetwork { - constructor(_name) { - this._name = _name; - this._params = undefined; - this._paramMappings = []; - } - get params() { return this._params; } - get paramMappings() { return this._paramMappings; } - get isLoaded() { return !!this.params; } - getParamFromPath(paramPath) { - const { obj, objProp } = this.traversePropertyPath(paramPath); - return obj[objProp]; - } - reassignParamFromPath(paramPath, tensor) { - const { obj, objProp } = this.traversePropertyPath(paramPath); - obj[objProp].dispose(); - obj[objProp] = tensor; - } - getParamList() { - return this._paramMappings.map(({ paramPath }) => ({ - path: paramPath, - tensor: this.getParamFromPath(paramPath) - })); - } - getTrainableParams() { - return this.getParamList().filter(param => param.tensor instanceof tf.Variable); - } - getFrozenParams() { - return this.getParamList().filter(param => !(param.tensor instanceof tf.Variable)); - } - variable() { - this.getFrozenParams().forEach(({ path, tensor }) => { - this.reassignParamFromPath(path, tensor.variable()); - }); - } - freeze() { - this.getTrainableParams().forEach(({ path, tensor: variable }) => { - const tensor = tf.tensor(variable.dataSync()); - variable.dispose(); - this.reassignParamFromPath(path, tensor); - }); - } - dispose(throwOnRedispose = true) { - this.getParamList().forEach(param => { - if (throwOnRedispose && param.tensor.isDisposed) { - throw new Error(`param tensor has already been disposed for path ${param.path}`); - } - param.tensor.dispose(); - }); - this._params = undefined; - } - serializeParams() { - return new Float32Array(this.getParamList() - .map(({ tensor }) => Array.from(tensor.dataSync())) - .reduce((flat, arr) => flat.concat(arr))); - } - async load(weightsOrUrl) { - if (weightsOrUrl instanceof Float32Array) { - this.extractWeights(weightsOrUrl); - return; - } - await this.loadFromUri(weightsOrUrl); - } - async loadFromUri(uri) { - if (uri && typeof uri !== 'string') { - throw new Error(`${this._name}.loadFromUri - expected model uri`); - } - const weightMap = await loadWeightMap(uri, this.getDefaultModelName()); - this.loadFromWeightMap(weightMap); - } - async loadFromDisk(filePath) { - if (filePath && typeof filePath !== 'string') { - throw new Error(`${this._name}.loadFromDisk - expected model file path`); - } - const { readFile } = env.getEnv(); - const { manifestUri, modelBaseUri } = getModelUris(filePath, this.getDefaultModelName()); - const fetchWeightsFromDisk = (filePaths) => Promise.all(filePaths.map(filePath => readFile(filePath).then(buf => buf.buffer))); - const loadWeights = tf.io.weightsLoaderFactory(fetchWeightsFromDisk); - const manifest = JSON.parse((await readFile(manifestUri)).toString()); - const weightMap = await loadWeights(manifest, modelBaseUri); - this.loadFromWeightMap(weightMap); - } - loadFromWeightMap(weightMap) { - const { paramMappings, params } = this.extractParamsFromWeigthMap(weightMap); - this._paramMappings = paramMappings; - this._params = params; - } - extractWeights(weights) { - const { paramMappings, params } = this.extractParams(weights); - this._paramMappings = paramMappings; - this._params = params; - } - traversePropertyPath(paramPath) { - if (!this.params) { - throw new Error(`traversePropertyPath - model has no loaded params`); - } - const result = paramPath.split('/').reduce((res, objProp) => { - if (!res.nextObj.hasOwnProperty(objProp)) { - throw new Error(`traversePropertyPath - object does not have property ${objProp}, for path ${paramPath}`); - } - return { obj: res.nextObj, objProp, nextObj: res.nextObj[objProp] }; - }, { nextObj: this.params }); - const { obj, objProp } = result; - if (!obj || !objProp || !(obj[objProp] instanceof tf.Tensor)) { - throw new Error(`traversePropertyPath - parameter is not a tensor, for path ${paramPath}`); - } - return { obj, objProp }; - } -} -//# sourceMappingURL=NeuralNetwork.js.map \ No newline at end of file diff --git a/build/NeuralNetwork.js.map b/build/NeuralNetwork.js.map deleted file mode 100644 index 274c0d8..0000000 --- a/build/NeuralNetwork.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NeuralNetwork.js","sourceRoot":"","sources":["../src/NeuralNetwork.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/ageGenderNet/AgeGenderNet.d.ts b/build/ageGenderNet/AgeGenderNet.d.ts deleted file mode 100644 index 341d671..0000000 --- a/build/ageGenderNet/AgeGenderNet.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { TinyXception } from '../xception/TinyXception'; -import { AgeAndGenderPrediction, NetOutput, NetParams } from './types'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { NetInput, TNetInput } from '../dom'; -export declare class AgeGenderNet extends NeuralNetwork { - private _faceFeatureExtractor; - constructor(faceFeatureExtractor?: TinyXception); - get faceFeatureExtractor(): TinyXception; - runNet(input: NetInput | tf.Tensor4D): NetOutput; - forwardInput(input: NetInput | tf.Tensor4D): NetOutput; - forward(input: TNetInput): Promise; - predictAgeAndGender(input: TNetInput): Promise; - protected getDefaultModelName(): string; - dispose(throwOnRedispose?: boolean): void; - loadClassifierParams(weights: Float32Array): void; - extractClassifierParams(weights: Float32Array): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=AgeGenderNet.d.ts.map \ No newline at end of file diff --git a/build/ageGenderNet/AgeGenderNet.d.ts.map b/build/ageGenderNet/AgeGenderNet.d.ts.map deleted file mode 100644 index 88b08fc..0000000 --- a/build/ageGenderNet/AgeGenderNet.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AgeGenderNet.d.ts","sourceRoot":"","sources":["../../src/ageGenderNet/AgeGenderNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,EAAE,sBAAsB,EAAU,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AAEzD,qBAAa,YAAa,SAAQ,aAAa,CAAC,SAAS,CAAC;IAExD,OAAO,CAAC,qBAAqB,CAAc;gBAE/B,oBAAoB,GAAE,YAAkC;IAKpE,IAAW,oBAAoB,IAAI,YAAY,CAE9C;IAEM,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ,GAAG,SAAS;IAoBhD,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ,GAAG,SAAS;IAOhD,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAI7C,mBAAmB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,EAAE,CAAC;IAgC9G,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIhC,OAAO,CAAC,gBAAgB,GAAE,OAAc;IAKxC,oBAAoB,CAAC,OAAO,EAAE,YAAY;IAM1C,uBAAuB,CAAC,OAAO,EAAE,YAAY;;;;IAIpD,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IASjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAU9C"} \ No newline at end of file diff --git a/build/ageGenderNet/AgeGenderNet.js b/build/ageGenderNet/AgeGenderNet.js deleted file mode 100644 index eab848c..0000000 --- a/build/ageGenderNet/AgeGenderNet.js +++ /dev/null @@ -1,95 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { fullyConnectedLayer } from '../common/fullyConnectedLayer'; -import { seperateWeightMaps } from '../faceProcessor/util'; -import { TinyXception } from '../xception/TinyXception'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -import { Gender } from './types'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { NetInput, toNetInput } from '../dom'; -export class AgeGenderNet extends NeuralNetwork { - constructor(faceFeatureExtractor = new TinyXception(2)) { - super('AgeGenderNet'); - this._faceFeatureExtractor = faceFeatureExtractor; - } - get faceFeatureExtractor() { - return this._faceFeatureExtractor; - } - runNet(input) { - const { params } = this; - if (!params) { - throw new Error(`${this._name} - load model before inference`); - } - return tf.tidy(() => { - const bottleneckFeatures = input instanceof NetInput - ? this.faceFeatureExtractor.forwardInput(input) - : input; - const pooled = tf.avgPool(bottleneckFeatures, [7, 7], [2, 2], 'valid').as2D(bottleneckFeatures.shape[0], -1); - const age = fullyConnectedLayer(pooled, params.fc.age).as1D(); - const gender = fullyConnectedLayer(pooled, params.fc.gender); - return { age, gender }; - }); - } - forwardInput(input) { - return tf.tidy(() => { - const { age, gender } = this.runNet(input); - return { age, gender: tf.softmax(gender) }; - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - async predictAgeAndGender(input) { - const netInput = await toNetInput(input); - const out = await this.forwardInput(netInput); - const ages = tf.unstack(out.age); - const genders = tf.unstack(out.gender); - const ageAndGenderTensors = ages.map((ageTensor, i) => ({ - ageTensor, - genderTensor: genders[i] - })); - const predictionsByBatch = await Promise.all(ageAndGenderTensors.map(async ({ ageTensor, genderTensor }) => { - const age = (await ageTensor.data())[0]; - const probMale = (await genderTensor.data())[0]; - const isMale = probMale > 0.5; - const gender = isMale ? Gender.MALE : Gender.FEMALE; - const genderProbability = isMale ? probMale : (1 - probMale); - ageTensor.dispose(); - genderTensor.dispose(); - return { age, gender, genderProbability }; - })); - out.age.dispose(); - out.gender.dispose(); - return netInput.isBatchInput - ? predictionsByBatch - : predictionsByBatch[0]; - } - getDefaultModelName() { - return 'age_gender_model'; - } - dispose(throwOnRedispose = true) { - this.faceFeatureExtractor.dispose(throwOnRedispose); - super.dispose(throwOnRedispose); - } - loadClassifierParams(weights) { - const { params, paramMappings } = this.extractClassifierParams(weights); - this._params = params; - this._paramMappings = paramMappings; - } - extractClassifierParams(weights) { - return extractParams(weights); - } - extractParamsFromWeigthMap(weightMap) { - const { featureExtractorMap, classifierMap } = seperateWeightMaps(weightMap); - this.faceFeatureExtractor.loadFromWeightMap(featureExtractorMap); - return extractParamsFromWeigthMap(classifierMap); - } - extractParams(weights) { - const classifierWeightSize = (512 * 1 + 1) + (512 * 2 + 2); - const featureExtractorWeights = weights.slice(0, weights.length - classifierWeightSize); - const classifierWeights = weights.slice(weights.length - classifierWeightSize); - this.faceFeatureExtractor.extractWeights(featureExtractorWeights); - return this.extractClassifierParams(classifierWeights); - } -} -//# sourceMappingURL=AgeGenderNet.js.map \ No newline at end of file diff --git a/build/ageGenderNet/AgeGenderNet.js.map b/build/ageGenderNet/AgeGenderNet.js.map deleted file mode 100644 index bceaba5..0000000 --- a/build/ageGenderNet/AgeGenderNet.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AgeGenderNet.js","sourceRoot":"","sources":["../../src/ageGenderNet/AgeGenderNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAA0B,MAAM,EAAwB,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAa,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzD,MAAM,OAAO,YAAa,SAAQ,aAAwB;IAIxD,YAAY,uBAAqC,IAAI,YAAY,CAAC,CAAC,CAAC;QAClE,KAAK,CAAC,cAAc,CAAC,CAAA;QACrB,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAA;IACnD,CAAC;IAED,IAAW,oBAAoB;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAA;IACnC,CAAC;IAEM,MAAM,CAAC,KAA6B;QAEzC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,gCAAgC,CAAC,CAAA;SAC/D;QAED,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,MAAM,kBAAkB,GAAG,KAAK,YAAY,QAAQ;gBAClD,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,KAAK,CAAC;gBAC/C,CAAC,CAAC,KAAK,CAAA;YAET,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5G,MAAM,GAAG,GAAG,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;YAC7D,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;YAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,YAAY,CAAC,KAA6B;QAC/C,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,KAAgB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACnD,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAAC,KAAgB;QAC/C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAA;QACxC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAE7C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,SAAS;YACT,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;SACzB,CAAC,CAAC,CAAA;QAEH,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,EAAE;YAC5D,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,QAAQ,GAAG,CAAC,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YAC/C,MAAM,MAAM,GAAG,QAAQ,GAAG,GAAG,CAAA;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;YACnD,MAAM,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAA;YAE5D,SAAS,CAAC,OAAO,EAAE,CAAA;YACnB,YAAY,CAAC,OAAO,EAAE,CAAA;YACtB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAA;QAC3C,CAAC,CAAC,CACH,CAAA;QACD,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;QACjB,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;QAEpB,OAAO,QAAQ,CAAC,YAAY;YAC1B,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC;IAES,mBAAmB;QAC3B,OAAO,kBAAkB,CAAA;IAC3B,CAAC;IAEM,OAAO,CAAC,mBAA4B,IAAI;QAC7C,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;QACnD,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACjC,CAAC;IAEM,oBAAoB,CAAC,OAAqB;QAC/C,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;QACvE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACrB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAA;IACrC,CAAC;IAEM,uBAAuB,CAAC,OAAqB;QAClD,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAE/D,MAAM,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAE5E,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;QAEhE,OAAO,0BAA0B,CAAC,aAAa,CAAC,CAAA;IAClD,CAAC;IAES,aAAa,CAAC,OAAqB;QAE3C,MAAM,oBAAoB,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QAE1D,MAAM,uBAAuB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC,CAAA;QACvF,MAAM,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC,CAAA;QAE9E,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAA;QACjE,OAAO,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;IACxD,CAAC;CACF"} \ No newline at end of file diff --git a/build/ageGenderNet/extractParams.d.ts b/build/ageGenderNet/extractParams.d.ts deleted file mode 100644 index 12cc2d4..0000000 --- a/build/ageGenderNet/extractParams.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/ageGenderNet/extractParams.d.ts.map b/build/ageGenderNet/extractParams.d.ts.map deleted file mode 100644 index 30a66b0..0000000 --- a/build/ageGenderNet/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/ageGenderNet/extractParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,YAAY,EAAE,MAAM,WAAW,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAsBzG"} \ No newline at end of file diff --git a/build/ageGenderNet/extractParams.js b/build/ageGenderNet/extractParams.js deleted file mode 100644 index c3201fe..0000000 --- a/build/ageGenderNet/extractParams.js +++ /dev/null @@ -1,16 +0,0 @@ -import { extractFCParamsFactory, extractWeightsFactory } from '../common'; -export function extractParams(weights) { - const paramMappings = []; - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const extractFCParams = extractFCParamsFactory(extractWeights, paramMappings); - const age = extractFCParams(512, 1, 'fc/age'); - const gender = extractFCParams(512, 2, 'fc/gender'); - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { - paramMappings, - params: { fc: { age, gender } } - }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/ageGenderNet/extractParams.js.map b/build/ageGenderNet/extractParams.js.map deleted file mode 100644 index 12160f9..0000000 --- a/build/ageGenderNet/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/ageGenderNet/extractParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAgB,MAAM,WAAW,CAAC;AAGxF,MAAM,UAAU,aAAa,CAAC,OAAqB;IAEjD,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,cAAc,EACd,mBAAmB,EACpB,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAElC,MAAM,eAAe,GAAG,sBAAsB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IAE7E,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC7C,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC,EAAE,WAAW,CAAC,CAAA;IAEnD,IAAI,mBAAmB,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,kCAAkC,mBAAmB,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;KAClF;IAED,OAAO;QACL,aAAa;QACb,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;KAChC,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/ageGenderNet/extractParamsFromWeigthMap.d.ts b/build/ageGenderNet/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index 163969a..0000000 --- a/build/ageGenderNet/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/ageGenderNet/extractParamsFromWeigthMap.d.ts.map b/build/ageGenderNet/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index 5242977..0000000 --- a/build/ageGenderNet/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/ageGenderNet/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAmE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,GAC3B;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAsBtD"} \ No newline at end of file diff --git a/build/ageGenderNet/extractParamsFromWeigthMap.js b/build/ageGenderNet/extractParamsFromWeigthMap.js deleted file mode 100644 index 58e0d84..0000000 --- a/build/ageGenderNet/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,19 +0,0 @@ -import { disposeUnusedWeightTensors, extractWeightEntryFactory } from '../common'; -export function extractParamsFromWeigthMap(weightMap) { - const paramMappings = []; - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - function extractFcParams(prefix) { - const weights = extractWeightEntry(`${prefix}/weights`, 2); - const bias = extractWeightEntry(`${prefix}/bias`, 1); - return { weights, bias }; - } - const params = { - fc: { - age: extractFcParams('fc/age'), - gender: extractFcParams('fc/gender') - } - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/ageGenderNet/extractParamsFromWeigthMap.js.map b/build/ageGenderNet/extractParamsFromWeigthMap.js.map deleted file mode 100644 index df329f4..0000000 --- a/build/ageGenderNet/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/ageGenderNet/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAA0B,MAAM,WAAW,CAAC;AAG1G,MAAM,UAAU,0BAA0B,CACxC,SAA4B;IAG5B,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE9E,SAAS,eAAe,CAAC,MAAc;QACrC,MAAM,OAAO,GAAG,kBAAkB,CAAc,GAAG,MAAM,UAAU,EAAE,CAAC,CAAC,CAAA;QACvE,MAAM,IAAI,GAAG,kBAAkB,CAAc,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,CAAA;QACjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,MAAM,GAAG;QACb,EAAE,EAAE;YACF,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC;YAC9B,MAAM,EAAE,eAAe,CAAC,WAAW,CAAC;SACrC;KACF,CAAA;IAED,0BAA0B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAEpD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;AAClC,CAAC"} \ No newline at end of file diff --git a/build/ageGenderNet/index.d.ts b/build/ageGenderNet/index.d.ts deleted file mode 100644 index 3f6418e..0000000 --- a/build/ageGenderNet/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './AgeGenderNet'; -export * from './types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/ageGenderNet/index.d.ts.map b/build/ageGenderNet/index.d.ts.map deleted file mode 100644 index 119ec1f..0000000 --- a/build/ageGenderNet/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ageGenderNet/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"} \ No newline at end of file diff --git a/build/ageGenderNet/index.js b/build/ageGenderNet/index.js deleted file mode 100644 index 6ef6393..0000000 --- a/build/ageGenderNet/index.js +++ /dev/null @@ -1,3 +0,0 @@ -export * from './AgeGenderNet'; -export * from './types'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/ageGenderNet/index.js.map b/build/ageGenderNet/index.js.map deleted file mode 100644 index ede9f34..0000000 --- a/build/ageGenderNet/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ageGenderNet/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"} \ No newline at end of file diff --git a/build/ageGenderNet/types.d.ts b/build/ageGenderNet/types.d.ts deleted file mode 100644 index 07b4b6c..0000000 --- a/build/ageGenderNet/types.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FCParams } from '../common'; -export declare type AgeAndGenderPrediction = { - age: number; - gender: Gender; - genderProbability: number; -}; -export declare enum Gender { - FEMALE = "female", - MALE = "male" -} -export declare type NetOutput = { - age: tf.Tensor1D; - gender: tf.Tensor2D; -}; -export declare type NetParams = { - fc: { - age: FCParams; - gender: FCParams; - }; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/ageGenderNet/types.d.ts.map b/build/ageGenderNet/types.d.ts.map deleted file mode 100644 index c572ce1..0000000 --- a/build/ageGenderNet/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ageGenderNet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,oBAAY,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,oBAAY,MAAM;IAChB,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,oBAAY,SAAS,GAAG;IAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC;IAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAA;CAAE,CAAA;AAEjE,oBAAY,SAAS,GAAG;IACtB,EAAE,EAAE;QACF,GAAG,EAAE,QAAQ,CAAA;QACb,MAAM,EAAE,QAAQ,CAAA;KACjB,CAAA;CACF,CAAA"} \ No newline at end of file diff --git a/build/ageGenderNet/types.js b/build/ageGenderNet/types.js deleted file mode 100644 index 6808b5c..0000000 --- a/build/ageGenderNet/types.js +++ /dev/null @@ -1,6 +0,0 @@ -export var Gender; -(function (Gender) { - Gender["FEMALE"] = "female"; - Gender["MALE"] = "male"; -})(Gender || (Gender = {})); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/ageGenderNet/types.js.map b/build/ageGenderNet/types.js.map deleted file mode 100644 index 762fc2b..0000000 --- a/build/ageGenderNet/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ageGenderNet/types.ts"],"names":[],"mappings":"AAUA,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IAChB,2BAAiB,CAAA;IACjB,uBAAa,CAAA;AACf,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB"} \ No newline at end of file diff --git a/build/classes/BoundingBox.d.ts b/build/classes/BoundingBox.d.ts deleted file mode 100644 index fd66725..0000000 --- a/build/classes/BoundingBox.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Box } from './Box'; -export interface IBoundingBox { - left: number; - top: number; - right: number; - bottom: number; -} -export declare class BoundingBox extends Box implements IBoundingBox { - constructor(left: number, top: number, right: number, bottom: number, allowNegativeDimensions?: boolean); -} -//# sourceMappingURL=BoundingBox.d.ts.map \ No newline at end of file diff --git a/build/classes/BoundingBox.d.ts.map b/build/classes/BoundingBox.d.ts.map deleted file mode 100644 index a562d35..0000000 --- a/build/classes/BoundingBox.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BoundingBox.d.ts","sourceRoot":"","sources":["../../src/classes/BoundingBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,WAAY,SAAQ,GAAG,CAAC,WAAW,CAAE,YAAW,YAAY;gBAC3D,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAE,OAAe;CAG/G"} \ No newline at end of file diff --git a/build/classes/BoundingBox.js b/build/classes/BoundingBox.js deleted file mode 100644 index c7d5175..0000000 --- a/build/classes/BoundingBox.js +++ /dev/null @@ -1,7 +0,0 @@ -import { Box } from './Box'; -export class BoundingBox extends Box { - constructor(left, top, right, bottom, allowNegativeDimensions = false) { - super({ left, top, right, bottom }, allowNegativeDimensions); - } -} -//# sourceMappingURL=BoundingBox.js.map \ No newline at end of file diff --git a/build/classes/BoundingBox.js.map b/build/classes/BoundingBox.js.map deleted file mode 100644 index 8a61988..0000000 --- a/build/classes/BoundingBox.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BoundingBox.js","sourceRoot":"","sources":["../../src/classes/BoundingBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAS5B,MAAM,OAAO,WAAY,SAAQ,GAAgB;IAC/C,YAAY,IAAY,EAAE,GAAW,EAAE,KAAa,EAAE,MAAc,EAAE,0BAAmC,KAAK;QAC5G,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAA;IAC9D,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/Box.d.ts b/build/classes/Box.d.ts deleted file mode 100644 index 393e04b..0000000 --- a/build/classes/Box.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { IBoundingBox } from './BoundingBox'; -import { IDimensions } from './Dimensions'; -import { Point } from './Point'; -import { IRect } from './Rect'; -export declare class Box implements IBoundingBox, IRect { - static isRect(rect: any): boolean; - static assertIsValidBox(box: any, callee: string, allowNegativeDimensions?: boolean): void; - private _x; - private _y; - private _width; - private _height; - constructor(_box: IBoundingBox | IRect, allowNegativeDimensions?: boolean); - get x(): number; - get y(): number; - get width(): number; - get height(): number; - get left(): number; - get top(): number; - get right(): number; - get bottom(): number; - get area(): number; - get topLeft(): Point; - get topRight(): Point; - get bottomLeft(): Point; - get bottomRight(): Point; - round(): Box; - floor(): Box; - toSquare(): Box; - rescale(s: IDimensions | number): Box; - pad(padX: number, padY: number): Box; - clipAtImageBorders(imgWidth: number, imgHeight: number): Box; - shift(sx: number, sy: number): Box; - padAtBorders(imageHeight: number, imageWidth: number): { - dy: number; - edy: number; - dx: number; - edx: number; - y: number; - ey: number; - x: number; - ex: number; - w: number; - h: number; - }; - calibrate(region: Box): Box; -} -//# sourceMappingURL=Box.d.ts.map \ No newline at end of file diff --git a/build/classes/Box.d.ts.map b/build/classes/Box.d.ts.map deleted file mode 100644 index 72d5be2..0000000 --- a/build/classes/Box.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../src/classes/Box.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,qBAAa,GAAG,CAAC,OAAO,GAAG,GAAG,CAAE,YAAW,YAAY,EAAE,KAAK;WAE9C,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO;WAI1B,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAE,OAAe;IAUjG,OAAO,CAAC,EAAE,CAAQ;IAClB,OAAO,CAAC,EAAE,CAAQ;IAClB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;gBAEX,IAAI,EAAE,YAAY,GAAG,KAAK,EAAE,uBAAuB,GAAE,OAAc;IAsB/E,IAAW,CAAC,IAAI,MAAM,CAAmB;IACzC,IAAW,CAAC,IAAI,MAAM,CAAmB;IACzC,IAAW,KAAK,IAAI,MAAM,CAAuB;IACjD,IAAW,MAAM,IAAI,MAAM,CAAwB;IACnD,IAAW,IAAI,IAAI,MAAM,CAAkB;IAC3C,IAAW,GAAG,IAAI,MAAM,CAAkB;IAC1C,IAAW,KAAK,IAAI,MAAM,CAA+B;IACzD,IAAW,MAAM,IAAI,MAAM,CAAgC;IAC3D,IAAW,IAAI,IAAI,MAAM,CAAoC;IAC7D,IAAW,OAAO,IAAI,KAAK,CAA0C;IACrE,IAAW,QAAQ,IAAI,KAAK,CAA2C;IACvE,IAAW,UAAU,IAAI,KAAK,CAA6C;IAC3E,IAAW,WAAW,IAAI,KAAK,CAA8C;IAEtE,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC;IAMrB,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC;IAMrB,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC;IAexB,OAAO,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAW9C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAU7C,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAarE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAQ3C,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;;;;;;;;;;;;IAkCpD,SAAS,CAAC,MAAM,EAAE,GAAG;CAQ7B"} \ No newline at end of file diff --git a/build/classes/Box.js b/build/classes/Box.js deleted file mode 100644 index df4affa..0000000 --- a/build/classes/Box.js +++ /dev/null @@ -1,140 +0,0 @@ -import { isDimensions, isValidNumber } from '../utils'; -import { Point } from './Point'; -export class Box { - constructor(_box, allowNegativeDimensions = true) { - const box = (_box || {}); - const isBbox = [box.left, box.top, box.right, box.bottom].every(isValidNumber); - const isRect = [box.x, box.y, box.width, box.height].every(isValidNumber); - if (!isRect && !isBbox) { - throw new Error(`Box.constructor - expected box to be IBoundingBox | IRect, instead have ${JSON.stringify(box)}`); - } - const [x, y, width, height] = isRect - ? [box.x, box.y, box.width, box.height] - : [box.left, box.top, box.right - box.left, box.bottom - box.top]; - Box.assertIsValidBox({ x, y, width, height }, 'Box.constructor', allowNegativeDimensions); - this._x = x; - this._y = y; - this._width = width; - this._height = height; - } - static isRect(rect) { - return !!rect && [rect.x, rect.y, rect.width, rect.height].every(isValidNumber); - } - static assertIsValidBox(box, callee, allowNegativeDimensions = false) { - if (!Box.isRect(box)) { - throw new Error(`${callee} - invalid box: ${JSON.stringify(box)}, expected object with properties x, y, width, height`); - } - if (!allowNegativeDimensions && (box.width < 0 || box.height < 0)) { - throw new Error(`${callee} - width (${box.width}) and height (${box.height}) must be positive numbers`); - } - } - get x() { return this._x; } - get y() { return this._y; } - get width() { return this._width; } - get height() { return this._height; } - get left() { return this.x; } - get top() { return this.y; } - get right() { return this.x + this.width; } - get bottom() { return this.y + this.height; } - get area() { return this.width * this.height; } - get topLeft() { return new Point(this.left, this.top); } - get topRight() { return new Point(this.right, this.top); } - get bottomLeft() { return new Point(this.left, this.bottom); } - get bottomRight() { return new Point(this.right, this.bottom); } - round() { - const [x, y, width, height] = [this.x, this.y, this.width, this.height] - .map(val => Math.round(val)); - return new Box({ x, y, width, height }); - } - floor() { - const [x, y, width, height] = [this.x, this.y, this.width, this.height] - .map(val => Math.floor(val)); - return new Box({ x, y, width, height }); - } - toSquare() { - let { x, y, width, height } = this; - const diff = Math.abs(width - height); - if (width < height) { - x -= (diff / 2); - width += diff; - } - if (height < width) { - y -= (diff / 2); - height += diff; - } - return new Box({ x, y, width, height }); - } - rescale(s) { - const scaleX = isDimensions(s) ? s.width : s; - const scaleY = isDimensions(s) ? s.height : s; - return new Box({ - x: this.x * scaleX, - y: this.y * scaleY, - width: this.width * scaleX, - height: this.height * scaleY - }); - } - pad(padX, padY) { - let [x, y, width, height] = [ - this.x - (padX / 2), - this.y - (padY / 2), - this.width + padX, - this.height + padY - ]; - return new Box({ x, y, width, height }); - } - clipAtImageBorders(imgWidth, imgHeight) { - const { x, y, right, bottom } = this; - const clippedX = Math.max(x, 0); - const clippedY = Math.max(y, 0); - const newWidth = right - clippedX; - const newHeight = bottom - clippedY; - const clippedWidth = Math.min(newWidth, imgWidth - clippedX); - const clippedHeight = Math.min(newHeight, imgHeight - clippedY); - return (new Box({ x: clippedX, y: clippedY, width: clippedWidth, height: clippedHeight })).floor(); - } - shift(sx, sy) { - const { width, height } = this; - const x = this.x + sx; - const y = this.y + sy; - return new Box({ x, y, width, height }); - } - padAtBorders(imageHeight, imageWidth) { - const w = this.width + 1; - const h = this.height + 1; - let dx = 1; - let dy = 1; - let edx = w; - let edy = h; - let x = this.left; - let y = this.top; - let ex = this.right; - let ey = this.bottom; - if (ex > imageWidth) { - edx = -ex + imageWidth + w; - ex = imageWidth; - } - if (ey > imageHeight) { - edy = -ey + imageHeight + h; - ey = imageHeight; - } - if (x < 1) { - edy = 2 - x; - x = 1; - } - if (y < 1) { - edy = 2 - y; - y = 1; - } - return { dy, edy, dx, edx, y, ey, x, ex, w, h }; - } - calibrate(region) { - return new Box({ - left: this.left + (region.left * this.width), - top: this.top + (region.top * this.height), - right: this.right + (region.right * this.width), - bottom: this.bottom + (region.bottom * this.height) - }).toSquare().round(); - } -} -//# sourceMappingURL=Box.js.map \ No newline at end of file diff --git a/build/classes/Box.js.map b/build/classes/Box.js.map deleted file mode 100644 index 54d5794..0000000 --- a/build/classes/Box.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Box.js","sourceRoot":"","sources":["../../src/classes/Box.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/classes/Dimensions.d.ts b/build/classes/Dimensions.d.ts deleted file mode 100644 index 676fc7c..0000000 --- a/build/classes/Dimensions.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -export interface IDimensions { - width: number; - height: number; -} -export declare class Dimensions implements IDimensions { - private _width; - private _height; - constructor(width: number, height: number); - get width(): number; - get height(): number; - reverse(): Dimensions; -} -//# sourceMappingURL=Dimensions.d.ts.map \ No newline at end of file diff --git a/build/classes/Dimensions.d.ts.map b/build/classes/Dimensions.d.ts.map deleted file mode 100644 index eef5fe2..0000000 --- a/build/classes/Dimensions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Dimensions.d.ts","sourceRoot":"","sources":["../../src/classes/Dimensions.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,UAAW,YAAW,WAAW;IAE5C,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;gBAEX,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IASzC,IAAW,KAAK,IAAI,MAAM,CAAuB;IACjD,IAAW,MAAM,IAAI,MAAM,CAAwB;IAE5C,OAAO,IAAI,UAAU;CAG7B"} \ No newline at end of file diff --git a/build/classes/Dimensions.js b/build/classes/Dimensions.js deleted file mode 100644 index 02482c8..0000000 --- a/build/classes/Dimensions.js +++ /dev/null @@ -1,16 +0,0 @@ -import { isValidNumber } from '../utils'; -export class Dimensions { - constructor(width, height) { - if (!isValidNumber(width) || !isValidNumber(height)) { - throw new Error(`Dimensions.constructor - expected width and height to be valid numbers, instead have ${JSON.stringify({ width, height })}`); - } - this._width = width; - this._height = height; - } - get width() { return this._width; } - get height() { return this._height; } - reverse() { - return new Dimensions(1 / this.width, 1 / this.height); - } -} -//# sourceMappingURL=Dimensions.js.map \ No newline at end of file diff --git a/build/classes/Dimensions.js.map b/build/classes/Dimensions.js.map deleted file mode 100644 index bfe6d12..0000000 --- a/build/classes/Dimensions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Dimensions.js","sourceRoot":"","sources":["../../src/classes/Dimensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAOzC,MAAM,OAAO,UAAU;IAKrB,YAAY,KAAa,EAAE,MAAc;QACvC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;YACnD,MAAM,IAAI,KAAK,CAAC,wFAAwF,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;SAC7I;QAED,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACvB,CAAC;IAED,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;IACjD,IAAW,MAAM,KAAa,OAAO,IAAI,CAAC,OAAO,CAAA,CAAC,CAAC;IAE5C,OAAO;QACZ,OAAO,IAAI,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;IACxD,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/FaceDetection.d.ts b/build/classes/FaceDetection.d.ts deleted file mode 100644 index d0beecb..0000000 --- a/build/classes/FaceDetection.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Box } from './Box'; -import { IDimensions } from './Dimensions'; -import { ObjectDetection } from './ObjectDetection'; -import { Rect } from './Rect'; -export interface IFaceDetecion { - score: number; - box: Box; -} -export declare class FaceDetection extends ObjectDetection implements IFaceDetecion { - constructor(score: number, relativeBox: Rect, imageDims: IDimensions); - forSize(width: number, height: number): FaceDetection; -} -//# sourceMappingURL=FaceDetection.d.ts.map \ No newline at end of file diff --git a/build/classes/FaceDetection.d.ts.map b/build/classes/FaceDetection.d.ts.map deleted file mode 100644 index 82ba184..0000000 --- a/build/classes/FaceDetection.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceDetection.d.ts","sourceRoot":"","sources":["../../src/classes/FaceDetection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,GAAG,CAAA;CACT;AAED,qBAAa,aAAc,SAAQ,eAAgB,YAAW,aAAa;gBAEvE,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,IAAI,EACjB,SAAS,EAAE,WAAW;IAKjB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa;CAI7D"} \ No newline at end of file diff --git a/build/classes/FaceDetection.js b/build/classes/FaceDetection.js deleted file mode 100644 index e685cdf..0000000 --- a/build/classes/FaceDetection.js +++ /dev/null @@ -1,11 +0,0 @@ -import { ObjectDetection } from './ObjectDetection'; -export class FaceDetection extends ObjectDetection { - constructor(score, relativeBox, imageDims) { - super(score, score, '', relativeBox, imageDims); - } - forSize(width, height) { - const { score, relativeBox, imageDims } = super.forSize(width, height); - return new FaceDetection(score, relativeBox, imageDims); - } -} -//# sourceMappingURL=FaceDetection.js.map \ No newline at end of file diff --git a/build/classes/FaceDetection.js.map b/build/classes/FaceDetection.js.map deleted file mode 100644 index 9d44742..0000000 --- a/build/classes/FaceDetection.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceDetection.js","sourceRoot":"","sources":["../../src/classes/FaceDetection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQpD,MAAM,OAAO,aAAc,SAAQ,eAAe;IAChD,YACE,KAAa,EACb,WAAiB,EACjB,SAAsB;QAEtB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,CAAA;IACjD,CAAC;IAEM,OAAO,CAAC,KAAa,EAAE,MAAc;QAC1C,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACtE,OAAO,IAAI,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAA;IACzD,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/FaceLandmarks.d.ts b/build/classes/FaceLandmarks.d.ts deleted file mode 100644 index ed8e4b4..0000000 --- a/build/classes/FaceLandmarks.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { IBoundingBox } from './BoundingBox'; -import { Box } from './Box'; -import { Dimensions, IDimensions } from './Dimensions'; -import { FaceDetection } from './FaceDetection'; -import { Point } from './Point'; -import { IRect } from './Rect'; -export interface IFaceLandmarks { - positions: Point[]; - shift: Point; -} -export declare class FaceLandmarks implements IFaceLandmarks { - protected _shift: Point; - protected _positions: Point[]; - protected _imgDims: Dimensions; - constructor(relativeFaceLandmarkPositions: Point[], imgDims: IDimensions, shift?: Point); - get shift(): Point; - get imageWidth(): number; - get imageHeight(): number; - get positions(): Point[]; - get relativePositions(): Point[]; - forSize(width: number, height: number): T; - shiftBy(x: number, y: number): T; - shiftByPoint(pt: Point): T; - /** - * Aligns the face landmarks after face detection from the relative positions of the faces - * bounding box, or it's current shift. This function should be used to align the face images - * after face detection has been performed, before they are passed to the face recognition net. - * This will make the computed face descriptor more accurate. - * - * @param detection (optional) The bounding box of the face or the face detection result. If - * no argument was passed the position of the face landmarks are assumed to be relative to - * it's current shift. - * @returns The bounding box of the aligned face. - */ - align(detection?: FaceDetection | IRect | IBoundingBox | null, options?: { - useDlibAlignment?: boolean; - minBoxPadding?: number; - }): Box; - private alignDlib; - private alignMinBbox; - protected getRefPointsForAlignment(): Point[]; -} -//# sourceMappingURL=FaceLandmarks.d.ts.map \ No newline at end of file diff --git a/build/classes/FaceLandmarks.d.ts.map b/build/classes/FaceLandmarks.d.ts.map deleted file mode 100644 index 6d5b398..0000000 --- a/build/classes/FaceLandmarks.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmarks.d.ts","sourceRoot":"","sources":["../../src/classes/FaceLandmarks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAQ,MAAM,QAAQ,CAAC;AAOrC,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,KAAK,EAAE,CAAA;IAClB,KAAK,EAAE,KAAK,CAAA;CACb;AAED,qBAAa,aAAc,YAAW,cAAc;IAClD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAA;IACvB,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,CAAA;IAC7B,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAA;gBAG5B,6BAA6B,EAAE,KAAK,EAAE,EACtC,OAAO,EAAE,WAAW,EACpB,KAAK,GAAE,KAAuB;IAUhC,IAAW,KAAK,IAAI,KAAK,CAAmD;IAC5E,IAAW,UAAU,IAAI,MAAM,CAA+B;IAC9D,IAAW,WAAW,IAAI,MAAM,CAAgC;IAChE,IAAW,SAAS,IAAI,KAAK,EAAE,CAA2B;IAC1D,IAAW,iBAAiB,IAAI,KAAK,EAAE,CAItC;IAEM,OAAO,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;IAOlE,OAAO,CAAC,CAAC,SAAS,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC;IAQzD,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC;IAI1D;;;;;;;;;;OAUG;IACI,KAAK,CACV,SAAS,CAAC,EAAE,aAAa,GAAG,KAAK,GAAG,YAAY,GAAG,IAAI,EACvD,OAAO,GAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAQ,GACpE,GAAG;IAkBN,OAAO,CAAC,SAAS;IAkBjB,OAAO,CAAC,YAAY;IAKpB,SAAS,CAAC,wBAAwB,IAAI,KAAK,EAAE;CAG9C"} \ No newline at end of file diff --git a/build/classes/FaceLandmarks.js b/build/classes/FaceLandmarks.js deleted file mode 100644 index cb83e12..0000000 --- a/build/classes/FaceLandmarks.js +++ /dev/null @@ -1,79 +0,0 @@ -import { minBbox } from '../ops'; -import { getCenterPoint } from '../utils'; -import { Box } from './Box'; -import { Dimensions } from './Dimensions'; -import { FaceDetection } from './FaceDetection'; -import { Point } from './Point'; -import { Rect } from './Rect'; -// face alignment constants -const relX = 0.5; -const relY = 0.43; -const relScale = 0.45; -export class FaceLandmarks { - constructor(relativeFaceLandmarkPositions, imgDims, shift = new Point(0, 0)) { - const { width, height } = imgDims; - this._imgDims = new Dimensions(width, height); - this._shift = shift; - this._positions = relativeFaceLandmarkPositions.map(pt => pt.mul(new Point(width, height)).add(shift)); - } - get shift() { return new Point(this._shift.x, this._shift.y); } - get imageWidth() { return this._imgDims.width; } - get imageHeight() { return this._imgDims.height; } - get positions() { return this._positions; } - get relativePositions() { - return this._positions.map(pt => pt.sub(this._shift).div(new Point(this.imageWidth, this.imageHeight))); - } - forSize(width, height) { - return new this.constructor(this.relativePositions, { width, height }); - } - shiftBy(x, y) { - return new this.constructor(this.relativePositions, this._imgDims, new Point(x, y)); - } - shiftByPoint(pt) { - return this.shiftBy(pt.x, pt.y); - } - /** - * Aligns the face landmarks after face detection from the relative positions of the faces - * bounding box, or it's current shift. This function should be used to align the face images - * after face detection has been performed, before they are passed to the face recognition net. - * This will make the computed face descriptor more accurate. - * - * @param detection (optional) The bounding box of the face or the face detection result. If - * no argument was passed the position of the face landmarks are assumed to be relative to - * it's current shift. - * @returns The bounding box of the aligned face. - */ - align(detection, options = {}) { - if (detection) { - const box = detection instanceof FaceDetection - ? detection.box.floor() - : new Box(detection); - return this.shiftBy(box.x, box.y).align(null, options); - } - const { useDlibAlignment, minBoxPadding } = Object.assign({}, { useDlibAlignment: false, minBoxPadding: 0.2 }, options); - if (useDlibAlignment) { - return this.alignDlib(); - } - return this.alignMinBbox(minBoxPadding); - } - alignDlib() { - const centers = this.getRefPointsForAlignment(); - const [leftEyeCenter, rightEyeCenter, mouthCenter] = centers; - const distToMouth = (pt) => mouthCenter.sub(pt).magnitude(); - const eyeToMouthDist = (distToMouth(leftEyeCenter) + distToMouth(rightEyeCenter)) / 2; - const size = Math.floor(eyeToMouthDist / relScale); - const refPoint = getCenterPoint(centers); - // TODO: pad in case rectangle is out of image bounds - const x = Math.floor(Math.max(0, refPoint.x - (relX * size))); - const y = Math.floor(Math.max(0, refPoint.y - (relY * size))); - return new Rect(x, y, Math.min(size, this.imageWidth + x), Math.min(size, this.imageHeight + y)); - } - alignMinBbox(padding) { - const box = minBbox(this.positions); - return box.pad(box.width * padding, box.height * padding); - } - getRefPointsForAlignment() { - throw new Error('getRefPointsForAlignment not implemented by base class'); - } -} -//# sourceMappingURL=FaceLandmarks.js.map \ No newline at end of file diff --git a/build/classes/FaceLandmarks.js.map b/build/classes/FaceLandmarks.js.map deleted file mode 100644 index c9efbf1..0000000 --- a/build/classes/FaceLandmarks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmarks.js","sourceRoot":"","sources":["../../src/classes/FaceLandmarks.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/classes/FaceLandmarks5.d.ts b/build/classes/FaceLandmarks5.d.ts deleted file mode 100644 index b214eb5..0000000 --- a/build/classes/FaceLandmarks5.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { FaceLandmarks } from './FaceLandmarks'; -import { Point } from './Point'; -export declare class FaceLandmarks5 extends FaceLandmarks { - protected getRefPointsForAlignment(): Point[]; -} -//# sourceMappingURL=FaceLandmarks5.d.ts.map \ No newline at end of file diff --git a/build/classes/FaceLandmarks5.d.ts.map b/build/classes/FaceLandmarks5.d.ts.map deleted file mode 100644 index bddef32..0000000 --- a/build/classes/FaceLandmarks5.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmarks5.d.ts","sourceRoot":"","sources":["../../src/classes/FaceLandmarks5.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,qBAAa,cAAe,SAAQ,aAAa;IAE/C,SAAS,CAAC,wBAAwB,IAAI,KAAK,EAAE;CAQ9C"} \ No newline at end of file diff --git a/build/classes/FaceLandmarks5.js b/build/classes/FaceLandmarks5.js deleted file mode 100644 index 4f4d6f0..0000000 --- a/build/classes/FaceLandmarks5.js +++ /dev/null @@ -1,13 +0,0 @@ -import { getCenterPoint } from '../utils'; -import { FaceLandmarks } from './FaceLandmarks'; -export class FaceLandmarks5 extends FaceLandmarks { - getRefPointsForAlignment() { - const pts = this.positions; - return [ - pts[0], - pts[1], - getCenterPoint([pts[3], pts[4]]) - ]; - } -} -//# sourceMappingURL=FaceLandmarks5.js.map \ No newline at end of file diff --git a/build/classes/FaceLandmarks5.js.map b/build/classes/FaceLandmarks5.js.map deleted file mode 100644 index 45742b8..0000000 --- a/build/classes/FaceLandmarks5.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmarks5.js","sourceRoot":"","sources":["../../src/classes/FaceLandmarks5.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,OAAO,cAAe,SAAQ,aAAa;IAErC,wBAAwB;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAA;QAC1B,OAAO;YACL,GAAG,CAAC,CAAC,CAAC;YACN,GAAG,CAAC,CAAC,CAAC;YACN,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC,CAAA;IACH,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/FaceLandmarks68.d.ts b/build/classes/FaceLandmarks68.d.ts deleted file mode 100644 index e4e86de..0000000 --- a/build/classes/FaceLandmarks68.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { FaceLandmarks } from './FaceLandmarks'; -import { Point } from './Point'; -export declare class FaceLandmarks68 extends FaceLandmarks { - getJawOutline(): Point[]; - getLeftEyeBrow(): Point[]; - getRightEyeBrow(): Point[]; - getNose(): Point[]; - getLeftEye(): Point[]; - getRightEye(): Point[]; - getMouth(): Point[]; - protected getRefPointsForAlignment(): Point[]; -} -//# sourceMappingURL=FaceLandmarks68.d.ts.map \ No newline at end of file diff --git a/build/classes/FaceLandmarks68.d.ts.map b/build/classes/FaceLandmarks68.d.ts.map deleted file mode 100644 index a0918c6..0000000 --- a/build/classes/FaceLandmarks68.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmarks68.d.ts","sourceRoot":"","sources":["../../src/classes/FaceLandmarks68.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,eAAgB,SAAQ,aAAa;IACzC,aAAa,IAAI,KAAK,EAAE;IAIxB,cAAc,IAAI,KAAK,EAAE;IAIzB,eAAe,IAAI,KAAK,EAAE;IAI1B,OAAO,IAAI,KAAK,EAAE;IAIlB,UAAU,IAAI,KAAK,EAAE;IAIrB,WAAW,IAAI,KAAK,EAAE;IAItB,QAAQ,IAAI,KAAK,EAAE;IAI1B,SAAS,CAAC,wBAAwB,IAAI,KAAK,EAAE;CAO9C"} \ No newline at end of file diff --git a/build/classes/FaceLandmarks68.js b/build/classes/FaceLandmarks68.js deleted file mode 100644 index b802995..0000000 --- a/build/classes/FaceLandmarks68.js +++ /dev/null @@ -1,33 +0,0 @@ -import { getCenterPoint } from '../utils'; -import { FaceLandmarks } from './FaceLandmarks'; -export class FaceLandmarks68 extends FaceLandmarks { - getJawOutline() { - return this.positions.slice(0, 17); - } - getLeftEyeBrow() { - return this.positions.slice(17, 22); - } - getRightEyeBrow() { - return this.positions.slice(22, 27); - } - getNose() { - return this.positions.slice(27, 36); - } - getLeftEye() { - return this.positions.slice(36, 42); - } - getRightEye() { - return this.positions.slice(42, 48); - } - getMouth() { - return this.positions.slice(48, 68); - } - getRefPointsForAlignment() { - return [ - this.getLeftEye(), - this.getRightEye(), - this.getMouth() - ].map(getCenterPoint); - } -} -//# sourceMappingURL=FaceLandmarks68.js.map \ No newline at end of file diff --git a/build/classes/FaceLandmarks68.js.map b/build/classes/FaceLandmarks68.js.map deleted file mode 100644 index 81207b8..0000000 --- a/build/classes/FaceLandmarks68.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmarks68.js","sourceRoot":"","sources":["../../src/classes/FaceLandmarks68.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,OAAO,eAAgB,SAAQ,aAAa;IACzC,aAAa;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACpC,CAAC;IAEM,cAAc;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC;IAEM,eAAe;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC;IAES,wBAAwB;QAChC,OAAO;YACL,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,QAAQ,EAAE;SAChB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IACvB,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/FaceMatch.d.ts b/build/classes/FaceMatch.d.ts deleted file mode 100644 index aa00ac0..0000000 --- a/build/classes/FaceMatch.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -export interface IFaceMatch { - label: string; - distance: number; -} -export declare class FaceMatch implements IFaceMatch { - private _label; - private _distance; - constructor(label: string, distance: number); - get label(): string; - get distance(): number; - toString(withDistance?: boolean): string; -} -//# sourceMappingURL=FaceMatch.d.ts.map \ No newline at end of file diff --git a/build/classes/FaceMatch.d.ts.map b/build/classes/FaceMatch.d.ts.map deleted file mode 100644 index 6eb8c49..0000000 --- a/build/classes/FaceMatch.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceMatch.d.ts","sourceRoot":"","sources":["../../src/classes/FaceMatch.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,SAAU,YAAW,UAAU;IAC1C,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAAQ;gBAEb,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAK3C,IAAW,KAAK,IAAI,MAAM,CAAuB;IACjD,IAAW,QAAQ,IAAI,MAAM,CAA0B;IAEhD,QAAQ,CAAC,YAAY,GAAE,OAAc,GAAG,MAAM;CAGtD"} \ No newline at end of file diff --git a/build/classes/FaceMatch.js b/build/classes/FaceMatch.js deleted file mode 100644 index 1a3cf1f..0000000 --- a/build/classes/FaceMatch.js +++ /dev/null @@ -1,13 +0,0 @@ -import { round } from '../utils'; -export class FaceMatch { - constructor(label, distance) { - this._label = label; - this._distance = distance; - } - get label() { return this._label; } - get distance() { return this._distance; } - toString(withDistance = true) { - return `${this.label}${withDistance ? ` (${round(this.distance)})` : ''}`; - } -} -//# sourceMappingURL=FaceMatch.js.map \ No newline at end of file diff --git a/build/classes/FaceMatch.js.map b/build/classes/FaceMatch.js.map deleted file mode 100644 index 5db9542..0000000 --- a/build/classes/FaceMatch.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceMatch.js","sourceRoot":"","sources":["../../src/classes/FaceMatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAOjC,MAAM,OAAO,SAAS;IAIpB,YAAY,KAAa,EAAE,QAAgB;QACzC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;IAC3B,CAAC;IAED,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;IACjD,IAAW,QAAQ,KAAa,OAAO,IAAI,CAAC,SAAS,CAAA,CAAC,CAAC;IAEhD,QAAQ,CAAC,eAAwB,IAAI;QAC1C,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IAC3E,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/LabeledBox.d.ts b/build/classes/LabeledBox.d.ts deleted file mode 100644 index 453aa59..0000000 --- a/build/classes/LabeledBox.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { IBoundingBox } from './BoundingBox'; -import { Box } from './Box'; -import { IRect } from './Rect'; -export declare class LabeledBox extends Box { - static assertIsValidLabeledBox(box: any, callee: string): void; - private _label; - constructor(box: IBoundingBox | IRect | any, label: number); - get label(): number; -} -//# sourceMappingURL=LabeledBox.d.ts.map \ No newline at end of file diff --git a/build/classes/LabeledBox.d.ts.map b/build/classes/LabeledBox.d.ts.map deleted file mode 100644 index a7d3856..0000000 --- a/build/classes/LabeledBox.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LabeledBox.d.ts","sourceRoot":"","sources":["../../src/classes/LabeledBox.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,qBAAa,UAAW,SAAQ,GAAG,CAAC,UAAU,CAAC;WAE/B,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM;IAQ9D,OAAO,CAAC,MAAM,CAAQ;gBAEV,GAAG,EAAE,YAAY,GAAG,KAAK,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM;IAK1D,IAAW,KAAK,IAAI,MAAM,CAAuB;CAElD"} \ No newline at end of file diff --git a/build/classes/LabeledBox.js b/build/classes/LabeledBox.js deleted file mode 100644 index 49f2579..0000000 --- a/build/classes/LabeledBox.js +++ /dev/null @@ -1,16 +0,0 @@ -import { isValidNumber } from '../utils'; -import { Box } from './Box'; -export class LabeledBox extends Box { - constructor(box, label) { - super(box); - this._label = label; - } - static assertIsValidLabeledBox(box, callee) { - Box.assertIsValidBox(box, callee); - if (!isValidNumber(box.label)) { - throw new Error(`${callee} - expected property label (${box.label}) to be a number`); - } - } - get label() { return this._label; } -} -//# sourceMappingURL=LabeledBox.js.map \ No newline at end of file diff --git a/build/classes/LabeledBox.js.map b/build/classes/LabeledBox.js.map deleted file mode 100644 index 8b65e62..0000000 --- a/build/classes/LabeledBox.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LabeledBox.js","sourceRoot":"","sources":["../../src/classes/LabeledBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,MAAM,OAAO,UAAW,SAAQ,GAAe;IAY7C,YAAY,GAA+B,EAAE,KAAa;QACxD,KAAK,CAAC,GAAG,CAAC,CAAA;QACV,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;IACrB,CAAC;IAbM,MAAM,CAAC,uBAAuB,CAAC,GAAQ,EAAE,MAAc;QAC5D,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAEjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,+BAA+B,GAAG,CAAC,KAAK,kBAAkB,CAAC,CAAA;SACrF;IACH,CAAC;IASD,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;CAElD"} \ No newline at end of file diff --git a/build/classes/LabeledFaceDescriptors.d.ts b/build/classes/LabeledFaceDescriptors.d.ts deleted file mode 100644 index 6f6adef..0000000 --- a/build/classes/LabeledFaceDescriptors.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare class LabeledFaceDescriptors { - private _label; - private _descriptors; - constructor(label: string, descriptors: Float32Array[]); - get label(): string; - get descriptors(): Float32Array[]; - toJSON(): any; - static fromJSON(json: any): LabeledFaceDescriptors; -} -//# sourceMappingURL=LabeledFaceDescriptors.d.ts.map \ No newline at end of file diff --git a/build/classes/LabeledFaceDescriptors.d.ts.map b/build/classes/LabeledFaceDescriptors.d.ts.map deleted file mode 100644 index 75f469b..0000000 --- a/build/classes/LabeledFaceDescriptors.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LabeledFaceDescriptors.d.ts","sourceRoot":"","sources":["../../src/classes/LabeledFaceDescriptors.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,YAAY,CAAgB;gBAExB,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE;IAatD,IAAW,KAAK,IAAI,MAAM,CAAuB;IACjD,IAAW,WAAW,IAAI,YAAY,EAAE,CAA6B;IAE9D,MAAM,IAAI,GAAG;WAON,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,sBAAsB;CAO1D"} \ No newline at end of file diff --git a/build/classes/LabeledFaceDescriptors.js b/build/classes/LabeledFaceDescriptors.js deleted file mode 100644 index c41093f..0000000 --- a/build/classes/LabeledFaceDescriptors.js +++ /dev/null @@ -1,27 +0,0 @@ -export class LabeledFaceDescriptors { - constructor(label, descriptors) { - if (!(typeof label === 'string')) { - throw new Error('LabeledFaceDescriptors - constructor expected label to be a string'); - } - if (!Array.isArray(descriptors) || descriptors.some(desc => !(desc instanceof Float32Array))) { - throw new Error('LabeledFaceDescriptors - constructor expected descriptors to be an array of Float32Array'); - } - this._label = label; - this._descriptors = descriptors; - } - get label() { return this._label; } - get descriptors() { return this._descriptors; } - toJSON() { - return { - label: this.label, - descriptors: this.descriptors.map((d) => Array.from(d)) - }; - } - static fromJSON(json) { - const descriptors = json.descriptors.map((d) => { - return new Float32Array(d); - }); - return new LabeledFaceDescriptors(json.label, descriptors); - } -} -//# sourceMappingURL=LabeledFaceDescriptors.js.map \ No newline at end of file diff --git a/build/classes/LabeledFaceDescriptors.js.map b/build/classes/LabeledFaceDescriptors.js.map deleted file mode 100644 index 1fe1609..0000000 --- a/build/classes/LabeledFaceDescriptors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LabeledFaceDescriptors.js","sourceRoot":"","sources":["../../src/classes/LabeledFaceDescriptors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAsB;IAIjC,YAAY,KAAa,EAAE,WAA2B;QACpD,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;SACtF;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,YAAY,YAAY,CAAC,CAAC,EAAE;YAC5F,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAA;SAC5G;QAED,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAA;IACjC,CAAC;IAED,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;IACjD,IAAW,WAAW,KAAqB,OAAO,IAAI,CAAC,YAAY,CAAA,CAAC,CAAC;IAE9D,MAAM;QACX,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxD,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAS;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;YAClD,OAAO,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC;CAEF"} \ No newline at end of file diff --git a/build/classes/ObjectDetection.d.ts b/build/classes/ObjectDetection.d.ts deleted file mode 100644 index b64347d..0000000 --- a/build/classes/ObjectDetection.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Box } from './Box'; -import { Dimensions, IDimensions } from './Dimensions'; -import { IRect } from './Rect'; -export declare class ObjectDetection { - private _score; - private _classScore; - private _className; - private _box; - private _imageDims; - constructor(score: number, classScore: number, className: string, relativeBox: IRect, imageDims: IDimensions); - get score(): number; - get classScore(): number; - get className(): string; - get box(): Box; - get imageDims(): Dimensions; - get imageWidth(): number; - get imageHeight(): number; - get relativeBox(): Box; - forSize(width: number, height: number): ObjectDetection; -} -//# sourceMappingURL=ObjectDetection.d.ts.map \ No newline at end of file diff --git a/build/classes/ObjectDetection.d.ts.map b/build/classes/ObjectDetection.d.ts.map deleted file mode 100644 index a949c32..0000000 --- a/build/classes/ObjectDetection.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ObjectDetection.d.ts","sourceRoot":"","sources":["../../src/classes/ObjectDetection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,KAAK,EAAQ,MAAM,QAAQ,CAAC;AAErC,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,UAAU,CAAY;gBAG5B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,KAAK,EAClB,SAAS,EAAE,WAAW;IASxB,IAAW,KAAK,IAAI,MAAM,CAAuB;IACjD,IAAW,UAAU,IAAI,MAAM,CAA4B;IAC3D,IAAW,SAAS,IAAI,MAAM,CAA2B;IACzD,IAAW,GAAG,IAAI,GAAG,CAAqB;IAC1C,IAAW,SAAS,IAAI,UAAU,CAA2B;IAC7D,IAAW,UAAU,IAAI,MAAM,CAAgC;IAC/D,IAAW,WAAW,IAAI,MAAM,CAAiC;IACjE,IAAW,WAAW,IAAI,GAAG,CAAgE;IAEtF,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe;CAS/D"} \ No newline at end of file diff --git a/build/classes/ObjectDetection.js b/build/classes/ObjectDetection.js deleted file mode 100644 index b4af12d..0000000 --- a/build/classes/ObjectDetection.js +++ /dev/null @@ -1,23 +0,0 @@ -import { Box } from './Box'; -import { Dimensions } from './Dimensions'; -export class ObjectDetection { - constructor(score, classScore, className, relativeBox, imageDims) { - this._imageDims = new Dimensions(imageDims.width, imageDims.height); - this._score = score; - this._classScore = classScore; - this._className = className; - this._box = new Box(relativeBox).rescale(this._imageDims); - } - get score() { return this._score; } - get classScore() { return this._classScore; } - get className() { return this._className; } - get box() { return this._box; } - get imageDims() { return this._imageDims; } - get imageWidth() { return this.imageDims.width; } - get imageHeight() { return this.imageDims.height; } - get relativeBox() { return new Box(this._box).rescale(this.imageDims.reverse()); } - forSize(width, height) { - return new ObjectDetection(this.score, this.classScore, this.className, this.relativeBox, { width, height }); - } -} -//# sourceMappingURL=ObjectDetection.js.map \ No newline at end of file diff --git a/build/classes/ObjectDetection.js.map b/build/classes/ObjectDetection.js.map deleted file mode 100644 index 8e8f888..0000000 --- a/build/classes/ObjectDetection.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ObjectDetection.js","sourceRoot":"","sources":["../../src/classes/ObjectDetection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAe,MAAM,cAAc,CAAC;AAGvD,MAAM,OAAO,eAAe;IAO1B,YACE,KAAa,EACb,UAAkB,EAClB,SAAiB,EACjB,WAAkB,EAClB,SAAsB;QAEtB,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;QACnE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAA;QAC7B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC3D,CAAC;IAED,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;IACjD,IAAW,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAA,CAAC,CAAC;IAC3D,IAAW,SAAS,KAAa,OAAO,IAAI,CAAC,UAAU,CAAA,CAAC,CAAC;IACzD,IAAW,GAAG,KAAU,OAAO,IAAI,CAAC,IAAI,CAAA,CAAC,CAAC;IAC1C,IAAW,SAAS,KAAiB,OAAO,IAAI,CAAC,UAAU,CAAA,CAAC,CAAC;IAC7D,IAAW,UAAU,KAAa,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA,CAAC,CAAC;IAC/D,IAAW,WAAW,KAAa,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAA,CAAC,CAAC;IACjE,IAAW,WAAW,KAAU,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAA,CAAC,CAAC;IAEtF,OAAO,CAAC,KAAa,EAAE,MAAc;QAC1C,OAAO,IAAI,eAAe,CACxB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,EAAE,KAAK,EAAE,MAAM,EAAC,CACjB,CAAA;IACH,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/Point.d.ts b/build/classes/Point.d.ts deleted file mode 100644 index 286fe69..0000000 --- a/build/classes/Point.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -export interface IPoint { - x: number; - y: number; -} -export declare class Point implements IPoint { - private _x; - private _y; - constructor(x: number, y: number); - get x(): number; - get y(): number; - add(pt: IPoint): Point; - sub(pt: IPoint): Point; - mul(pt: IPoint): Point; - div(pt: IPoint): Point; - abs(): Point; - magnitude(): number; - floor(): Point; -} -//# sourceMappingURL=Point.d.ts.map \ No newline at end of file diff --git a/build/classes/Point.d.ts.map b/build/classes/Point.d.ts.map deleted file mode 100644 index 7206d1a..0000000 --- a/build/classes/Point.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Point.d.ts","sourceRoot":"","sources":["../../src/classes/Point.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,qBAAa,KAAM,YAAW,MAAM;IAClC,OAAO,CAAC,EAAE,CAAQ;IAClB,OAAO,CAAC,EAAE,CAAQ;gBAEN,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAKhC,IAAI,CAAC,IAAI,MAAM,CAAmB;IAClC,IAAI,CAAC,IAAI,MAAM,CAAmB;IAE3B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK;IAItB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK;IAItB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK;IAItB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK;IAItB,GAAG,IAAI,KAAK;IAIZ,SAAS,IAAI,MAAM;IAInB,KAAK,IAAI,KAAK;CAGtB"} \ No newline at end of file diff --git a/build/classes/Point.js b/build/classes/Point.js deleted file mode 100644 index 1cd1ac0..0000000 --- a/build/classes/Point.js +++ /dev/null @@ -1,30 +0,0 @@ -export class Point { - constructor(x, y) { - this._x = x; - this._y = y; - } - get x() { return this._x; } - get y() { return this._y; } - add(pt) { - return new Point(this.x + pt.x, this.y + pt.y); - } - sub(pt) { - return new Point(this.x - pt.x, this.y - pt.y); - } - mul(pt) { - return new Point(this.x * pt.x, this.y * pt.y); - } - div(pt) { - return new Point(this.x / pt.x, this.y / pt.y); - } - abs() { - return new Point(Math.abs(this.x), Math.abs(this.y)); - } - magnitude() { - return Math.sqrt(Math.pow(this.x, 2) + Math.pow(this.y, 2)); - } - floor() { - return new Point(Math.floor(this.x), Math.floor(this.y)); - } -} -//# sourceMappingURL=Point.js.map \ No newline at end of file diff --git a/build/classes/Point.js.map b/build/classes/Point.js.map deleted file mode 100644 index 9e94353..0000000 --- a/build/classes/Point.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Point.js","sourceRoot":"","sources":["../../src/classes/Point.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,KAAK;IAIhB,YAAY,CAAS,EAAE,CAAS;QAC9B,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IACb,CAAC;IAED,IAAI,CAAC,KAAa,OAAO,IAAI,CAAC,EAAE,CAAA,CAAC,CAAC;IAClC,IAAI,CAAC,KAAa,OAAO,IAAI,CAAC,EAAE,CAAA,CAAC,CAAC;IAE3B,GAAG,CAAC,EAAU;QACnB,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IAChD,CAAC;IAEM,GAAG,CAAC,EAAU;QACnB,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IAChD,CAAC;IAEM,GAAG,CAAC,EAAU;QACnB,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IAChD,CAAC;IAEM,GAAG,CAAC,EAAU;QACnB,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IAChD,CAAC;IAEM,GAAG;QACR,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACtD,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7D,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1D,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/PredictedBox.d.ts b/build/classes/PredictedBox.d.ts deleted file mode 100644 index b96772b..0000000 --- a/build/classes/PredictedBox.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { IBoundingBox } from './BoundingBox'; -import { LabeledBox } from './LabeledBox'; -import { IRect } from './Rect'; -export declare class PredictedBox extends LabeledBox { - static assertIsValidPredictedBox(box: any, callee: string): void; - private _score; - private _classScore; - constructor(box: IBoundingBox | IRect | any, label: number, score: number, classScore: number); - get score(): number; - get classScore(): number; -} -//# sourceMappingURL=PredictedBox.d.ts.map \ No newline at end of file diff --git a/build/classes/PredictedBox.d.ts.map b/build/classes/PredictedBox.d.ts.map deleted file mode 100644 index 287999a..0000000 --- a/build/classes/PredictedBox.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PredictedBox.d.ts","sourceRoot":"","sources":["../../src/classes/PredictedBox.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,qBAAa,YAAa,SAAQ,UAAU;WAE5B,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM;IAWhE,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,WAAW,CAAQ;gBAEf,GAAG,EAAE,YAAY,GAAG,KAAK,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAM7F,IAAW,KAAK,IAAI,MAAM,CAAuB;IACjD,IAAW,UAAU,IAAI,MAAM,CAA4B;CAE5D"} \ No newline at end of file diff --git a/build/classes/PredictedBox.js b/build/classes/PredictedBox.js deleted file mode 100644 index ad33c9c..0000000 --- a/build/classes/PredictedBox.js +++ /dev/null @@ -1,19 +0,0 @@ -import { isValidProbablitiy } from '../utils'; -import { LabeledBox } from './LabeledBox'; -export class PredictedBox extends LabeledBox { - constructor(box, label, score, classScore) { - super(box, label); - this._score = score; - this._classScore = classScore; - } - static assertIsValidPredictedBox(box, callee) { - LabeledBox.assertIsValidLabeledBox(box, callee); - if (!isValidProbablitiy(box.score) - || !isValidProbablitiy(box.classScore)) { - throw new Error(`${callee} - expected properties score (${box.score}) and (${box.classScore}) to be a number between [0, 1]`); - } - } - get score() { return this._score; } - get classScore() { return this._classScore; } -} -//# sourceMappingURL=PredictedBox.js.map \ No newline at end of file diff --git a/build/classes/PredictedBox.js.map b/build/classes/PredictedBox.js.map deleted file mode 100644 index d08214a..0000000 --- a/build/classes/PredictedBox.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PredictedBox.js","sourceRoot":"","sources":["../../src/classes/PredictedBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,MAAM,OAAO,YAAa,SAAQ,UAAU;IAgB1C,YAAY,GAA+B,EAAE,KAAa,EAAE,KAAa,EAAE,UAAkB;QAC3F,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACjB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAA;IAC/B,CAAC;IAlBM,MAAM,CAAC,yBAAyB,CAAC,GAAQ,EAAE,MAAc;QAC9D,UAAU,CAAC,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAE/C,IACE,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC;eAC3B,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,EACtC;YACA,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,iCAAiC,GAAG,CAAC,KAAK,UAAU,GAAG,CAAC,UAAU,iCAAiC,CAAC,CAAA;SAC9H;IACH,CAAC;IAWD,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC;IACjD,IAAW,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAA,CAAC,CAAC;CAE5D"} \ No newline at end of file diff --git a/build/classes/Rect.d.ts b/build/classes/Rect.d.ts deleted file mode 100644 index 9d996f3..0000000 --- a/build/classes/Rect.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Box } from './Box'; -export interface IRect { - x: number; - y: number; - width: number; - height: number; -} -export declare class Rect extends Box implements IRect { - constructor(x: number, y: number, width: number, height: number, allowNegativeDimensions?: boolean); -} -//# sourceMappingURL=Rect.d.ts.map \ No newline at end of file diff --git a/build/classes/Rect.d.ts.map b/build/classes/Rect.d.ts.map deleted file mode 100644 index 238fdbf..0000000 --- a/build/classes/Rect.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Rect.d.ts","sourceRoot":"","sources":["../../src/classes/Rect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,IAAK,SAAQ,GAAG,CAAC,IAAI,CAAE,YAAW,KAAK;gBACtC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,GAAE,OAAe;CAG1G"} \ No newline at end of file diff --git a/build/classes/Rect.js b/build/classes/Rect.js deleted file mode 100644 index 711acfd..0000000 --- a/build/classes/Rect.js +++ /dev/null @@ -1,7 +0,0 @@ -import { Box } from './Box'; -export class Rect extends Box { - constructor(x, y, width, height, allowNegativeDimensions = false) { - super({ x, y, width, height }, allowNegativeDimensions); - } -} -//# sourceMappingURL=Rect.js.map \ No newline at end of file diff --git a/build/classes/Rect.js.map b/build/classes/Rect.js.map deleted file mode 100644 index d7e1adf..0000000 --- a/build/classes/Rect.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Rect.js","sourceRoot":"","sources":["../../src/classes/Rect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAS5B,MAAM,OAAO,IAAK,SAAQ,GAAS;IACjC,YAAY,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc,EAAE,0BAAmC,KAAK;QACvG,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAA;IACzD,CAAC;CACF"} \ No newline at end of file diff --git a/build/classes/index.d.ts b/build/classes/index.d.ts deleted file mode 100644 index fb055f7..0000000 --- a/build/classes/index.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -export * from './BoundingBox'; -export * from './Box'; -export * from './Dimensions'; -export * from './FaceDetection'; -export * from './FaceLandmarks'; -export * from './FaceLandmarks5'; -export * from './FaceLandmarks68'; -export * from './FaceMatch'; -export * from './LabeledBox'; -export * from './LabeledFaceDescriptors'; -export * from './ObjectDetection'; -export * from './Point'; -export * from './PredictedBox'; -export * from './Rect'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/classes/index.d.ts.map b/build/classes/index.d.ts.map deleted file mode 100644 index 527b511..0000000 --- a/build/classes/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAA;AACjC,cAAc,SAAS,CAAA;AACvB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA"} \ No newline at end of file diff --git a/build/classes/index.js b/build/classes/index.js deleted file mode 100644 index a6d936b..0000000 --- a/build/classes/index.js +++ /dev/null @@ -1,15 +0,0 @@ -export * from './BoundingBox'; -export * from './Box'; -export * from './Dimensions'; -export * from './FaceDetection'; -export * from './FaceLandmarks'; -export * from './FaceLandmarks5'; -export * from './FaceLandmarks68'; -export * from './FaceMatch'; -export * from './LabeledBox'; -export * from './LabeledFaceDescriptors'; -export * from './ObjectDetection'; -export * from './Point'; -export * from './PredictedBox'; -export * from './Rect'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/classes/index.js.map b/build/classes/index.js.map deleted file mode 100644 index cb05ee0..0000000 --- a/build/classes/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAA;AACjC,cAAc,SAAS,CAAA;AACvB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA"} \ No newline at end of file diff --git a/build/common/convLayer.d.ts b/build/common/convLayer.d.ts deleted file mode 100644 index d1dc729..0000000 --- a/build/common/convLayer.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ConvParams } from './types'; -export declare function convLayer(x: tf.Tensor4D, params: ConvParams, padding?: 'valid' | 'same', withRelu?: boolean): tf.Tensor4D; -//# sourceMappingURL=convLayer.d.ts.map \ No newline at end of file diff --git a/build/common/convLayer.d.ts.map b/build/common/convLayer.d.ts.map deleted file mode 100644 index 691738d..0000000 --- a/build/common/convLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convLayer.d.ts","sourceRoot":"","sources":["../../src/common/convLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,wBAAgB,SAAS,CACvB,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,OAAO,GAAG,MAAe,EAClC,QAAQ,GAAE,OAAe,GACxB,EAAE,CAAC,QAAQ,CASb"} \ No newline at end of file diff --git a/build/common/convLayer.js b/build/common/convLayer.js deleted file mode 100644 index 411439a..0000000 --- a/build/common/convLayer.js +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function convLayer(x, params, padding = 'same', withRelu = false) { - return tf.tidy(() => { - const out = tf.add(tf.conv2d(x, params.filters, [1, 1], padding), params.bias); - return withRelu ? tf.relu(out) : out; - }); -} -//# sourceMappingURL=convLayer.js.map \ No newline at end of file diff --git a/build/common/convLayer.js.map b/build/common/convLayer.js.map deleted file mode 100644 index c148fa0..0000000 --- a/build/common/convLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convLayer.js","sourceRoot":"","sources":["../../src/common/convLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,UAAU,SAAS,CACvB,CAAc,EACd,MAAkB,EAClB,UAA4B,MAAM,EAClC,WAAoB,KAAK;IAEzB,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAChB,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAC7C,MAAM,CAAC,IAAI,CACG,CAAA;QAEhB,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IACtC,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/common/depthwiseSeparableConv.d.ts b/build/common/depthwiseSeparableConv.d.ts deleted file mode 100644 index 1fff291..0000000 --- a/build/common/depthwiseSeparableConv.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { SeparableConvParams } from './types'; -export declare function depthwiseSeparableConv(x: tf.Tensor4D, params: SeparableConvParams, stride: [number, number]): tf.Tensor4D; -//# sourceMappingURL=depthwiseSeparableConv.d.ts.map \ No newline at end of file diff --git a/build/common/depthwiseSeparableConv.d.ts.map b/build/common/depthwiseSeparableConv.d.ts.map deleted file mode 100644 index c4174b2..0000000 --- a/build/common/depthwiseSeparableConv.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"depthwiseSeparableConv.d.ts","sourceRoot":"","sources":["../../src/common/depthwiseSeparableConv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,wBAAgB,sBAAsB,CACpC,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACvB,EAAE,CAAC,QAAQ,CAMb"} \ No newline at end of file diff --git a/build/common/depthwiseSeparableConv.js b/build/common/depthwiseSeparableConv.js deleted file mode 100644 index a91a632..0000000 --- a/build/common/depthwiseSeparableConv.js +++ /dev/null @@ -1,9 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function depthwiseSeparableConv(x, params, stride) { - return tf.tidy(() => { - let out = tf.separableConv2d(x, params.depthwise_filter, params.pointwise_filter, stride, 'same'); - out = tf.add(out, params.bias); - return out; - }); -} -//# sourceMappingURL=depthwiseSeparableConv.js.map \ No newline at end of file diff --git a/build/common/depthwiseSeparableConv.js.map b/build/common/depthwiseSeparableConv.js.map deleted file mode 100644 index de28b10..0000000 --- a/build/common/depthwiseSeparableConv.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"depthwiseSeparableConv.js","sourceRoot":"","sources":["../../src/common/depthwiseSeparableConv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,UAAU,sBAAsB,CACpC,CAAc,EACd,MAA2B,EAC3B,MAAwB;IAExB,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,IAAI,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;QACjG,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/common/disposeUnusedWeightTensors.d.ts b/build/common/disposeUnusedWeightTensors.d.ts deleted file mode 100644 index bb75b91..0000000 --- a/build/common/disposeUnusedWeightTensors.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ParamMapping } from './types'; -export declare function disposeUnusedWeightTensors(weightMap: any, paramMappings: ParamMapping[]): void; -//# sourceMappingURL=disposeUnusedWeightTensors.d.ts.map \ No newline at end of file diff --git a/build/common/disposeUnusedWeightTensors.d.ts.map b/build/common/disposeUnusedWeightTensors.d.ts.map deleted file mode 100644 index f18fad4..0000000 --- a/build/common/disposeUnusedWeightTensors.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"disposeUnusedWeightTensors.d.ts","sourceRoot":"","sources":["../../src/common/disposeUnusedWeightTensors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE,QAMvF"} \ No newline at end of file diff --git a/build/common/disposeUnusedWeightTensors.js b/build/common/disposeUnusedWeightTensors.js deleted file mode 100644 index 08a5c61..0000000 --- a/build/common/disposeUnusedWeightTensors.js +++ /dev/null @@ -1,8 +0,0 @@ -export function disposeUnusedWeightTensors(weightMap, paramMappings) { - Object.keys(weightMap).forEach(path => { - if (!paramMappings.some(pm => pm.originalPath === path)) { - weightMap[path].dispose(); - } - }); -} -//# sourceMappingURL=disposeUnusedWeightTensors.js.map \ No newline at end of file diff --git a/build/common/disposeUnusedWeightTensors.js.map b/build/common/disposeUnusedWeightTensors.js.map deleted file mode 100644 index b917cd1..0000000 --- a/build/common/disposeUnusedWeightTensors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"disposeUnusedWeightTensors.js","sourceRoot":"","sources":["../../src/common/disposeUnusedWeightTensors.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,0BAA0B,CAAC,SAAc,EAAE,aAA6B;IACtF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,KAAK,IAAI,CAAC,EAAE;YACvD,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA;SAC1B;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/common/extractConvParamsFactory.d.ts b/build/common/extractConvParamsFactory.d.ts deleted file mode 100644 index 669ec66..0000000 --- a/build/common/extractConvParamsFactory.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ConvParams, ExtractWeightsFunction, ParamMapping } from './types'; -export declare function extractConvParamsFactory(extractWeights: ExtractWeightsFunction, paramMappings: ParamMapping[]): (channelsIn: number, channelsOut: number, filterSize: number, mappedPrefix: string) => ConvParams; -//# sourceMappingURL=extractConvParamsFactory.d.ts.map \ No newline at end of file diff --git a/build/common/extractConvParamsFactory.d.ts.map b/build/common/extractConvParamsFactory.d.ts.map deleted file mode 100644 index 12e45b9..0000000 --- a/build/common/extractConvParamsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractConvParamsFactory.d.ts","sourceRoot":"","sources":["../../src/common/extractConvParamsFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE3E,wBAAgB,wBAAwB,CACtC,cAAc,EAAE,sBAAsB,EACtC,aAAa,EAAE,YAAY,EAAE,gBAIf,MAAM,eACL,MAAM,cACP,MAAM,gBACJ,MAAM,KACnB,UAAU,CAgBd"} \ No newline at end of file diff --git a/build/common/extractConvParamsFactory.js b/build/common/extractConvParamsFactory.js deleted file mode 100644 index 5aec5cd..0000000 --- a/build/common/extractConvParamsFactory.js +++ /dev/null @@ -1,10 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function extractConvParamsFactory(extractWeights, paramMappings) { - return function (channelsIn, channelsOut, filterSize, mappedPrefix) { - const filters = tf.tensor4d(extractWeights(channelsIn * channelsOut * filterSize * filterSize), [filterSize, filterSize, channelsIn, channelsOut]); - const bias = tf.tensor1d(extractWeights(channelsOut)); - paramMappings.push({ paramPath: `${mappedPrefix}/filters` }, { paramPath: `${mappedPrefix}/bias` }); - return { filters, bias }; - }; -} -//# sourceMappingURL=extractConvParamsFactory.js.map \ No newline at end of file diff --git a/build/common/extractConvParamsFactory.js.map b/build/common/extractConvParamsFactory.js.map deleted file mode 100644 index 1668983..0000000 --- a/build/common/extractConvParamsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractConvParamsFactory.js","sourceRoot":"","sources":["../../src/common/extractConvParamsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,UAAU,wBAAwB,CACtC,cAAsC,EACtC,aAA6B;IAG7B,OAAO,UACL,UAAkB,EAClB,WAAmB,EACnB,UAAkB,EAClB,YAAoB;QAGpB,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CACzB,cAAc,CAAC,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC,EAClE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAClD,CAAA;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAA;QAErD,aAAa,CAAC,IAAI,CAChB,EAAE,SAAS,EAAE,GAAG,YAAY,UAAU,EAAE,EACxC,EAAE,SAAS,EAAE,GAAG,YAAY,OAAO,EAAE,CACtC,CAAA;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC,CAAA;AAEH,CAAC"} \ No newline at end of file diff --git a/build/common/extractFCParamsFactory.d.ts b/build/common/extractFCParamsFactory.d.ts deleted file mode 100644 index c9315b0..0000000 --- a/build/common/extractFCParamsFactory.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ExtractWeightsFunction, FCParams, ParamMapping } from './types'; -export declare function extractFCParamsFactory(extractWeights: ExtractWeightsFunction, paramMappings: ParamMapping[]): (channelsIn: number, channelsOut: number, mappedPrefix: string) => FCParams; -//# sourceMappingURL=extractFCParamsFactory.d.ts.map \ No newline at end of file diff --git a/build/common/extractFCParamsFactory.d.ts.map b/build/common/extractFCParamsFactory.d.ts.map deleted file mode 100644 index 28f8b5c..0000000 --- a/build/common/extractFCParamsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFCParamsFactory.d.ts","sourceRoot":"","sources":["../../src/common/extractFCParamsFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGzE,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,sBAAsB,EACtC,aAAa,EAAE,YAAY,EAAE,gBAIf,MAAM,eACL,MAAM,gBACL,MAAM,KACnB,QAAQ,CAgBZ"} \ No newline at end of file diff --git a/build/common/extractFCParamsFactory.js b/build/common/extractFCParamsFactory.js deleted file mode 100644 index 0065198..0000000 --- a/build/common/extractFCParamsFactory.js +++ /dev/null @@ -1,13 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function extractFCParamsFactory(extractWeights, paramMappings) { - return function (channelsIn, channelsOut, mappedPrefix) { - const fc_weights = tf.tensor2d(extractWeights(channelsIn * channelsOut), [channelsIn, channelsOut]); - const fc_bias = tf.tensor1d(extractWeights(channelsOut)); - paramMappings.push({ paramPath: `${mappedPrefix}/weights` }, { paramPath: `${mappedPrefix}/bias` }); - return { - weights: fc_weights, - bias: fc_bias - }; - }; -} -//# sourceMappingURL=extractFCParamsFactory.js.map \ No newline at end of file diff --git a/build/common/extractFCParamsFactory.js.map b/build/common/extractFCParamsFactory.js.map deleted file mode 100644 index ab9eed4..0000000 --- a/build/common/extractFCParamsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFCParamsFactory.js","sourceRoot":"","sources":["../../src/common/extractFCParamsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAK5C,MAAM,UAAU,sBAAsB,CACpC,cAAsC,EACtC,aAA6B;IAG7B,OAAO,UACL,UAAkB,EAClB,WAAmB,EACnB,YAAoB;QAGpB,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,GAAG,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QACnG,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAA;QAExD,aAAa,CAAC,IAAI,CAChB,EAAE,SAAS,EAAE,GAAG,YAAY,UAAU,EAAE,EACxC,EAAE,SAAS,EAAE,GAAG,YAAY,OAAO,EAAE,CACtC,CAAA;QAED,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,IAAI,EAAE,OAAO;SACd,CAAA;IACH,CAAC,CAAA;AAEH,CAAC"} \ No newline at end of file diff --git a/build/common/extractSeparableConvParamsFactory.d.ts b/build/common/extractSeparableConvParamsFactory.d.ts deleted file mode 100644 index 9de2fa9..0000000 --- a/build/common/extractSeparableConvParamsFactory.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ExtractWeightsFunction, ParamMapping, SeparableConvParams } from './types'; -export declare function extractSeparableConvParamsFactory(extractWeights: ExtractWeightsFunction, paramMappings: ParamMapping[]): (channelsIn: number, channelsOut: number, mappedPrefix: string) => SeparableConvParams; -export declare function loadSeparableConvParamsFactory(extractWeightEntry: (originalPath: string, paramRank: number) => T): (prefix: string) => SeparableConvParams; -//# sourceMappingURL=extractSeparableConvParamsFactory.d.ts.map \ No newline at end of file diff --git a/build/common/extractSeparableConvParamsFactory.d.ts.map b/build/common/extractSeparableConvParamsFactory.d.ts.map deleted file mode 100644 index 2f6213d..0000000 --- a/build/common/extractSeparableConvParamsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractSeparableConvParamsFactory.d.ts","sourceRoot":"","sources":["../../src/common/extractSeparableConvParamsFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEpF,wBAAgB,iCAAiC,CAC/C,cAAc,EAAE,sBAAsB,EACtC,aAAa,EAAE,YAAY,EAAE,gBAGD,MAAM,eAAe,MAAM,gBAAgB,MAAM,KAAG,mBAAmB,CAkBpG;AAED,wBAAgB,8BAA8B,CAC5C,kBAAkB,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC,YAG5C,MAAM,KAAG,mBAAmB,CAYtD"} \ No newline at end of file diff --git a/build/common/extractSeparableConvParamsFactory.js b/build/common/extractSeparableConvParamsFactory.js deleted file mode 100644 index 5d9a7a8..0000000 --- a/build/common/extractSeparableConvParamsFactory.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { SeparableConvParams } from './types'; -export function extractSeparableConvParamsFactory(extractWeights, paramMappings) { - return function (channelsIn, channelsOut, mappedPrefix) { - const depthwise_filter = tf.tensor4d(extractWeights(3 * 3 * channelsIn), [3, 3, channelsIn, 1]); - const pointwise_filter = tf.tensor4d(extractWeights(channelsIn * channelsOut), [1, 1, channelsIn, channelsOut]); - const bias = tf.tensor1d(extractWeights(channelsOut)); - paramMappings.push({ paramPath: `${mappedPrefix}/depthwise_filter` }, { paramPath: `${mappedPrefix}/pointwise_filter` }, { paramPath: `${mappedPrefix}/bias` }); - return new SeparableConvParams(depthwise_filter, pointwise_filter, bias); - }; -} -export function loadSeparableConvParamsFactory(extractWeightEntry) { - return function (prefix) { - const depthwise_filter = extractWeightEntry(`${prefix}/depthwise_filter`, 4); - const pointwise_filter = extractWeightEntry(`${prefix}/pointwise_filter`, 4); - const bias = extractWeightEntry(`${prefix}/bias`, 1); - return new SeparableConvParams(depthwise_filter, pointwise_filter, bias); - }; -} -//# sourceMappingURL=extractSeparableConvParamsFactory.js.map \ No newline at end of file diff --git a/build/common/extractSeparableConvParamsFactory.js.map b/build/common/extractSeparableConvParamsFactory.js.map deleted file mode 100644 index b173824..0000000 --- a/build/common/extractSeparableConvParamsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractSeparableConvParamsFactory.js","sourceRoot":"","sources":["../../src/common/extractSeparableConvParamsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAwC,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEpF,MAAM,UAAU,iCAAiC,CAC/C,cAAsC,EACtC,aAA6B;IAG7B,OAAO,UAAS,UAAkB,EAAE,WAAmB,EAAE,YAAoB;QAC3E,MAAM,gBAAgB,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAA;QAC/F,MAAM,gBAAgB,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QAC/G,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAA;QAErD,aAAa,CAAC,IAAI,CAChB,EAAE,SAAS,EAAE,GAAG,YAAY,mBAAmB,EAAE,EACjD,EAAE,SAAS,EAAE,GAAG,YAAY,mBAAmB,EAAE,EACjD,EAAE,SAAS,EAAE,GAAG,YAAY,OAAO,EAAE,CACtC,CAAA;QAED,OAAO,IAAI,mBAAmB,CAC5B,gBAAgB,EAChB,gBAAgB,EAChB,IAAI,CACL,CAAA;IACH,CAAC,CAAA;AAEH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,kBAAqE;IAGrE,OAAO,UAAU,MAAc;QAC7B,MAAM,gBAAgB,GAAG,kBAAkB,CAAc,GAAG,MAAM,mBAAmB,EAAE,CAAC,CAAC,CAAA;QACzF,MAAM,gBAAgB,GAAG,kBAAkB,CAAc,GAAG,MAAM,mBAAmB,EAAE,CAAC,CAAC,CAAA;QACzF,MAAM,IAAI,GAAG,kBAAkB,CAAc,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,CAAA;QAEjE,OAAO,IAAI,mBAAmB,CAC5B,gBAAgB,EAChB,gBAAgB,EAChB,IAAI,CACL,CAAA;IACH,CAAC,CAAA;AAEH,CAAC"} \ No newline at end of file diff --git a/build/common/extractWeightEntryFactory.d.ts b/build/common/extractWeightEntryFactory.d.ts deleted file mode 100644 index 4383a74..0000000 --- a/build/common/extractWeightEntryFactory.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ParamMapping } from './types'; -export declare function extractWeightEntryFactory(weightMap: any, paramMappings: ParamMapping[]): (originalPath: string, paramRank: number, mappedPath?: string | undefined) => T; -//# sourceMappingURL=extractWeightEntryFactory.d.ts.map \ No newline at end of file diff --git a/build/common/extractWeightEntryFactory.d.ts.map b/build/common/extractWeightEntryFactory.d.ts.map deleted file mode 100644 index ec473ac..0000000 --- a/build/common/extractWeightEntryFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractWeightEntryFactory.d.ts","sourceRoot":"","sources":["../../src/common/extractWeightEntryFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE,qBAEnD,MAAM,aAAa,MAAM,wCAc5D"} \ No newline at end of file diff --git a/build/common/extractWeightEntryFactory.js b/build/common/extractWeightEntryFactory.js deleted file mode 100644 index 6a87e33..0000000 --- a/build/common/extractWeightEntryFactory.js +++ /dev/null @@ -1,12 +0,0 @@ -import { isTensor } from '../utils'; -export function extractWeightEntryFactory(weightMap, paramMappings) { - return function (originalPath, paramRank, mappedPath) { - const tensor = weightMap[originalPath]; - if (!isTensor(tensor, paramRank)) { - throw new Error(`expected weightMap[${originalPath}] to be a Tensor${paramRank}D, instead have ${tensor}`); - } - paramMappings.push({ originalPath, paramPath: mappedPath || originalPath }); - return tensor; - }; -} -//# sourceMappingURL=extractWeightEntryFactory.js.map \ No newline at end of file diff --git a/build/common/extractWeightEntryFactory.js.map b/build/common/extractWeightEntryFactory.js.map deleted file mode 100644 index f335393..0000000 --- a/build/common/extractWeightEntryFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractWeightEntryFactory.js","sourceRoot":"","sources":["../../src/common/extractWeightEntryFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,MAAM,UAAU,yBAAyB,CAAC,SAAc,EAAE,aAA6B;IAErF,OAAO,UAAa,YAAoB,EAAE,SAAiB,EAAE,UAAmB;QAC9E,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;QAEtC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,sBAAsB,YAAY,mBAAmB,SAAS,mBAAmB,MAAM,EAAE,CAAC,CAAA;SAC3G;QAED,aAAa,CAAC,IAAI,CAChB,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,IAAI,YAAY,EAAE,CACxD,CAAA;QAED,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AAEH,CAAC"} \ No newline at end of file diff --git a/build/common/extractWeightsFactory.d.ts b/build/common/extractWeightsFactory.d.ts deleted file mode 100644 index 4815212..0000000 --- a/build/common/extractWeightsFactory.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare function extractWeightsFactory(weights: Float32Array): { - extractWeights: (numWeights: number) => Float32Array; - getRemainingWeights: () => Float32Array; -}; -//# sourceMappingURL=extractWeightsFactory.d.ts.map \ No newline at end of file diff --git a/build/common/extractWeightsFactory.d.ts.map b/build/common/extractWeightsFactory.d.ts.map deleted file mode 100644 index 475213b..0000000 --- a/build/common/extractWeightsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractWeightsFactory.d.ts","sourceRoot":"","sources":["../../src/common/extractWeightsFactory.ts"],"names":[],"mappings":"AAAA,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,YAAY;iCAGrB,MAAM,KAAG,YAAY;+BAMzB,YAAY;EAQ7C"} \ No newline at end of file diff --git a/build/common/extractWeightsFactory.js b/build/common/extractWeightsFactory.js deleted file mode 100644 index 0bd2890..0000000 --- a/build/common/extractWeightsFactory.js +++ /dev/null @@ -1,16 +0,0 @@ -export function extractWeightsFactory(weights) { - let remainingWeights = weights; - function extractWeights(numWeights) { - const ret = remainingWeights.slice(0, numWeights); - remainingWeights = remainingWeights.slice(numWeights); - return ret; - } - function getRemainingWeights() { - return remainingWeights; - } - return { - extractWeights, - getRemainingWeights - }; -} -//# sourceMappingURL=extractWeightsFactory.js.map \ No newline at end of file diff --git a/build/common/extractWeightsFactory.js.map b/build/common/extractWeightsFactory.js.map deleted file mode 100644 index 18852fd..0000000 --- a/build/common/extractWeightsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractWeightsFactory.js","sourceRoot":"","sources":["../../src/common/extractWeightsFactory.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,qBAAqB,CAAC,OAAqB;IACzD,IAAI,gBAAgB,GAAG,OAAO,CAAA;IAE9B,SAAS,cAAc,CAAC,UAAkB;QACxC,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;QACjD,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACrD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,SAAS,mBAAmB;QAC1B,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,OAAO;QACL,cAAc;QACd,mBAAmB;KACpB,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/common/fullyConnectedLayer.d.ts b/build/common/fullyConnectedLayer.d.ts deleted file mode 100644 index 4e4acbc..0000000 --- a/build/common/fullyConnectedLayer.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FCParams } from './types'; -export declare function fullyConnectedLayer(x: tf.Tensor2D, params: FCParams): tf.Tensor2D; -//# sourceMappingURL=fullyConnectedLayer.d.ts.map \ No newline at end of file diff --git a/build/common/fullyConnectedLayer.d.ts.map b/build/common/fullyConnectedLayer.d.ts.map deleted file mode 100644 index 4462131..0000000 --- a/build/common/fullyConnectedLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fullyConnectedLayer.d.ts","sourceRoot":"","sources":["../../src/common/fullyConnectedLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,MAAM,EAAE,QAAQ,GACf,EAAE,CAAC,QAAQ,CAOb"} \ No newline at end of file diff --git a/build/common/fullyConnectedLayer.js b/build/common/fullyConnectedLayer.js deleted file mode 100644 index 9ac4178..0000000 --- a/build/common/fullyConnectedLayer.js +++ /dev/null @@ -1,5 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function fullyConnectedLayer(x, params) { - return tf.tidy(() => tf.add(tf.matMul(x, params.weights), params.bias)); -} -//# sourceMappingURL=fullyConnectedLayer.js.map \ No newline at end of file diff --git a/build/common/fullyConnectedLayer.js.map b/build/common/fullyConnectedLayer.js.map deleted file mode 100644 index 450db69..0000000 --- a/build/common/fullyConnectedLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fullyConnectedLayer.js","sourceRoot":"","sources":["../../src/common/fullyConnectedLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,UAAU,mBAAmB,CACjC,CAAc,EACd,MAAgB;IAEhB,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAClB,EAAE,CAAC,GAAG,CACJ,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAC5B,MAAM,CAAC,IAAI,CACZ,CACF,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/common/getModelUris.d.ts b/build/common/getModelUris.d.ts deleted file mode 100644 index 5dbc1a0..0000000 --- a/build/common/getModelUris.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare function getModelUris(uri: string | undefined, defaultModelName: string): { - modelBaseUri: string; - manifestUri: string; -}; -//# sourceMappingURL=getModelUris.d.ts.map \ No newline at end of file diff --git a/build/common/getModelUris.d.ts.map b/build/common/getModelUris.d.ts.map deleted file mode 100644 index 2809004..0000000 --- a/build/common/getModelUris.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getModelUris.d.ts","sourceRoot":"","sources":["../../src/common/getModelUris.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,gBAAgB,EAAE,MAAM;;;EAgC7E"} \ No newline at end of file diff --git a/build/common/getModelUris.js b/build/common/getModelUris.js deleted file mode 100644 index f532647..0000000 --- a/build/common/getModelUris.js +++ /dev/null @@ -1,28 +0,0 @@ -export function getModelUris(uri, defaultModelName) { - const defaultManifestFilename = `${defaultModelName}-weights_manifest.json`; - if (!uri) { - return { - modelBaseUri: '', - manifestUri: defaultManifestFilename - }; - } - if (uri === '/') { - return { - modelBaseUri: '/', - manifestUri: `/${defaultManifestFilename}` - }; - } - const protocol = uri.startsWith('http://') ? 'http://' : uri.startsWith('https://') ? 'https://' : ''; - uri = uri.replace(protocol, ''); - const parts = uri.split('/').filter(s => s); - const manifestFile = uri.endsWith('.json') - ? parts[parts.length - 1] - : defaultManifestFilename; - let modelBaseUri = protocol + (uri.endsWith('.json') ? parts.slice(0, parts.length - 1) : parts).join('/'); - modelBaseUri = uri.startsWith('/') ? `/${modelBaseUri}` : modelBaseUri; - return { - modelBaseUri, - manifestUri: modelBaseUri === '/' ? `/${manifestFile}` : `${modelBaseUri}/${manifestFile}` - }; -} -//# sourceMappingURL=getModelUris.js.map \ No newline at end of file diff --git a/build/common/getModelUris.js.map b/build/common/getModelUris.js.map deleted file mode 100644 index c126833..0000000 --- a/build/common/getModelUris.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getModelUris.js","sourceRoot":"","sources":["../../src/common/getModelUris.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,YAAY,CAAC,GAAuB,EAAE,gBAAwB;IAC5E,MAAM,uBAAuB,GAAG,GAAG,gBAAgB,wBAAwB,CAAA;IAE3E,IAAI,CAAC,GAAG,EAAE;QACR,OAAO;YACL,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,uBAAuB;SACrC,CAAA;KACF;IAED,IAAI,GAAG,KAAK,GAAG,EAAE;QACf,OAAO;YACL,YAAY,EAAE,GAAG;YACjB,WAAW,EAAE,IAAI,uBAAuB,EAAE;SAC3C,CAAA;KACF;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACtG,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAEhC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAE3C,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QACxC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,CAAC,CAAC,uBAAuB,CAAA;IAE3B,IAAI,YAAY,GAAG,QAAQ,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1G,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,CAAA;IAEtE,OAAO;QACL,YAAY;QACZ,WAAW,EAAE,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,YAAY,EAAE;KAC3F,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/common/index.d.ts b/build/common/index.d.ts deleted file mode 100644 index 0998aef..0000000 --- a/build/common/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export * from './convLayer'; -export * from './depthwiseSeparableConv'; -export * from './disposeUnusedWeightTensors'; -export * from './extractConvParamsFactory'; -export * from './extractFCParamsFactory'; -export * from './extractSeparableConvParamsFactory'; -export * from './extractWeightEntryFactory'; -export * from './extractWeightsFactory'; -export * from './getModelUris'; -export * from './types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/common/index.d.ts.map b/build/common/index.d.ts.map deleted file mode 100644 index ef8bf55..0000000 --- a/build/common/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,qCAAqC,CAAA;AACnD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/common/index.js b/build/common/index.js deleted file mode 100644 index fc1aa0f..0000000 --- a/build/common/index.js +++ /dev/null @@ -1,11 +0,0 @@ -export * from './convLayer'; -export * from './depthwiseSeparableConv'; -export * from './disposeUnusedWeightTensors'; -export * from './extractConvParamsFactory'; -export * from './extractFCParamsFactory'; -export * from './extractSeparableConvParamsFactory'; -export * from './extractWeightEntryFactory'; -export * from './extractWeightsFactory'; -export * from './getModelUris'; -export * from './types'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/common/index.js.map b/build/common/index.js.map deleted file mode 100644 index 88dbe26..0000000 --- a/build/common/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,qCAAqC,CAAA;AACnD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/common/loadConvParamsFactory.d.ts b/build/common/loadConvParamsFactory.d.ts deleted file mode 100644 index 897f0b4..0000000 --- a/build/common/loadConvParamsFactory.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ConvParams } from './types'; -export declare function loadConvParamsFactory(extractWeightEntry: (originalPath: string, paramRank: number) => T): (prefix: string) => ConvParams; -//# sourceMappingURL=loadConvParamsFactory.d.ts.map \ No newline at end of file diff --git a/build/common/loadConvParamsFactory.d.ts.map b/build/common/loadConvParamsFactory.d.ts.map deleted file mode 100644 index 2e6d80a..0000000 --- a/build/common/loadConvParamsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loadConvParamsFactory.d.ts","sourceRoot":"","sources":["../../src/common/loadConvParamsFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,wBAAgB,qBAAqB,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC,YACjF,MAAM,KAAG,UAAU,CAM5C"} \ No newline at end of file diff --git a/build/common/loadConvParamsFactory.js b/build/common/loadConvParamsFactory.js deleted file mode 100644 index 88f1b7a..0000000 --- a/build/common/loadConvParamsFactory.js +++ /dev/null @@ -1,8 +0,0 @@ -export function loadConvParamsFactory(extractWeightEntry) { - return function (prefix) { - const filters = extractWeightEntry(`${prefix}/filters`, 4); - const bias = extractWeightEntry(`${prefix}/bias`, 1); - return { filters, bias }; - }; -} -//# sourceMappingURL=loadConvParamsFactory.js.map \ No newline at end of file diff --git a/build/common/loadConvParamsFactory.js.map b/build/common/loadConvParamsFactory.js.map deleted file mode 100644 index 2207c63..0000000 --- a/build/common/loadConvParamsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loadConvParamsFactory.js","sourceRoot":"","sources":["../../src/common/loadConvParamsFactory.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,qBAAqB,CAAC,kBAAqE;IACzG,OAAO,UAAS,MAAc;QAC5B,MAAM,OAAO,GAAG,kBAAkB,CAAc,GAAG,MAAM,UAAU,EAAE,CAAC,CAAC,CAAA;QACvE,MAAM,IAAI,GAAG,kBAAkB,CAAc,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,CAAA;QAEjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/common/types.d.ts b/build/common/types.d.ts deleted file mode 100644 index 0c19928..0000000 --- a/build/common/types.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare type ExtractWeightsFunction = (numWeights: number) => Float32Array; -export declare type ParamMapping = { - originalPath?: string; - paramPath: string; -}; -export declare type ConvParams = { - filters: tf.Tensor4D; - bias: tf.Tensor1D; -}; -export declare type FCParams = { - weights: tf.Tensor2D; - bias: tf.Tensor1D; -}; -export declare class SeparableConvParams { - depthwise_filter: tf.Tensor4D; - pointwise_filter: tf.Tensor4D; - bias: tf.Tensor1D; - constructor(depthwise_filter: tf.Tensor4D, pointwise_filter: tf.Tensor4D, bias: tf.Tensor1D); -} -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/common/types.d.ts.map b/build/common/types.d.ts.map deleted file mode 100644 index c66714e..0000000 --- a/build/common/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,oBAAY,sBAAsB,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,YAAY,CAAA;AAEzE,oBAAY,YAAY,GAAG;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,oBAAY,UAAU,GAAG;IACvB,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAA;IACpB,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAA;CAClB,CAAA;AAED,oBAAY,QAAQ,GAAG;IACrB,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAA;IACpB,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAA;CAClB,CAAA;AAED,qBAAa,mBAAmB;IAErB,gBAAgB,EAAE,EAAE,CAAC,QAAQ;IAC7B,gBAAgB,EAAE,EAAE,CAAC,QAAQ;IAC7B,IAAI,EAAE,EAAE,CAAC,QAAQ;gBAFjB,gBAAgB,EAAE,EAAE,CAAC,QAAQ,EAC7B,gBAAgB,EAAE,EAAE,CAAC,QAAQ,EAC7B,IAAI,EAAE,EAAE,CAAC,QAAQ;CAE3B"} \ No newline at end of file diff --git a/build/common/types.js b/build/common/types.js deleted file mode 100644 index b1cb624..0000000 --- a/build/common/types.js +++ /dev/null @@ -1,8 +0,0 @@ -export class SeparableConvParams { - constructor(depthwise_filter, pointwise_filter, bias) { - this.depthwise_filter = depthwise_filter; - this.pointwise_filter = pointwise_filter; - this.bias = bias; - } -} -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/common/types.js.map b/build/common/types.js.map deleted file mode 100644 index 72e0e1f..0000000 --- a/build/common/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAmBA,MAAM,OAAO,mBAAmB;IAC9B,YACS,gBAA6B,EAC7B,gBAA6B,EAC7B,IAAiB;QAFjB,qBAAgB,GAAhB,gBAAgB,CAAa;QAC7B,qBAAgB,GAAhB,gBAAgB,CAAa;QAC7B,SAAI,GAAJ,IAAI,CAAa;IACvB,CAAC;CACL"} \ No newline at end of file diff --git a/build/dom/NetInput.d.ts b/build/dom/NetInput.d.ts deleted file mode 100644 index 8a253f1..0000000 --- a/build/dom/NetInput.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { Dimensions } from '../classes/Dimensions'; -import { TResolvedNetInput } from './types'; -export declare class NetInput { - private _imageTensors; - private _canvases; - private _batchSize; - private _treatAsBatchInput; - private _inputDimensions; - private _inputSize; - constructor(inputs: Array, treatAsBatchInput?: boolean); - get imageTensors(): Array; - get canvases(): HTMLCanvasElement[]; - get isBatchInput(): boolean; - get batchSize(): number; - get inputDimensions(): number[][]; - get inputSize(): number | undefined; - get reshapedInputDimensions(): Dimensions[]; - getInput(batchIdx: number): tf.Tensor3D | tf.Tensor4D | HTMLCanvasElement; - getInputDimensions(batchIdx: number): number[]; - getInputHeight(batchIdx: number): number; - getInputWidth(batchIdx: number): number; - getReshapedInputDimensions(batchIdx: number): Dimensions; - /** - * Create a batch tensor from all input canvases and tensors - * with size [batchSize, inputSize, inputSize, 3]. - * - * @param inputSize Height and width of the tensor. - * @param isCenterImage (optional, default: false) If true, add an equal amount of padding on - * both sides of the minor dimension oof the image. - * @returns The batch tensor. - */ - toBatchTensor(inputSize: number, isCenterInputs?: boolean): tf.Tensor4D; -} -//# sourceMappingURL=NetInput.d.ts.map \ No newline at end of file diff --git a/build/dom/NetInput.d.ts.map b/build/dom/NetInput.d.ts.map deleted file mode 100644 index c810e72..0000000 --- a/build/dom/NetInput.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NetInput.d.ts","sourceRoot":"","sources":["../../src/dom/NetInput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,qBAAa,QAAQ;IACnB,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,kBAAkB,CAAiB;IAE3C,OAAO,CAAC,gBAAgB,CAAiB;IACzC,OAAO,CAAC,UAAU,CAAQ;gBAGxB,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAChC,iBAAiB,GAAE,OAAe;IAkCpC,IAAW,YAAY,IAAI,KAAK,CAAC,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,CAE1D;IAED,IAAW,QAAQ,IAAI,iBAAiB,EAAE,CAEzC;IAED,IAAW,YAAY,IAAI,OAAO,CAEjC;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,eAAe,IAAI,MAAM,EAAE,EAAE,CAEvC;IAED,IAAW,SAAS,IAAI,MAAM,GAAG,SAAS,CAEzC;IAED,IAAW,uBAAuB,IAAI,UAAU,EAAE,CAIjD;IAEM,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,CAAC,QAAQ,GAAI,EAAE,CAAC,QAAQ,GAAG,iBAAiB;IAI1E,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;IAI9C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIxC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIvC,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAU/D;;;;;;;;OAQG;IACI,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,GAAE,OAAc,GAAG,EAAE,CAAC,QAAQ;CAkCrF"} \ No newline at end of file diff --git a/build/dom/NetInput.js b/build/dom/NetInput.js deleted file mode 100644 index a154818..0000000 --- a/build/dom/NetInput.js +++ /dev/null @@ -1,113 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { env } from '../env'; -import { padToSquare } from '../ops/padToSquare'; -import { computeReshapedDimensions, isTensor3D, isTensor4D, range } from '../utils'; -import { createCanvasFromMedia } from './createCanvas'; -import { imageToSquare } from './imageToSquare'; -export class NetInput { - constructor(inputs, treatAsBatchInput = false) { - this._imageTensors = []; - this._canvases = []; - this._treatAsBatchInput = false; - this._inputDimensions = []; - if (!Array.isArray(inputs)) { - throw new Error(`NetInput.constructor - expected inputs to be an Array of TResolvedNetInput or to be instanceof tf.Tensor4D, instead have ${inputs}`); - } - this._treatAsBatchInput = treatAsBatchInput; - this._batchSize = inputs.length; - inputs.forEach((input, idx) => { - if (isTensor3D(input)) { - this._imageTensors[idx] = input; - this._inputDimensions[idx] = input.shape; - return; - } - if (isTensor4D(input)) { - const batchSize = input.shape[0]; - if (batchSize !== 1) { - throw new Error(`NetInput - tf.Tensor4D with batchSize ${batchSize} passed, but not supported in input array`); - } - this._imageTensors[idx] = input; - this._inputDimensions[idx] = input.shape.slice(1); - return; - } - const canvas = input instanceof env.getEnv().Canvas ? input : createCanvasFromMedia(input); - this._canvases[idx] = canvas; - this._inputDimensions[idx] = [canvas.height, canvas.width, 3]; - }); - } - get imageTensors() { - return this._imageTensors; - } - get canvases() { - return this._canvases; - } - get isBatchInput() { - return this.batchSize > 1 || this._treatAsBatchInput; - } - get batchSize() { - return this._batchSize; - } - get inputDimensions() { - return this._inputDimensions; - } - get inputSize() { - return this._inputSize; - } - get reshapedInputDimensions() { - return range(this.batchSize, 0, 1).map((_, batchIdx) => this.getReshapedInputDimensions(batchIdx)); - } - getInput(batchIdx) { - return this.canvases[batchIdx] || this.imageTensors[batchIdx]; - } - getInputDimensions(batchIdx) { - return this._inputDimensions[batchIdx]; - } - getInputHeight(batchIdx) { - return this._inputDimensions[batchIdx][0]; - } - getInputWidth(batchIdx) { - return this._inputDimensions[batchIdx][1]; - } - getReshapedInputDimensions(batchIdx) { - if (typeof this.inputSize !== 'number') { - throw new Error('getReshapedInputDimensions - inputSize not set, toBatchTensor has not been called yet'); - } - const width = this.getInputWidth(batchIdx); - const height = this.getInputHeight(batchIdx); - return computeReshapedDimensions({ width, height }, this.inputSize); - } - /** - * Create a batch tensor from all input canvases and tensors - * with size [batchSize, inputSize, inputSize, 3]. - * - * @param inputSize Height and width of the tensor. - * @param isCenterImage (optional, default: false) If true, add an equal amount of padding on - * both sides of the minor dimension oof the image. - * @returns The batch tensor. - */ - toBatchTensor(inputSize, isCenterInputs = true) { - this._inputSize = inputSize; - return tf.tidy(() => { - const inputTensors = range(this.batchSize, 0, 1).map(batchIdx => { - const input = this.getInput(batchIdx); - if (input instanceof tf.Tensor) { - // @ts-ignore: error TS2344: Type 'Rank.R4' does not satisfy the constraint 'Tensor'. - let imgTensor = isTensor4D(input) ? input : input.expandDims(); - // @ts-ignore: error TS2344: Type 'Rank.R4' does not satisfy the constraint 'Tensor'. - imgTensor = padToSquare(imgTensor, isCenterInputs); - if (imgTensor.shape[1] !== inputSize || imgTensor.shape[2] !== inputSize) { - imgTensor = tf.image.resizeBilinear(imgTensor, [inputSize, inputSize]); - } - return imgTensor.as3D(inputSize, inputSize, 3); - } - if (input instanceof env.getEnv().Canvas) { - return tf.browser.fromPixels(imageToSquare(input, inputSize, isCenterInputs)); - } - throw new Error(`toBatchTensor - at batchIdx ${batchIdx}, expected input to be instanceof tf.Tensor or instanceof HTMLCanvasElement, instead have ${input}`); - }); - const batchTensor = tf.stack(inputTensors.map(t => t.toFloat())).as4D(this.batchSize, inputSize, inputSize, 3); - return batchTensor; - }); - } -} -//# sourceMappingURL=NetInput.js.map \ No newline at end of file diff --git a/build/dom/NetInput.js.map b/build/dom/NetInput.js.map deleted file mode 100644 index 82d2a5b..0000000 --- a/build/dom/NetInput.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NetInput.js","sourceRoot":"","sources":["../../src/dom/NetInput.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/dom/awaitMediaLoaded.d.ts b/build/dom/awaitMediaLoaded.d.ts deleted file mode 100644 index b692c2c..0000000 --- a/build/dom/awaitMediaLoaded.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function awaitMediaLoaded(media: HTMLImageElement | HTMLVideoElement | HTMLCanvasElement): Promise; -//# sourceMappingURL=awaitMediaLoaded.d.ts.map \ No newline at end of file diff --git a/build/dom/awaitMediaLoaded.d.ts.map b/build/dom/awaitMediaLoaded.d.ts.map deleted file mode 100644 index d313474..0000000 --- a/build/dom/awaitMediaLoaded.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"awaitMediaLoaded.d.ts","sourceRoot":"","sources":["../../src/dom/awaitMediaLoaded.ts"],"names":[],"mappings":"AAGA,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB,oBAwB9F"} \ No newline at end of file diff --git a/build/dom/awaitMediaLoaded.js b/build/dom/awaitMediaLoaded.js deleted file mode 100644 index ce81493..0000000 --- a/build/dom/awaitMediaLoaded.js +++ /dev/null @@ -1,26 +0,0 @@ -import { env } from '../env'; -import { isMediaLoaded } from './isMediaLoaded'; -export function awaitMediaLoaded(media) { - return new Promise((resolve, reject) => { - if (media instanceof env.getEnv().Canvas || isMediaLoaded(media)) { - return resolve(); - } - function onLoad(e) { - if (!e.currentTarget) - return; - e.currentTarget.removeEventListener('load', onLoad); - e.currentTarget.removeEventListener('error', onError); - resolve(e); - } - function onError(e) { - if (!e.currentTarget) - return; - e.currentTarget.removeEventListener('load', onLoad); - e.currentTarget.removeEventListener('error', onError); - reject(e); - } - media.addEventListener('load', onLoad); - media.addEventListener('error', onError); - }); -} -//# sourceMappingURL=awaitMediaLoaded.js.map \ No newline at end of file diff --git a/build/dom/awaitMediaLoaded.js.map b/build/dom/awaitMediaLoaded.js.map deleted file mode 100644 index f2f9db6..0000000 --- a/build/dom/awaitMediaLoaded.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"awaitMediaLoaded.js","sourceRoot":"","sources":["../../src/dom/awaitMediaLoaded.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,UAAU,gBAAgB,CAAC,KAA8D;IAE7F,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,KAAK,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE;YAChE,OAAO,OAAO,EAAE,CAAA;SACjB;QAED,SAAS,MAAM,CAAC,CAAQ;YACtB,IAAI,CAAC,CAAC,CAAC,aAAa;gBAAE,OAAM;YAC5B,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACnD,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACrD,OAAO,CAAC,CAAC,CAAC,CAAA;QACZ,CAAC;QAED,SAAS,OAAO,CAAC,CAAQ;YACvB,IAAI,CAAC,CAAC,CAAC,aAAa;gBAAE,OAAM;YAC5B,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACnD,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACrD,MAAM,CAAC,CAAC,CAAC,CAAA;QACX,CAAC;QAED,KAAK,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACtC,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/dom/bufferToImage.d.ts b/build/dom/bufferToImage.d.ts deleted file mode 100644 index eb3d881..0000000 --- a/build/dom/bufferToImage.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function bufferToImage(buf: Blob): Promise; -//# sourceMappingURL=bufferToImage.d.ts.map \ No newline at end of file diff --git a/build/dom/bufferToImage.d.ts.map b/build/dom/bufferToImage.d.ts.map deleted file mode 100644 index b0b1a64..0000000 --- a/build/dom/bufferToImage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bufferToImage.d.ts","sourceRoot":"","sources":["../../src/dom/bufferToImage.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoBlE"} \ No newline at end of file diff --git a/build/dom/bufferToImage.js b/build/dom/bufferToImage.js deleted file mode 100644 index 1395413..0000000 --- a/build/dom/bufferToImage.js +++ /dev/null @@ -1,21 +0,0 @@ -import { env } from '../env'; -export function bufferToImage(buf) { - return new Promise((resolve, reject) => { - if (!(buf instanceof Blob)) { - return reject('bufferToImage - expected buf to be of type: Blob'); - } - const reader = new FileReader(); - reader.onload = () => { - if (typeof reader.result !== 'string') { - return reject('bufferToImage - expected reader.result to be a string, in onload'); - } - const img = env.getEnv().createImageElement(); - img.onload = () => resolve(img); - img.onerror = reject; - img.src = reader.result; - }; - reader.onerror = reject; - reader.readAsDataURL(buf); - }); -} -//# sourceMappingURL=bufferToImage.js.map \ No newline at end of file diff --git a/build/dom/bufferToImage.js.map b/build/dom/bufferToImage.js.map deleted file mode 100644 index 61088f4..0000000 --- a/build/dom/bufferToImage.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bufferToImage.js","sourceRoot":"","sources":["../../src/dom/bufferToImage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,MAAM,UAAU,aAAa,CAAC,GAAS;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,CAAC,GAAG,YAAY,IAAI,CAAC,EAAE;YAC1B,OAAO,MAAM,CAAC,kDAAkD,CAAC,CAAA;SAClE;QAED,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAA;QAC/B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;YACnB,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE;gBACrC,OAAO,MAAM,CAAC,kEAAkE,CAAC,CAAA;aAClF;YAED,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,kBAAkB,EAAE,CAAA;YAC7C,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC/B,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;YACpB,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAA;QACzB,CAAC,CAAA;QACD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAA;QACvB,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/dom/createCanvas.d.ts b/build/dom/createCanvas.d.ts deleted file mode 100644 index 3cbb012..0000000 --- a/build/dom/createCanvas.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { IDimensions } from '../classes/Dimensions'; -export declare function createCanvas({ width, height }: IDimensions): HTMLCanvasElement; -export declare function createCanvasFromMedia(media: HTMLImageElement | HTMLVideoElement | ImageData, dims?: IDimensions): HTMLCanvasElement; -//# sourceMappingURL=createCanvas.d.ts.map \ No newline at end of file diff --git a/build/dom/createCanvas.d.ts.map b/build/dom/createCanvas.d.ts.map deleted file mode 100644 index 8539d2a..0000000 --- a/build/dom/createCanvas.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createCanvas.d.ts","sourceRoot":"","sources":["../../src/dom/createCanvas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAMpD,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,WAAW,GAAG,iBAAiB,CAO9E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,SAAS,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,iBAAiB,CAiBnI"} \ No newline at end of file diff --git a/build/dom/createCanvas.js b/build/dom/createCanvas.js deleted file mode 100644 index e656020..0000000 --- a/build/dom/createCanvas.js +++ /dev/null @@ -1,27 +0,0 @@ -import { env } from '../env'; -import { getContext2dOrThrow } from './getContext2dOrThrow'; -import { getMediaDimensions } from './getMediaDimensions'; -import { isMediaLoaded } from './isMediaLoaded'; -export function createCanvas({ width, height }) { - const { createCanvasElement } = env.getEnv(); - const canvas = createCanvasElement(); - canvas.width = width; - canvas.height = height; - return canvas; -} -export function createCanvasFromMedia(media, dims) { - const { ImageData } = env.getEnv(); - if (!(media instanceof ImageData) && !isMediaLoaded(media)) { - throw new Error('createCanvasFromMedia - media has not finished loading yet'); - } - const { width, height } = dims || getMediaDimensions(media); - const canvas = createCanvas({ width, height }); - if (media instanceof ImageData) { - getContext2dOrThrow(canvas).putImageData(media, 0, 0); - } - else { - getContext2dOrThrow(canvas).drawImage(media, 0, 0, width, height); - } - return canvas; -} -//# sourceMappingURL=createCanvas.js.map \ No newline at end of file diff --git a/build/dom/createCanvas.js.map b/build/dom/createCanvas.js.map deleted file mode 100644 index 0feea40..0000000 --- a/build/dom/createCanvas.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createCanvas.js","sourceRoot":"","sources":["../../src/dom/createCanvas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAe;IAEzD,MAAM,EAAE,mBAAmB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAC5C,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAA;IACpC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAsD,EAAE,IAAkB;IAE9G,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAElC,IAAI,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;QAC1D,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;KAC9E;IAED,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAE9C,IAAI,KAAK,YAAY,SAAS,EAAE;QAC9B,mBAAmB,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;KACtD;SAAM;QACL,mBAAmB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;KAClE;IACD,OAAO,MAAM,CAAA;AACf,CAAC"} \ No newline at end of file diff --git a/build/dom/extractFaceTensors.d.ts b/build/dom/extractFaceTensors.d.ts deleted file mode 100644 index 517d7f0..0000000 --- a/build/dom/extractFaceTensors.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { Rect } from '../classes'; -import { FaceDetection } from '../classes/FaceDetection'; -/** - * Extracts the tensors of the image regions containing the detected faces. - * Useful if you want to compute the face descriptors for the face images. - * Using this method is faster then extracting a canvas for each face and - * converting them to tensors individually. - * - * @param imageTensor The image tensor that face detection has been performed on. - * @param detections The face detection results or face bounding boxes for that image. - * @returns Tensors of the corresponding image region for each detected face. - */ -export declare function extractFaceTensors(imageTensor: tf.Tensor3D | tf.Tensor4D, detections: Array): Promise; -//# sourceMappingURL=extractFaceTensors.d.ts.map \ No newline at end of file diff --git a/build/dom/extractFaceTensors.d.ts.map b/build/dom/extractFaceTensors.d.ts.map deleted file mode 100644 index 2062035..0000000 --- a/build/dom/extractFaceTensors.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFaceTensors.d.ts","sourceRoot":"","sources":["../../src/dom/extractFaceTensors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGzD;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,EACtC,UAAU,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GACtC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CA0BxB"} \ No newline at end of file diff --git a/build/dom/extractFaceTensors.js b/build/dom/extractFaceTensors.js deleted file mode 100644 index 61e50e5..0000000 --- a/build/dom/extractFaceTensors.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FaceDetection } from '../classes/FaceDetection'; -import { isTensor3D, isTensor4D } from '../utils'; -/** - * Extracts the tensors of the image regions containing the detected faces. - * Useful if you want to compute the face descriptors for the face images. - * Using this method is faster then extracting a canvas for each face and - * converting them to tensors individually. - * - * @param imageTensor The image tensor that face detection has been performed on. - * @param detections The face detection results or face bounding boxes for that image. - * @returns Tensors of the corresponding image region for each detected face. - */ -export async function extractFaceTensors(imageTensor, detections) { - if (!isTensor3D(imageTensor) && !isTensor4D(imageTensor)) { - throw new Error('extractFaceTensors - expected image tensor to be 3D or 4D'); - } - if (isTensor4D(imageTensor) && imageTensor.shape[0] > 1) { - throw new Error('extractFaceTensors - batchSize > 1 not supported'); - } - return tf.tidy(() => { - const [imgHeight, imgWidth, numChannels] = imageTensor.shape.slice(isTensor4D(imageTensor) ? 1 : 0); - const boxes = detections.map(det => det instanceof FaceDetection - ? det.forSize(imgWidth, imgHeight).box - : det) - .map(box => box.clipAtImageBorders(imgWidth, imgHeight)); - const faceTensors = boxes.map(({ x, y, width, height }) => tf.slice3d(imageTensor.as3D(imgHeight, imgWidth, numChannels), [y, x, 0], [height, width, numChannels])); - return faceTensors; - }); -} -//# sourceMappingURL=extractFaceTensors.js.map \ No newline at end of file diff --git a/build/dom/extractFaceTensors.js.map b/build/dom/extractFaceTensors.js.map deleted file mode 100644 index df8d54d..0000000 --- a/build/dom/extractFaceTensors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFaceTensors.js","sourceRoot":"","sources":["../../src/dom/extractFaceTensors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAElD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAsC,EACtC,UAAuC;IAGvC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;QACxD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;KAC7E;IAED,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;QACvD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;KACpE;IAED,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAEnG,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAC1B,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,aAAa;YACjC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,GAAG;YACtC,CAAC,CAAC,GAAG,CACR;aACE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAA;QAE1D,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CACxD,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CACxG,CAAA;QAED,OAAO,WAAW,CAAA;IACpB,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/dom/extractFaces.d.ts b/build/dom/extractFaces.d.ts deleted file mode 100644 index c7b83f7..0000000 --- a/build/dom/extractFaces.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -import { Rect } from '../classes/Rect'; -import { TNetInput } from './types'; -/** - * Extracts the image regions containing the detected faces. - * - * @param input The image that face detection has been performed on. - * @param detections The face detection results or face bounding boxes for that image. - * @returns The Canvases of the corresponding image region for each detected face. - */ -export declare function extractFaces(input: TNetInput, detections: Array): Promise; -//# sourceMappingURL=extractFaces.d.ts.map \ No newline at end of file diff --git a/build/dom/extractFaces.d.ts.map b/build/dom/extractFaces.d.ts.map deleted file mode 100644 index 649d101..0000000 --- a/build/dom/extractFaces.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFaces.d.ts","sourceRoot":"","sources":["../../src/dom/extractFaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAMvC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GACtC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAiC9B"} \ No newline at end of file diff --git a/build/dom/extractFaces.js b/build/dom/extractFaces.js deleted file mode 100644 index 818fd0a..0000000 --- a/build/dom/extractFaces.js +++ /dev/null @@ -1,39 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -import { env } from '../env'; -import { createCanvas } from './createCanvas'; -import { getContext2dOrThrow } from './getContext2dOrThrow'; -import { imageTensorToCanvas } from './imageTensorToCanvas'; -import { toNetInput } from './toNetInput'; -/** - * Extracts the image regions containing the detected faces. - * - * @param input The image that face detection has been performed on. - * @param detections The face detection results or face bounding boxes for that image. - * @returns The Canvases of the corresponding image region for each detected face. - */ -export async function extractFaces(input, detections) { - const { Canvas } = env.getEnv(); - let canvas = input; - if (!(input instanceof Canvas)) { - const netInput = await toNetInput(input); - if (netInput.batchSize > 1) { - throw new Error('extractFaces - batchSize > 1 not supported'); - } - const tensorOrCanvas = netInput.getInput(0); - canvas = tensorOrCanvas instanceof Canvas - ? tensorOrCanvas - : await imageTensorToCanvas(tensorOrCanvas); - } - const ctx = getContext2dOrThrow(canvas); - const boxes = detections.map(det => det instanceof FaceDetection - ? det.forSize(canvas.width, canvas.height).box.floor() - : det) - .map(box => box.clipAtImageBorders(canvas.width, canvas.height)); - return boxes.map(({ x, y, width, height }) => { - const faceImg = createCanvas({ width, height }); - getContext2dOrThrow(faceImg) - .putImageData(ctx.getImageData(x, y, width, height), 0, 0); - return faceImg; - }); -} -//# sourceMappingURL=extractFaces.js.map \ No newline at end of file diff --git a/build/dom/extractFaces.js.map b/build/dom/extractFaces.js.map deleted file mode 100644 index a32ace6..0000000 --- a/build/dom/extractFaces.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFaces.js","sourceRoot":"","sources":["../../src/dom/extractFaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,KAAgB,EAChB,UAAuC;IAGvC,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAE/B,IAAI,MAAM,GAAG,KAA0B,CAAA;IAEvC,IAAI,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC,EAAE;QAC9B,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAA;QAExC,IAAI,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;SAC9D;QAED,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC3C,MAAM,GAAG,cAAc,YAAY,MAAM;YACvC,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,MAAM,mBAAmB,CAAC,cAAc,CAAC,CAAA;KAC9C;IAED,MAAM,GAAG,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAC1B,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,aAAa;QACjC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE;QACtD,CAAC,CAAC,GAAG,CACR;SACE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IAElE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QAC3C,MAAM,OAAO,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/C,mBAAmB,CAAC,OAAO,CAAC;aACzB,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5D,OAAO,OAAO,CAAA;IAChB,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/dom/fetchImage.d.ts b/build/dom/fetchImage.d.ts deleted file mode 100644 index 02fdad1..0000000 --- a/build/dom/fetchImage.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function fetchImage(uri: string): Promise; -//# sourceMappingURL=fetchImage.d.ts.map \ No newline at end of file diff --git a/build/dom/fetchImage.d.ts.map b/build/dom/fetchImage.d.ts.map deleted file mode 100644 index 1ce45eb..0000000 --- a/build/dom/fetchImage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchImage.d.ts","sourceRoot":"","sources":["../../src/dom/fetchImage.ts"],"names":[],"mappings":"AAGA,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAQvE"} \ No newline at end of file diff --git a/build/dom/fetchImage.js b/build/dom/fetchImage.js deleted file mode 100644 index 5caac3a..0000000 --- a/build/dom/fetchImage.js +++ /dev/null @@ -1,11 +0,0 @@ -import { bufferToImage } from './bufferToImage'; -import { fetchOrThrow } from './fetchOrThrow'; -export async function fetchImage(uri) { - const res = await fetchOrThrow(uri); - const blob = await (res).blob(); - if (!blob.type.startsWith('image/')) { - throw new Error(`fetchImage - expected blob type to be of type image/*, instead have: ${blob.type}, for url: ${res.url}`); - } - return bufferToImage(blob); -} -//# sourceMappingURL=fetchImage.js.map \ No newline at end of file diff --git a/build/dom/fetchImage.js.map b/build/dom/fetchImage.js.map deleted file mode 100644 index d0cc64f..0000000 --- a/build/dom/fetchImage.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchImage.js","sourceRoot":"","sources":["../../src/dom/fetchImage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAW;IAC1C,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;IAE/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACnC,MAAM,IAAI,KAAK,CAAC,wEAAwE,IAAI,CAAC,IAAI,cAAc,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;KAC1H;IACD,OAAO,aAAa,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC"} \ No newline at end of file diff --git a/build/dom/fetchJson.d.ts b/build/dom/fetchJson.d.ts deleted file mode 100644 index 6f895e4..0000000 --- a/build/dom/fetchJson.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function fetchJson(uri: string): Promise; -//# sourceMappingURL=fetchJson.d.ts.map \ No newline at end of file diff --git a/build/dom/fetchJson.d.ts.map b/build/dom/fetchJson.d.ts.map deleted file mode 100644 index 5617f7d..0000000 --- a/build/dom/fetchJson.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchJson.d.ts","sourceRoot":"","sources":["../../src/dom/fetchJson.ts"],"names":[],"mappings":"AAEA,wBAAsB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAE1D"} \ No newline at end of file diff --git a/build/dom/fetchJson.js b/build/dom/fetchJson.js deleted file mode 100644 index 215338b..0000000 --- a/build/dom/fetchJson.js +++ /dev/null @@ -1,5 +0,0 @@ -import { fetchOrThrow } from './fetchOrThrow'; -export async function fetchJson(uri) { - return (await fetchOrThrow(uri)).json(); -} -//# sourceMappingURL=fetchJson.js.map \ No newline at end of file diff --git a/build/dom/fetchJson.js.map b/build/dom/fetchJson.js.map deleted file mode 100644 index 6bf9837..0000000 --- a/build/dom/fetchJson.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchJson.js","sourceRoot":"","sources":["../../src/dom/fetchJson.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,GAAW;IAC5C,OAAO,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AACzC,CAAC"} \ No newline at end of file diff --git a/build/dom/fetchNetWeights.d.ts b/build/dom/fetchNetWeights.d.ts deleted file mode 100644 index 10a5191..0000000 --- a/build/dom/fetchNetWeights.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function fetchNetWeights(uri: string): Promise; -//# sourceMappingURL=fetchNetWeights.d.ts.map \ No newline at end of file diff --git a/build/dom/fetchNetWeights.d.ts.map b/build/dom/fetchNetWeights.d.ts.map deleted file mode 100644 index 4e30092..0000000 --- a/build/dom/fetchNetWeights.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchNetWeights.d.ts","sourceRoot":"","sources":["../../src/dom/fetchNetWeights.ts"],"names":[],"mappings":"AAEA,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAExE"} \ No newline at end of file diff --git a/build/dom/fetchNetWeights.js b/build/dom/fetchNetWeights.js deleted file mode 100644 index a1bf5ee..0000000 --- a/build/dom/fetchNetWeights.js +++ /dev/null @@ -1,5 +0,0 @@ -import { fetchOrThrow } from './fetchOrThrow'; -export async function fetchNetWeights(uri) { - return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer()); -} -//# sourceMappingURL=fetchNetWeights.js.map \ No newline at end of file diff --git a/build/dom/fetchNetWeights.js.map b/build/dom/fetchNetWeights.js.map deleted file mode 100644 index 54c9b42..0000000 --- a/build/dom/fetchNetWeights.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchNetWeights.js","sourceRoot":"","sources":["../../src/dom/fetchNetWeights.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;AACxE,CAAC"} \ No newline at end of file diff --git a/build/dom/fetchOrThrow.d.ts b/build/dom/fetchOrThrow.d.ts deleted file mode 100644 index 414721d..0000000 --- a/build/dom/fetchOrThrow.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function fetchOrThrow(url: string, init?: RequestInit): Promise; -//# sourceMappingURL=fetchOrThrow.d.ts.map \ No newline at end of file diff --git a/build/dom/fetchOrThrow.d.ts.map b/build/dom/fetchOrThrow.d.ts.map deleted file mode 100644 index e7ee2bb..0000000 --- a/build/dom/fetchOrThrow.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchOrThrow.d.ts","sourceRoot":"","sources":["../../src/dom/fetchOrThrow.ts"],"names":[],"mappings":"AAEA,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,CAQnB"} \ No newline at end of file diff --git a/build/dom/fetchOrThrow.js b/build/dom/fetchOrThrow.js deleted file mode 100644 index f00015b..0000000 --- a/build/dom/fetchOrThrow.js +++ /dev/null @@ -1,10 +0,0 @@ -import { env } from '../env'; -export async function fetchOrThrow(url, init) { - const fetch = env.getEnv().fetch; - const res = await fetch(url, init); - if (!(res.status < 400)) { - throw new Error(`failed to fetch: (${res.status}) ${res.statusText}, from url: ${res.url}`); - } - return res; -} -//# sourceMappingURL=fetchOrThrow.js.map \ No newline at end of file diff --git a/build/dom/fetchOrThrow.js.map b/build/dom/fetchOrThrow.js.map deleted file mode 100644 index 555f1d1..0000000 --- a/build/dom/fetchOrThrow.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fetchOrThrow.js","sourceRoot":"","sources":["../../src/dom/fetchOrThrow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,GAAW,EACX,IAAkB;IAGlB,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAA;IAChC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,eAAe,GAAG,CAAC,GAAG,EAAE,CAAC,CAAA;KAC5F;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/dom/getContext2dOrThrow.d.ts b/build/dom/getContext2dOrThrow.d.ts deleted file mode 100644 index 68f7f5b..0000000 --- a/build/dom/getContext2dOrThrow.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function getContext2dOrThrow(canvasArg: string | HTMLCanvasElement | CanvasRenderingContext2D): CanvasRenderingContext2D; -//# sourceMappingURL=getContext2dOrThrow.d.ts.map \ No newline at end of file diff --git a/build/dom/getContext2dOrThrow.d.ts.map b/build/dom/getContext2dOrThrow.d.ts.map deleted file mode 100644 index 4ad3099..0000000 --- a/build/dom/getContext2dOrThrow.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getContext2dOrThrow.d.ts","sourceRoot":"","sources":["../../src/dom/getContext2dOrThrow.ts"],"names":[],"mappings":"AAGA,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,wBAAwB,GAAG,wBAAwB,CAoB9H"} \ No newline at end of file diff --git a/build/dom/getContext2dOrThrow.js b/build/dom/getContext2dOrThrow.js deleted file mode 100644 index c7b04f6..0000000 --- a/build/dom/getContext2dOrThrow.js +++ /dev/null @@ -1,18 +0,0 @@ -import { env } from '../env'; -import { resolveInput } from './resolveInput'; -export function getContext2dOrThrow(canvasArg) { - const { Canvas, CanvasRenderingContext2D } = env.getEnv(); - if (canvasArg instanceof CanvasRenderingContext2D) { - return canvasArg; - } - const canvas = resolveInput(canvasArg); - if (!(canvas instanceof Canvas)) { - throw new Error('resolveContext2d - expected canvas to be of instance of Canvas'); - } - const ctx = canvas.getContext('2d'); - if (!ctx) { - throw new Error('resolveContext2d - canvas 2d context is null'); - } - return ctx; -} -//# sourceMappingURL=getContext2dOrThrow.js.map \ No newline at end of file diff --git a/build/dom/getContext2dOrThrow.js.map b/build/dom/getContext2dOrThrow.js.map deleted file mode 100644 index b05eaab..0000000 --- a/build/dom/getContext2dOrThrow.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getContext2dOrThrow.js","sourceRoot":"","sources":["../../src/dom/getContext2dOrThrow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,UAAU,mBAAmB,CAAC,SAAgE;IAElG,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAEzD,IAAI,SAAS,YAAY,wBAAwB,EAAE;QACjD,OAAO,SAAS,CAAA;KACjB;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IAEtC,IAAI,CAAC,CAAC,MAAM,YAAY,MAAM,CAAC,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;KAClF;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;KAChE;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/dom/getMediaDimensions.d.ts b/build/dom/getMediaDimensions.d.ts deleted file mode 100644 index 1da5924..0000000 --- a/build/dom/getMediaDimensions.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Dimensions, IDimensions } from '../classes/Dimensions'; -export declare function getMediaDimensions(input: HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | IDimensions): Dimensions; -//# sourceMappingURL=getMediaDimensions.d.ts.map \ No newline at end of file diff --git a/build/dom/getMediaDimensions.d.ts.map b/build/dom/getMediaDimensions.d.ts.map deleted file mode 100644 index a2b1a83..0000000 --- a/build/dom/getMediaDimensions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getMediaDimensions.d.ts","sourceRoot":"","sources":["../../src/dom/getMediaDimensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGhE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,WAAW,GAAG,UAAU,CAW3H"} \ No newline at end of file diff --git a/build/dom/getMediaDimensions.js b/build/dom/getMediaDimensions.js deleted file mode 100644 index fb8def5..0000000 --- a/build/dom/getMediaDimensions.js +++ /dev/null @@ -1,13 +0,0 @@ -import { Dimensions } from '../classes/Dimensions'; -import { env } from '../env'; -export function getMediaDimensions(input) { - const { Image, Video } = env.getEnv(); - if (input instanceof Image) { - return new Dimensions(input.naturalWidth, input.naturalHeight); - } - if (input instanceof Video) { - return new Dimensions(input.videoWidth, input.videoHeight); - } - return new Dimensions(input.width, input.height); -} -//# sourceMappingURL=getMediaDimensions.js.map \ No newline at end of file diff --git a/build/dom/getMediaDimensions.js.map b/build/dom/getMediaDimensions.js.map deleted file mode 100644 index 6b87098..0000000 --- a/build/dom/getMediaDimensions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"getMediaDimensions.js","sourceRoot":"","sources":["../../src/dom/getMediaDimensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,MAAM,UAAU,kBAAkB,CAAC,KAA4E;IAE7G,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAErC,IAAI,KAAK,YAAY,KAAK,EAAE;QAC1B,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;KAC/D;IACD,IAAI,KAAK,YAAY,KAAK,EAAE;QAC1B,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;KAC3D;IACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;AAClD,CAAC"} \ No newline at end of file diff --git a/build/dom/imageTensorToCanvas.d.ts b/build/dom/imageTensorToCanvas.d.ts deleted file mode 100644 index 6ba317d..0000000 --- a/build/dom/imageTensorToCanvas.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare function imageTensorToCanvas(imgTensor: tf.Tensor, canvas?: HTMLCanvasElement): Promise; -//# sourceMappingURL=imageTensorToCanvas.d.ts.map \ No newline at end of file diff --git a/build/dom/imageTensorToCanvas.d.ts.map b/build/dom/imageTensorToCanvas.d.ts.map deleted file mode 100644 index 57a0388..0000000 --- a/build/dom/imageTensorToCanvas.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"imageTensorToCanvas.d.ts","sourceRoot":"","sources":["../../src/dom/imageTensorToCanvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAK5C,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,EAAE,CAAC,MAAM,EACpB,MAAM,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAW5B"} \ No newline at end of file diff --git a/build/dom/imageTensorToCanvas.js b/build/dom/imageTensorToCanvas.js deleted file mode 100644 index 9725276..0000000 --- a/build/dom/imageTensorToCanvas.js +++ /dev/null @@ -1,12 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { env } from '../env'; -import { isTensor4D } from '../utils'; -export async function imageTensorToCanvas(imgTensor, canvas) { - const targetCanvas = canvas || env.getEnv().createCanvasElement(); - const [height, width, numChannels] = imgTensor.shape.slice(isTensor4D(imgTensor) ? 1 : 0); - const imgTensor3D = tf.tidy(() => imgTensor.as3D(height, width, numChannels).toInt()); - await tf.browser.toPixels(imgTensor3D, targetCanvas); - imgTensor3D.dispose(); - return targetCanvas; -} -//# sourceMappingURL=imageTensorToCanvas.js.map \ No newline at end of file diff --git a/build/dom/imageTensorToCanvas.js.map b/build/dom/imageTensorToCanvas.js.map deleted file mode 100644 index 4628ee2..0000000 --- a/build/dom/imageTensorToCanvas.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"imageTensorToCanvas.js","sourceRoot":"","sources":["../../src/dom/imageTensorToCanvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,SAAoB,EACpB,MAA0B;IAG1B,MAAM,YAAY,GAAG,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,mBAAmB,EAAE,CAAA;IAEjE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACzF,MAAM,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IACrF,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAEpD,WAAW,CAAC,OAAO,EAAE,CAAA;IAErB,OAAO,YAAY,CAAA;AACrB,CAAC"} \ No newline at end of file diff --git a/build/dom/imageToSquare.d.ts b/build/dom/imageToSquare.d.ts deleted file mode 100644 index 3a0e400..0000000 --- a/build/dom/imageToSquare.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function imageToSquare(input: HTMLImageElement | HTMLCanvasElement, inputSize: number, centerImage?: boolean): HTMLCanvasElement; -//# sourceMappingURL=imageToSquare.d.ts.map \ No newline at end of file diff --git a/build/dom/imageToSquare.d.ts.map b/build/dom/imageToSquare.d.ts.map deleted file mode 100644 index 3019469..0000000 --- a/build/dom/imageToSquare.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"imageToSquare.d.ts","sourceRoot":"","sources":["../../src/dom/imageToSquare.ts"],"names":[],"mappings":"AAKA,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAE,OAAe,qBAsBzH"} \ No newline at end of file diff --git a/build/dom/imageToSquare.js b/build/dom/imageToSquare.js deleted file mode 100644 index 79cdf2b..0000000 --- a/build/dom/imageToSquare.js +++ /dev/null @@ -1,22 +0,0 @@ -import { env } from '../env'; -import { createCanvas, createCanvasFromMedia } from './createCanvas'; -import { getContext2dOrThrow } from './getContext2dOrThrow'; -import { getMediaDimensions } from './getMediaDimensions'; -export function imageToSquare(input, inputSize, centerImage = false) { - const { Image, Canvas } = env.getEnv(); - if (!(input instanceof Image || input instanceof Canvas)) { - throw new Error('imageToSquare - expected arg0 to be HTMLImageElement | HTMLCanvasElement'); - } - const dims = getMediaDimensions(input); - const scale = inputSize / Math.max(dims.height, dims.width); - const width = scale * dims.width; - const height = scale * dims.height; - const targetCanvas = createCanvas({ width: inputSize, height: inputSize }); - const inputCanvas = input instanceof Canvas ? input : createCanvasFromMedia(input); - const offset = Math.abs(width - height) / 2; - const dx = centerImage && width < height ? offset : 0; - const dy = centerImage && height < width ? offset : 0; - getContext2dOrThrow(targetCanvas).drawImage(inputCanvas, dx, dy, width, height); - return targetCanvas; -} -//# sourceMappingURL=imageToSquare.js.map \ No newline at end of file diff --git a/build/dom/imageToSquare.js.map b/build/dom/imageToSquare.js.map deleted file mode 100644 index 3fe3b95..0000000 --- a/build/dom/imageToSquare.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"imageToSquare.js","sourceRoot":"","sources":["../../src/dom/imageToSquare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,UAAU,aAAa,CAAC,KAA2C,EAAE,SAAiB,EAAE,cAAuB,KAAK;IAExH,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAEtC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,YAAY,MAAM,CAAC,EAAE;QACxD,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAA;KAC5F;IAED,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC3D,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IAChC,MAAM,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;IAElC,MAAM,YAAY,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IAC1E,MAAM,WAAW,GAAG,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAElF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,WAAW,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IACrD,MAAM,EAAE,GAAG,WAAW,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IACrD,mBAAmB,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAE/E,OAAO,YAAY,CAAA;AACrB,CAAC"} \ No newline at end of file diff --git a/build/dom/index.d.ts b/build/dom/index.d.ts deleted file mode 100644 index 193675f..0000000 --- a/build/dom/index.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -export * from './awaitMediaLoaded'; -export * from './bufferToImage'; -export * from './createCanvas'; -export * from './extractFaces'; -export * from './extractFaceTensors'; -export * from './fetchImage'; -export * from './fetchJson'; -export * from './fetchNetWeights'; -export * from './fetchOrThrow'; -export * from './getContext2dOrThrow'; -export * from './getMediaDimensions'; -export * from './imageTensorToCanvas'; -export * from './imageToSquare'; -export * from './isMediaElement'; -export * from './isMediaLoaded'; -export * from './loadWeightMap'; -export * from './matchDimensions'; -export * from './NetInput'; -export * from './resolveInput'; -export * from './toNetInput'; -export * from './types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/dom/index.d.ts.map b/build/dom/index.d.ts.map deleted file mode 100644 index cf719f1..0000000 --- a/build/dom/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dom/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/dom/index.js b/build/dom/index.js deleted file mode 100644 index 4ba64a7..0000000 --- a/build/dom/index.js +++ /dev/null @@ -1,22 +0,0 @@ -export * from './awaitMediaLoaded'; -export * from './bufferToImage'; -export * from './createCanvas'; -export * from './extractFaces'; -export * from './extractFaceTensors'; -export * from './fetchImage'; -export * from './fetchJson'; -export * from './fetchNetWeights'; -export * from './fetchOrThrow'; -export * from './getContext2dOrThrow'; -export * from './getMediaDimensions'; -export * from './imageTensorToCanvas'; -export * from './imageToSquare'; -export * from './isMediaElement'; -export * from './isMediaLoaded'; -export * from './loadWeightMap'; -export * from './matchDimensions'; -export * from './NetInput'; -export * from './resolveInput'; -export * from './toNetInput'; -export * from './types'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/dom/index.js.map b/build/dom/index.js.map deleted file mode 100644 index 8e7927e..0000000 --- a/build/dom/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dom/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/dom/isMediaElement.d.ts b/build/dom/isMediaElement.d.ts deleted file mode 100644 index 99e2537..0000000 --- a/build/dom/isMediaElement.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function isMediaElement(input: any): boolean; -//# sourceMappingURL=isMediaElement.d.ts.map \ No newline at end of file diff --git a/build/dom/isMediaElement.d.ts.map b/build/dom/isMediaElement.d.ts.map deleted file mode 100644 index 483b7b0..0000000 --- a/build/dom/isMediaElement.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isMediaElement.d.ts","sourceRoot":"","sources":["../../src/dom/isMediaElement.ts"],"names":[],"mappings":"AAEA,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,WAOxC"} \ No newline at end of file diff --git a/build/dom/isMediaElement.js b/build/dom/isMediaElement.js deleted file mode 100644 index f0305c0..0000000 --- a/build/dom/isMediaElement.js +++ /dev/null @@ -1,8 +0,0 @@ -import { env } from '../env'; -export function isMediaElement(input) { - const { Image, Canvas, Video } = env.getEnv(); - return input instanceof Image - || input instanceof Canvas - || input instanceof Video; -} -//# sourceMappingURL=isMediaElement.js.map \ No newline at end of file diff --git a/build/dom/isMediaElement.js.map b/build/dom/isMediaElement.js.map deleted file mode 100644 index 47c5138..0000000 --- a/build/dom/isMediaElement.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isMediaElement.js","sourceRoot":"","sources":["../../src/dom/isMediaElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,MAAM,UAAU,cAAc,CAAC,KAAU;IAEvC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAE7C,OAAO,KAAK,YAAY,KAAK;WACxB,KAAK,YAAY,MAAM;WACvB,KAAK,YAAY,KAAK,CAAA;AAC7B,CAAC"} \ No newline at end of file diff --git a/build/dom/isMediaLoaded.d.ts b/build/dom/isMediaLoaded.d.ts deleted file mode 100644 index 10837b4..0000000 --- a/build/dom/isMediaLoaded.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function isMediaLoaded(media: HTMLImageElement | HTMLVideoElement): boolean; -//# sourceMappingURL=isMediaLoaded.d.ts.map \ No newline at end of file diff --git a/build/dom/isMediaLoaded.d.ts.map b/build/dom/isMediaLoaded.d.ts.map deleted file mode 100644 index 607153f..0000000 --- a/build/dom/isMediaLoaded.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isMediaLoaded.d.ts","sourceRoot":"","sources":["../../src/dom/isMediaLoaded.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,GAAI,OAAO,CAMlF"} \ No newline at end of file diff --git a/build/dom/isMediaLoaded.js b/build/dom/isMediaLoaded.js deleted file mode 100644 index 266a8e9..0000000 --- a/build/dom/isMediaLoaded.js +++ /dev/null @@ -1,7 +0,0 @@ -import { env } from '../env'; -export function isMediaLoaded(media) { - const { Image, Video } = env.getEnv(); - return (media instanceof Image && media.complete) - || (media instanceof Video && media.readyState >= 3); -} -//# sourceMappingURL=isMediaLoaded.js.map \ No newline at end of file diff --git a/build/dom/isMediaLoaded.js.map b/build/dom/isMediaLoaded.js.map deleted file mode 100644 index 1efee53..0000000 --- a/build/dom/isMediaLoaded.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isMediaLoaded.js","sourceRoot":"","sources":["../../src/dom/isMediaLoaded.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,MAAM,UAAU,aAAa,CAAC,KAA0C;IAEtE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IAErC,OAAO,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC;WAC5C,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,CAAA;AACxD,CAAC"} \ No newline at end of file diff --git a/build/dom/loadWeightMap.d.ts b/build/dom/loadWeightMap.d.ts deleted file mode 100644 index 7017212..0000000 --- a/build/dom/loadWeightMap.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare function loadWeightMap(uri: string | undefined, defaultModelName: string): Promise; -//# sourceMappingURL=loadWeightMap.d.ts.map \ No newline at end of file diff --git a/build/dom/loadWeightMap.d.ts.map b/build/dom/loadWeightMap.d.ts.map deleted file mode 100644 index 1df48d9..0000000 --- a/build/dom/loadWeightMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loadWeightMap.d.ts","sourceRoot":"","sources":["../../src/dom/loadWeightMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAK5C,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,EAAE,CAAC,cAAc,CAAC,CAK5B"} \ No newline at end of file diff --git a/build/dom/loadWeightMap.js b/build/dom/loadWeightMap.js deleted file mode 100644 index 25cfa2b..0000000 --- a/build/dom/loadWeightMap.js +++ /dev/null @@ -1,10 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { getModelUris } from '../common/getModelUris'; -import { fetchJson } from './fetchJson'; -export async function loadWeightMap(uri, defaultModelName) { - const { manifestUri, modelBaseUri } = getModelUris(uri, defaultModelName); - let manifest = await fetchJson(manifestUri); - // if (manifest['weightsManifest']) manifest = manifest['weightsManifest']; - return tf.io.loadWeights(manifest, modelBaseUri); -} -//# sourceMappingURL=loadWeightMap.js.map \ No newline at end of file diff --git a/build/dom/loadWeightMap.js.map b/build/dom/loadWeightMap.js.map deleted file mode 100644 index 01f9677..0000000 --- a/build/dom/loadWeightMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loadWeightMap.js","sourceRoot":"","sources":["../../src/dom/loadWeightMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAuB,EACvB,gBAAwB;IAExB,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAA;IACzE,IAAI,QAAQ,GAAG,MAAM,SAAS,CAA8B,WAAW,CAAC,CAAA;IACxE,2EAA2E;IAC3E,OAAO,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;AAClD,CAAC"} \ No newline at end of file diff --git a/build/dom/matchDimensions.d.ts b/build/dom/matchDimensions.d.ts deleted file mode 100644 index d3f741d..0000000 --- a/build/dom/matchDimensions.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { IDimensions } from '../classes'; -export declare function matchDimensions(input: IDimensions, reference: IDimensions, useMediaDimensions?: boolean): { - width: number; - height: number; -}; -//# sourceMappingURL=matchDimensions.d.ts.map \ No newline at end of file diff --git a/build/dom/matchDimensions.d.ts.map b/build/dom/matchDimensions.d.ts.map deleted file mode 100644 index 6a8b8db..0000000 --- a/build/dom/matchDimensions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"matchDimensions.d.ts","sourceRoot":"","sources":["../../src/dom/matchDimensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,GAAE,OAAe;;;EAO9G"} \ No newline at end of file diff --git a/build/dom/matchDimensions.js b/build/dom/matchDimensions.js deleted file mode 100644 index aa32108..0000000 --- a/build/dom/matchDimensions.js +++ /dev/null @@ -1,10 +0,0 @@ -import { getMediaDimensions } from './getMediaDimensions'; -export function matchDimensions(input, reference, useMediaDimensions = false) { - const { width, height } = useMediaDimensions - ? getMediaDimensions(reference) - : reference; - input.width = width; - input.height = height; - return { width, height }; -} -//# sourceMappingURL=matchDimensions.js.map \ No newline at end of file diff --git a/build/dom/matchDimensions.js.map b/build/dom/matchDimensions.js.map deleted file mode 100644 index 5ffc284..0000000 --- a/build/dom/matchDimensions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"matchDimensions.js","sourceRoot":"","sources":["../../src/dom/matchDimensions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,UAAU,eAAe,CAAC,KAAkB,EAAE,SAAsB,EAAE,qBAA8B,KAAK;IAC7G,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,kBAAkB;QAC1C,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC;QAC/B,CAAC,CAAC,SAAS,CAAA;IACb,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;IACnB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;IACrB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;AAC1B,CAAC"} \ No newline at end of file diff --git a/build/dom/resolveInput.d.ts b/build/dom/resolveInput.d.ts deleted file mode 100644 index 2018870..0000000 --- a/build/dom/resolveInput.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function resolveInput(arg: string | any): any; -//# sourceMappingURL=resolveInput.d.ts.map \ No newline at end of file diff --git a/build/dom/resolveInput.d.ts.map b/build/dom/resolveInput.d.ts.map deleted file mode 100644 index b3cc3e7..0000000 --- a/build/dom/resolveInput.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"resolveInput.d.ts","sourceRoot":"","sources":["../../src/dom/resolveInput.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,OAK7C"} \ No newline at end of file diff --git a/build/dom/resolveInput.js b/build/dom/resolveInput.js deleted file mode 100644 index 37b844d..0000000 --- a/build/dom/resolveInput.js +++ /dev/null @@ -1,8 +0,0 @@ -import { env } from '../env'; -export function resolveInput(arg) { - if (!env.isNodejs() && typeof arg === 'string') { - return document.getElementById(arg); - } - return arg; -} -//# sourceMappingURL=resolveInput.js.map \ No newline at end of file diff --git a/build/dom/resolveInput.js.map b/build/dom/resolveInput.js.map deleted file mode 100644 index 2638891..0000000 --- a/build/dom/resolveInput.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"resolveInput.js","sourceRoot":"","sources":["../../src/dom/resolveInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,MAAM,UAAU,YAAY,CAAC,GAAiB;IAC5C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC9C,OAAO,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;KACpC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/dom/toNetInput.d.ts b/build/dom/toNetInput.d.ts deleted file mode 100644 index 2d6021e..0000000 --- a/build/dom/toNetInput.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { NetInput } from './NetInput'; -import { TNetInput } from './types'; -/** - * Validates the input to make sure, they are valid net inputs and awaits all media elements - * to be finished loading. - * - * @param input The input, which can be a media element or an array of different media elements. - * @returns A NetInput instance, which can be passed into one of the neural networks. - */ -export declare function toNetInput(inputs: TNetInput): Promise; -//# sourceMappingURL=toNetInput.d.ts.map \ No newline at end of file diff --git a/build/dom/toNetInput.d.ts.map b/build/dom/toNetInput.d.ts.map deleted file mode 100644 index 363ee4f..0000000 --- a/build/dom/toNetInput.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"toNetInput.d.ts","sourceRoot":"","sources":["../../src/dom/toNetInput.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CA0CrE"} \ No newline at end of file diff --git a/build/dom/toNetInput.js b/build/dom/toNetInput.js deleted file mode 100644 index e96792b..0000000 --- a/build/dom/toNetInput.js +++ /dev/null @@ -1,44 +0,0 @@ -import { isTensor3D, isTensor4D } from '../utils'; -import { awaitMediaLoaded } from './awaitMediaLoaded'; -import { isMediaElement } from './isMediaElement'; -import { NetInput } from './NetInput'; -import { resolveInput } from './resolveInput'; -/** - * Validates the input to make sure, they are valid net inputs and awaits all media elements - * to be finished loading. - * - * @param input The input, which can be a media element or an array of different media elements. - * @returns A NetInput instance, which can be passed into one of the neural networks. - */ -export async function toNetInput(inputs) { - if (inputs instanceof NetInput) { - return inputs; - } - let inputArgArray = Array.isArray(inputs) - ? inputs - : [inputs]; - if (!inputArgArray.length) { - throw new Error('toNetInput - empty array passed as input'); - } - const getIdxHint = (idx) => Array.isArray(inputs) ? ` at input index ${idx}:` : ''; - const inputArray = inputArgArray.map(resolveInput); - inputArray.forEach((input, i) => { - if (!isMediaElement(input) && !isTensor3D(input) && !isTensor4D(input)) { - if (typeof inputArgArray[i] === 'string') { - throw new Error(`toNetInput -${getIdxHint(i)} string passed, but could not resolve HTMLElement for element id ${inputArgArray[i]}`); - } - throw new Error(`toNetInput -${getIdxHint(i)} expected media to be of type HTMLImageElement | HTMLVideoElement | HTMLCanvasElement | tf.Tensor3D, or to be an element id`); - } - if (isTensor4D(input)) { - // if tf.Tensor4D is passed in the input array, the batch size has to be 1 - const batchSize = input.shape[0]; - if (batchSize !== 1) { - throw new Error(`toNetInput -${getIdxHint(i)} tf.Tensor4D with batchSize ${batchSize} passed, but not supported in input array`); - } - } - }); - // wait for all media elements being loaded - await Promise.all(inputArray.map(input => isMediaElement(input) && awaitMediaLoaded(input))); - return new NetInput(inputArray, Array.isArray(inputs)); -} -//# sourceMappingURL=toNetInput.js.map \ No newline at end of file diff --git a/build/dom/toNetInput.js.map b/build/dom/toNetInput.js.map deleted file mode 100644 index 9de0b21..0000000 --- a/build/dom/toNetInput.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"toNetInput.js","sourceRoot":"","sources":["../../src/dom/toNetInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAiB;IAChD,IAAI,MAAM,YAAY,QAAQ,EAAE;QAC9B,OAAO,MAAM,CAAA;KACd;IAED,IAAI,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACrC,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAEd,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;KAC5D;IAED,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,mBAAmB,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAE1F,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAElD,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YAEtE,IAAI,OAAO,aAAa,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,oEAAoE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;aACpI;YAED,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,6HAA6H,CAAC,CAAA;SAC3K;QAED,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;YACrB,0EAA0E;YAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAChC,IAAI,SAAS,KAAK,CAAC,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,+BAA+B,SAAS,2CAA2C,CAAC,CAAA;aACjI;SACF;IACH,CAAC,CAAC,CAAA;IAEF,2CAA2C;IAC3C,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAC1E,CAAA;IAED,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;AACxD,CAAC"} \ No newline at end of file diff --git a/build/dom/types.d.ts b/build/dom/types.d.ts deleted file mode 100644 index 06d1349..0000000 --- a/build/dom/types.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput } from './NetInput'; -export declare type TMediaElement = HTMLImageElement | HTMLVideoElement | HTMLCanvasElement; -export declare type TResolvedNetInput = TMediaElement | tf.Tensor3D | tf.Tensor4D; -export declare type TNetInputArg = string | TResolvedNetInput; -export declare type TNetInput = TNetInputArg | Array | NetInput | tf.Tensor4D; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/dom/types.d.ts.map b/build/dom/types.d.ts.map deleted file mode 100644 index 7bb2d56..0000000 --- a/build/dom/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/dom/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,oBAAY,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB,CAAA;AAEnF,oBAAY,iBAAiB,GAAG,aAAa,GAAG,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAA;AAEzE,oBAAY,YAAY,GAAG,MAAM,GAAG,iBAAiB,CAAA;AAErD,oBAAY,SAAS,GAAG,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAA"} \ No newline at end of file diff --git a/build/dom/types.js b/build/dom/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/dom/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/dom/types.js.map b/build/dom/types.js.map deleted file mode 100644 index 3c42080..0000000 --- a/build/dom/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/dom/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/draw/DrawBox.d.ts b/build/draw/DrawBox.d.ts deleted file mode 100644 index 960c8fe..0000000 --- a/build/draw/DrawBox.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Box, IBoundingBox, IRect } from '../classes'; -import { DrawTextFieldOptions, IDrawTextFieldOptions } from './DrawTextField'; -export interface IDrawBoxOptions { - boxColor?: string; - lineWidth?: number; - drawLabelOptions?: IDrawTextFieldOptions; - label?: string; -} -export declare class DrawBoxOptions { - boxColor: string; - lineWidth: number; - drawLabelOptions: DrawTextFieldOptions; - label?: string; - constructor(options?: IDrawBoxOptions); -} -export declare class DrawBox { - box: Box; - options: DrawBoxOptions; - constructor(box: IBoundingBox | IRect, options?: IDrawBoxOptions); - draw(canvasArg: string | HTMLCanvasElement | CanvasRenderingContext2D): void; -} -//# sourceMappingURL=DrawBox.d.ts.map \ No newline at end of file diff --git a/build/draw/DrawBox.d.ts.map b/build/draw/DrawBox.d.ts.map deleted file mode 100644 index 0b2c476..0000000 --- a/build/draw/DrawBox.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DrawBox.d.ts","sourceRoot":"","sources":["../../src/draw/DrawBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,EAAiC,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7G,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,qBAAqB,CAAA;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,cAAc;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,oBAAoB,CAAA;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;gBAET,OAAO,GAAE,eAAoB;CAY1C;AAED,qBAAa,OAAO;IACX,GAAG,EAAE,GAAG,CAAA;IACR,OAAO,EAAE,cAAc,CAAA;gBAG5B,GAAG,EAAE,YAAY,GAAG,KAAK,EACzB,OAAO,GAAE,eAAoB;IAM/B,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,wBAAwB;CAetE"} \ No newline at end of file diff --git a/build/draw/DrawBox.js b/build/draw/DrawBox.js deleted file mode 100644 index ca6f256..0000000 --- a/build/draw/DrawBox.js +++ /dev/null @@ -1,35 +0,0 @@ -import { Box } from '../classes'; -import { getContext2dOrThrow } from '../dom/getContext2dOrThrow'; -import { AnchorPosition, DrawTextField, DrawTextFieldOptions } from './DrawTextField'; -export class DrawBoxOptions { - constructor(options = {}) { - const { boxColor, lineWidth, label, drawLabelOptions } = options; - this.boxColor = boxColor || 'rgba(0, 0, 255, 1)'; - this.lineWidth = lineWidth || 2; - this.label = label; - const defaultDrawLabelOptions = { - anchorPosition: AnchorPosition.BOTTOM_LEFT, - backgroundColor: this.boxColor - }; - this.drawLabelOptions = new DrawTextFieldOptions(Object.assign({}, defaultDrawLabelOptions, drawLabelOptions)); - } -} -export class DrawBox { - constructor(box, options = {}) { - this.box = new Box(box); - this.options = new DrawBoxOptions(options); - } - draw(canvasArg) { - const ctx = getContext2dOrThrow(canvasArg); - const { boxColor, lineWidth } = this.options; - const { x, y, width, height } = this.box; - ctx.strokeStyle = boxColor; - ctx.lineWidth = lineWidth; - ctx.strokeRect(x, y, width, height); - const { label } = this.options; - if (label) { - new DrawTextField([label], { x: x - (lineWidth / 2), y }, this.options.drawLabelOptions).draw(canvasArg); - } - } -} -//# sourceMappingURL=DrawBox.js.map \ No newline at end of file diff --git a/build/draw/DrawBox.js.map b/build/draw/DrawBox.js.map deleted file mode 100644 index 5156f6b..0000000 --- a/build/draw/DrawBox.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DrawBox.js","sourceRoot":"","sources":["../../src/draw/DrawBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAuB,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,oBAAoB,EAAyB,MAAM,iBAAiB,CAAC;AAS7G,MAAM,OAAO,cAAc;IAMzB,YAAY,UAA2B,EAAE;QACvC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAA;QAChE,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,oBAAoB,CAAA;QAChD,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,MAAM,uBAAuB,GAAG;YAC9B,cAAc,EAAE,cAAc,CAAC,WAAW;YAC1C,eAAe,EAAE,IAAI,CAAC,QAAQ;SAC/B,CAAA;QACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,uBAAuB,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAChH,CAAC;CACF;AAED,MAAM,OAAO,OAAO;IAIlB,YACE,GAAyB,EACzB,UAA2B,EAAE;QAE7B,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,CAAC,SAAgE;QACnE,MAAM,GAAG,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;QAE1C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,CAAA;QAE5C,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QACxC,GAAG,CAAC,WAAW,GAAG,QAAQ,CAAA;QAC1B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAA;QACzB,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QAEnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAA;QAC9B,IAAI,KAAK,EAAE;YACT,IAAI,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;SACzG;IACH,CAAC;CACF"} \ No newline at end of file diff --git a/build/draw/DrawFaceLandmarks.d.ts b/build/draw/DrawFaceLandmarks.d.ts deleted file mode 100644 index f6c61cc..0000000 --- a/build/draw/DrawFaceLandmarks.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { FaceLandmarks } from '../classes/FaceLandmarks'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -import { WithFaceLandmarks } from '../factories/WithFaceLandmarks'; -export interface IDrawFaceLandmarksOptions { - drawLines?: boolean; - drawPoints?: boolean; - lineWidth?: number; - pointSize?: number; - lineColor?: string; - pointColor?: string; -} -export declare class DrawFaceLandmarksOptions { - drawLines: boolean; - drawPoints: boolean; - lineWidth: number; - pointSize: number; - lineColor: string; - pointColor: string; - constructor(options?: IDrawFaceLandmarksOptions); -} -export declare class DrawFaceLandmarks { - faceLandmarks: FaceLandmarks; - options: DrawFaceLandmarksOptions; - constructor(faceLandmarks: FaceLandmarks, options?: IDrawFaceLandmarksOptions); - draw(canvasArg: string | HTMLCanvasElement | CanvasRenderingContext2D): void; -} -export declare type DrawFaceLandmarksInput = FaceLandmarks | WithFaceLandmarks>; -export declare function drawFaceLandmarks(canvasArg: string | HTMLCanvasElement, faceLandmarks: DrawFaceLandmarksInput | Array): void; -//# sourceMappingURL=DrawFaceLandmarks.d.ts.map \ No newline at end of file diff --git a/build/draw/DrawFaceLandmarks.d.ts.map b/build/draw/DrawFaceLandmarks.d.ts.map deleted file mode 100644 index 7f4817b..0000000 --- a/build/draw/DrawFaceLandmarks.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DrawFaceLandmarks.d.ts","sourceRoot":"","sources":["../../src/draw/DrawFaceLandmarks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAuB,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGxF,MAAM,WAAW,yBAAyB;IACxC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,wBAAwB;IAC5B,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;gBAEb,OAAO,GAAE,yBAA8B;CASpD;AAED,qBAAa,iBAAiB;IACrB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,wBAAwB,CAAA;gBAGtC,aAAa,EAAE,aAAa,EAC5B,OAAO,GAAE,yBAA8B;IAMzC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,wBAAwB;CA6BtE;AAED,oBAAY,sBAAsB,GAAG,aAAa,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAA;AAE7F,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,GAAG,iBAAiB,EACrC,aAAa,EAAE,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAC,QAatE"} \ No newline at end of file diff --git a/build/draw/DrawFaceLandmarks.js b/build/draw/DrawFaceLandmarks.js deleted file mode 100644 index 9aa0e35..0000000 --- a/build/draw/DrawFaceLandmarks.js +++ /dev/null @@ -1,60 +0,0 @@ -import { FaceLandmarks } from '../classes/FaceLandmarks'; -import { FaceLandmarks68 } from '../classes/FaceLandmarks68'; -import { getContext2dOrThrow } from '../dom/getContext2dOrThrow'; -import { isWithFaceLandmarks } from '../factories/WithFaceLandmarks'; -import { drawContour } from './drawContour'; -export class DrawFaceLandmarksOptions { - constructor(options = {}) { - const { drawLines = true, drawPoints = true, lineWidth, lineColor, pointSize, pointColor } = options; - this.drawLines = drawLines; - this.drawPoints = drawPoints; - this.lineWidth = lineWidth || 1; - this.pointSize = pointSize || 2; - this.lineColor = lineColor || 'rgba(0, 255, 255, 1)'; - this.pointColor = pointColor || 'rgba(255, 0, 255, 1)'; - } -} -export class DrawFaceLandmarks { - constructor(faceLandmarks, options = {}) { - this.faceLandmarks = faceLandmarks; - this.options = new DrawFaceLandmarksOptions(options); - } - draw(canvasArg) { - const ctx = getContext2dOrThrow(canvasArg); - const { drawLines, drawPoints, lineWidth, lineColor, pointSize, pointColor } = this.options; - if (drawLines && this.faceLandmarks instanceof FaceLandmarks68) { - ctx.strokeStyle = lineColor; - ctx.lineWidth = lineWidth; - drawContour(ctx, this.faceLandmarks.getJawOutline()); - drawContour(ctx, this.faceLandmarks.getLeftEyeBrow()); - drawContour(ctx, this.faceLandmarks.getRightEyeBrow()); - drawContour(ctx, this.faceLandmarks.getNose()); - drawContour(ctx, this.faceLandmarks.getLeftEye(), true); - drawContour(ctx, this.faceLandmarks.getRightEye(), true); - drawContour(ctx, this.faceLandmarks.getMouth(), true); - } - if (drawPoints) { - ctx.strokeStyle = pointColor; - ctx.fillStyle = pointColor; - const drawPoint = (pt) => { - ctx.beginPath(); - ctx.arc(pt.x, pt.y, pointSize, 0, 2 * Math.PI); - ctx.fill(); - }; - this.faceLandmarks.positions.forEach(drawPoint); - } - } -} -export function drawFaceLandmarks(canvasArg, faceLandmarks) { - const faceLandmarksArray = Array.isArray(faceLandmarks) ? faceLandmarks : [faceLandmarks]; - faceLandmarksArray.forEach(f => { - const landmarks = f instanceof FaceLandmarks - ? f - : (isWithFaceLandmarks(f) ? f.landmarks : undefined); - if (!landmarks) { - throw new Error('drawFaceLandmarks - expected faceExpressions to be FaceLandmarks | WithFaceLandmarks> or array thereof'); - } - new DrawFaceLandmarks(landmarks).draw(canvasArg); - }); -} -//# sourceMappingURL=DrawFaceLandmarks.js.map \ No newline at end of file diff --git a/build/draw/DrawFaceLandmarks.js.map b/build/draw/DrawFaceLandmarks.js.map deleted file mode 100644 index 50f2ac5..0000000 --- a/build/draw/DrawFaceLandmarks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DrawFaceLandmarks.js","sourceRoot":"","sources":["../../src/draw/DrawFaceLandmarks.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/draw/DrawTextField.d.ts b/build/draw/DrawTextField.d.ts deleted file mode 100644 index efe920e..0000000 --- a/build/draw/DrawTextField.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { IDimensions, IPoint } from '../classes'; -export declare enum AnchorPosition { - TOP_LEFT = "TOP_LEFT", - TOP_RIGHT = "TOP_RIGHT", - BOTTOM_LEFT = "BOTTOM_LEFT", - BOTTOM_RIGHT = "BOTTOM_RIGHT" -} -export interface IDrawTextFieldOptions { - anchorPosition?: AnchorPosition; - backgroundColor?: string; - fontColor?: string; - fontSize?: number; - fontStyle?: string; - padding?: number; -} -export declare class DrawTextFieldOptions implements IDrawTextFieldOptions { - anchorPosition: AnchorPosition; - backgroundColor: string; - fontColor: string; - fontSize: number; - fontStyle: string; - padding: number; - constructor(options?: IDrawTextFieldOptions); -} -export declare class DrawTextField { - text: string[]; - anchor: IPoint; - options: DrawTextFieldOptions; - constructor(text: string | string[] | DrawTextField, anchor: IPoint, options?: IDrawTextFieldOptions); - measureWidth(ctx: CanvasRenderingContext2D): number; - measureHeight(): number; - getUpperLeft(ctx: CanvasRenderingContext2D, canvasDims?: IDimensions): IPoint; - draw(canvasArg: string | HTMLCanvasElement | CanvasRenderingContext2D): void; -} -//# sourceMappingURL=DrawTextField.d.ts.map \ No newline at end of file diff --git a/build/draw/DrawTextField.d.ts.map b/build/draw/DrawTextField.d.ts.map deleted file mode 100644 index 7231b9c..0000000 --- a/build/draw/DrawTextField.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DrawTextField.d.ts","sourceRoot":"","sources":["../../src/draw/DrawTextField.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAIjD,oBAAY,cAAc;IACxB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,oBAAqB,YAAW,qBAAqB;IACzD,cAAc,EAAE,cAAc,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;gBAEV,OAAO,GAAE,qBAA0B;CAShD;AAED,qBAAa,aAAa;IACjB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAG,MAAM,CAAA;IACf,OAAO,EAAE,oBAAoB,CAAA;gBAGlC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,aAAa,EACvC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,qBAA0B;IASrC,YAAY,CAAC,GAAG,EAAE,wBAAwB,GAAG,MAAM;IAKnD,aAAa,IAAI,MAAM;IAKvB,YAAY,CAAC,GAAG,EAAE,wBAAwB,EAAE,UAAU,CAAC,EAAE,WAAW,GAAG,MAAM;IAoB7E,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,wBAAwB;CAqBtE"} \ No newline at end of file diff --git a/build/draw/DrawTextField.js b/build/draw/DrawTextField.js deleted file mode 100644 index 8e6024b..0000000 --- a/build/draw/DrawTextField.js +++ /dev/null @@ -1,72 +0,0 @@ -import { getContext2dOrThrow } from '../dom/getContext2dOrThrow'; -import { resolveInput } from '../dom/resolveInput'; -export var AnchorPosition; -(function (AnchorPosition) { - AnchorPosition["TOP_LEFT"] = "TOP_LEFT"; - AnchorPosition["TOP_RIGHT"] = "TOP_RIGHT"; - AnchorPosition["BOTTOM_LEFT"] = "BOTTOM_LEFT"; - AnchorPosition["BOTTOM_RIGHT"] = "BOTTOM_RIGHT"; -})(AnchorPosition || (AnchorPosition = {})); -export class DrawTextFieldOptions { - constructor(options = {}) { - const { anchorPosition, backgroundColor, fontColor, fontSize, fontStyle, padding } = options; - this.anchorPosition = anchorPosition || AnchorPosition.TOP_LEFT; - this.backgroundColor = backgroundColor || 'rgba(0, 0, 0, 0.5)'; - this.fontColor = fontColor || 'rgba(255, 255, 255, 1)'; - this.fontSize = fontSize || 14; - this.fontStyle = fontStyle || 'Georgia'; - this.padding = padding || 4; - } -} -export class DrawTextField { - constructor(text, anchor, options = {}) { - this.text = typeof text === 'string' - ? [text] - : (text instanceof DrawTextField ? text.text : text); - this.anchor = anchor; - this.options = new DrawTextFieldOptions(options); - } - measureWidth(ctx) { - const { padding } = this.options; - return this.text.map(l => ctx.measureText(l).width).reduce((w0, w1) => w0 < w1 ? w1 : w0, 0) + (2 * padding); - } - measureHeight() { - const { fontSize, padding } = this.options; - return this.text.length * fontSize + (2 * padding); - } - getUpperLeft(ctx, canvasDims) { - const { anchorPosition } = this.options; - const isShiftLeft = anchorPosition === AnchorPosition.BOTTOM_RIGHT || anchorPosition === AnchorPosition.TOP_RIGHT; - const isShiftTop = anchorPosition === AnchorPosition.BOTTOM_LEFT || anchorPosition === AnchorPosition.BOTTOM_RIGHT; - const textFieldWidth = this.measureWidth(ctx); - const textFieldHeight = this.measureHeight(); - const x = (isShiftLeft ? this.anchor.x - textFieldWidth : this.anchor.x); - const y = isShiftTop ? this.anchor.y - textFieldHeight : this.anchor.y; - // adjust anchor if text box exceeds canvas borders - if (canvasDims) { - const { width, height } = canvasDims; - const newX = Math.max(Math.min(x, width - textFieldWidth), 0); - const newY = Math.max(Math.min(y, height - textFieldHeight), 0); - return { x: newX, y: newY }; - } - return { x, y }; - } - draw(canvasArg) { - const canvas = resolveInput(canvasArg); - const ctx = getContext2dOrThrow(canvas); - const { backgroundColor, fontColor, fontSize, fontStyle, padding } = this.options; - ctx.font = `${fontSize}px ${fontStyle}`; - const maxTextWidth = this.measureWidth(ctx); - const textHeight = this.measureHeight(); - ctx.fillStyle = backgroundColor; - const upperLeft = this.getUpperLeft(ctx, canvas); - ctx.fillRect(upperLeft.x, upperLeft.y, maxTextWidth, textHeight); - ctx.fillStyle = fontColor; - this.text.forEach((textLine, i) => { - const x = padding + upperLeft.x; - const y = padding + upperLeft.y + ((i + 1) * fontSize); - ctx.fillText(textLine, x, y); - }); - } -} -//# sourceMappingURL=DrawTextField.js.map \ No newline at end of file diff --git a/build/draw/DrawTextField.js.map b/build/draw/DrawTextField.js.map deleted file mode 100644 index d76c823..0000000 --- a/build/draw/DrawTextField.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DrawTextField.js","sourceRoot":"","sources":["../../src/draw/DrawTextField.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/draw/drawContour.d.ts b/build/draw/drawContour.d.ts deleted file mode 100644 index d947f32..0000000 --- a/build/draw/drawContour.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Point } from '../classes'; -export declare function drawContour(ctx: CanvasRenderingContext2D, points: Point[], isClosed?: boolean): void; -//# sourceMappingURL=drawContour.d.ts.map \ No newline at end of file diff --git a/build/draw/drawContour.d.ts.map b/build/draw/drawContour.d.ts.map deleted file mode 100644 index 0d40b23..0000000 --- a/build/draw/drawContour.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drawContour.d.ts","sourceRoot":"","sources":["../../src/draw/drawContour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,wBAAgB,WAAW,CACzB,GAAG,EAAE,wBAAwB,EAC7B,MAAM,EAAE,KAAK,EAAE,EACf,QAAQ,GAAE,OAAe,QAsB1B"} \ No newline at end of file diff --git a/build/draw/drawContour.js b/build/draw/drawContour.js deleted file mode 100644 index 2278a13..0000000 --- a/build/draw/drawContour.js +++ /dev/null @@ -1,19 +0,0 @@ -export function drawContour(ctx, points, isClosed = false) { - ctx.beginPath(); - points.slice(1).forEach(({ x, y }, prevIdx) => { - const from = points[prevIdx]; - ctx.moveTo(from.x, from.y); - ctx.lineTo(x, y); - }); - if (isClosed) { - const from = points[points.length - 1]; - const to = points[0]; - if (!from || !to) { - return; - } - ctx.moveTo(from.x, from.y); - ctx.lineTo(to.x, to.y); - } - ctx.stroke(); -} -//# sourceMappingURL=drawContour.js.map \ No newline at end of file diff --git a/build/draw/drawContour.js.map b/build/draw/drawContour.js.map deleted file mode 100644 index 8013d7c..0000000 --- a/build/draw/drawContour.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drawContour.js","sourceRoot":"","sources":["../../src/draw/drawContour.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CACzB,GAA6B,EAC7B,MAAe,EACf,WAAoB,KAAK;IAEzB,GAAG,CAAC,SAAS,EAAE,CAAA;IAEf,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;QAC5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QAC1B,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAI,QAAQ,EAAE;QACZ,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACtC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE;YAChB,OAAM;SACP;QAED,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QAC1B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;KACvB;IAED,GAAG,CAAC,MAAM,EAAE,CAAA;AACd,CAAC"} \ No newline at end of file diff --git a/build/draw/drawDetections.d.ts b/build/draw/drawDetections.d.ts deleted file mode 100644 index ee31bb8..0000000 --- a/build/draw/drawDetections.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { IBoundingBox, IRect } from '../classes'; -import { FaceDetection } from '../classes/FaceDetection'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -export declare type TDrawDetectionsInput = IRect | IBoundingBox | FaceDetection | WithFaceDetection<{}>; -export declare function drawDetections(canvasArg: string | HTMLCanvasElement, detections: TDrawDetectionsInput | Array): void; -//# sourceMappingURL=drawDetections.d.ts.map \ No newline at end of file diff --git a/build/draw/drawDetections.d.ts.map b/build/draw/drawDetections.d.ts.map deleted file mode 100644 index 6aee208..0000000 --- a/build/draw/drawDetections.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drawDetections.d.ts","sourceRoot":"","sources":["../../src/draw/drawDetections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAuB,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAIxF,oBAAY,oBAAoB,GAAG,KAAK,GAAG,YAAY,GAAG,aAAa,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAA;AAE/F,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,GAAG,iBAAiB,EACrC,UAAU,EAAE,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,CAAC,QAgB/D"} \ No newline at end of file diff --git a/build/draw/drawDetections.js b/build/draw/drawDetections.js deleted file mode 100644 index d56ab27..0000000 --- a/build/draw/drawDetections.js +++ /dev/null @@ -1,19 +0,0 @@ -import { Box } from '../classes'; -import { FaceDetection } from '../classes/FaceDetection'; -import { isWithFaceDetection } from '../factories/WithFaceDetection'; -import { round } from '../utils'; -import { DrawBox } from './DrawBox'; -export function drawDetections(canvasArg, detections) { - const detectionsArray = Array.isArray(detections) ? detections : [detections]; - detectionsArray.forEach(det => { - const score = det instanceof FaceDetection - ? det.score - : (isWithFaceDetection(det) ? det.detection.score : undefined); - const box = det instanceof FaceDetection - ? det.box - : (isWithFaceDetection(det) ? det.detection.box : new Box(det)); - const label = score ? `${round(score)}` : undefined; - new DrawBox(box, { label }).draw(canvasArg); - }); -} -//# sourceMappingURL=drawDetections.js.map \ No newline at end of file diff --git a/build/draw/drawDetections.js.map b/build/draw/drawDetections.js.map deleted file mode 100644 index b8ad19a..0000000 --- a/build/draw/drawDetections.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drawDetections.js","sourceRoot":"","sources":["../../src/draw/drawDetections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAuB,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAqB,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,MAAM,UAAU,cAAc,CAC5B,SAAqC,EACrC,UAA8D;IAE9D,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IAE7E,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC5B,MAAM,KAAK,GAAG,GAAG,YAAY,aAAa;YACxC,CAAC,CAAC,GAAG,CAAC,KAAK;YACX,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAEhE,MAAM,GAAG,GAAG,GAAG,YAAY,aAAa;YACtC,CAAC,CAAC,GAAG,CAAC,GAAG;YACT,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QAEjE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/draw/drawFaceExpressions.d.ts b/build/draw/drawFaceExpressions.d.ts deleted file mode 100644 index 435889a..0000000 --- a/build/draw/drawFaceExpressions.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { IPoint } from '../classes'; -import { FaceExpressions } from '../faceExpressionNet'; -import { WithFaceExpressions } from '../factories/WithFaceExpressions'; -export declare type DrawFaceExpressionsInput = FaceExpressions | WithFaceExpressions<{}>; -export declare function drawFaceExpressions(canvasArg: string | HTMLCanvasElement, faceExpressions: DrawFaceExpressionsInput | Array, minConfidence?: number, textFieldAnchor?: IPoint): void; -//# sourceMappingURL=drawFaceExpressions.d.ts.map \ No newline at end of file diff --git a/build/draw/drawFaceExpressions.d.ts.map b/build/draw/drawFaceExpressions.d.ts.map deleted file mode 100644 index 7f6e74d..0000000 --- a/build/draw/drawFaceExpressions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drawFaceExpressions.d.ts","sourceRoot":"","sources":["../../src/draw/drawFaceExpressions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAS,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAyB,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAI9F,oBAAY,wBAAwB,GAAG,eAAe,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAA;AAEhF,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,GAAG,iBAAiB,EACrC,eAAe,EAAE,wBAAwB,GAAG,KAAK,CAAC,wBAAwB,CAAC,EAC3E,aAAa,SAAM,EACnB,eAAe,CAAC,EAAE,MAAM,QAyBzB"} \ No newline at end of file diff --git a/build/draw/drawFaceExpressions.js b/build/draw/drawFaceExpressions.js deleted file mode 100644 index 3292c22..0000000 --- a/build/draw/drawFaceExpressions.js +++ /dev/null @@ -1,25 +0,0 @@ -import { Point } from '../classes'; -import { FaceExpressions } from '../faceExpressionNet'; -import { isWithFaceDetection } from '../factories/WithFaceDetection'; -import { isWithFaceExpressions } from '../factories/WithFaceExpressions'; -import { round } from '../utils'; -import { DrawTextField } from './DrawTextField'; -export function drawFaceExpressions(canvasArg, faceExpressions, minConfidence = 0.1, textFieldAnchor) { - const faceExpressionsArray = Array.isArray(faceExpressions) ? faceExpressions : [faceExpressions]; - faceExpressionsArray.forEach(e => { - const expr = e instanceof FaceExpressions - ? e - : (isWithFaceExpressions(e) ? e.expressions : undefined); - if (!expr) { - throw new Error('drawFaceExpressions - expected faceExpressions to be FaceExpressions | WithFaceExpressions<{}> or array thereof'); - } - const sorted = expr.asSortedArray(); - const resultsToDisplay = sorted.filter(expr => expr.probability > minConfidence); - const anchor = isWithFaceDetection(e) - ? e.detection.box.bottomLeft - : (textFieldAnchor || new Point(0, 0)); - const drawTextField = new DrawTextField(resultsToDisplay.map(expr => `${expr.expression} (${round(expr.probability)})`), anchor); - drawTextField.draw(canvasArg); - }); -} -//# sourceMappingURL=drawFaceExpressions.js.map \ No newline at end of file diff --git a/build/draw/drawFaceExpressions.js.map b/build/draw/drawFaceExpressions.js.map deleted file mode 100644 index 2e6d902..0000000 --- a/build/draw/drawFaceExpressions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drawFaceExpressions.js","sourceRoot":"","sources":["../../src/draw/drawFaceExpressions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAuB,MAAM,kCAAkC,CAAC;AAC9F,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,UAAU,mBAAmB,CACjC,SAAqC,EACrC,eAA2E,EAC3E,aAAa,GAAG,GAAG,EACnB,eAAwB;IAExB,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAA;IAEjG,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAC/B,MAAM,IAAI,GAAG,CAAC,YAAY,eAAe;YACvC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAC1D,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,iHAAiH,CAAC,CAAA;SACnI;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QACnC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,CAAA;QAEhF,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU;YAC5B,CAAC,CAAC,CAAC,eAAe,IAAI,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAExC,MAAM,aAAa,GAAG,IAAI,aAAa,CACrC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAC/E,MAAM,CACP,CAAA;QACD,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/draw/index.d.ts b/build/draw/index.d.ts deleted file mode 100644 index 4f0f1cf..0000000 --- a/build/draw/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * from './drawContour'; -export * from './drawDetections'; -export * from './drawFaceExpressions'; -export * from './DrawBox'; -export * from './DrawFaceLandmarks'; -export * from './DrawTextField'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/draw/index.d.ts.map b/build/draw/index.d.ts.map deleted file mode 100644 index 155481b..0000000 --- a/build/draw/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/draw/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,WAAW,CAAA;AACzB,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA"} \ No newline at end of file diff --git a/build/draw/index.js b/build/draw/index.js deleted file mode 100644 index 6e3f6d8..0000000 --- a/build/draw/index.js +++ /dev/null @@ -1,7 +0,0 @@ -export * from './drawContour'; -export * from './drawDetections'; -export * from './drawFaceExpressions'; -export * from './DrawBox'; -export * from './DrawFaceLandmarks'; -export * from './DrawTextField'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/draw/index.js.map b/build/draw/index.js.map deleted file mode 100644 index 3798149..0000000 --- a/build/draw/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/draw/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,WAAW,CAAA;AACzB,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA"} \ No newline at end of file diff --git a/build/env/createBrowserEnv.d.ts b/build/env/createBrowserEnv.d.ts deleted file mode 100644 index fd2116a..0000000 --- a/build/env/createBrowserEnv.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Environment } from './types'; -export declare function createBrowserEnv(): Environment; -//# sourceMappingURL=createBrowserEnv.d.ts.map \ No newline at end of file diff --git a/build/env/createBrowserEnv.d.ts.map b/build/env/createBrowserEnv.d.ts.map deleted file mode 100644 index 7fd9c24..0000000 --- a/build/env/createBrowserEnv.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createBrowserEnv.d.ts","sourceRoot":"","sources":["../../src/env/createBrowserEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,gBAAgB,IAAI,WAAW,CAqB9C"} \ No newline at end of file diff --git a/build/env/createBrowserEnv.js b/build/env/createBrowserEnv.js deleted file mode 100644 index 4243f3e..0000000 --- a/build/env/createBrowserEnv.js +++ /dev/null @@ -1,20 +0,0 @@ -export function createBrowserEnv() { - const fetch = window['fetch'] || function () { - throw new Error('fetch - missing fetch implementation for browser environment'); - }; - const readFile = function () { - throw new Error('readFile - filesystem not available for browser environment'); - }; - return { - Canvas: HTMLCanvasElement, - CanvasRenderingContext2D: CanvasRenderingContext2D, - Image: HTMLImageElement, - ImageData: ImageData, - Video: HTMLVideoElement, - createCanvasElement: () => document.createElement('canvas'), - createImageElement: () => document.createElement('img'), - fetch, - readFile - }; -} -//# sourceMappingURL=createBrowserEnv.js.map \ No newline at end of file diff --git a/build/env/createBrowserEnv.js.map b/build/env/createBrowserEnv.js.map deleted file mode 100644 index 84a5722..0000000 --- a/build/env/createBrowserEnv.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createBrowserEnv.js","sourceRoot":"","sources":["../../src/env/createBrowserEnv.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB;IAE9B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI;QAC/B,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG;QACf,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;IAChF,CAAC,CAAA;IAED,OAAO;QACL,MAAM,EAAE,iBAAiB;QACzB,wBAAwB,EAAE,wBAAwB;QAClD,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,gBAAgB;QACvB,mBAAmB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC3D,kBAAkB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;QACvD,KAAK;QACL,QAAQ;KACT,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/env/createFileSystem.d.ts b/build/env/createFileSystem.d.ts deleted file mode 100644 index 1698b98..0000000 --- a/build/env/createFileSystem.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { FileSystem } from './types'; -export declare function createFileSystem(fs?: any): FileSystem; -//# sourceMappingURL=createFileSystem.d.ts.map \ No newline at end of file diff --git a/build/env/createFileSystem.d.ts.map b/build/env/createFileSystem.d.ts.map deleted file mode 100644 index 602b7c1..0000000 --- a/build/env/createFileSystem.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createFileSystem.d.ts","sourceRoot":"","sources":["../../src/env/createFileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,wBAAgB,gBAAgB,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,UAAU,CA2BrD"} \ No newline at end of file diff --git a/build/env/createFileSystem.js b/build/env/createFileSystem.js deleted file mode 100644 index 08efdf5..0000000 --- a/build/env/createFileSystem.js +++ /dev/null @@ -1,26 +0,0 @@ -export function createFileSystem(fs) { - let requireFsError = ''; - if (!fs) { - try { - fs = require('fs'); - } - catch (err) { - requireFsError = err.toString(); - } - } - const readFile = fs - ? function (filePath) { - return new Promise((res, rej) => { - fs.readFile(filePath, function (err, buffer) { - return err ? rej(err) : res(buffer); - }); - }); - } - : function () { - throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`); - }; - return { - readFile - }; -} -//# sourceMappingURL=createFileSystem.js.map \ No newline at end of file diff --git a/build/env/createFileSystem.js.map b/build/env/createFileSystem.js.map deleted file mode 100644 index 7afcb9c..0000000 --- a/build/env/createFileSystem.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createFileSystem.js","sourceRoot":"","sources":["../../src/env/createFileSystem.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,EAAQ;IAEvC,IAAI,cAAc,GAAG,EAAE,CAAA;IAEvB,IAAI,CAAC,EAAE,EAAE;QACP,IAAI;YACF,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;SACnB;QAAC,OAAO,GAAG,EAAE;YACZ,cAAc,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAA;SAChC;KACF;IAED,MAAM,QAAQ,GAAG,EAAE;QACjB,CAAC,CAAC,UAAS,QAAgB;YACzB,OAAO,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACtC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAS,GAAQ,EAAE,MAAc;oBACrD,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACrC,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,CAAC,CAAC;YACA,MAAM,IAAI,KAAK,CAAC,qEAAqE,cAAc,EAAE,CAAC,CAAA;QACxG,CAAC,CAAA;IAEH,OAAO;QACL,QAAQ;KACT,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/env/createNodejsEnv.d.ts b/build/env/createNodejsEnv.d.ts deleted file mode 100644 index d49ca52..0000000 --- a/build/env/createNodejsEnv.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Environment } from './types'; -export declare function createNodejsEnv(): Environment; -//# sourceMappingURL=createNodejsEnv.d.ts.map \ No newline at end of file diff --git a/build/env/createNodejsEnv.d.ts.map b/build/env/createNodejsEnv.d.ts.map deleted file mode 100644 index 0207973..0000000 --- a/build/env/createNodejsEnv.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createNodejsEnv.d.ts","sourceRoot":"","sources":["../../src/env/createNodejsEnv.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,eAAe,IAAI,WAAW,CAoC7C"} \ No newline at end of file diff --git a/build/env/createNodejsEnv.js b/build/env/createNodejsEnv.js deleted file mode 100644 index 02a362d..0000000 --- a/build/env/createNodejsEnv.js +++ /dev/null @@ -1,38 +0,0 @@ -import { createFileSystem } from './createFileSystem'; -export function createNodejsEnv() { - const Canvas = global['Canvas'] || global['HTMLCanvasElement']; - const Image = global['Image'] || global['HTMLImageElement']; - const createCanvasElement = function () { - if (Canvas) { - return new Canvas(); - } - throw new Error('createCanvasElement - missing Canvas implementation for nodejs environment'); - }; - const createImageElement = function () { - if (Image) { - return new Image(); - } - throw new Error('createImageElement - missing Image implementation for nodejs environment'); - }; - const fetch = global['fetch'] || function () { - throw new Error('fetch - missing fetch implementation for nodejs environment'); - }; - const fileSystem = createFileSystem(); - return { - Canvas: Canvas || class { - }, - CanvasRenderingContext2D: global['CanvasRenderingContext2D'] || class { - }, - Image: Image || class { - }, - ImageData: global['ImageData'] || class { - }, - Video: global['HTMLVideoElement'] || class { - }, - createCanvasElement, - createImageElement, - fetch, - ...fileSystem - }; -} -//# sourceMappingURL=createNodejsEnv.js.map \ No newline at end of file diff --git a/build/env/createNodejsEnv.js.map b/build/env/createNodejsEnv.js.map deleted file mode 100644 index 5cd998b..0000000 --- a/build/env/createNodejsEnv.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"createNodejsEnv.js","sourceRoot":"","sources":["../../src/env/createNodejsEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,MAAM,UAAU,eAAe;IAE7B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAA;IAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAE3D,MAAM,mBAAmB,GAAG;QAC1B,IAAI,MAAM,EAAE;YACV,OAAO,IAAI,MAAM,EAAE,CAAA;SACpB;QACD,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAA;IAC/F,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG;QACzB,IAAI,KAAK,EAAE;YACT,OAAO,IAAI,KAAK,EAAE,CAAA;SACnB;QACD,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAA;IAC7F,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI;QAC/B,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;IAChF,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAA;IAErC,OAAO;QACL,MAAM,EAAE,MAAM,IAAI;SAAQ;QAC1B,wBAAwB,EAAE,MAAM,CAAC,0BAA0B,CAAC,IAAI;SAAQ;QACxE,KAAK,EAAE,KAAK,IAAI;SAAQ;QACxB,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;SAAQ;QAC1C,KAAK,EAAE,MAAM,CAAC,kBAAkB,CAAC,IAAI;SAAQ;QAC7C,mBAAmB;QACnB,kBAAkB;QAClB,KAAK;QACL,GAAG,UAAU;KACd,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/env/index.d.ts b/build/env/index.d.ts deleted file mode 100644 index 8805605..0000000 --- a/build/env/index.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { createBrowserEnv } from './createBrowserEnv'; -import { createFileSystem } from './createFileSystem'; -import { createNodejsEnv } from './createNodejsEnv'; -import { isBrowser } from './isBrowser'; -import { isNodejs } from './isNodejs'; -import { Environment } from './types'; -declare function getEnv(): Environment; -declare function setEnv(env: Environment): void; -declare function initialize(): void; -declare function monkeyPatch(env: Partial): void; -export declare const env: { - getEnv: typeof getEnv; - setEnv: typeof setEnv; - initialize: typeof initialize; - createBrowserEnv: typeof createBrowserEnv; - createFileSystem: typeof createFileSystem; - createNodejsEnv: typeof createNodejsEnv; - monkeyPatch: typeof monkeyPatch; - isBrowser: typeof isBrowser; - isNodejs: typeof isNodejs; -}; -export * from './types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/env/index.d.ts.map b/build/env/index.d.ts.map deleted file mode 100644 index f882103..0000000 --- a/build/env/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/env/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAItC,iBAAS,MAAM,IAAI,WAAW,CAK7B;AAED,iBAAS,MAAM,CAAC,GAAG,EAAE,WAAW,QAE/B;AAED,iBAAS,UAAU,SASlB;AAED,iBAAS,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,QAmB7C;AAED,eAAO,MAAM,GAAG;;;;;;;;;;CAUf,CAAA;AAID,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/env/index.js b/build/env/index.js deleted file mode 100644 index 4a53eb1..0000000 --- a/build/env/index.js +++ /dev/null @@ -1,56 +0,0 @@ -import { createBrowserEnv } from './createBrowserEnv'; -import { createFileSystem } from './createFileSystem'; -import { createNodejsEnv } from './createNodejsEnv'; -import { isBrowser } from './isBrowser'; -import { isNodejs } from './isNodejs'; -let environment; -function getEnv() { - if (!environment) { - throw new Error('getEnv - environment is not defined, check isNodejs() and isBrowser()'); - } - return environment; -} -function setEnv(env) { - environment = env; -} -function initialize() { - // check for isBrowser() first to prevent electron renderer process - // to be initialized with wrong environment due to isNodejs() returning true - if (isBrowser()) { - return setEnv(createBrowserEnv()); - } - if (isNodejs()) { - return setEnv(createNodejsEnv()); - } -} -function monkeyPatch(env) { - if (!environment) { - initialize(); - } - if (!environment) { - throw new Error('monkeyPatch - environment is not defined, check isNodejs() and isBrowser()'); - } - const { Canvas = environment.Canvas, Image = environment.Image } = env; - environment.Canvas = Canvas; - environment.Image = Image; - environment.createCanvasElement = env.createCanvasElement || (() => new Canvas()); - environment.createImageElement = env.createImageElement || (() => new Image()); - environment.ImageData = env.ImageData || environment.ImageData; - environment.Video = env.Video || environment.Video; - environment.fetch = env.fetch || environment.fetch; - environment.readFile = env.readFile || environment.readFile; -} -export const env = { - getEnv, - setEnv, - initialize, - createBrowserEnv, - createFileSystem, - createNodejsEnv, - monkeyPatch, - isBrowser, - isNodejs -}; -initialize(); -export * from './types'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/env/index.js.map b/build/env/index.js.map deleted file mode 100644 index 3d80f8b..0000000 --- a/build/env/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/env/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,IAAI,WAA+B,CAAA;AAEnC,SAAS,MAAM;IACb,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;KACzF;IACD,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,SAAS,MAAM,CAAC,GAAgB;IAC9B,WAAW,GAAG,GAAG,CAAA;AACnB,CAAC;AAED,SAAS,UAAU;IACjB,mEAAmE;IACnE,4EAA4E;IAC5E,IAAI,SAAS,EAAE,EAAE;QACf,OAAO,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAA;KAClC;IACD,IAAI,QAAQ,EAAE,EAAE;QACd,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,CAAA;KACjC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,GAAyB;IAC5C,IAAI,CAAC,WAAW,EAAE;QAChB,UAAU,EAAE,CAAA;KACb;IAED,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAA;KAC9F;IAED,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,CAAA;IACtE,WAAW,CAAC,MAAM,GAAG,MAAM,CAAA;IAC3B,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IACzB,WAAW,CAAC,mBAAmB,GAAG,GAAG,CAAC,mBAAmB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,CAAA;IACjF,WAAW,CAAC,kBAAkB,GAAG,GAAG,CAAC,kBAAkB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;IAE9E,WAAW,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,WAAW,CAAC,SAAS,CAAA;IAC9D,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAA;IAClD,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAA;IAClD,WAAW,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAA;AAC7D,CAAC;AAED,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,MAAM;IACN,MAAM;IACN,UAAU;IACV,gBAAgB;IAChB,gBAAgB;IAChB,eAAe;IACf,WAAW;IACX,SAAS;IACT,QAAQ;CACT,CAAA;AAED,UAAU,EAAE,CAAA;AAEZ,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/env/isBrowser.d.ts b/build/env/isBrowser.d.ts deleted file mode 100644 index efdc668..0000000 --- a/build/env/isBrowser.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function isBrowser(): boolean; -//# sourceMappingURL=isBrowser.d.ts.map \ No newline at end of file diff --git a/build/env/isBrowser.d.ts.map b/build/env/isBrowser.d.ts.map deleted file mode 100644 index 14a3b6d..0000000 --- a/build/env/isBrowser.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isBrowser.d.ts","sourceRoot":"","sources":["../../src/env/isBrowser.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,IAAI,OAAO,CAQnC"} \ No newline at end of file diff --git a/build/env/isBrowser.js b/build/env/isBrowser.js deleted file mode 100644 index d64a57b..0000000 --- a/build/env/isBrowser.js +++ /dev/null @@ -1,10 +0,0 @@ -export function isBrowser() { - return typeof window === 'object' - && typeof document !== 'undefined' - && typeof HTMLImageElement !== 'undefined' - && typeof HTMLCanvasElement !== 'undefined' - && typeof HTMLVideoElement !== 'undefined' - && typeof ImageData !== 'undefined' - && typeof CanvasRenderingContext2D !== 'undefined'; -} -//# sourceMappingURL=isBrowser.js.map \ No newline at end of file diff --git a/build/env/isBrowser.js.map b/build/env/isBrowser.js.map deleted file mode 100644 index 8482cea..0000000 --- a/build/env/isBrowser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isBrowser.js","sourceRoot":"","sources":["../../src/env/isBrowser.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,MAAM,KAAK,QAAQ;WAC5B,OAAO,QAAQ,KAAK,WAAW;WAC/B,OAAO,gBAAgB,KAAK,WAAW;WACvC,OAAO,iBAAiB,KAAK,WAAW;WACxC,OAAO,gBAAgB,KAAK,WAAW;WACvC,OAAO,SAAS,KAAK,WAAW;WAChC,OAAO,wBAAwB,KAAK,WAAW,CAAA;AACtD,CAAC"} \ No newline at end of file diff --git a/build/env/isNodejs.d.ts b/build/env/isNodejs.d.ts deleted file mode 100644 index 08a19ae..0000000 --- a/build/env/isNodejs.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function isNodejs(): boolean; -//# sourceMappingURL=isNodejs.d.ts.map \ No newline at end of file diff --git a/build/env/isNodejs.d.ts.map b/build/env/isNodejs.d.ts.map deleted file mode 100644 index 637acc1..0000000 --- a/build/env/isNodejs.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isNodejs.d.ts","sourceRoot":"","sources":["../../src/env/isNodejs.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,IAAI,OAAO,CAOlC"} \ No newline at end of file diff --git a/build/env/isNodejs.js b/build/env/isNodejs.js deleted file mode 100644 index 60117fd..0000000 --- a/build/env/isNodejs.js +++ /dev/null @@ -1,9 +0,0 @@ -export function isNodejs() { - return typeof global === 'object' - && typeof require === 'function' - && typeof module !== 'undefined' - // issues with gatsby.js: module.exports is undefined - // && !!module.exports - && typeof process !== 'undefined' && !!process.version; -} -//# sourceMappingURL=isNodejs.js.map \ No newline at end of file diff --git a/build/env/isNodejs.js.map b/build/env/isNodejs.js.map deleted file mode 100644 index 7da5c2d..0000000 --- a/build/env/isNodejs.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"isNodejs.js","sourceRoot":"","sources":["../../src/env/isNodejs.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ;IACtB,OAAO,OAAO,MAAM,KAAK,QAAQ;WAC5B,OAAO,OAAO,KAAK,UAAU;WAC7B,OAAO,MAAM,KAAK,WAAW;QAChC,qDAAqD;QACrD,sBAAsB;WACnB,OAAO,OAAO,KAAK,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAA;AAC1D,CAAC"} \ No newline at end of file diff --git a/build/env/types.d.ts b/build/env/types.d.ts deleted file mode 100644 index 7fb76f9..0000000 --- a/build/env/types.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -/// -export declare type FileSystem = { - readFile: (filePath: string) => Promise; -}; -export declare type Environment = FileSystem & { - Canvas: typeof HTMLCanvasElement; - CanvasRenderingContext2D: typeof CanvasRenderingContext2D; - Image: typeof HTMLImageElement; - ImageData: typeof ImageData; - Video: typeof HTMLVideoElement; - createCanvasElement: () => HTMLCanvasElement; - createImageElement: () => HTMLImageElement; - fetch: (url: string, init?: RequestInit) => Promise; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/env/types.d.ts.map b/build/env/types.d.ts.map deleted file mode 100644 index 8c9f9dc..0000000 --- a/build/env/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/env/types.ts"],"names":[],"mappings":";AAAA,oBAAY,UAAU,GAAG;IACvB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAChD,CAAA;AAED,oBAAY,WAAW,GAAG,UAAU,GAAG;IACrC,MAAM,EAAE,OAAO,iBAAiB,CAAA;IAChC,wBAAwB,EAAE,OAAO,wBAAwB,CAAA;IACzD,KAAK,EAAE,OAAO,gBAAgB,CAAA;IAC9B,SAAS,EAAE,OAAO,SAAS,CAAA;IAC3B,KAAK,EAAE,OAAO,gBAAgB,CAAA;IAC9B,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;IAC5C,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;IAC1C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;CAC9D,CAAA"} \ No newline at end of file diff --git a/build/env/types.js b/build/env/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/env/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/env/types.js.map b/build/env/types.js.map deleted file mode 100644 index 88cd32c..0000000 --- a/build/env/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/env/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/euclideanDistance.d.ts b/build/euclideanDistance.d.ts deleted file mode 100644 index 003a95d..0000000 --- a/build/euclideanDistance.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function euclideanDistance(arr1: number[] | Float32Array, arr2: number[] | Float32Array): number; -//# sourceMappingURL=euclideanDistance.d.ts.map \ No newline at end of file diff --git a/build/euclideanDistance.d.ts.map b/build/euclideanDistance.d.ts.map deleted file mode 100644 index a1c4064..0000000 --- a/build/euclideanDistance.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"euclideanDistance.d.ts","sourceRoot":"","sources":["../src/euclideanDistance.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,YAAY,UAY7F"} \ No newline at end of file diff --git a/build/euclideanDistance.js b/build/euclideanDistance.js deleted file mode 100644 index 04e3ca0..0000000 --- a/build/euclideanDistance.js +++ /dev/null @@ -1,10 +0,0 @@ -export function euclideanDistance(arr1, arr2) { - if (arr1.length !== arr2.length) - throw new Error('euclideanDistance: arr1.length !== arr2.length'); - const desc1 = Array.from(arr1); - const desc2 = Array.from(arr2); - return Math.sqrt(desc1 - .map((val, i) => val - desc2[i]) - .reduce((res, diff) => res + Math.pow(diff, 2), 0)); -} -//# sourceMappingURL=euclideanDistance.js.map \ No newline at end of file diff --git a/build/euclideanDistance.js.map b/build/euclideanDistance.js.map deleted file mode 100644 index 0f5a0d0..0000000 --- a/build/euclideanDistance.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"euclideanDistance.js","sourceRoot":"","sources":["../src/euclideanDistance.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAAC,IAA6B,EAAE,IAA6B;IAC5F,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;QAC7B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IAEnE,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAE9B,OAAO,IAAI,CAAC,IAAI,CACd,KAAK;SACF,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;SAC/B,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CACrD,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressionNet.d.ts b/build/faceExpressionNet/FaceExpressionNet.d.ts deleted file mode 100644 index 5e485dd..0000000 --- a/build/faceExpressionNet/FaceExpressionNet.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput, TNetInput } from '../dom'; -import { FaceFeatureExtractor } from '../faceFeatureExtractor/FaceFeatureExtractor'; -import { FaceFeatureExtractorParams } from '../faceFeatureExtractor/types'; -import { FaceProcessor } from '../faceProcessor/FaceProcessor'; -import { FaceExpressions } from './FaceExpressions'; -export declare class FaceExpressionNet extends FaceProcessor { - constructor(faceFeatureExtractor?: FaceFeatureExtractor); - forwardInput(input: NetInput | tf.Tensor4D): tf.Tensor2D; - forward(input: TNetInput): Promise; - predictExpressions(input: TNetInput): Promise; - protected getDefaultModelName(): string; - protected getClassifierChannelsIn(): number; - protected getClassifierChannelsOut(): number; -} -//# sourceMappingURL=FaceExpressionNet.d.ts.map \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressionNet.d.ts.map b/build/faceExpressionNet/FaceExpressionNet.d.ts.map deleted file mode 100644 index f9b5e96..0000000 --- a/build/faceExpressionNet/FaceExpressionNet.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceExpressionNet.d.ts","sourceRoot":"","sources":["../../src/faceExpressionNet/FaceExpressionNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBAAa,iBAAkB,SAAQ,aAAa,CAAC,0BAA0B,CAAC;gBAElE,oBAAoB,GAAE,oBAAiD;IAI5E,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ;IAIlD,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAI/C,kBAAkB,CAAC,KAAK,EAAE,SAAS;IAkBhD,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,uBAAuB,IAAI,MAAM;IAI3C,SAAS,CAAC,wBAAwB,IAAI,MAAM;CAG7C"} \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressionNet.js b/build/faceExpressionNet/FaceExpressionNet.js deleted file mode 100644 index afbfe8f..0000000 --- a/build/faceExpressionNet/FaceExpressionNet.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { toNetInput } from '../dom'; -import { FaceFeatureExtractor } from '../faceFeatureExtractor/FaceFeatureExtractor'; -import { FaceProcessor } from '../faceProcessor/FaceProcessor'; -import { FaceExpressions } from './FaceExpressions'; -export class FaceExpressionNet extends FaceProcessor { - constructor(faceFeatureExtractor = new FaceFeatureExtractor()) { - super('FaceExpressionNet', faceFeatureExtractor); - } - forwardInput(input) { - return tf.tidy(() => tf.softmax(this.runNet(input))); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - async predictExpressions(input) { - const netInput = await toNetInput(input); - const out = await this.forwardInput(netInput); - const probabilitesByBatch = await Promise.all(tf.unstack(out).map(async (t) => { - const data = await t.data(); - t.dispose(); - return data; - })); - out.dispose(); - const predictionsByBatch = probabilitesByBatch - .map(probabilites => new FaceExpressions(probabilites)); - return netInput.isBatchInput - ? predictionsByBatch - : predictionsByBatch[0]; - } - getDefaultModelName() { - return 'face_expression_model'; - } - getClassifierChannelsIn() { - return 256; - } - getClassifierChannelsOut() { - return 7; - } -} -//# sourceMappingURL=FaceExpressionNet.js.map \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressionNet.js.map b/build/faceExpressionNet/FaceExpressionNet.js.map deleted file mode 100644 index 57f81ad..0000000 --- a/build/faceExpressionNet/FaceExpressionNet.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceExpressionNet.js","sourceRoot":"","sources":["../../src/faceExpressionNet/FaceExpressionNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAuB,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,OAAO,iBAAkB,SAAQ,aAAyC;IAE9E,YAAY,uBAA6C,IAAI,oBAAoB,EAAE;QACjF,KAAK,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAA;IAClD,CAAC;IAEM,YAAY,CAAC,KAA6B;QAC/C,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACtD,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,KAAgB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACnD,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,KAAgB;QAC9C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,CAAA;QACxC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC7C,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YAC1E,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,CAAA;YAC3B,CAAC,CAAC,OAAO,EAAE,CAAA;YACX,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAC,CAAA;QACH,GAAG,CAAC,OAAO,EAAE,CAAA;QAEb,MAAM,kBAAkB,GAAG,mBAAmB;aAC3C,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,YAA4B,CAAC,CAAC,CAAA;QAEzE,OAAO,QAAQ,CAAC,YAAY;YAC1B,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC;IAES,mBAAmB;QAC3B,OAAO,uBAAuB,CAAA;IAChC,CAAC;IAES,uBAAuB;QAC/B,OAAO,GAAG,CAAA;IACZ,CAAC;IAES,wBAAwB;QAChC,OAAO,CAAC,CAAA;IACV,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressions.d.ts b/build/faceExpressionNet/FaceExpressions.d.ts deleted file mode 100644 index 412572d..0000000 --- a/build/faceExpressionNet/FaceExpressions.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -export declare const FACE_EXPRESSION_LABELS: string[]; -export declare class FaceExpressions { - neutral: number; - happy: number; - sad: number; - angry: number; - fearful: number; - disgusted: number; - surprised: number; - constructor(probabilities: number[] | Float32Array); - asSortedArray(): { - expression: string; - probability: number; - }[]; -} -//# sourceMappingURL=FaceExpressions.d.ts.map \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressions.d.ts.map b/build/faceExpressionNet/FaceExpressions.d.ts.map deleted file mode 100644 index 389f056..0000000 --- a/build/faceExpressionNet/FaceExpressions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceExpressions.d.ts","sourceRoot":"","sources":["../../src/faceExpressionNet/FaceExpressions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,UAA4E,CAAA;AAE/G,qBAAa,eAAe;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;gBAEZ,aAAa,EAAE,MAAM,EAAE,GAAG,YAAY;IAUlD,aAAa;;;;CAKd"} \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressions.js b/build/faceExpressionNet/FaceExpressions.js deleted file mode 100644 index 604c0fa..0000000 --- a/build/faceExpressionNet/FaceExpressions.js +++ /dev/null @@ -1,17 +0,0 @@ -export const FACE_EXPRESSION_LABELS = ['neutral', 'happy', 'sad', 'angry', 'fearful', 'disgusted', 'surprised']; -export class FaceExpressions { - constructor(probabilities) { - if (probabilities.length !== 7) { - throw new Error(`FaceExpressions.constructor - expected probabilities.length to be 7, have: ${probabilities.length}`); - } - FACE_EXPRESSION_LABELS.forEach((expression, idx) => { - this[expression] = probabilities[idx]; - }); - } - asSortedArray() { - return FACE_EXPRESSION_LABELS - .map(expression => ({ expression, probability: this[expression] })) - .sort((e0, e1) => e1.probability - e0.probability); - } -} -//# sourceMappingURL=FaceExpressions.js.map \ No newline at end of file diff --git a/build/faceExpressionNet/FaceExpressions.js.map b/build/faceExpressionNet/FaceExpressions.js.map deleted file mode 100644 index 4982892..0000000 --- a/build/faceExpressionNet/FaceExpressions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceExpressions.js","sourceRoot":"","sources":["../../src/faceExpressionNet/FaceExpressions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAA;AAE/G,MAAM,OAAO,eAAe;IAS1B,YAAY,aAAsC;QAChD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,8EAA8E,aAAa,CAAC,MAAM,EAAE,CAAC,CAAA;SACtH;QAED,sBAAsB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE;YACjD,IAAI,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,aAAa;QACX,OAAO,sBAAsB;aAC1B,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,CAAW,EAAE,CAAC,CAAC;aAC5E,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,CAAA;IACtD,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceExpressionNet/index.d.ts b/build/faceExpressionNet/index.d.ts deleted file mode 100644 index 7eef11d..0000000 --- a/build/faceExpressionNet/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './FaceExpressionNet'; -export * from './FaceExpressions'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/faceExpressionNet/index.d.ts.map b/build/faceExpressionNet/index.d.ts.map deleted file mode 100644 index a1db295..0000000 --- a/build/faceExpressionNet/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/faceExpressionNet/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"} \ No newline at end of file diff --git a/build/faceExpressionNet/index.js b/build/faceExpressionNet/index.js deleted file mode 100644 index 40ccccb..0000000 --- a/build/faceExpressionNet/index.js +++ /dev/null @@ -1,3 +0,0 @@ -export * from './FaceExpressionNet'; -export * from './FaceExpressions'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/faceExpressionNet/index.js.map b/build/faceExpressionNet/index.js.map deleted file mode 100644 index 2d00583..0000000 --- a/build/faceExpressionNet/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/faceExpressionNet/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/FaceFeatureExtractor.d.ts b/build/faceFeatureExtractor/FaceFeatureExtractor.d.ts deleted file mode 100644 index 5f3c371..0000000 --- a/build/faceFeatureExtractor/FaceFeatureExtractor.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput, TNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { FaceFeatureExtractorParams, IFaceFeatureExtractor } from './types'; -export declare class FaceFeatureExtractor extends NeuralNetwork implements IFaceFeatureExtractor { - constructor(); - forwardInput(input: NetInput): tf.Tensor4D; - forward(input: TNetInput): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: FaceFeatureExtractorParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: FaceFeatureExtractorParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=FaceFeatureExtractor.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/FaceFeatureExtractor.d.ts.map b/build/faceFeatureExtractor/FaceFeatureExtractor.d.ts.map deleted file mode 100644 index e20752c..0000000 --- a/build/faceFeatureExtractor/FaceFeatureExtractor.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceFeatureExtractor.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/FaceFeatureExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKjD,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAE5E,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,0BAA0B,CAAE,YAAW,qBAAqB,CAAC,0BAA0B,CAAC;;IAMvI,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ;IAuBpC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAI5D,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IAIjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAG9C"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/FaceFeatureExtractor.js b/build/faceFeatureExtractor/FaceFeatureExtractor.js deleted file mode 100644 index fa0b16d..0000000 --- a/build/faceFeatureExtractor/FaceFeatureExtractor.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { toNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { normalize } from '../ops'; -import { denseBlock4 } from './denseBlock'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -export class FaceFeatureExtractor extends NeuralNetwork { - constructor() { - super('FaceFeatureExtractor'); - } - forwardInput(input) { - const { params } = this; - if (!params) { - throw new Error('FaceFeatureExtractor - load model before inference'); - } - return tf.tidy(() => { - const batchTensor = input.toBatchTensor(112, true); - const meanRgb = [122.782, 117.001, 104.298]; - const normalized = normalize(batchTensor, meanRgb).div(tf.scalar(255)); - let out = denseBlock4(normalized, params.dense0, true); - out = denseBlock4(out, params.dense1); - out = denseBlock4(out, params.dense2); - out = denseBlock4(out, params.dense3); - out = tf.avgPool(out, [7, 7], [2, 2], 'valid'); - return out; - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - getDefaultModelName() { - return 'face_feature_extractor_model'; - } - extractParamsFromWeigthMap(weightMap) { - return extractParamsFromWeigthMap(weightMap); - } - extractParams(weights) { - return extractParams(weights); - } -} -//# sourceMappingURL=FaceFeatureExtractor.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/FaceFeatureExtractor.js.map b/build/faceFeatureExtractor/FaceFeatureExtractor.js.map deleted file mode 100644 index 1f16b85..0000000 --- a/build/faceFeatureExtractor/FaceFeatureExtractor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceFeatureExtractor.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/FaceFeatureExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAuB,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAG1E,MAAM,OAAO,oBAAqB,SAAQ,aAAyC;IAEjF;QACE,KAAK,CAAC,sBAAsB,CAAC,CAAA;IAC/B,CAAC;IAEM,YAAY,CAAC,KAAe;QAEjC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;SACtE;QAED,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YAClD,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3C,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAgB,CAAA;YAErF,IAAI,GAAG,GAAG,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACtD,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACrC,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACrC,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACrC,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAE9C,OAAO,GAAG,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,KAAgB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACnD,CAAC;IAES,mBAAmB;QAC3B,OAAO,8BAA8B,CAAA;IACvC,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAC/D,OAAO,0BAA0B,CAAC,SAAS,CAAC,CAAA;IAC9C,CAAC;IAES,aAAa,CAAC,OAAqB;QAC3C,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts b/build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts deleted file mode 100644 index 6e197cd..0000000 --- a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput, TNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { IFaceFeatureExtractor, TinyFaceFeatureExtractorParams } from './types'; -export declare class TinyFaceFeatureExtractor extends NeuralNetwork implements IFaceFeatureExtractor { - constructor(); - forwardInput(input: NetInput): tf.Tensor4D; - forward(input: TNetInput): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: TinyFaceFeatureExtractorParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: TinyFaceFeatureExtractorParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=TinyFaceFeatureExtractor.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts.map b/build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts.map deleted file mode 100644 index 1fa2dd9..0000000 --- a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyFaceFeatureExtractor.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/TinyFaceFeatureExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKjD,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAC;AAEhF,qBAAa,wBAAyB,SAAQ,aAAa,CAAC,8BAA8B,CAAE,YAAW,qBAAqB,CAAC,8BAA8B,CAAC;;IAMnJ,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ;IAsBpC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAI5D,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IAIjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAG9C"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.js b/build/faceFeatureExtractor/TinyFaceFeatureExtractor.js deleted file mode 100644 index ef167e2..0000000 --- a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { toNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { normalize } from '../ops'; -import { denseBlock3 } from './denseBlock'; -import { extractParamsFromWeigthMapTiny } from './extractParamsFromWeigthMapTiny'; -import { extractParamsTiny } from './extractParamsTiny'; -export class TinyFaceFeatureExtractor extends NeuralNetwork { - constructor() { - super('TinyFaceFeatureExtractor'); - } - forwardInput(input) { - const { params } = this; - if (!params) { - throw new Error('TinyFaceFeatureExtractor - load model before inference'); - } - return tf.tidy(() => { - const batchTensor = input.toBatchTensor(112, true); - const meanRgb = [122.782, 117.001, 104.298]; - const normalized = normalize(batchTensor, meanRgb).div(tf.scalar(255)); - let out = denseBlock3(normalized, params.dense0, true); - out = denseBlock3(out, params.dense1); - out = denseBlock3(out, params.dense2); - out = tf.avgPool(out, [14, 14], [2, 2], 'valid'); - return out; - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - getDefaultModelName() { - return 'face_feature_extractor_tiny_model'; - } - extractParamsFromWeigthMap(weightMap) { - return extractParamsFromWeigthMapTiny(weightMap); - } - extractParams(weights) { - return extractParamsTiny(weights); - } -} -//# sourceMappingURL=TinyFaceFeatureExtractor.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.js.map b/build/faceFeatureExtractor/TinyFaceFeatureExtractor.js.map deleted file mode 100644 index a4133b7..0000000 --- a/build/faceFeatureExtractor/TinyFaceFeatureExtractor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyFaceFeatureExtractor.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/TinyFaceFeatureExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAuB,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,OAAO,wBAAyB,SAAQ,aAA6C;IAEzF;QACE,KAAK,CAAC,0BAA0B,CAAC,CAAA;IACnC,CAAC;IAEM,YAAY,CAAC,KAAe;QAEjC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;SAC1E;QAED,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YAClD,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3C,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAgB,CAAA;YAErF,IAAI,GAAG,GAAG,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACtD,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACrC,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;YACrC,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAEhD,OAAO,GAAG,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,KAAgB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACnD,CAAC;IAES,mBAAmB;QAC3B,OAAO,mCAAmC,CAAA;IAC5C,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAC/D,OAAO,8BAA8B,CAAC,SAAS,CAAC,CAAA;IAClD,CAAC;IAES,aAAa,CAAC,OAAqB;QAC3C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACnC,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/denseBlock.d.ts b/build/faceFeatureExtractor/denseBlock.d.ts deleted file mode 100644 index c4db76b..0000000 --- a/build/faceFeatureExtractor/denseBlock.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { DenseBlock3Params, DenseBlock4Params } from './types'; -export declare function denseBlock3(x: tf.Tensor4D, denseBlockParams: DenseBlock3Params, isFirstLayer?: boolean): tf.Tensor4D; -export declare function denseBlock4(x: tf.Tensor4D, denseBlockParams: DenseBlock4Params, isFirstLayer?: boolean, isScaleDown?: boolean): tf.Tensor4D; -//# sourceMappingURL=denseBlock.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/denseBlock.d.ts.map b/build/faceFeatureExtractor/denseBlock.d.ts.map deleted file mode 100644 index 4fa3dd2..0000000 --- a/build/faceFeatureExtractor/denseBlock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"denseBlock.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/denseBlock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D,wBAAgB,WAAW,CACzB,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,gBAAgB,EAAE,iBAAiB,EACnC,YAAY,GAAE,OAAe,GAC5B,EAAE,CAAC,QAAQ,CAiBb;AAED,wBAAgB,WAAW,CACzB,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,gBAAgB,EAAE,iBAAiB,EACnC,YAAY,GAAE,OAAe,EAC7B,WAAW,GAAE,OAAc,GAC1B,EAAE,CAAC,QAAQ,CAoBb"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/denseBlock.js b/build/faceFeatureExtractor/denseBlock.js deleted file mode 100644 index ec9e68a..0000000 --- a/build/faceFeatureExtractor/denseBlock.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { depthwiseSeparableConv } from '../common/depthwiseSeparableConv'; -export function denseBlock3(x, denseBlockParams, isFirstLayer = false) { - return tf.tidy(() => { - const out1 = tf.relu(isFirstLayer - ? tf.add(tf.conv2d(x, denseBlockParams.conv0.filters, [2, 2], 'same'), denseBlockParams.conv0.bias) - : depthwiseSeparableConv(x, denseBlockParams.conv0, [2, 2])); - const out2 = depthwiseSeparableConv(out1, denseBlockParams.conv1, [1, 1]); - const in3 = tf.relu(tf.add(out1, out2)); - const out3 = depthwiseSeparableConv(in3, denseBlockParams.conv2, [1, 1]); - return tf.relu(tf.add(out1, tf.add(out2, out3))); - }); -} -export function denseBlock4(x, denseBlockParams, isFirstLayer = false, isScaleDown = true) { - return tf.tidy(() => { - const out1 = tf.relu(isFirstLayer - ? tf.add(tf.conv2d(x, denseBlockParams.conv0.filters, isScaleDown ? [2, 2] : [1, 1], 'same'), denseBlockParams.conv0.bias) - : depthwiseSeparableConv(x, denseBlockParams.conv0, isScaleDown ? [2, 2] : [1, 1])); - const out2 = depthwiseSeparableConv(out1, denseBlockParams.conv1, [1, 1]); - const in3 = tf.relu(tf.add(out1, out2)); - const out3 = depthwiseSeparableConv(in3, denseBlockParams.conv2, [1, 1]); - const in4 = tf.relu(tf.add(out1, tf.add(out2, out3))); - const out4 = depthwiseSeparableConv(in4, denseBlockParams.conv3, [1, 1]); - return tf.relu(tf.add(out1, tf.add(out2, tf.add(out3, out4)))); - }); -} -//# sourceMappingURL=denseBlock.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/denseBlock.js.map b/build/faceFeatureExtractor/denseBlock.js.map deleted file mode 100644 index dd1c115..0000000 --- a/build/faceFeatureExtractor/denseBlock.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"denseBlock.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/denseBlock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParams.d.ts b/build/faceFeatureExtractor/extractParams.d.ts deleted file mode 100644 index 4c9babb..0000000 --- a/build/faceFeatureExtractor/extractParams.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { FaceFeatureExtractorParams } from './types'; -export declare function extractParams(weights: Float32Array): { - params: FaceFeatureExtractorParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParams.d.ts.map b/build/faceFeatureExtractor/extractParams.d.ts.map deleted file mode 100644 index c811954..0000000 --- a/build/faceFeatureExtractor/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,YAAY,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAGrD,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,0BAA0B,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CA0B1H"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParams.js b/build/faceFeatureExtractor/extractParams.js deleted file mode 100644 index 053e843..0000000 --- a/build/faceFeatureExtractor/extractParams.js +++ /dev/null @@ -1,19 +0,0 @@ -import { extractWeightsFactory } from '../common'; -import { extractorsFactory } from './extractorsFactory'; -export function extractParams(weights) { - const paramMappings = []; - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const { extractDenseBlock4Params } = extractorsFactory(extractWeights, paramMappings); - const dense0 = extractDenseBlock4Params(3, 32, 'dense0', true); - const dense1 = extractDenseBlock4Params(32, 64, 'dense1'); - const dense2 = extractDenseBlock4Params(64, 128, 'dense2'); - const dense3 = extractDenseBlock4Params(128, 256, 'dense3'); - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { - paramMappings, - params: { dense0, dense1, dense2, dense3 } - }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParams.js.map b/build/faceFeatureExtractor/extractParams.js.map deleted file mode 100644 index bf2faab..0000000 --- a/build/faceFeatureExtractor/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAgB,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,MAAM,UAAU,aAAa,CAAC,OAAqB;IAEjD,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,cAAc,EACd,mBAAmB,EACpB,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAElC,MAAM,EACJ,wBAAwB,EACzB,GAAG,iBAAiB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IAEpD,MAAM,MAAM,GAAG,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC9D,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAA;IACzD,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;IAC1D,MAAM,MAAM,GAAG,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;IAE3D,IAAI,mBAAmB,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,kCAAkC,mBAAmB,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;KAClF;IAED,OAAO;QACL,aAAa;QACb,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;KAC3C,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts b/build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index 5a0d1f9..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { FaceFeatureExtractorParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: FaceFeatureExtractorParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts.map b/build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index ea8c6cb..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAA8B,YAAY,EAAE,MAAM,WAAW,CAAC;AAErE,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAErD,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,GAC3B;IAAE,MAAM,EAAE,0BAA0B,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAkBvE"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMap.js b/build/faceFeatureExtractor/extractParamsFromWeigthMap.js deleted file mode 100644 index 7f6e4b8..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,15 +0,0 @@ -import { disposeUnusedWeightTensors } from '../common'; -import { loadParamsFactory } from './loadParamsFactory'; -export function extractParamsFromWeigthMap(weightMap) { - const paramMappings = []; - const { extractDenseBlock4Params } = loadParamsFactory(weightMap, paramMappings); - const params = { - dense0: extractDenseBlock4Params('dense0', true), - dense1: extractDenseBlock4Params('dense1'), - dense2: extractDenseBlock4Params('dense2'), - dense3: extractDenseBlock4Params('dense3') - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMap.js.map b/build/faceFeatureExtractor/extractParamsFromWeigthMap.js.map deleted file mode 100644 index 24f7db7..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAgB,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,UAAU,0BAA0B,CACxC,SAA4B;IAG5B,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,wBAAwB,EACzB,GAAG,iBAAiB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE/C,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE,IAAI,CAAC;QAChD,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC;QAC1C,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC;QAC1C,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC;KAC3C,CAAA;IAED,0BAA0B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAEpD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;AAClC,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts b/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts deleted file mode 100644 index 2c98e51..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { TinyFaceFeatureExtractorParams } from './types'; -export declare function extractParamsFromWeigthMapTiny(weightMap: tf.NamedTensorMap): { - params: TinyFaceFeatureExtractorParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMapTiny.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts.map b/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts.map deleted file mode 100644 index 622e6a7..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMapTiny.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParamsFromWeigthMapTiny.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAA8B,YAAY,EAAE,MAAM,WAAW,CAAC;AAErE,OAAO,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAC;AAEzD,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,EAAE,CAAC,cAAc,GAC3B;IAAE,MAAM,EAAE,8BAA8B,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAiB3E"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js b/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js deleted file mode 100644 index 2f873cf..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js +++ /dev/null @@ -1,14 +0,0 @@ -import { disposeUnusedWeightTensors } from '../common'; -import { loadParamsFactory } from './loadParamsFactory'; -export function extractParamsFromWeigthMapTiny(weightMap) { - const paramMappings = []; - const { extractDenseBlock3Params } = loadParamsFactory(weightMap, paramMappings); - const params = { - dense0: extractDenseBlock3Params('dense0', true), - dense1: extractDenseBlock3Params('dense1'), - dense2: extractDenseBlock3Params('dense2') - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMapTiny.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js.map b/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js.map deleted file mode 100644 index 6649114..0000000 --- a/build/faceFeatureExtractor/extractParamsFromWeigthMapTiny.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMapTiny.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParamsFromWeigthMapTiny.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAgB,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,MAAM,UAAU,8BAA8B,CAC5C,SAA4B;IAG5B,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,wBAAwB,EACzB,GAAG,iBAAiB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE/C,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE,IAAI,CAAC;QAChD,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC;QAC1C,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC;KAC3C,CAAA;IAED,0BAA0B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAEpD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;AAClC,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsTiny.d.ts b/build/faceFeatureExtractor/extractParamsTiny.d.ts deleted file mode 100644 index 4f04cf0..0000000 --- a/build/faceFeatureExtractor/extractParamsTiny.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { TinyFaceFeatureExtractorParams } from './types'; -export declare function extractParamsTiny(weights: Float32Array): { - params: TinyFaceFeatureExtractorParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsTiny.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsTiny.d.ts.map b/build/faceFeatureExtractor/extractParamsTiny.d.ts.map deleted file mode 100644 index 3b33a42..0000000 --- a/build/faceFeatureExtractor/extractParamsTiny.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsTiny.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParamsTiny.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,YAAY,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAC;AAIzD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,8BAA8B,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAyBlI"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsTiny.js b/build/faceFeatureExtractor/extractParamsTiny.js deleted file mode 100644 index 61e5a6e..0000000 --- a/build/faceFeatureExtractor/extractParamsTiny.js +++ /dev/null @@ -1,18 +0,0 @@ -import { extractWeightsFactory } from '../common'; -import { extractorsFactory } from './extractorsFactory'; -export function extractParamsTiny(weights) { - const paramMappings = []; - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const { extractDenseBlock3Params } = extractorsFactory(extractWeights, paramMappings); - const dense0 = extractDenseBlock3Params(3, 32, 'dense0', true); - const dense1 = extractDenseBlock3Params(32, 64, 'dense1'); - const dense2 = extractDenseBlock3Params(64, 128, 'dense2'); - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { - paramMappings, - params: { dense0, dense1, dense2 } - }; -} -//# sourceMappingURL=extractParamsTiny.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractParamsTiny.js.map b/build/faceFeatureExtractor/extractParamsTiny.js.map deleted file mode 100644 index 782843e..0000000 --- a/build/faceFeatureExtractor/extractParamsTiny.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsTiny.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractParamsTiny.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAgB,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKxD,MAAM,UAAU,iBAAiB,CAAC,OAAqB;IAErD,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,cAAc,EACd,mBAAmB,EACpB,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAElC,MAAM,EACJ,wBAAwB,EACzB,GAAG,iBAAiB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IAEpD,MAAM,MAAM,GAAG,wBAAwB,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC9D,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAA;IACzD,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;IAE1D,IAAI,mBAAmB,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,kCAAkC,mBAAmB,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;KAClF;IAED,OAAO;QACL,aAAa;QACb,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;KACnC,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractorsFactory.d.ts b/build/faceFeatureExtractor/extractorsFactory.d.ts deleted file mode 100644 index 3ff2f0b..0000000 --- a/build/faceFeatureExtractor/extractorsFactory.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ExtractWeightsFunction, ParamMapping } from '../common'; -import { DenseBlock3Params, DenseBlock4Params } from './types'; -export declare function extractorsFactory(extractWeights: ExtractWeightsFunction, paramMappings: ParamMapping[]): { - extractDenseBlock3Params: (channelsIn: number, channelsOut: number, mappedPrefix: string, isFirstLayer?: boolean) => DenseBlock3Params; - extractDenseBlock4Params: (channelsIn: number, channelsOut: number, mappedPrefix: string, isFirstLayer?: boolean) => DenseBlock4Params; -}; -//# sourceMappingURL=extractorsFactory.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractorsFactory.d.ts.map b/build/faceFeatureExtractor/extractorsFactory.d.ts.map deleted file mode 100644 index ee805c3..0000000 --- a/build/faceFeatureExtractor/extractorsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractorsFactory.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractorsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,sBAAsB,EACtB,YAAY,EACb,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,sBAAsB,EAAE,aAAa,EAAE,YAAY,EAAE;2CAKvD,MAAM,eAAe,MAAM,gBAAgB,MAAM,iBAAgB,OAAO,KAAW,iBAAiB;2CAWpG,MAAM,eAAe,MAAM,gBAAgB,MAAM,iBAAgB,OAAO,KAAW,iBAAiB;EAanJ"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractorsFactory.js b/build/faceFeatureExtractor/extractorsFactory.js deleted file mode 100644 index 721392d..0000000 --- a/build/faceFeatureExtractor/extractorsFactory.js +++ /dev/null @@ -1,23 +0,0 @@ -import { extractConvParamsFactory, extractSeparableConvParamsFactory, } from '../common'; -export function extractorsFactory(extractWeights, paramMappings) { - const extractConvParams = extractConvParamsFactory(extractWeights, paramMappings); - const extractSeparableConvParams = extractSeparableConvParamsFactory(extractWeights, paramMappings); - function extractDenseBlock3Params(channelsIn, channelsOut, mappedPrefix, isFirstLayer = false) { - const conv0 = isFirstLayer - ? extractConvParams(channelsIn, channelsOut, 3, `${mappedPrefix}/conv0`) - : extractSeparableConvParams(channelsIn, channelsOut, `${mappedPrefix}/conv0`); - const conv1 = extractSeparableConvParams(channelsOut, channelsOut, `${mappedPrefix}/conv1`); - const conv2 = extractSeparableConvParams(channelsOut, channelsOut, `${mappedPrefix}/conv2`); - return { conv0, conv1, conv2 }; - } - function extractDenseBlock4Params(channelsIn, channelsOut, mappedPrefix, isFirstLayer = false) { - const { conv0, conv1, conv2 } = extractDenseBlock3Params(channelsIn, channelsOut, mappedPrefix, isFirstLayer); - const conv3 = extractSeparableConvParams(channelsOut, channelsOut, `${mappedPrefix}/conv3`); - return { conv0, conv1, conv2, conv3 }; - } - return { - extractDenseBlock3Params, - extractDenseBlock4Params - }; -} -//# sourceMappingURL=extractorsFactory.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/extractorsFactory.js.map b/build/faceFeatureExtractor/extractorsFactory.js.map deleted file mode 100644 index 639df6b..0000000 --- a/build/faceFeatureExtractor/extractorsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractorsFactory.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/extractorsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,iCAAiC,GAGlC,MAAM,WAAW,CAAC;AAGnB,MAAM,UAAU,iBAAiB,CAAC,cAAsC,EAAE,aAA6B;IAErG,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IACjF,MAAM,0BAA0B,GAAG,iCAAiC,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IAEnG,SAAS,wBAAwB,CAAC,UAAkB,EAAE,WAAmB,EAAE,YAAoB,EAAE,eAAwB,KAAK;QAE5H,MAAM,KAAK,GAAG,YAAY;YACxB,CAAC,CAAC,iBAAiB,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,YAAY,QAAQ,CAAC;YACxE,CAAC,CAAC,0BAA0B,CAAC,UAAU,EAAE,WAAW,EAAE,GAAG,YAAY,QAAQ,CAAC,CAAA;QAChF,MAAM,KAAK,GAAG,0BAA0B,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,YAAY,QAAQ,CAAC,CAAA;QAC3F,MAAM,KAAK,GAAG,0BAA0B,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,YAAY,QAAQ,CAAC,CAAA;QAE3F,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IAChC,CAAC;IAED,SAAS,wBAAwB,CAAC,UAAkB,EAAE,WAAmB,EAAE,YAAoB,EAAE,eAAwB,KAAK;QAE5H,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,wBAAwB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,CAAA;QAC7G,MAAM,KAAK,GAAG,0BAA0B,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,YAAY,QAAQ,CAAC,CAAA;QAE3F,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACvC,CAAC;IAED,OAAO;QACL,wBAAwB;QACxB,wBAAwB;KACzB,CAAA;AAEH,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/index.d.ts b/build/faceFeatureExtractor/index.d.ts deleted file mode 100644 index 36bcfc2..0000000 --- a/build/faceFeatureExtractor/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './FaceFeatureExtractor'; -export * from './TinyFaceFeatureExtractor'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/index.d.ts.map b/build/faceFeatureExtractor/index.d.ts.map deleted file mode 100644 index 111cb76..0000000 --- a/build/faceFeatureExtractor/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/index.js b/build/faceFeatureExtractor/index.js deleted file mode 100644 index 149df2a..0000000 --- a/build/faceFeatureExtractor/index.js +++ /dev/null @@ -1,3 +0,0 @@ -export * from './FaceFeatureExtractor'; -export * from './TinyFaceFeatureExtractor'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/index.js.map b/build/faceFeatureExtractor/index.js.map deleted file mode 100644 index 3f6f866..0000000 --- a/build/faceFeatureExtractor/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/loadParamsFactory.d.ts b/build/faceFeatureExtractor/loadParamsFactory.d.ts deleted file mode 100644 index db13ab1..0000000 --- a/build/faceFeatureExtractor/loadParamsFactory.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { DenseBlock3Params, DenseBlock4Params } from './types'; -export declare function loadParamsFactory(weightMap: any, paramMappings: ParamMapping[]): { - extractDenseBlock3Params: (prefix: string, isFirstLayer?: boolean) => DenseBlock3Params; - extractDenseBlock4Params: (prefix: string, isFirstLayer?: boolean) => DenseBlock4Params; -}; -//# sourceMappingURL=loadParamsFactory.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/loadParamsFactory.d.ts.map b/build/faceFeatureExtractor/loadParamsFactory.d.ts.map deleted file mode 100644 index 1ea06e2..0000000 --- a/build/faceFeatureExtractor/loadParamsFactory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loadParamsFactory.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/loadParamsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6D,YAAY,EAAE,MAAM,WAAW,CAAC;AAEpG,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE;uCAOnC,MAAM,iBAAgB,OAAO,KAAW,iBAAiB;uCAUzD,MAAM,iBAAgB,OAAO,KAAW,iBAAiB;EAepG"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/loadParamsFactory.js b/build/faceFeatureExtractor/loadParamsFactory.js deleted file mode 100644 index 06706eb..0000000 --- a/build/faceFeatureExtractor/loadParamsFactory.js +++ /dev/null @@ -1,29 +0,0 @@ -import { extractWeightEntryFactory, loadSeparableConvParamsFactory } from '../common'; -import { loadConvParamsFactory } from '../common/loadConvParamsFactory'; -export function loadParamsFactory(weightMap, paramMappings) { - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - const extractConvParams = loadConvParamsFactory(extractWeightEntry); - const extractSeparableConvParams = loadSeparableConvParamsFactory(extractWeightEntry); - function extractDenseBlock3Params(prefix, isFirstLayer = false) { - const conv0 = isFirstLayer - ? extractConvParams(`${prefix}/conv0`) - : extractSeparableConvParams(`${prefix}/conv0`); - const conv1 = extractSeparableConvParams(`${prefix}/conv1`); - const conv2 = extractSeparableConvParams(`${prefix}/conv2`); - return { conv0, conv1, conv2 }; - } - function extractDenseBlock4Params(prefix, isFirstLayer = false) { - const conv0 = isFirstLayer - ? extractConvParams(`${prefix}/conv0`) - : extractSeparableConvParams(`${prefix}/conv0`); - const conv1 = extractSeparableConvParams(`${prefix}/conv1`); - const conv2 = extractSeparableConvParams(`${prefix}/conv2`); - const conv3 = extractSeparableConvParams(`${prefix}/conv3`); - return { conv0, conv1, conv2, conv3 }; - } - return { - extractDenseBlock3Params, - extractDenseBlock4Params - }; -} -//# sourceMappingURL=loadParamsFactory.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/loadParamsFactory.js.map b/build/faceFeatureExtractor/loadParamsFactory.js.map deleted file mode 100644 index 1959176..0000000 --- a/build/faceFeatureExtractor/loadParamsFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loadParamsFactory.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/loadParamsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,8BAA8B,EAAgB,MAAM,WAAW,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,MAAM,UAAU,iBAAiB,CAAC,SAAc,EAAE,aAA6B;IAE7E,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE9E,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAA;IACnE,MAAM,0BAA0B,GAAG,8BAA8B,CAAC,kBAAkB,CAAC,CAAA;IAErF,SAAS,wBAAwB,CAAC,MAAc,EAAE,eAAwB,KAAK;QAC7E,MAAM,KAAK,GAAG,YAAY;YACxB,CAAC,CAAC,iBAAiB,CAAC,GAAG,MAAM,QAAQ,CAAC;YACtC,CAAC,CAAC,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QACjD,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IAChC,CAAC;IAED,SAAS,wBAAwB,CAAC,MAAc,EAAE,eAAwB,KAAK;QAC7E,MAAM,KAAK,GAAG,YAAY;YACxB,CAAC,CAAC,iBAAiB,CAAC,GAAG,MAAM,QAAQ,CAAC;YACtC,CAAC,CAAC,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QACjD,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACvC,CAAC;IAED,OAAO;QACL,wBAAwB;QACxB,wBAAwB;KACzB,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/types.d.ts b/build/faceFeatureExtractor/types.d.ts deleted file mode 100644 index bcd9b64..0000000 --- a/build/faceFeatureExtractor/types.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput, TNetInput } from '..'; -import { ConvParams, SeparableConvParams } from '../common'; -import { NeuralNetwork } from '../NeuralNetwork'; -export declare type ConvWithBatchNormParams = BatchNormParams & { - filter: tf.Tensor4D; -}; -export declare type BatchNormParams = { - mean: tf.Tensor1D; - variance: tf.Tensor1D; - scale: tf.Tensor1D; - offset: tf.Tensor1D; -}; -export declare type SeparableConvWithBatchNormParams = { - depthwise: ConvWithBatchNormParams; - pointwise: ConvWithBatchNormParams; -}; -export declare type DenseBlock3Params = { - conv0: SeparableConvParams | ConvParams; - conv1: SeparableConvParams; - conv2: SeparableConvParams; -}; -export declare type DenseBlock4Params = DenseBlock3Params & { - conv3: SeparableConvParams; -}; -export declare type TinyFaceFeatureExtractorParams = { - dense0: DenseBlock3Params; - dense1: DenseBlock3Params; - dense2: DenseBlock3Params; -}; -export declare type FaceFeatureExtractorParams = { - dense0: DenseBlock4Params; - dense1: DenseBlock4Params; - dense2: DenseBlock4Params; - dense3: DenseBlock4Params; -}; -export interface IFaceFeatureExtractor extends NeuralNetwork { - forwardInput(input: NetInput): tf.Tensor4D; - forward(input: TNetInput): Promise; -} -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/types.d.ts.map b/build/faceFeatureExtractor/types.d.ts.map deleted file mode 100644 index 4adcefe..0000000 --- a/build/faceFeatureExtractor/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/faceFeatureExtractor/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,oBAAY,uBAAuB,GAAG,eAAe,GAAG;IACtD,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAA;CACpB,CAAA;AAED,oBAAY,eAAe,GAAG;IAC5B,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAA;IACjB,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAA;IACrB,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAA;IAClB,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAA;CACpB,CAAA;AAED,oBAAY,gCAAgC,GAAG;IAC7C,SAAS,EAAE,uBAAuB,CAAA;IAClC,SAAS,EAAE,uBAAuB,CAAA;CACnC,CAAA;AAED,oBAAY,iBAAiB,GAAG;IAC9B,KAAK,EAAE,mBAAmB,GAAG,UAAU,CAAA;IACvC,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,EAAE,mBAAmB,CAAA;CAC3B,CAAA;AAED,oBAAY,iBAAiB,GAAG,iBAAiB,GAAG;IAClD,KAAK,EAAE,mBAAmB,CAAA;CAC3B,CAAA;AAED,oBAAY,8BAA8B,GAAG;IAC3C,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAED,oBAAY,0BAA0B,GAAG;IACvC,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CAAA;AAED,MAAM,WAAW,qBAAqB,CAAC,UAAU,SAAS,8BAA8B,GAAG,0BAA0B,CAAE,SAAQ,aAAa,CAAC,UAAU,CAAC;IACtJ,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAA;IAC1C,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;CAChD"} \ No newline at end of file diff --git a/build/faceFeatureExtractor/types.js b/build/faceFeatureExtractor/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/faceFeatureExtractor/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/faceFeatureExtractor/types.js.map b/build/faceFeatureExtractor/types.js.map deleted file mode 100644 index 94f9edb..0000000 --- a/build/faceFeatureExtractor/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/faceFeatureExtractor/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68Net.d.ts b/build/faceLandmarkNet/FaceLandmark68Net.d.ts deleted file mode 100644 index 708b981..0000000 --- a/build/faceLandmarkNet/FaceLandmark68Net.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { FaceFeatureExtractor } from '../faceFeatureExtractor/FaceFeatureExtractor'; -import { FaceFeatureExtractorParams } from '../faceFeatureExtractor/types'; -import { FaceLandmark68NetBase } from './FaceLandmark68NetBase'; -export declare class FaceLandmark68Net extends FaceLandmark68NetBase { - constructor(faceFeatureExtractor?: FaceFeatureExtractor); - protected getDefaultModelName(): string; - protected getClassifierChannelsIn(): number; -} -//# sourceMappingURL=FaceLandmark68Net.d.ts.map \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68Net.d.ts.map b/build/faceLandmarkNet/FaceLandmark68Net.d.ts.map deleted file mode 100644 index 2313e1e..0000000 --- a/build/faceLandmarkNet/FaceLandmark68Net.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmark68Net.d.ts","sourceRoot":"","sources":["../../src/faceLandmarkNet/FaceLandmark68Net.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,qBAAa,iBAAkB,SAAQ,qBAAqB,CAAC,0BAA0B,CAAC;gBAE1E,oBAAoB,GAAE,oBAAiD;IAInF,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,uBAAuB,IAAI,MAAM;CAG5C"} \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68Net.js b/build/faceLandmarkNet/FaceLandmark68Net.js deleted file mode 100644 index 6d4c73d..0000000 --- a/build/faceLandmarkNet/FaceLandmark68Net.js +++ /dev/null @@ -1,14 +0,0 @@ -import { FaceFeatureExtractor } from '../faceFeatureExtractor/FaceFeatureExtractor'; -import { FaceLandmark68NetBase } from './FaceLandmark68NetBase'; -export class FaceLandmark68Net extends FaceLandmark68NetBase { - constructor(faceFeatureExtractor = new FaceFeatureExtractor()) { - super('FaceLandmark68Net', faceFeatureExtractor); - } - getDefaultModelName() { - return 'face_landmark_68_model'; - } - getClassifierChannelsIn() { - return 256; - } -} -//# sourceMappingURL=FaceLandmark68Net.js.map \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68Net.js.map b/build/faceLandmarkNet/FaceLandmark68Net.js.map deleted file mode 100644 index 7c16a36..0000000 --- a/build/faceLandmarkNet/FaceLandmark68Net.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmark68Net.js","sourceRoot":"","sources":["../../src/faceLandmarkNet/FaceLandmark68Net.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,OAAO,iBAAkB,SAAQ,qBAAiD;IAEtF,YAAY,uBAA6C,IAAI,oBAAoB,EAAE;QACjF,KAAK,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAA;IAClD,CAAC;IAES,mBAAmB;QAC3B,OAAO,wBAAwB,CAAA;IACjC,CAAC;IAES,uBAAuB;QAC/B,OAAO,GAAG,CAAA;IACZ,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68NetBase.d.ts b/build/faceLandmarkNet/FaceLandmark68NetBase.d.ts deleted file mode 100644 index 5f0ccee..0000000 --- a/build/faceLandmarkNet/FaceLandmark68NetBase.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { IDimensions } from '../classes'; -import { FaceLandmarks68 } from '../classes/FaceLandmarks68'; -import { NetInput, TNetInput } from '../dom'; -import { FaceFeatureExtractorParams, TinyFaceFeatureExtractorParams } from '../faceFeatureExtractor/types'; -import { FaceProcessor } from '../faceProcessor/FaceProcessor'; -export declare abstract class FaceLandmark68NetBase extends FaceProcessor { - postProcess(output: tf.Tensor2D, inputSize: number, originalDimensions: IDimensions[]): tf.Tensor2D; - forwardInput(input: NetInput): tf.Tensor2D; - forward(input: TNetInput): Promise; - detectLandmarks(input: TNetInput): Promise; - protected getClassifierChannelsOut(): number; -} -//# sourceMappingURL=FaceLandmark68NetBase.d.ts.map \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68NetBase.d.ts.map b/build/faceLandmarkNet/FaceLandmark68NetBase.d.ts.map deleted file mode 100644 index f4b9a5d..0000000 --- a/build/faceLandmarkNet/FaceLandmark68NetBase.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmark68NetBase.d.ts","sourceRoot":"","sources":["../../src/faceLandmarkNet/FaceLandmark68NetBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAS,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC3G,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,8BAAsB,qBAAqB,CACzC,gBAAgB,SAAS,0BAA0B,GAAG,8BAA8B,CAEpF,SAAQ,aAAa,CAAC,gBAAgB,CAAC;IAEhC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ;IA6CnG,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ;IAWpC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAI/C,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,GAAG,eAAe,EAAE,CAAC;IA6B5F,SAAS,CAAC,wBAAwB,IAAI,MAAM;CAG7C"} \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68NetBase.js b/build/faceLandmarkNet/FaceLandmark68NetBase.js deleted file mode 100644 index 5801a8e..0000000 --- a/build/faceLandmarkNet/FaceLandmark68NetBase.js +++ /dev/null @@ -1,65 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { Point } from '../classes'; -import { FaceLandmarks68 } from '../classes/FaceLandmarks68'; -import { toNetInput } from '../dom'; -import { FaceProcessor } from '../faceProcessor/FaceProcessor'; -import { isEven } from '../utils'; -export class FaceLandmark68NetBase extends FaceProcessor { - postProcess(output, inputSize, originalDimensions) { - const inputDimensions = originalDimensions.map(({ width, height }) => { - const scale = inputSize / Math.max(height, width); - return { - width: width * scale, - height: height * scale - }; - }); - const batchSize = inputDimensions.length; - return tf.tidy(() => { - const createInterleavedTensor = (fillX, fillY) => tf.stack([ - tf.fill([68], fillX), - tf.fill([68], fillY) - ], 1).as2D(1, 136).as1D(); - const getPadding = (batchIdx, cond) => { - const { width, height } = inputDimensions[batchIdx]; - return cond(width, height) ? Math.abs(width - height) / 2 : 0; - }; - const getPaddingX = (batchIdx) => getPadding(batchIdx, (w, h) => w < h); - const getPaddingY = (batchIdx) => getPadding(batchIdx, (w, h) => h < w); - const landmarkTensors = output - .mul(tf.fill([batchSize, 136], inputSize)) - .sub(tf.stack(Array.from(Array(batchSize), (_, batchIdx) => createInterleavedTensor(getPaddingX(batchIdx), getPaddingY(batchIdx))))) - .div(tf.stack(Array.from(Array(batchSize), (_, batchIdx) => createInterleavedTensor(inputDimensions[batchIdx].width, inputDimensions[batchIdx].height)))); - return landmarkTensors; - }); - } - forwardInput(input) { - return tf.tidy(() => { - const out = this.runNet(input); - return this.postProcess(out, input.inputSize, input.inputDimensions.map(([height, width]) => ({ height, width }))); - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - async detectLandmarks(input) { - const netInput = await toNetInput(input); - const landmarkTensors = tf.tidy(() => tf.unstack(this.forwardInput(netInput))); - const landmarksForBatch = await Promise.all(landmarkTensors.map(async (landmarkTensor, batchIdx) => { - const landmarksArray = Array.from(await landmarkTensor.data()); - const xCoords = landmarksArray.filter((_, i) => isEven(i)); - const yCoords = landmarksArray.filter((_, i) => !isEven(i)); - return new FaceLandmarks68(Array(68).fill(0).map((_, i) => new Point(xCoords[i], yCoords[i])), { - height: netInput.getInputHeight(batchIdx), - width: netInput.getInputWidth(batchIdx), - }); - })); - landmarkTensors.forEach(t => t.dispose()); - return netInput.isBatchInput - ? landmarksForBatch - : landmarksForBatch[0]; - } - getClassifierChannelsOut() { - return 136; - } -} -//# sourceMappingURL=FaceLandmark68NetBase.js.map \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68NetBase.js.map b/build/faceLandmarkNet/FaceLandmark68NetBase.js.map deleted file mode 100644 index 2fae2ed..0000000 --- a/build/faceLandmarkNet/FaceLandmark68NetBase.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmark68NetBase.js","sourceRoot":"","sources":["../../src/faceLandmarkNet/FaceLandmark68NetBase.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts b/build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts deleted file mode 100644 index 428164a..0000000 --- a/build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { TinyFaceFeatureExtractor } from '../faceFeatureExtractor/TinyFaceFeatureExtractor'; -import { TinyFaceFeatureExtractorParams } from '../faceFeatureExtractor/types'; -import { FaceLandmark68NetBase } from './FaceLandmark68NetBase'; -export declare class FaceLandmark68TinyNet extends FaceLandmark68NetBase { - constructor(faceFeatureExtractor?: TinyFaceFeatureExtractor); - protected getDefaultModelName(): string; - protected getClassifierChannelsIn(): number; -} -//# sourceMappingURL=FaceLandmark68TinyNet.d.ts.map \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts.map b/build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts.map deleted file mode 100644 index f783020..0000000 --- a/build/faceLandmarkNet/FaceLandmark68TinyNet.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmark68TinyNet.d.ts","sourceRoot":"","sources":["../../src/faceLandmarkNet/FaceLandmark68TinyNet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC5F,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,qBAAa,qBAAsB,SAAQ,qBAAqB,CAAC,8BAA8B,CAAC;gBAElF,oBAAoB,GAAE,wBAAyD;IAI3F,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,uBAAuB,IAAI,MAAM;CAG5C"} \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68TinyNet.js b/build/faceLandmarkNet/FaceLandmark68TinyNet.js deleted file mode 100644 index 5f58220..0000000 --- a/build/faceLandmarkNet/FaceLandmark68TinyNet.js +++ /dev/null @@ -1,14 +0,0 @@ -import { TinyFaceFeatureExtractor } from '../faceFeatureExtractor/TinyFaceFeatureExtractor'; -import { FaceLandmark68NetBase } from './FaceLandmark68NetBase'; -export class FaceLandmark68TinyNet extends FaceLandmark68NetBase { - constructor(faceFeatureExtractor = new TinyFaceFeatureExtractor()) { - super('FaceLandmark68TinyNet', faceFeatureExtractor); - } - getDefaultModelName() { - return 'face_landmark_68_tiny_model'; - } - getClassifierChannelsIn() { - return 128; - } -} -//# sourceMappingURL=FaceLandmark68TinyNet.js.map \ No newline at end of file diff --git a/build/faceLandmarkNet/FaceLandmark68TinyNet.js.map b/build/faceLandmarkNet/FaceLandmark68TinyNet.js.map deleted file mode 100644 index a2fcdcb..0000000 --- a/build/faceLandmarkNet/FaceLandmark68TinyNet.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceLandmark68TinyNet.js","sourceRoot":"","sources":["../../src/faceLandmarkNet/FaceLandmark68TinyNet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAE5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,OAAO,qBAAsB,SAAQ,qBAAqD;IAE9F,YAAY,uBAAiD,IAAI,wBAAwB,EAAE;QACzF,KAAK,CAAC,uBAAuB,EAAE,oBAAoB,CAAC,CAAA;IACtD,CAAC;IAES,mBAAmB;QAC3B,OAAO,6BAA6B,CAAA;IACtC,CAAC;IAES,uBAAuB;QAC/B,OAAO,GAAG,CAAA;IACZ,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceLandmarkNet/index.d.ts b/build/faceLandmarkNet/index.d.ts deleted file mode 100644 index 32fd3a9..0000000 --- a/build/faceLandmarkNet/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { FaceLandmark68Net } from './FaceLandmark68Net'; -export * from './FaceLandmark68Net'; -export * from './FaceLandmark68TinyNet'; -export declare class FaceLandmarkNet extends FaceLandmark68Net { -} -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/faceLandmarkNet/index.d.ts.map b/build/faceLandmarkNet/index.d.ts.map deleted file mode 100644 index e4e3c97..0000000 --- a/build/faceLandmarkNet/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/faceLandmarkNet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AAExC,qBAAa,eAAgB,SAAQ,iBAAiB;CAAG"} \ No newline at end of file diff --git a/build/faceLandmarkNet/index.js b/build/faceLandmarkNet/index.js deleted file mode 100644 index 154ed93..0000000 --- a/build/faceLandmarkNet/index.js +++ /dev/null @@ -1,6 +0,0 @@ -import { FaceLandmark68Net } from './FaceLandmark68Net'; -export * from './FaceLandmark68Net'; -export * from './FaceLandmark68TinyNet'; -export class FaceLandmarkNet extends FaceLandmark68Net { -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/faceLandmarkNet/index.js.map b/build/faceLandmarkNet/index.js.map deleted file mode 100644 index d957c37..0000000 --- a/build/faceLandmarkNet/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/faceLandmarkNet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AAExC,MAAM,OAAO,eAAgB,SAAQ,iBAAiB;CAAG"} \ No newline at end of file diff --git a/build/faceProcessor/FaceProcessor.d.ts b/build/faceProcessor/FaceProcessor.d.ts deleted file mode 100644 index 40bacdc..0000000 --- a/build/faceProcessor/FaceProcessor.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput } from '../dom'; -import { FaceFeatureExtractorParams, IFaceFeatureExtractor, TinyFaceFeatureExtractorParams } from '../faceFeatureExtractor/types'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { NetParams } from './types'; -export declare abstract class FaceProcessor extends NeuralNetwork { - protected _faceFeatureExtractor: IFaceFeatureExtractor; - constructor(_name: string, faceFeatureExtractor: IFaceFeatureExtractor); - get faceFeatureExtractor(): IFaceFeatureExtractor; - protected abstract getDefaultModelName(): string; - protected abstract getClassifierChannelsIn(): number; - protected abstract getClassifierChannelsOut(): number; - runNet(input: NetInput | tf.Tensor4D): tf.Tensor2D; - dispose(throwOnRedispose?: boolean): void; - loadClassifierParams(weights: Float32Array): void; - extractClassifierParams(weights: Float32Array): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=FaceProcessor.d.ts.map \ No newline at end of file diff --git a/build/faceProcessor/FaceProcessor.d.ts.map b/build/faceProcessor/FaceProcessor.d.ts.map deleted file mode 100644 index fbc61dc..0000000 --- a/build/faceProcessor/FaceProcessor.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceProcessor.d.ts","sourceRoot":"","sources":["../../src/faceProcessor/FaceProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,8BAA8B,EAC/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,8BAAsB,aAAa,CACjC,gBAAgB,SAAS,0BAA0B,GAAG,8BAA8B,CAEpF,SAAQ,aAAa,CAAC,SAAS,CAAC;IAEhC,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;gBAE5D,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,gBAAgB,CAAC;IAKxF,IAAW,oBAAoB,IAAI,qBAAqB,CAAC,gBAAgB,CAAC,CAEzE;IAED,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,MAAM;IAChD,SAAS,CAAC,QAAQ,CAAC,uBAAuB,IAAI,MAAM;IACpD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,IAAI,MAAM;IAE9C,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ;IAgBlD,OAAO,CAAC,gBAAgB,GAAE,OAAc;IAKxC,oBAAoB,CAAC,OAAO,EAAE,YAAY;IAM1C,uBAAuB,CAAC,OAAO,EAAE,YAAY;;;;IAIpD,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IASjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAY9C"} \ No newline at end of file diff --git a/build/faceProcessor/FaceProcessor.js b/build/faceProcessor/FaceProcessor.js deleted file mode 100644 index 6d6fe34..0000000 --- a/build/faceProcessor/FaceProcessor.js +++ /dev/null @@ -1,55 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { fullyConnectedLayer } from '../common/fullyConnectedLayer'; -import { NetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -import { seperateWeightMaps } from './util'; -export class FaceProcessor extends NeuralNetwork { - constructor(_name, faceFeatureExtractor) { - super(_name); - this._faceFeatureExtractor = faceFeatureExtractor; - } - get faceFeatureExtractor() { - return this._faceFeatureExtractor; - } - runNet(input) { - const { params } = this; - if (!params) { - throw new Error(`${this._name} - load model before inference`); - } - return tf.tidy(() => { - const bottleneckFeatures = input instanceof NetInput - ? this.faceFeatureExtractor.forwardInput(input) - : input; - return fullyConnectedLayer(bottleneckFeatures.as2D(bottleneckFeatures.shape[0], -1), params.fc); - }); - } - dispose(throwOnRedispose = true) { - this.faceFeatureExtractor.dispose(throwOnRedispose); - super.dispose(throwOnRedispose); - } - loadClassifierParams(weights) { - const { params, paramMappings } = this.extractClassifierParams(weights); - this._params = params; - this._paramMappings = paramMappings; - } - extractClassifierParams(weights) { - return extractParams(weights, this.getClassifierChannelsIn(), this.getClassifierChannelsOut()); - } - extractParamsFromWeigthMap(weightMap) { - const { featureExtractorMap, classifierMap } = seperateWeightMaps(weightMap); - this.faceFeatureExtractor.loadFromWeightMap(featureExtractorMap); - return extractParamsFromWeigthMap(classifierMap); - } - extractParams(weights) { - const cIn = this.getClassifierChannelsIn(); - const cOut = this.getClassifierChannelsOut(); - const classifierWeightSize = (cOut * cIn) + cOut; - const featureExtractorWeights = weights.slice(0, weights.length - classifierWeightSize); - const classifierWeights = weights.slice(weights.length - classifierWeightSize); - this.faceFeatureExtractor.extractWeights(featureExtractorWeights); - return this.extractClassifierParams(classifierWeights); - } -} -//# sourceMappingURL=FaceProcessor.js.map \ No newline at end of file diff --git a/build/faceProcessor/FaceProcessor.js.map b/build/faceProcessor/FaceProcessor.js.map deleted file mode 100644 index f4bb7f6..0000000 --- a/build/faceProcessor/FaceProcessor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceProcessor.js","sourceRoot":"","sources":["../../src/faceProcessor/FaceProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAMlC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAE5C,MAAM,OAAgB,aAGpB,SAAQ,aAAwB;IAIhC,YAAY,KAAa,EAAE,oBAA6D;QACtF,KAAK,CAAC,KAAK,CAAC,CAAA;QACZ,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAA;IACnD,CAAC;IAED,IAAW,oBAAoB;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAA;IACnC,CAAC;IAMM,MAAM,CAAC,KAA6B;QAEzC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,gCAAgC,CAAC,CAAA;SAC/D;QAED,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,MAAM,kBAAkB,GAAG,KAAK,YAAY,QAAQ;gBAClD,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,KAAK,CAAC;gBAC/C,CAAC,CAAC,KAAK,CAAA;YACT,OAAO,mBAAmB,CAAC,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;QACjG,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,OAAO,CAAC,mBAA4B,IAAI;QAC7C,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;QACnD,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACjC,CAAC;IAEM,oBAAoB,CAAC,OAAqB;QAC/C,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;QACvE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACrB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAA;IACrC,CAAC;IAEM,uBAAuB,CAAC,OAAqB;QAClD,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAA;IAChG,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAE/D,MAAM,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAE5E,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;QAEhE,OAAO,0BAA0B,CAAC,aAAa,CAAC,CAAA;IAClD,CAAC;IAES,aAAa,CAAC,OAAqB;QAE3C,MAAM,GAAG,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAC5C,MAAM,oBAAoB,GAAG,CAAC,IAAI,GAAG,GAAG,CAAE,GAAG,IAAI,CAAA;QAEjD,MAAM,uBAAuB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC,CAAA;QACvF,MAAM,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC,CAAA;QAE9E,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAA;QACjE,OAAO,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;IACxD,CAAC;CACF"} \ No newline at end of file diff --git a/build/faceProcessor/extractParams.d.ts b/build/faceProcessor/extractParams.d.ts deleted file mode 100644 index 2af9dff..0000000 --- a/build/faceProcessor/extractParams.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParams(weights: Float32Array, channelsIn: number, channelsOut: number): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/faceProcessor/extractParams.d.ts.map b/build/faceProcessor/extractParams.d.ts.map deleted file mode 100644 index d6fad91..0000000 --- a/build/faceProcessor/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/faceProcessor/extractParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,YAAY,EAAE,MAAM,WAAW,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAqBlJ"} \ No newline at end of file diff --git a/build/faceProcessor/extractParams.js b/build/faceProcessor/extractParams.js deleted file mode 100644 index 76eeb97..0000000 --- a/build/faceProcessor/extractParams.js +++ /dev/null @@ -1,15 +0,0 @@ -import { extractFCParamsFactory, extractWeightsFactory } from '../common'; -export function extractParams(weights, channelsIn, channelsOut) { - const paramMappings = []; - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const extractFCParams = extractFCParamsFactory(extractWeights, paramMappings); - const fc = extractFCParams(channelsIn, channelsOut, 'fc'); - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { - paramMappings, - params: { fc } - }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/faceProcessor/extractParams.js.map b/build/faceProcessor/extractParams.js.map deleted file mode 100644 index 6807039..0000000 --- a/build/faceProcessor/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/faceProcessor/extractParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAgB,MAAM,WAAW,CAAC;AAGxF,MAAM,UAAU,aAAa,CAAC,OAAqB,EAAE,UAAkB,EAAE,WAAmB;IAE1F,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,cAAc,EACd,mBAAmB,EACpB,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAElC,MAAM,eAAe,GAAG,sBAAsB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IAE7E,MAAM,EAAE,GAAG,eAAe,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;IAEzD,IAAI,mBAAmB,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,kCAAkC,mBAAmB,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;KAClF;IAED,OAAO;QACL,aAAa;QACb,MAAM,EAAE,EAAE,EAAE,EAAE;KACf,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/faceProcessor/extractParamsFromWeigthMap.d.ts b/build/faceProcessor/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index 163969a..0000000 --- a/build/faceProcessor/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/faceProcessor/extractParamsFromWeigthMap.d.ts.map b/build/faceProcessor/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index a691247..0000000 --- a/build/faceProcessor/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/faceProcessor/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAmE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,GAC3B;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAmBtD"} \ No newline at end of file diff --git a/build/faceProcessor/extractParamsFromWeigthMap.js b/build/faceProcessor/extractParamsFromWeigthMap.js deleted file mode 100644 index 67c620e..0000000 --- a/build/faceProcessor/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,16 +0,0 @@ -import { disposeUnusedWeightTensors, extractWeightEntryFactory } from '../common'; -export function extractParamsFromWeigthMap(weightMap) { - const paramMappings = []; - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - function extractFcParams(prefix) { - const weights = extractWeightEntry(`${prefix}/weights`, 2); - const bias = extractWeightEntry(`${prefix}/bias`, 1); - return { weights, bias }; - } - const params = { - fc: extractFcParams('fc') - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/faceProcessor/extractParamsFromWeigthMap.js.map b/build/faceProcessor/extractParamsFromWeigthMap.js.map deleted file mode 100644 index c04cc81..0000000 --- a/build/faceProcessor/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/faceProcessor/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAA0B,MAAM,WAAW,CAAC;AAG1G,MAAM,UAAU,0BAA0B,CACxC,SAA4B;IAG5B,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE9E,SAAS,eAAe,CAAC,MAAc;QACrC,MAAM,OAAO,GAAG,kBAAkB,CAAc,GAAG,MAAM,UAAU,EAAE,CAAC,CAAC,CAAA;QACvE,MAAM,IAAI,GAAG,kBAAkB,CAAc,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,CAAA;QACjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC;KAC1B,CAAA;IAED,0BAA0B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAEpD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;AAClC,CAAC"} \ No newline at end of file diff --git a/build/faceProcessor/index.d.ts b/build/faceProcessor/index.d.ts deleted file mode 100644 index 453267a..0000000 --- a/build/faceProcessor/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './FaceProcessor'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/faceProcessor/index.d.ts.map b/build/faceProcessor/index.d.ts.map deleted file mode 100644 index 1f256e1..0000000 --- a/build/faceProcessor/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/faceProcessor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"} \ No newline at end of file diff --git a/build/faceProcessor/index.js b/build/faceProcessor/index.js deleted file mode 100644 index 43ae5c6..0000000 --- a/build/faceProcessor/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export * from './FaceProcessor'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/faceProcessor/index.js.map b/build/faceProcessor/index.js.map deleted file mode 100644 index 0ea0f85..0000000 --- a/build/faceProcessor/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/faceProcessor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"} \ No newline at end of file diff --git a/build/faceProcessor/types.d.ts b/build/faceProcessor/types.d.ts deleted file mode 100644 index b753a10..0000000 --- a/build/faceProcessor/types.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { FCParams } from '../common'; -export declare type NetParams = { - fc: FCParams; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/faceProcessor/types.d.ts.map b/build/faceProcessor/types.d.ts.map deleted file mode 100644 index d4baf93..0000000 --- a/build/faceProcessor/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/faceProcessor/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,oBAAY,SAAS,GAAG;IACtB,EAAE,EAAE,QAAQ,CAAA;CACb,CAAA"} \ No newline at end of file diff --git a/build/faceProcessor/types.js b/build/faceProcessor/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/faceProcessor/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/faceProcessor/types.js.map b/build/faceProcessor/types.js.map deleted file mode 100644 index 86dee21..0000000 --- a/build/faceProcessor/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/faceProcessor/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/faceProcessor/util.d.ts b/build/faceProcessor/util.d.ts deleted file mode 100644 index 5f2be3c..0000000 --- a/build/faceProcessor/util.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare function seperateWeightMaps(weightMap: tf.NamedTensorMap): { - featureExtractorMap: tf.NamedTensorMap; - classifierMap: tf.NamedTensorMap; -}; -//# sourceMappingURL=util.d.ts.map \ No newline at end of file diff --git a/build/faceProcessor/util.d.ts.map b/build/faceProcessor/util.d.ts.map deleted file mode 100644 index 059a296..0000000 --- a/build/faceProcessor/util.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/faceProcessor/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;EAY9D"} \ No newline at end of file diff --git a/build/faceProcessor/util.js b/build/faceProcessor/util.js deleted file mode 100644 index f400d03..0000000 --- a/build/faceProcessor/util.js +++ /dev/null @@ -1,10 +0,0 @@ -export function seperateWeightMaps(weightMap) { - const featureExtractorMap = {}; - const classifierMap = {}; - Object.keys(weightMap).forEach(key => { - const map = key.startsWith('fc') ? classifierMap : featureExtractorMap; - map[key] = weightMap[key]; - }); - return { featureExtractorMap, classifierMap }; -} -//# sourceMappingURL=util.js.map \ No newline at end of file diff --git a/build/faceProcessor/util.js.map b/build/faceProcessor/util.js.map deleted file mode 100644 index 282c9d7..0000000 --- a/build/faceProcessor/util.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/faceProcessor/util.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB,CAAC,SAA4B;IAE7D,MAAM,mBAAmB,GAAsB,EAAE,CAAA;IACjD,MAAM,aAAa,GAAsB,EAAE,CAAA;IAE3C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACnC,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAA;QACtE,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAA;AAE/C,CAAC"} \ No newline at end of file diff --git a/build/faceRecognitionNet/FaceRecognitionNet.d.ts b/build/faceRecognitionNet/FaceRecognitionNet.d.ts deleted file mode 100644 index e8ce6e9..0000000 --- a/build/faceRecognitionNet/FaceRecognitionNet.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput, TNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { NetParams } from './types'; -export declare class FaceRecognitionNet extends NeuralNetwork { - constructor(); - forwardInput(input: NetInput): tf.Tensor2D; - forward(input: TNetInput): Promise; - computeFaceDescriptor(input: TNetInput): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=FaceRecognitionNet.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/FaceRecognitionNet.d.ts.map b/build/faceRecognitionNet/FaceRecognitionNet.d.ts.map deleted file mode 100644 index 61c3c67..0000000 --- a/build/faceRecognitionNet/FaceRecognitionNet.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceRecognitionNet.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/FaceRecognitionNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMjD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,SAAS,CAAC;;IAMvD,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ;IA0CpC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAI/C,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,GAAC,YAAY,EAAE,CAAC;IAkB1F,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IAIjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAG9C"} \ No newline at end of file diff --git a/build/faceRecognitionNet/FaceRecognitionNet.js b/build/faceRecognitionNet/FaceRecognitionNet.js deleted file mode 100644 index f283492..0000000 --- a/build/faceRecognitionNet/FaceRecognitionNet.js +++ /dev/null @@ -1,65 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { toNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { normalize } from '../ops'; -import { convDown } from './convLayer'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -import { residual, residualDown } from './residualLayer'; -export class FaceRecognitionNet extends NeuralNetwork { - constructor() { - super('FaceRecognitionNet'); - } - forwardInput(input) { - const { params } = this; - if (!params) { - throw new Error('FaceRecognitionNet - load model before inference'); - } - return tf.tidy(() => { - const batchTensor = input.toBatchTensor(150, true).toFloat(); - const meanRgb = [122.782, 117.001, 104.298]; - const normalized = normalize(batchTensor, meanRgb).div(tf.scalar(256)); - let out = convDown(normalized, params.conv32_down); - out = tf.maxPool(out, 3, 2, 'valid'); - out = residual(out, params.conv32_1); - out = residual(out, params.conv32_2); - out = residual(out, params.conv32_3); - out = residualDown(out, params.conv64_down); - out = residual(out, params.conv64_1); - out = residual(out, params.conv64_2); - out = residual(out, params.conv64_3); - out = residualDown(out, params.conv128_down); - out = residual(out, params.conv128_1); - out = residual(out, params.conv128_2); - out = residualDown(out, params.conv256_down); - out = residual(out, params.conv256_1); - out = residual(out, params.conv256_2); - out = residualDown(out, params.conv256_down_out); - const globalAvg = out.mean([1, 2]); - const fullyConnected = tf.matMul(globalAvg, params.fc); - return fullyConnected; - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - async computeFaceDescriptor(input) { - const netInput = await toNetInput(input); - const faceDescriptorTensors = tf.tidy(() => tf.unstack(this.forwardInput(netInput))); - const faceDescriptorsForBatch = await Promise.all(faceDescriptorTensors.map(t => t.data())); - faceDescriptorTensors.forEach(t => t.dispose()); - return netInput.isBatchInput - ? faceDescriptorsForBatch - : faceDescriptorsForBatch[0]; - } - getDefaultModelName() { - return 'face_recognition_model'; - } - extractParamsFromWeigthMap(weightMap) { - return extractParamsFromWeigthMap(weightMap); - } - extractParams(weights) { - return extractParams(weights); - } -} -//# sourceMappingURL=FaceRecognitionNet.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/FaceRecognitionNet.js.map b/build/faceRecognitionNet/FaceRecognitionNet.js.map deleted file mode 100644 index c6af66a..0000000 --- a/build/faceRecognitionNet/FaceRecognitionNet.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceRecognitionNet.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/FaceRecognitionNet.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/faceRecognitionNet/convLayer.d.ts b/build/faceRecognitionNet/convLayer.d.ts deleted file mode 100644 index 1773542..0000000 --- a/build/faceRecognitionNet/convLayer.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ConvLayerParams } from './types'; -export declare function conv(x: tf.Tensor4D, params: ConvLayerParams): tf.Tensor4D; -export declare function convNoRelu(x: tf.Tensor4D, params: ConvLayerParams): tf.Tensor4D; -export declare function convDown(x: tf.Tensor4D, params: ConvLayerParams): tf.Tensor4D; -//# sourceMappingURL=convLayer.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/convLayer.d.ts.map b/build/faceRecognitionNet/convLayer.d.ts.map deleted file mode 100644 index d5239c2..0000000 --- a/build/faceRecognitionNet/convLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convLayer.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/convLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAkB1C,wBAAgB,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,eAE3D;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,eAEjE;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,eAE/D"} \ No newline at end of file diff --git a/build/faceRecognitionNet/convLayer.js b/build/faceRecognitionNet/convLayer.js deleted file mode 100644 index 9aa5ca9..0000000 --- a/build/faceRecognitionNet/convLayer.js +++ /dev/null @@ -1,19 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { scale } from './scaleLayer'; -function convLayer(x, params, strides, withRelu, padding = 'same') { - const { filters, bias } = params.conv; - let out = tf.conv2d(x, filters, strides, padding); - out = tf.add(out, bias); - out = scale(out, params.scale); - return withRelu ? tf.relu(out) : out; -} -export function conv(x, params) { - return convLayer(x, params, [1, 1], true); -} -export function convNoRelu(x, params) { - return convLayer(x, params, [1, 1], false); -} -export function convDown(x, params) { - return convLayer(x, params, [2, 2], true, 'valid'); -} -//# sourceMappingURL=convLayer.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/convLayer.js.map b/build/faceRecognitionNet/convLayer.js.map deleted file mode 100644 index 676f31e..0000000 --- a/build/faceRecognitionNet/convLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convLayer.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/convLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAIrC,SAAS,SAAS,CAChB,CAAc,EACd,MAAuB,EACvB,OAAyB,EACzB,QAAiB,EACjB,UAA4B,MAAM;IAElC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAA;IAErC,IAAI,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IACjD,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACvB,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAC9B,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,CAAc,EAAE,MAAuB;IAC1D,OAAO,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAc,EAAE,MAAuB;IAChE,OAAO,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,CAAc,EAAE,MAAuB;IAC9D,OAAO,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;AACpD,CAAC"} \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParams.d.ts b/build/faceRecognitionNet/extractParams.d.ts deleted file mode 100644 index 12cc2d4..0000000 --- a/build/faceRecognitionNet/extractParams.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParams.d.ts.map b/build/faceRecognitionNet/extractParams.d.ts.map deleted file mode 100644 index bf21c3f..0000000 --- a/build/faceRecognitionNet/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/extractParams.ts"],"names":[],"mappings":"AAEA,OAAO,EAA6D,YAAY,EAAE,MAAM,WAAW,CAAC;AAEpG,OAAO,EAAmB,SAAS,EAAyC,MAAM,SAAS,CAAC;AAwF5F,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CA8DzG"} \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParams.js b/build/faceRecognitionNet/extractParams.js deleted file mode 100644 index 01c5701..0000000 --- a/build/faceRecognitionNet/extractParams.js +++ /dev/null @@ -1,87 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { extractWeightsFactory } from '../common'; -import { isFloat } from '../utils'; -function extractorsFactory(extractWeights, paramMappings) { - function extractFilterValues(numFilterValues, numFilters, filterSize) { - const weights = extractWeights(numFilterValues); - const depth = weights.length / (numFilters * filterSize * filterSize); - if (isFloat(depth)) { - throw new Error(`depth has to be an integer: ${depth}, weights.length: ${weights.length}, numFilters: ${numFilters}, filterSize: ${filterSize}`); - } - return tf.tidy(() => tf.transpose(tf.tensor4d(weights, [numFilters, depth, filterSize, filterSize]), [2, 3, 1, 0])); - } - function extractConvParams(numFilterValues, numFilters, filterSize, mappedPrefix) { - const filters = extractFilterValues(numFilterValues, numFilters, filterSize); - const bias = tf.tensor1d(extractWeights(numFilters)); - paramMappings.push({ paramPath: `${mappedPrefix}/filters` }, { paramPath: `${mappedPrefix}/bias` }); - return { filters, bias }; - } - function extractScaleLayerParams(numWeights, mappedPrefix) { - const weights = tf.tensor1d(extractWeights(numWeights)); - const biases = tf.tensor1d(extractWeights(numWeights)); - paramMappings.push({ paramPath: `${mappedPrefix}/weights` }, { paramPath: `${mappedPrefix}/biases` }); - return { - weights, - biases - }; - } - function extractConvLayerParams(numFilterValues, numFilters, filterSize, mappedPrefix) { - const conv = extractConvParams(numFilterValues, numFilters, filterSize, `${mappedPrefix}/conv`); - const scale = extractScaleLayerParams(numFilters, `${mappedPrefix}/scale`); - return { conv, scale }; - } - function extractResidualLayerParams(numFilterValues, numFilters, filterSize, mappedPrefix, isDown = false) { - const conv1 = extractConvLayerParams((isDown ? 0.5 : 1) * numFilterValues, numFilters, filterSize, `${mappedPrefix}/conv1`); - const conv2 = extractConvLayerParams(numFilterValues, numFilters, filterSize, `${mappedPrefix}/conv2`); - return { conv1, conv2 }; - } - return { - extractConvLayerParams, - extractResidualLayerParams - }; -} -export function extractParams(weights) { - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const paramMappings = []; - const { extractConvLayerParams, extractResidualLayerParams } = extractorsFactory(extractWeights, paramMappings); - const conv32_down = extractConvLayerParams(4704, 32, 7, 'conv32_down'); - const conv32_1 = extractResidualLayerParams(9216, 32, 3, 'conv32_1'); - const conv32_2 = extractResidualLayerParams(9216, 32, 3, 'conv32_2'); - const conv32_3 = extractResidualLayerParams(9216, 32, 3, 'conv32_3'); - const conv64_down = extractResidualLayerParams(36864, 64, 3, 'conv64_down', true); - const conv64_1 = extractResidualLayerParams(36864, 64, 3, 'conv64_1'); - const conv64_2 = extractResidualLayerParams(36864, 64, 3, 'conv64_2'); - const conv64_3 = extractResidualLayerParams(36864, 64, 3, 'conv64_3'); - const conv128_down = extractResidualLayerParams(147456, 128, 3, 'conv128_down', true); - const conv128_1 = extractResidualLayerParams(147456, 128, 3, 'conv128_1'); - const conv128_2 = extractResidualLayerParams(147456, 128, 3, 'conv128_2'); - const conv256_down = extractResidualLayerParams(589824, 256, 3, 'conv256_down', true); - const conv256_1 = extractResidualLayerParams(589824, 256, 3, 'conv256_1'); - const conv256_2 = extractResidualLayerParams(589824, 256, 3, 'conv256_2'); - const conv256_down_out = extractResidualLayerParams(589824, 256, 3, 'conv256_down_out'); - const fc = tf.tidy(() => tf.transpose(tf.tensor2d(extractWeights(256 * 128), [128, 256]), [1, 0])); - paramMappings.push({ paramPath: `fc` }); - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - const params = { - conv32_down, - conv32_1, - conv32_2, - conv32_3, - conv64_down, - conv64_1, - conv64_2, - conv64_3, - conv128_down, - conv128_1, - conv128_2, - conv256_down, - conv256_1, - conv256_2, - conv256_down_out, - fc - }; - return { params, paramMappings }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParams.js.map b/build/faceRecognitionNet/extractParams.js.map deleted file mode 100644 index 9fd7b72..0000000 --- a/build/faceRecognitionNet/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/extractParams.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts b/build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index 163969a..0000000 --- a/build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts.map b/build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index 545ee4d..0000000 --- a/build/faceRecognitionNet/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAyD,YAAY,EAAE,MAAM,WAAW,CAAC;AAEhG,OAAO,EAAmB,SAAS,EAAyC,MAAM,SAAS,CAAC;AAqC5F,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,GAC3B;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAyDtD"} \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParamsFromWeigthMap.js b/build/faceRecognitionNet/extractParamsFromWeigthMap.js deleted file mode 100644 index 8394d3d..0000000 --- a/build/faceRecognitionNet/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,71 +0,0 @@ -import { disposeUnusedWeightTensors, extractWeightEntryFactory } from '../common'; -import { isTensor2D } from '../utils'; -function extractorsFactory(weightMap, paramMappings) { - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - function extractScaleLayerParams(prefix) { - const weights = extractWeightEntry(`${prefix}/scale/weights`, 1); - const biases = extractWeightEntry(`${prefix}/scale/biases`, 1); - return { weights, biases }; - } - function extractConvLayerParams(prefix) { - const filters = extractWeightEntry(`${prefix}/conv/filters`, 4); - const bias = extractWeightEntry(`${prefix}/conv/bias`, 1); - const scale = extractScaleLayerParams(prefix); - return { conv: { filters, bias }, scale }; - } - function extractResidualLayerParams(prefix) { - return { - conv1: extractConvLayerParams(`${prefix}/conv1`), - conv2: extractConvLayerParams(`${prefix}/conv2`) - }; - } - return { - extractConvLayerParams, - extractResidualLayerParams - }; -} -export function extractParamsFromWeigthMap(weightMap) { - const paramMappings = []; - const { extractConvLayerParams, extractResidualLayerParams } = extractorsFactory(weightMap, paramMappings); - const conv32_down = extractConvLayerParams('conv32_down'); - const conv32_1 = extractResidualLayerParams('conv32_1'); - const conv32_2 = extractResidualLayerParams('conv32_2'); - const conv32_3 = extractResidualLayerParams('conv32_3'); - const conv64_down = extractResidualLayerParams('conv64_down'); - const conv64_1 = extractResidualLayerParams('conv64_1'); - const conv64_2 = extractResidualLayerParams('conv64_2'); - const conv64_3 = extractResidualLayerParams('conv64_3'); - const conv128_down = extractResidualLayerParams('conv128_down'); - const conv128_1 = extractResidualLayerParams('conv128_1'); - const conv128_2 = extractResidualLayerParams('conv128_2'); - const conv256_down = extractResidualLayerParams('conv256_down'); - const conv256_1 = extractResidualLayerParams('conv256_1'); - const conv256_2 = extractResidualLayerParams('conv256_2'); - const conv256_down_out = extractResidualLayerParams('conv256_down_out'); - const fc = weightMap['fc']; - paramMappings.push({ originalPath: 'fc', paramPath: 'fc' }); - if (!isTensor2D(fc)) { - throw new Error(`expected weightMap[fc] to be a Tensor2D, instead have ${fc}`); - } - const params = { - conv32_down, - conv32_1, - conv32_2, - conv32_3, - conv64_down, - conv64_1, - conv64_2, - conv64_3, - conv128_down, - conv128_1, - conv128_2, - conv256_down, - conv256_1, - conv256_2, - conv256_down_out, - fc - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/extractParamsFromWeigthMap.js.map b/build/faceRecognitionNet/extractParamsFromWeigthMap.js.map deleted file mode 100644 index 9c5829b..0000000 --- a/build/faceRecognitionNet/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/faceRecognitionNet/index.d.ts b/build/faceRecognitionNet/index.d.ts deleted file mode 100644 index 4f1e645..0000000 --- a/build/faceRecognitionNet/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { FaceRecognitionNet } from './FaceRecognitionNet'; -export * from './FaceRecognitionNet'; -export declare function createFaceRecognitionNet(weights: Float32Array): FaceRecognitionNet; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/index.d.ts.map b/build/faceRecognitionNet/index.d.ts.map deleted file mode 100644 index 12bedc5..0000000 --- a/build/faceRecognitionNet/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,cAAc,sBAAsB,CAAC;AAErC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,YAAY,sBAI7D"} \ No newline at end of file diff --git a/build/faceRecognitionNet/index.js b/build/faceRecognitionNet/index.js deleted file mode 100644 index 20f2421..0000000 --- a/build/faceRecognitionNet/index.js +++ /dev/null @@ -1,8 +0,0 @@ -import { FaceRecognitionNet } from './FaceRecognitionNet'; -export * from './FaceRecognitionNet'; -export function createFaceRecognitionNet(weights) { - const net = new FaceRecognitionNet(); - net.extractWeights(weights); - return net; -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/index.js.map b/build/faceRecognitionNet/index.js.map deleted file mode 100644 index 82f4dcc..0000000 --- a/build/faceRecognitionNet/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,cAAc,sBAAsB,CAAC;AAErC,MAAM,UAAU,wBAAwB,CAAC,OAAqB;IAC5D,MAAM,GAAG,GAAG,IAAI,kBAAkB,EAAE,CAAA;IACpC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3B,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/faceRecognitionNet/residualLayer.d.ts b/build/faceRecognitionNet/residualLayer.d.ts deleted file mode 100644 index 4c102e1..0000000 --- a/build/faceRecognitionNet/residualLayer.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ResidualLayerParams } from './types'; -export declare function residual(x: tf.Tensor4D, params: ResidualLayerParams): tf.Tensor4D; -export declare function residualDown(x: tf.Tensor4D, params: ResidualLayerParams): tf.Tensor4D; -//# sourceMappingURL=residualLayer.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/residualLayer.d.ts.map b/build/faceRecognitionNet/residualLayer.d.ts.map deleted file mode 100644 index 1cb8839..0000000 --- a/build/faceRecognitionNet/residualLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"residualLayer.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/residualLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,wBAAgB,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,GAAG,EAAE,CAAC,QAAQ,CAMjF;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,GAAG,EAAE,CAAC,QAAQ,CA0BrF"} \ No newline at end of file diff --git a/build/faceRecognitionNet/residualLayer.js b/build/faceRecognitionNet/residualLayer.js deleted file mode 100644 index 33b411e..0000000 --- a/build/faceRecognitionNet/residualLayer.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { conv, convDown, convNoRelu } from './convLayer'; -export function residual(x, params) { - let out = conv(x, params.conv1); - out = convNoRelu(out, params.conv2); - out = tf.add(out, x); - out = tf.relu(out); - return out; -} -export function residualDown(x, params) { - let out = convDown(x, params.conv1); - out = convNoRelu(out, params.conv2); - let pooled = tf.avgPool(x, 2, 2, 'valid'); - const zeros = tf.zeros(pooled.shape); - const isPad = pooled.shape[3] !== out.shape[3]; - const isAdjustShape = pooled.shape[1] !== out.shape[1] || pooled.shape[2] !== out.shape[2]; - if (isAdjustShape) { - const padShapeX = [...out.shape]; - padShapeX[1] = 1; - const zerosW = tf.zeros(padShapeX); - out = tf.concat([out, zerosW], 1); - const padShapeY = [...out.shape]; - padShapeY[2] = 1; - const zerosH = tf.zeros(padShapeY); - out = tf.concat([out, zerosH], 2); - } - pooled = isPad ? tf.concat([pooled, zeros], 3) : pooled; - out = tf.add(pooled, out); - out = tf.relu(out); - return out; -} -//# sourceMappingURL=residualLayer.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/residualLayer.js.map b/build/faceRecognitionNet/residualLayer.js.map deleted file mode 100644 index 4f805e5..0000000 --- a/build/faceRecognitionNet/residualLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"residualLayer.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/residualLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzD,MAAM,UAAU,QAAQ,CAAC,CAAc,EAAE,MAA2B;IAClE,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAC/B,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACpB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,CAAc,EAAE,MAA2B;IACtE,IAAI,GAAG,GAAG,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAEnC,IAAI,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAgB,CAAA;IACxD,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAa,MAAM,CAAC,KAAK,CAAC,CAAA;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC9C,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAE1F,IAAI,aAAa,EAAE;QACjB,MAAM,SAAS,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAqC,CAAA;QACpE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAChB,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAa,SAAS,CAAC,CAAA;QAC9C,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QAEjC,MAAM,SAAS,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAqC,CAAA;QACpE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAChB,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAa,SAAS,CAAC,CAAA;QAC9C,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;KAClC;IAED,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IACvD,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAgB,CAAA;IAExC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/faceRecognitionNet/scaleLayer.d.ts b/build/faceRecognitionNet/scaleLayer.d.ts deleted file mode 100644 index c87771c..0000000 --- a/build/faceRecognitionNet/scaleLayer.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ScaleLayerParams } from './types'; -export declare function scale(x: tf.Tensor4D, params: ScaleLayerParams): tf.Tensor4D; -//# sourceMappingURL=scaleLayer.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/scaleLayer.d.ts.map b/build/faceRecognitionNet/scaleLayer.d.ts.map deleted file mode 100644 index ae1cd12..0000000 --- a/build/faceRecognitionNet/scaleLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scaleLayer.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/scaleLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,gBAAgB,GAAG,EAAE,CAAC,QAAQ,CAE3E"} \ No newline at end of file diff --git a/build/faceRecognitionNet/scaleLayer.js b/build/faceRecognitionNet/scaleLayer.js deleted file mode 100644 index 6c1b911..0000000 --- a/build/faceRecognitionNet/scaleLayer.js +++ /dev/null @@ -1,5 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function scale(x, params) { - return tf.add(tf.mul(x, params.weights), params.biases); -} -//# sourceMappingURL=scaleLayer.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/scaleLayer.js.map b/build/faceRecognitionNet/scaleLayer.js.map deleted file mode 100644 index f40308c..0000000 --- a/build/faceRecognitionNet/scaleLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scaleLayer.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/scaleLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,UAAU,KAAK,CAAC,CAAc,EAAE,MAAwB;IAC5D,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;AACzD,CAAC"} \ No newline at end of file diff --git a/build/faceRecognitionNet/types.d.ts b/build/faceRecognitionNet/types.d.ts deleted file mode 100644 index 477e933..0000000 --- a/build/faceRecognitionNet/types.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ConvParams } from '../common'; -export declare type ScaleLayerParams = { - weights: tf.Tensor1D; - biases: tf.Tensor1D; -}; -export declare type ResidualLayerParams = { - conv1: ConvLayerParams; - conv2: ConvLayerParams; -}; -export declare type ConvLayerParams = { - conv: ConvParams; - scale: ScaleLayerParams; -}; -export declare type NetParams = { - conv32_down: ConvLayerParams; - conv32_1: ResidualLayerParams; - conv32_2: ResidualLayerParams; - conv32_3: ResidualLayerParams; - conv64_down: ResidualLayerParams; - conv64_1: ResidualLayerParams; - conv64_2: ResidualLayerParams; - conv64_3: ResidualLayerParams; - conv128_down: ResidualLayerParams; - conv128_1: ResidualLayerParams; - conv128_2: ResidualLayerParams; - conv256_down: ResidualLayerParams; - conv256_1: ResidualLayerParams; - conv256_2: ResidualLayerParams; - conv256_down_out: ResidualLayerParams; - fc: tf.Tensor2D; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/faceRecognitionNet/types.d.ts.map b/build/faceRecognitionNet/types.d.ts.map deleted file mode 100644 index 4893f10..0000000 --- a/build/faceRecognitionNet/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/faceRecognitionNet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,oBAAY,gBAAgB,GAAG;IAC7B,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAA;IACpB,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAA;CACpB,CAAA;AACD,oBAAY,mBAAmB,GAAG;IAChC,KAAK,EAAE,eAAe,CAAA;IACtB,KAAK,EAAE,eAAe,CAAA;CACvB,CAAA;AAED,oBAAY,eAAe,GAAG;IAC5B,IAAI,EAAE,UAAU,CAAA;IAChB,KAAK,EAAE,gBAAgB,CAAA;CACxB,CAAA;AAED,oBAAY,SAAS,GAAG;IACtB,WAAW,EAAE,eAAe,CAAA;IAC5B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,WAAW,EAAE,mBAAmB,CAAA;IAChC,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,YAAY,EAAE,mBAAmB,CAAA;IACjC,SAAS,EAAE,mBAAmB,CAAA;IAC9B,SAAS,EAAE,mBAAmB,CAAA;IAC9B,YAAY,EAAE,mBAAmB,CAAA;IACjC,SAAS,EAAE,mBAAmB,CAAA;IAC9B,SAAS,EAAE,mBAAmB,CAAA;IAC9B,gBAAgB,EAAE,mBAAmB,CAAA;IACrC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAA;CAChB,CAAA"} \ No newline at end of file diff --git a/build/faceRecognitionNet/types.js b/build/faceRecognitionNet/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/faceRecognitionNet/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/faceRecognitionNet/types.js.map b/build/faceRecognitionNet/types.js.map deleted file mode 100644 index 08c5615..0000000 --- a/build/faceRecognitionNet/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/faceRecognitionNet/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/factories/WithAge.d.ts b/build/factories/WithAge.d.ts deleted file mode 100644 index b3e2750..0000000 --- a/build/factories/WithAge.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export declare type WithAge = TSource & { - age: number; -}; -export declare function isWithAge(obj: any): obj is WithAge<{}>; -export declare function extendWithAge(sourceObj: TSource, age: number): WithAge; -//# sourceMappingURL=WithAge.d.ts.map \ No newline at end of file diff --git a/build/factories/WithAge.d.ts.map b/build/factories/WithAge.d.ts.map deleted file mode 100644 index 29a388d..0000000 --- a/build/factories/WithAge.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithAge.d.ts","sourceRoot":"","sources":["../../src/factories/WithAge.ts"],"names":[],"mappings":"AAAA,oBAAY,OAAO,CAAC,OAAO,IAAI,OAAO,GAAG;IACvC,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,CAEtD;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAEP,SAAS,EAAE,OAAO,EAClB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAIlB"} \ No newline at end of file diff --git a/build/factories/WithAge.js b/build/factories/WithAge.js deleted file mode 100644 index 0cf40e3..0000000 --- a/build/factories/WithAge.js +++ /dev/null @@ -1,8 +0,0 @@ -export function isWithAge(obj) { - return typeof obj['age'] === 'number'; -} -export function extendWithAge(sourceObj, age) { - const extension = { age }; - return Object.assign({}, sourceObj, extension); -} -//# sourceMappingURL=WithAge.js.map \ No newline at end of file diff --git a/build/factories/WithAge.js.map b/build/factories/WithAge.js.map deleted file mode 100644 index 293d432..0000000 --- a/build/factories/WithAge.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithAge.js","sourceRoot":"","sources":["../../src/factories/WithAge.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAA;AACvC,CAAC;AAED,MAAM,UAAU,aAAa,CAG3B,SAAkB,EAClB,GAAW;IAGX,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,CAAA;IACzB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/factories/WithFaceDescriptor.d.ts b/build/factories/WithFaceDescriptor.d.ts deleted file mode 100644 index e8a5f3c..0000000 --- a/build/factories/WithFaceDescriptor.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare type WithFaceDescriptor = TSource & { - descriptor: Float32Array; -}; -export declare function extendWithFaceDescriptor(sourceObj: TSource, descriptor: Float32Array): WithFaceDescriptor; -//# sourceMappingURL=WithFaceDescriptor.d.ts.map \ No newline at end of file diff --git a/build/factories/WithFaceDescriptor.d.ts.map b/build/factories/WithFaceDescriptor.d.ts.map deleted file mode 100644 index 8dd42ac..0000000 --- a/build/factories/WithFaceDescriptor.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceDescriptor.d.ts","sourceRoot":"","sources":["../../src/factories/WithFaceDescriptor.ts"],"names":[],"mappings":"AAAA,oBAAY,kBAAkB,CAAC,OAAO,IAAI,OAAO,GAAG;IAClD,UAAU,EAAE,YAAY,CAAA;CACzB,CAAA;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAEP,SAAS,EAAE,OAAO,EAClB,UAAU,EAAE,YAAY,GACvB,kBAAkB,CAAC,OAAO,CAAC,CAI7B"} \ No newline at end of file diff --git a/build/factories/WithFaceDescriptor.js b/build/factories/WithFaceDescriptor.js deleted file mode 100644 index db68278..0000000 --- a/build/factories/WithFaceDescriptor.js +++ /dev/null @@ -1,5 +0,0 @@ -export function extendWithFaceDescriptor(sourceObj, descriptor) { - const extension = { descriptor }; - return Object.assign({}, sourceObj, extension); -} -//# sourceMappingURL=WithFaceDescriptor.js.map \ No newline at end of file diff --git a/build/factories/WithFaceDescriptor.js.map b/build/factories/WithFaceDescriptor.js.map deleted file mode 100644 index f3184b3..0000000 --- a/build/factories/WithFaceDescriptor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceDescriptor.js","sourceRoot":"","sources":["../../src/factories/WithFaceDescriptor.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,wBAAwB,CAGtC,SAAkB,EAClB,UAAwB;IAGxB,MAAM,SAAS,GAAG,EAAE,UAAU,EAAE,CAAA;IAChC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/factories/WithFaceDetection.d.ts b/build/factories/WithFaceDetection.d.ts deleted file mode 100644 index 9700e03..0000000 --- a/build/factories/WithFaceDetection.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -export declare type WithFaceDetection = TSource & { - detection: FaceDetection; -}; -export declare function isWithFaceDetection(obj: any): obj is WithFaceDetection<{}>; -export declare function extendWithFaceDetection(sourceObj: TSource, detection: FaceDetection): WithFaceDetection; -//# sourceMappingURL=WithFaceDetection.d.ts.map \ No newline at end of file diff --git a/build/factories/WithFaceDetection.d.ts.map b/build/factories/WithFaceDetection.d.ts.map deleted file mode 100644 index 460e0af..0000000 --- a/build/factories/WithFaceDetection.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceDetection.d.ts","sourceRoot":"","sources":["../../src/factories/WithFaceDetection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,oBAAY,iBAAiB,CAAC,OAAO,IAAI,OAAO,GAAG;IACjD,SAAS,EAAE,aAAa,CAAA;CACzB,CAAA;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAE1E;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAEP,SAAS,EAAE,OAAO,EAClB,SAAS,EAAE,aAAa,GACvB,iBAAiB,CAAC,OAAO,CAAC,CAI5B"} \ No newline at end of file diff --git a/build/factories/WithFaceDetection.js b/build/factories/WithFaceDetection.js deleted file mode 100644 index fc28fb5..0000000 --- a/build/factories/WithFaceDetection.js +++ /dev/null @@ -1,9 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -export function isWithFaceDetection(obj) { - return obj['detection'] instanceof FaceDetection; -} -export function extendWithFaceDetection(sourceObj, detection) { - const extension = { detection }; - return Object.assign({}, sourceObj, extension); -} -//# sourceMappingURL=WithFaceDetection.js.map \ No newline at end of file diff --git a/build/factories/WithFaceDetection.js.map b/build/factories/WithFaceDetection.js.map deleted file mode 100644 index bdd4e73..0000000 --- a/build/factories/WithFaceDetection.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceDetection.js","sourceRoot":"","sources":["../../src/factories/WithFaceDetection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAMzD,MAAM,UAAU,mBAAmB,CAAC,GAAQ;IAC1C,OAAO,GAAG,CAAC,WAAW,CAAC,YAAY,aAAa,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAGrC,SAAkB,EAClB,SAAwB;IAGxB,MAAM,SAAS,GAAG,EAAE,SAAS,EAAE,CAAA;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/factories/WithFaceExpressions.d.ts b/build/factories/WithFaceExpressions.d.ts deleted file mode 100644 index 6b20e9e..0000000 --- a/build/factories/WithFaceExpressions.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { FaceExpressions } from '../faceExpressionNet/FaceExpressions'; -export declare type WithFaceExpressions = TSource & { - expressions: FaceExpressions; -}; -export declare function isWithFaceExpressions(obj: any): obj is WithFaceExpressions<{}>; -export declare function extendWithFaceExpressions(sourceObj: TSource, expressions: FaceExpressions): WithFaceExpressions; -//# sourceMappingURL=WithFaceExpressions.d.ts.map \ No newline at end of file diff --git a/build/factories/WithFaceExpressions.d.ts.map b/build/factories/WithFaceExpressions.d.ts.map deleted file mode 100644 index f1fec19..0000000 --- a/build/factories/WithFaceExpressions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceExpressions.d.ts","sourceRoot":"","sources":["../../src/factories/WithFaceExpressions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,oBAAY,mBAAmB,CAAC,OAAO,IAAI,OAAO,GAAG;IACnD,WAAW,EAAE,eAAe,CAAA;CAC7B,CAAA;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAE9E;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAEP,SAAS,EAAE,OAAO,EAClB,WAAW,EAAE,eAAe,GAC3B,mBAAmB,CAAC,OAAO,CAAC,CAI9B"} \ No newline at end of file diff --git a/build/factories/WithFaceExpressions.js b/build/factories/WithFaceExpressions.js deleted file mode 100644 index 933e101..0000000 --- a/build/factories/WithFaceExpressions.js +++ /dev/null @@ -1,9 +0,0 @@ -import { FaceExpressions } from '../faceExpressionNet/FaceExpressions'; -export function isWithFaceExpressions(obj) { - return obj['expressions'] instanceof FaceExpressions; -} -export function extendWithFaceExpressions(sourceObj, expressions) { - const extension = { expressions }; - return Object.assign({}, sourceObj, extension); -} -//# sourceMappingURL=WithFaceExpressions.js.map \ No newline at end of file diff --git a/build/factories/WithFaceExpressions.js.map b/build/factories/WithFaceExpressions.js.map deleted file mode 100644 index 9373182..0000000 --- a/build/factories/WithFaceExpressions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceExpressions.js","sourceRoot":"","sources":["../../src/factories/WithFaceExpressions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAMvE,MAAM,UAAU,qBAAqB,CAAC,GAAQ;IAC5C,OAAO,GAAG,CAAC,aAAa,CAAC,YAAY,eAAe,CAAA;AACtD,CAAC;AAED,MAAM,UAAU,yBAAyB,CAGvC,SAAkB,EAClB,WAA4B;IAG5B,MAAM,SAAS,GAAG,EAAE,WAAW,EAAE,CAAA;IACjC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/factories/WithFaceLandmarks.d.ts b/build/factories/WithFaceLandmarks.d.ts deleted file mode 100644 index 5ca5d38..0000000 --- a/build/factories/WithFaceLandmarks.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -import { FaceLandmarks } from '../classes/FaceLandmarks'; -import { FaceLandmarks68 } from '../classes/FaceLandmarks68'; -import { WithFaceDetection } from './WithFaceDetection'; -export declare type WithFaceLandmarks, TFaceLandmarks extends FaceLandmarks = FaceLandmarks68> = TSource & { - landmarks: TFaceLandmarks; - unshiftedLandmarks: TFaceLandmarks; - alignedRect: FaceDetection; -}; -export declare function isWithFaceLandmarks(obj: any): obj is WithFaceLandmarks, FaceLandmarks>; -export declare function extendWithFaceLandmarks, TFaceLandmarks extends FaceLandmarks = FaceLandmarks68>(sourceObj: TSource, unshiftedLandmarks: TFaceLandmarks): WithFaceLandmarks; -//# sourceMappingURL=WithFaceLandmarks.d.ts.map \ No newline at end of file diff --git a/build/factories/WithFaceLandmarks.d.ts.map b/build/factories/WithFaceLandmarks.d.ts.map deleted file mode 100644 index 8b06858..0000000 --- a/build/factories/WithFaceLandmarks.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceLandmarks.d.ts","sourceRoot":"","sources":["../../src/factories/WithFaceLandmarks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAuB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,iBAAiB,CAC3B,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,EACrC,cAAc,SAAS,aAAa,GAAG,eAAe,IACpD,OAAO,GAAG;IACZ,SAAS,EAAE,cAAc,CAAA;IACzB,kBAAkB,EAAE,cAAc,CAAA;IAClC,WAAW,EAAE,aAAa,CAAA;CAC3B,CAAA;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAK5G;AAED,wBAAgB,uBAAuB,CACrC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,EACrC,cAAc,SAAS,aAAa,GAAG,eAAe,EAEtD,SAAS,EAAE,OAAO,EAClB,kBAAkB,EAAE,cAAc,GACjC,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,CAgB5C"} \ No newline at end of file diff --git a/build/factories/WithFaceLandmarks.js b/build/factories/WithFaceLandmarks.js deleted file mode 100644 index 2df14d1..0000000 --- a/build/factories/WithFaceLandmarks.js +++ /dev/null @@ -1,23 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -import { FaceLandmarks } from '../classes/FaceLandmarks'; -import { isWithFaceDetection } from './WithFaceDetection'; -export function isWithFaceLandmarks(obj) { - return isWithFaceDetection(obj) - && obj['landmarks'] instanceof FaceLandmarks - && obj['unshiftedLandmarks'] instanceof FaceLandmarks - && obj['alignedRect'] instanceof FaceDetection; -} -export function extendWithFaceLandmarks(sourceObj, unshiftedLandmarks) { - const { box: shift } = sourceObj.detection; - const landmarks = unshiftedLandmarks.shiftBy(shift.x, shift.y); - const rect = landmarks.align(); - const { imageDims } = sourceObj.detection; - const alignedRect = new FaceDetection(sourceObj.detection.score, rect.rescale(imageDims.reverse()), imageDims); - const extension = { - landmarks, - unshiftedLandmarks, - alignedRect - }; - return Object.assign({}, sourceObj, extension); -} -//# sourceMappingURL=WithFaceLandmarks.js.map \ No newline at end of file diff --git a/build/factories/WithFaceLandmarks.js.map b/build/factories/WithFaceLandmarks.js.map deleted file mode 100644 index 8998504..0000000 --- a/build/factories/WithFaceLandmarks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithFaceLandmarks.js","sourceRoot":"","sources":["../../src/factories/WithFaceLandmarks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAqB,MAAM,qBAAqB,CAAC;AAW7E,MAAM,UAAU,mBAAmB,CAAC,GAAQ;IAC1C,OAAO,mBAAmB,CAAC,GAAG,CAAC;WAC1B,GAAG,CAAC,WAAW,CAAC,YAAY,aAAa;WACzC,GAAG,CAAC,oBAAoB,CAAC,YAAY,aAAa;WAClD,GAAG,CAAC,aAAa,CAAC,YAAY,aAAa,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAIrC,SAAkB,EAClB,kBAAkC;IAGlC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,SAAS,CAAA;IAC1C,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAiB,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAE9E,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,CAAA;IAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,SAAS,CAAA;IACzC,MAAM,WAAW,GAAG,IAAI,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;IAE9G,MAAM,SAAS,GAAG;QAChB,SAAS;QACT,kBAAkB;QAClB,WAAW;KACZ,CAAA;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/factories/WithGender.d.ts b/build/factories/WithGender.d.ts deleted file mode 100644 index e035220..0000000 --- a/build/factories/WithGender.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { Gender } from '../ageGenderNet/types'; -export declare type WithGender = TSource & { - gender: Gender; - genderProbability: number; -}; -export declare function isWithGender(obj: any): obj is WithGender<{}>; -export declare function extendWithGender(sourceObj: TSource, gender: Gender, genderProbability: number): WithGender; -//# sourceMappingURL=WithGender.d.ts.map \ No newline at end of file diff --git a/build/factories/WithGender.d.ts.map b/build/factories/WithGender.d.ts.map deleted file mode 100644 index b399990..0000000 --- a/build/factories/WithGender.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithGender.d.ts","sourceRoot":"","sources":["../../src/factories/WithGender.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C,oBAAY,UAAU,CAAC,OAAO,IAAI,OAAO,GAAG;IAC1C,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAG5D;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAEP,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,GACxB,UAAU,CAAC,OAAO,CAAC,CAIrB"} \ No newline at end of file diff --git a/build/factories/WithGender.js b/build/factories/WithGender.js deleted file mode 100644 index d6535be..0000000 --- a/build/factories/WithGender.js +++ /dev/null @@ -1,11 +0,0 @@ -import { Gender } from '../ageGenderNet/types'; -import { isValidProbablitiy } from '../utils'; -export function isWithGender(obj) { - return (obj['gender'] === Gender.MALE || obj['gender'] === Gender.FEMALE) - && isValidProbablitiy(obj['genderProbability']); -} -export function extendWithGender(sourceObj, gender, genderProbability) { - const extension = { gender, genderProbability }; - return Object.assign({}, sourceObj, extension); -} -//# sourceMappingURL=WithGender.js.map \ No newline at end of file diff --git a/build/factories/WithGender.js.map b/build/factories/WithGender.js.map deleted file mode 100644 index 17fbf68..0000000 --- a/build/factories/WithGender.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WithGender.js","sourceRoot":"","sources":["../../src/factories/WithGender.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAO9C,MAAM,UAAU,YAAY,CAAC,GAAQ;IACnC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC;WACpE,kBAAkB,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAG9B,SAAkB,EAClB,MAAc,EACd,iBAAyB;IAGzB,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAA;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/factories/index.d.ts b/build/factories/index.d.ts deleted file mode 100644 index 067605a..0000000 --- a/build/factories/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * from './WithFaceDescriptor'; -export * from './WithFaceDetection'; -export * from './WithFaceExpressions'; -export * from './WithFaceLandmarks'; -export * from './WithAge'; -export * from './WithGender'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/factories/index.d.ts.map b/build/factories/index.d.ts.map deleted file mode 100644 index 8360b59..0000000 --- a/build/factories/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA"} \ No newline at end of file diff --git a/build/factories/index.js b/build/factories/index.js deleted file mode 100644 index 0143670..0000000 --- a/build/factories/index.js +++ /dev/null @@ -1,7 +0,0 @@ -export * from './WithFaceDescriptor'; -export * from './WithFaceDetection'; -export * from './WithFaceExpressions'; -export * from './WithFaceLandmarks'; -export * from './WithAge'; -export * from './WithGender'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/factories/index.js.map b/build/factories/index.js.map deleted file mode 100644 index 6e643a8..0000000 --- a/build/factories/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA"} \ No newline at end of file diff --git a/build/globalApi/ComposableTask.d.ts b/build/globalApi/ComposableTask.d.ts deleted file mode 100644 index 8ba8320..0000000 --- a/build/globalApi/ComposableTask.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare class ComposableTask { - then(onfulfilled: (value: T) => T | PromiseLike): Promise; - run(): Promise; -} -//# sourceMappingURL=ComposableTask.d.ts.map \ No newline at end of file diff --git a/build/globalApi/ComposableTask.d.ts.map b/build/globalApi/ComposableTask.d.ts.map deleted file mode 100644 index a235018..0000000 --- a/build/globalApi/ComposableTask.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ComposableTask.d.ts","sourceRoot":"","sources":["../../src/globalApi/ComposableTask.ts"],"names":[],"mappings":"AAAA,qBAAa,cAAc,CAAC,CAAC;IAEd,IAAI,CACf,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAC5C,OAAO,CAAC,CAAC,CAAC;IAIA,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC;CAG/B"} \ No newline at end of file diff --git a/build/globalApi/ComposableTask.js b/build/globalApi/ComposableTask.js deleted file mode 100644 index 7dde649..0000000 --- a/build/globalApi/ComposableTask.js +++ /dev/null @@ -1,9 +0,0 @@ -export class ComposableTask { - async then(onfulfilled) { - return onfulfilled(await this.run()); - } - async run() { - throw new Error('ComposableTask - run is not implemented'); - } -} -//# sourceMappingURL=ComposableTask.js.map \ No newline at end of file diff --git a/build/globalApi/ComposableTask.js.map b/build/globalApi/ComposableTask.js.map deleted file mode 100644 index 7190c1a..0000000 --- a/build/globalApi/ComposableTask.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ComposableTask.js","sourceRoot":"","sources":["../../src/globalApi/ComposableTask.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAc;IAElB,KAAK,CAAC,IAAI,CACf,WAA6C;QAE7C,OAAO,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IACtC,CAAC;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAC5D,CAAC;CACF"} \ No newline at end of file diff --git a/build/globalApi/ComputeFaceDescriptorsTasks.d.ts b/build/globalApi/ComputeFaceDescriptorsTasks.d.ts deleted file mode 100644 index 04a8815..0000000 --- a/build/globalApi/ComputeFaceDescriptorsTasks.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { TNetInput } from '../dom'; -import { WithFaceDescriptor } from '../factories/WithFaceDescriptor'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -import { WithFaceLandmarks } from '../factories/WithFaceLandmarks'; -import { ComposableTask } from './ComposableTask'; -import { PredictAllAgeAndGenderWithFaceAlignmentTask, PredictSingleAgeAndGenderWithFaceAlignmentTask } from './PredictAgeAndGenderTask'; -import { PredictAllFaceExpressionsWithFaceAlignmentTask, PredictSingleFaceExpressionsWithFaceAlignmentTask } from './PredictFaceExpressionsTask'; -export declare class ComputeFaceDescriptorsTaskBase extends ComposableTask { - protected parentTask: ComposableTask | Promise; - protected input: TNetInput; - constructor(parentTask: ComposableTask | Promise, input: TNetInput); -} -export declare class ComputeAllFaceDescriptorsTask>> extends ComputeFaceDescriptorsTaskBase[], TSource[]> { - run(): Promise[]>; - withFaceExpressions(): PredictAllFaceExpressionsWithFaceAlignmentTask>; - withAgeAndGender(): PredictAllAgeAndGenderWithFaceAlignmentTask>; -} -export declare class ComputeSingleFaceDescriptorTask>> extends ComputeFaceDescriptorsTaskBase | undefined, TSource | undefined> { - run(): Promise | undefined>; - withFaceExpressions(): PredictSingleFaceExpressionsWithFaceAlignmentTask>; - withAgeAndGender(): PredictSingleAgeAndGenderWithFaceAlignmentTask>; -} -//# sourceMappingURL=ComputeFaceDescriptorsTasks.d.ts.map \ No newline at end of file diff --git a/build/globalApi/ComputeFaceDescriptorsTasks.d.ts.map b/build/globalApi/ComputeFaceDescriptorsTasks.d.ts.map deleted file mode 100644 index 9b78f17..0000000 --- a/build/globalApi/ComputeFaceDescriptorsTasks.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ComputeFaceDescriptorsTasks.d.ts","sourceRoot":"","sources":["../../src/globalApi/ComputeFaceDescriptorsTasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAA4B,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EACL,2CAA2C,EAC3C,8CAA8C,EAC/C,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8CAA8C,EAC9C,iDAAiD,EAClD,MAAM,8BAA8B,CAAC;AAEtC,qBAAa,8BAA8B,CAAC,OAAO,EAAE,aAAa,CAAE,SAAQ,cAAc,CAAC,OAAO,CAAC;IAE/F,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5E,SAAS,CAAC,KAAK,EAAE,SAAS;gBADhB,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,EAClE,KAAK,EAAE,SAAS;CAI7B;AAED,qBAAa,6BAA6B,CACxC,OAAO,SAAS,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CACxD,SAAQ,8BAA8B,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;IAEnE,GAAG,IAAI,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;IAiB1D,mBAAmB;IAInB,gBAAgB;CAGjB;AAED,qBAAa,+BAA+B,CAC1C,OAAO,SAAS,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CACxD,SAAQ,8BAA8B,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAEvF,GAAG,IAAI,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAiBpE,mBAAmB;IAInB,gBAAgB;CAGjB"} \ No newline at end of file diff --git a/build/globalApi/ComputeFaceDescriptorsTasks.js b/build/globalApi/ComputeFaceDescriptorsTasks.js deleted file mode 100644 index 45b9e48..0000000 --- a/build/globalApi/ComputeFaceDescriptorsTasks.js +++ /dev/null @@ -1,43 +0,0 @@ -import { extendWithFaceDescriptor } from '../factories/WithFaceDescriptor'; -import { ComposableTask } from './ComposableTask'; -import { extractAllFacesAndComputeResults, extractSingleFaceAndComputeResult } from './extractFacesAndComputeResults'; -import { nets } from './nets'; -import { PredictAllAgeAndGenderWithFaceAlignmentTask, PredictSingleAgeAndGenderWithFaceAlignmentTask, } from './PredictAgeAndGenderTask'; -import { PredictAllFaceExpressionsWithFaceAlignmentTask, PredictSingleFaceExpressionsWithFaceAlignmentTask, } from './PredictFaceExpressionsTask'; -export class ComputeFaceDescriptorsTaskBase extends ComposableTask { - constructor(parentTask, input) { - super(); - this.parentTask = parentTask; - this.input = input; - } -} -export class ComputeAllFaceDescriptorsTask extends ComputeFaceDescriptorsTaskBase { - async run() { - const parentResults = await this.parentTask; - const descriptors = await extractAllFacesAndComputeResults(parentResults, this.input, faces => Promise.all(faces.map(face => nets.faceRecognitionNet.computeFaceDescriptor(face))), null, parentResult => parentResult.landmarks.align(null, { useDlibAlignment: true })); - return descriptors.map((descriptor, i) => extendWithFaceDescriptor(parentResults[i], descriptor)); - } - withFaceExpressions() { - return new PredictAllFaceExpressionsWithFaceAlignmentTask(this, this.input); - } - withAgeAndGender() { - return new PredictAllAgeAndGenderWithFaceAlignmentTask(this, this.input); - } -} -export class ComputeSingleFaceDescriptorTask extends ComputeFaceDescriptorsTaskBase { - async run() { - const parentResult = await this.parentTask; - if (!parentResult) { - return; - } - const descriptor = await extractSingleFaceAndComputeResult(parentResult, this.input, face => nets.faceRecognitionNet.computeFaceDescriptor(face), null, parentResult => parentResult.landmarks.align(null, { useDlibAlignment: true })); - return extendWithFaceDescriptor(parentResult, descriptor); - } - withFaceExpressions() { - return new PredictSingleFaceExpressionsWithFaceAlignmentTask(this, this.input); - } - withAgeAndGender() { - return new PredictSingleAgeAndGenderWithFaceAlignmentTask(this, this.input); - } -} -//# sourceMappingURL=ComputeFaceDescriptorsTasks.js.map \ No newline at end of file diff --git a/build/globalApi/ComputeFaceDescriptorsTasks.js.map b/build/globalApi/ComputeFaceDescriptorsTasks.js.map deleted file mode 100644 index 90b25c5..0000000 --- a/build/globalApi/ComputeFaceDescriptorsTasks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ComputeFaceDescriptorsTasks.js","sourceRoot":"","sources":["../../src/globalApi/ComputeFaceDescriptorsTasks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAsB,MAAM,iCAAiC,CAAC;AAG/F,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gCAAgC,EAAE,iCAAiC,EAAE,MAAM,iCAAiC,CAAC;AACtH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EACL,2CAA2C,EAC3C,8CAA8C,GAC/C,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8CAA8C,EAC9C,iDAAiD,GAClD,MAAM,8BAA8B,CAAC;AAEtC,MAAM,OAAO,8BAAuD,SAAQ,cAAuB;IACjG,YACY,UAAkE,EAClE,KAAgB;QAE1B,KAAK,EAAE,CAAA;QAHG,eAAU,GAAV,UAAU,CAAwD;QAClE,UAAK,GAAL,KAAK,CAAW;IAG5B,CAAC;CACF;AAED,MAAM,OAAO,6BAEX,SAAQ,8BAAwE;IAEzE,KAAK,CAAC,GAAG;QAEd,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAA;QAE3C,MAAM,WAAW,GAAG,MAAM,gCAAgC,CACxD,aAAa,EACb,IAAI,CAAC,KAAK,EACV,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CACpC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,IAAI,CAA0B,CAC7E,CAAC,EACF,IAAI,EACJ,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAC/E,CAAA;QAED,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAU,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAA;IAC5G,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,8CAA8C,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7E,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,2CAA2C,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1E,CAAC;CACF;AAED,MAAM,OAAO,+BAEX,SAAQ,8BAA4F;IAE7F,KAAK,CAAC,GAAG;QAEd,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAA;QAC1C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAM;SACP;QACD,MAAM,UAAU,GAAG,MAAM,iCAAiC,CACxD,YAAY,EACZ,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,IAAI,CAA0B,EACpF,IAAI,EACJ,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAC/E,CAAA;QAED,OAAO,wBAAwB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IAC3D,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,iDAAiD,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAChF,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,8CAA8C,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7E,CAAC;CACF"} \ No newline at end of file diff --git a/build/globalApi/DetectFaceLandmarksTasks.d.ts b/build/globalApi/DetectFaceLandmarksTasks.d.ts deleted file mode 100644 index 20203fb..0000000 --- a/build/globalApi/DetectFaceLandmarksTasks.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { FaceLandmarks68 } from '../classes/FaceLandmarks68'; -import { TNetInput } from '../dom'; -import { FaceLandmark68Net } from '../faceLandmarkNet/FaceLandmark68Net'; -import { FaceLandmark68TinyNet } from '../faceLandmarkNet/FaceLandmark68TinyNet'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -import { WithFaceLandmarks } from '../factories/WithFaceLandmarks'; -import { ComposableTask } from './ComposableTask'; -import { ComputeAllFaceDescriptorsTask, ComputeSingleFaceDescriptorTask } from './ComputeFaceDescriptorsTasks'; -import { PredictAllAgeAndGenderWithFaceAlignmentTask, PredictSingleAgeAndGenderWithFaceAlignmentTask } from './PredictAgeAndGenderTask'; -import { PredictAllFaceExpressionsWithFaceAlignmentTask, PredictSingleFaceExpressionsWithFaceAlignmentTask } from './PredictFaceExpressionsTask'; -export declare class DetectFaceLandmarksTaskBase extends ComposableTask { - protected parentTask: ComposableTask | Promise; - protected input: TNetInput; - protected useTinyLandmarkNet: boolean; - constructor(parentTask: ComposableTask | Promise, input: TNetInput, useTinyLandmarkNet: boolean); - protected get landmarkNet(): FaceLandmark68Net | FaceLandmark68TinyNet; -} -export declare class DetectAllFaceLandmarksTask> extends DetectFaceLandmarksTaskBase[], TSource[]> { - run(): Promise[]>; - withFaceExpressions(): PredictAllFaceExpressionsWithFaceAlignmentTask>; - withAgeAndGender(): PredictAllAgeAndGenderWithFaceAlignmentTask>; - withFaceDescriptors(): ComputeAllFaceDescriptorsTask>; -} -export declare class DetectSingleFaceLandmarksTask> extends DetectFaceLandmarksTaskBase | undefined, TSource | undefined> { - run(): Promise | undefined>; - withFaceExpressions(): PredictSingleFaceExpressionsWithFaceAlignmentTask>; - withAgeAndGender(): PredictSingleAgeAndGenderWithFaceAlignmentTask>; - withFaceDescriptor(): ComputeSingleFaceDescriptorTask>; -} -//# sourceMappingURL=DetectFaceLandmarksTasks.d.ts.map \ No newline at end of file diff --git a/build/globalApi/DetectFaceLandmarksTasks.d.ts.map b/build/globalApi/DetectFaceLandmarksTasks.d.ts.map deleted file mode 100644 index c9ede3e..0000000 --- a/build/globalApi/DetectFaceLandmarksTasks.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DetectFaceLandmarksTasks.d.ts","sourceRoot":"","sources":["../../src/globalApi/DetectFaceLandmarksTasks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAoC,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAA2B,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAC5F,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAE/G,OAAO,EACL,2CAA2C,EAC3C,8CAA8C,EAC/C,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,8CAA8C,EAC9C,iDAAiD,EAClD,MAAM,8BAA8B,CAAC;AAEtC,qBAAa,2BAA2B,CAAC,OAAO,EAAE,aAAa,CAAE,SAAQ,cAAc,CAAC,OAAO,CAAC;IAE5F,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5E,SAAS,CAAC,KAAK,EAAE,SAAS;IAC1B,SAAS,CAAC,kBAAkB,EAAE,OAAO;gBAF3B,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,EAClE,KAAK,EAAE,SAAS,EAChB,kBAAkB,EAAE,OAAO;IAKvC,SAAS,KAAK,WAAW,IAAI,iBAAiB,GAAG,qBAAqB,CAIrE;CACF;AAED,qBAAa,0BAA0B,CACrC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,CACrC,SAAQ,2BAA2B,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;IAE/D,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;IAoBzD,mBAAmB;IAInB,gBAAgB;IAIhB,mBAAmB;CAGpB;AAED,qBAAa,6BAA6B,CACxC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,CACpC,SAAQ,2BAA2B,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAEpF,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAmBnE,mBAAmB;IAInB,gBAAgB;IAIhB,kBAAkB;CAGnB"} \ No newline at end of file diff --git a/build/globalApi/DetectFaceLandmarksTasks.js b/build/globalApi/DetectFaceLandmarksTasks.js deleted file mode 100644 index 96c7a6f..0000000 --- a/build/globalApi/DetectFaceLandmarksTasks.js +++ /dev/null @@ -1,67 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { extractFaces, extractFaceTensors } from '../dom'; -import { extendWithFaceLandmarks } from '../factories/WithFaceLandmarks'; -import { ComposableTask } from './ComposableTask'; -import { ComputeAllFaceDescriptorsTask, ComputeSingleFaceDescriptorTask } from './ComputeFaceDescriptorsTasks'; -import { nets } from './nets'; -import { PredictAllAgeAndGenderWithFaceAlignmentTask, PredictSingleAgeAndGenderWithFaceAlignmentTask, } from './PredictAgeAndGenderTask'; -import { PredictAllFaceExpressionsWithFaceAlignmentTask, PredictSingleFaceExpressionsWithFaceAlignmentTask, } from './PredictFaceExpressionsTask'; -export class DetectFaceLandmarksTaskBase extends ComposableTask { - constructor(parentTask, input, useTinyLandmarkNet) { - super(); - this.parentTask = parentTask; - this.input = input; - this.useTinyLandmarkNet = useTinyLandmarkNet; - } - get landmarkNet() { - return this.useTinyLandmarkNet - ? nets.faceLandmark68TinyNet - : nets.faceLandmark68Net; - } -} -export class DetectAllFaceLandmarksTask extends DetectFaceLandmarksTaskBase { - async run() { - const parentResults = await this.parentTask; - const detections = parentResults.map(res => res.detection); - const faces = this.input instanceof tf.Tensor - ? await extractFaceTensors(this.input, detections) - : await extractFaces(this.input, detections); - const faceLandmarksByFace = await Promise.all(faces.map(face => this.landmarkNet.detectLandmarks(face))); - faces.forEach(f => f instanceof tf.Tensor && f.dispose()); - return parentResults.map((parentResult, i) => extendWithFaceLandmarks(parentResult, faceLandmarksByFace[i])); - } - withFaceExpressions() { - return new PredictAllFaceExpressionsWithFaceAlignmentTask(this, this.input); - } - withAgeAndGender() { - return new PredictAllAgeAndGenderWithFaceAlignmentTask(this, this.input); - } - withFaceDescriptors() { - return new ComputeAllFaceDescriptorsTask(this, this.input); - } -} -export class DetectSingleFaceLandmarksTask extends DetectFaceLandmarksTaskBase { - async run() { - const parentResult = await this.parentTask; - if (!parentResult) { - return; - } - const { detection } = parentResult; - const faces = this.input instanceof tf.Tensor - ? await extractFaceTensors(this.input, [detection]) - : await extractFaces(this.input, [detection]); - const landmarks = await this.landmarkNet.detectLandmarks(faces[0]); - faces.forEach(f => f instanceof tf.Tensor && f.dispose()); - return extendWithFaceLandmarks(parentResult, landmarks); - } - withFaceExpressions() { - return new PredictSingleFaceExpressionsWithFaceAlignmentTask(this, this.input); - } - withAgeAndGender() { - return new PredictSingleAgeAndGenderWithFaceAlignmentTask(this, this.input); - } - withFaceDescriptor() { - return new ComputeSingleFaceDescriptorTask(this, this.input); - } -} -//# sourceMappingURL=DetectFaceLandmarksTasks.js.map \ No newline at end of file diff --git a/build/globalApi/DetectFaceLandmarksTasks.js.map b/build/globalApi/DetectFaceLandmarksTasks.js.map deleted file mode 100644 index a749f82..0000000 --- a/build/globalApi/DetectFaceLandmarksTasks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DetectFaceLandmarksTasks.js","sourceRoot":"","sources":["../../src/globalApi/DetectFaceLandmarksTasks.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/globalApi/DetectFacesTasks.d.ts b/build/globalApi/DetectFacesTasks.d.ts deleted file mode 100644 index 97fd22f..0000000 --- a/build/globalApi/DetectFacesTasks.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -import { TNetInput } from '../dom'; -import { ComposableTask } from './ComposableTask'; -import { DetectAllFaceLandmarksTask, DetectSingleFaceLandmarksTask } from './DetectFaceLandmarksTasks'; -import { PredictAllAgeAndGenderTask, PredictSingleAgeAndGenderTask } from './PredictAgeAndGenderTask'; -import { PredictAllFaceExpressionsTask, PredictSingleFaceExpressionsTask } from './PredictFaceExpressionsTask'; -import { FaceDetectionOptions } from './types'; -export declare class DetectFacesTaskBase extends ComposableTask { - protected input: TNetInput; - protected options: FaceDetectionOptions; - constructor(input: TNetInput, options?: FaceDetectionOptions); -} -export declare class DetectAllFacesTask extends DetectFacesTaskBase { - run(): Promise; - private runAndExtendWithFaceDetections; - withFaceLandmarks(useTinyLandmarkNet?: boolean): DetectAllFaceLandmarksTask<{ - detection: FaceDetection; - }>; - withFaceExpressions(): PredictAllFaceExpressionsTask<{ - detection: FaceDetection; - }>; - withAgeAndGender(): PredictAllAgeAndGenderTask<{ - detection: FaceDetection; - }>; -} -export declare class DetectSingleFaceTask extends DetectFacesTaskBase { - run(): Promise; - private runAndExtendWithFaceDetection; - withFaceLandmarks(useTinyLandmarkNet?: boolean): DetectSingleFaceLandmarksTask<{ - detection: FaceDetection; - }>; - withFaceExpressions(): PredictSingleFaceExpressionsTask<{ - detection: FaceDetection; - }>; - withAgeAndGender(): PredictSingleAgeAndGenderTask<{ - detection: FaceDetection; - }>; -} -//# sourceMappingURL=DetectFacesTasks.d.ts.map \ No newline at end of file diff --git a/build/globalApi/DetectFacesTasks.d.ts.map b/build/globalApi/DetectFacesTasks.d.ts.map deleted file mode 100644 index 10a3650..0000000 --- a/build/globalApi/DetectFacesTasks.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DetectFacesTasks.d.ts","sourceRoot":"","sources":["../../src/globalApi/DetectFacesTasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAKnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAEvG,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AACtG,OAAO,EAAE,6BAA6B,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C,qBAAa,mBAAmB,CAAC,OAAO,CAAE,SAAQ,cAAc,CAAC,OAAO,CAAC;IAErE,SAAS,CAAC,KAAK,EAAE,SAAS;IAC1B,SAAS,CAAC,OAAO,EAAE,oBAAoB;gBAD7B,KAAK,EAAE,SAAS,EAChB,OAAO,GAAE,oBAAkD;CAIxE;AAED,qBAAa,kBAAmB,SAAQ,mBAAmB,CAAC,aAAa,EAAE,CAAC;IAE7D,GAAG,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAuB5C,OAAO,CAAC,8BAA8B;IAOtC,iBAAiB,CAAC,kBAAkB,GAAE,OAAe;;;IAQrD,mBAAmB;;;IAOnB,gBAAgB;;;CAMjB;AAED,qBAAa,oBAAqB,SAAQ,mBAAmB,CAAC,aAAa,GAAG,SAAS,CAAC;IAEzE,GAAG,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAWtD,OAAO,CAAC,6BAA6B;IAOrC,iBAAiB,CAAC,kBAAkB,GAAE,OAAe;;;IAQrD,mBAAmB;;;IAOnB,gBAAgB;;;CAMjB"} \ No newline at end of file diff --git a/build/globalApi/DetectFacesTasks.js b/build/globalApi/DetectFacesTasks.js deleted file mode 100644 index f10628e..0000000 --- a/build/globalApi/DetectFacesTasks.js +++ /dev/null @@ -1,75 +0,0 @@ -import { extendWithFaceDetection } from '../factories/WithFaceDetection'; -import { SsdMobilenetv1Options } from '../ssdMobilenetv1/SsdMobilenetv1Options'; -import { TinyFaceDetectorOptions } from '../tinyFaceDetector/TinyFaceDetectorOptions'; -import { TinyYolov2Options } from '../tinyYolov2'; -import { ComposableTask } from './ComposableTask'; -import { DetectAllFaceLandmarksTask, DetectSingleFaceLandmarksTask } from './DetectFaceLandmarksTasks'; -import { nets } from './nets'; -import { PredictAllAgeAndGenderTask, PredictSingleAgeAndGenderTask } from './PredictAgeAndGenderTask'; -import { PredictAllFaceExpressionsTask, PredictSingleFaceExpressionsTask } from './PredictFaceExpressionsTask'; -export class DetectFacesTaskBase extends ComposableTask { - constructor(input, options = new SsdMobilenetv1Options()) { - super(); - this.input = input; - this.options = options; - } -} -export class DetectAllFacesTask extends DetectFacesTaskBase { - async run() { - const { input, options } = this; - const faceDetectionFunction = options instanceof TinyFaceDetectorOptions - ? (input) => nets.tinyFaceDetector.locateFaces(input, options) - : (options instanceof SsdMobilenetv1Options - ? (input) => nets.ssdMobilenetv1.locateFaces(input, options) - : (options instanceof TinyYolov2Options - ? (input) => nets.tinyYolov2.locateFaces(input, options) - : null)); - if (!faceDetectionFunction) { - throw new Error('detectFaces - expected options to be instance of TinyFaceDetectorOptions | SsdMobilenetv1Options | MtcnnOptions | TinyYolov2Options'); - } - return faceDetectionFunction(input); - } - runAndExtendWithFaceDetections() { - return new Promise(async (res) => { - const detections = await this.run(); - return res(detections.map(detection => extendWithFaceDetection({}, detection))); - }); - } - withFaceLandmarks(useTinyLandmarkNet = false) { - return new DetectAllFaceLandmarksTask(this.runAndExtendWithFaceDetections(), this.input, useTinyLandmarkNet); - } - withFaceExpressions() { - return new PredictAllFaceExpressionsTask(this.runAndExtendWithFaceDetections(), this.input); - } - withAgeAndGender() { - return new PredictAllAgeAndGenderTask(this.runAndExtendWithFaceDetections(), this.input); - } -} -export class DetectSingleFaceTask extends DetectFacesTaskBase { - async run() { - const faceDetections = await new DetectAllFacesTask(this.input, this.options); - let faceDetectionWithHighestScore = faceDetections[0]; - faceDetections.forEach(faceDetection => { - if (faceDetection.score > faceDetectionWithHighestScore.score) { - faceDetectionWithHighestScore = faceDetection; - } - }); - return faceDetectionWithHighestScore; - } - runAndExtendWithFaceDetection() { - return new Promise(async (res) => { - const detection = await this.run(); - return res(detection ? extendWithFaceDetection({}, detection) : undefined); - }); - } - withFaceLandmarks(useTinyLandmarkNet = false) { - return new DetectSingleFaceLandmarksTask(this.runAndExtendWithFaceDetection(), this.input, useTinyLandmarkNet); - } - withFaceExpressions() { - return new PredictSingleFaceExpressionsTask(this.runAndExtendWithFaceDetection(), this.input); - } - withAgeAndGender() { - return new PredictSingleAgeAndGenderTask(this.runAndExtendWithFaceDetection(), this.input); - } -} -//# sourceMappingURL=DetectFacesTasks.js.map \ No newline at end of file diff --git a/build/globalApi/DetectFacesTasks.js.map b/build/globalApi/DetectFacesTasks.js.map deleted file mode 100644 index 73f1afe..0000000 --- a/build/globalApi/DetectFacesTasks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DetectFacesTasks.js","sourceRoot":"","sources":["../../src/globalApi/DetectFacesTasks.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/globalApi/FaceMatcher.d.ts b/build/globalApi/FaceMatcher.d.ts deleted file mode 100644 index 8b14409..0000000 --- a/build/globalApi/FaceMatcher.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { FaceMatch } from '../classes/FaceMatch'; -import { LabeledFaceDescriptors } from '../classes/LabeledFaceDescriptors'; -import { WithFaceDescriptor } from '../factories'; -export declare class FaceMatcher { - private _labeledDescriptors; - private _distanceThreshold; - constructor(inputs: LabeledFaceDescriptors | WithFaceDescriptor | Float32Array | Array | Float32Array>, distanceThreshold?: number); - get labeledDescriptors(): LabeledFaceDescriptors[]; - get distanceThreshold(): number; - computeMeanDistance(queryDescriptor: Float32Array, descriptors: Float32Array[]): number; - matchDescriptor(queryDescriptor: Float32Array): FaceMatch; - findBestMatch(queryDescriptor: Float32Array): FaceMatch; - toJSON(): any; - static fromJSON(json: any): FaceMatcher; -} -//# sourceMappingURL=FaceMatcher.d.ts.map \ No newline at end of file diff --git a/build/globalApi/FaceMatcher.d.ts.map b/build/globalApi/FaceMatcher.d.ts.map deleted file mode 100644 index 2b5016e..0000000 --- a/build/globalApi/FaceMatcher.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceMatcher.d.ts","sourceRoot":"","sources":["../../src/globalApi/FaceMatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,qBAAa,WAAW;IAEtB,OAAO,CAAC,mBAAmB,CAA0B;IACrD,OAAO,CAAC,kBAAkB,CAAQ;gBAGhC,MAAM,EAAE,sBAAsB,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,YAAY,GAAG,KAAK,CAAC,sBAAsB,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,EAChJ,iBAAiB,GAAE,MAAY;IA+BjC,IAAW,kBAAkB,IAAI,sBAAsB,EAAE,CAAoC;IAC7F,IAAW,iBAAiB,IAAI,MAAM,CAAmC;IAElE,mBAAmB,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM;IAOvF,eAAe,CAAC,eAAe,EAAE,YAAY,GAAG,SAAS;IASzD,aAAa,CAAC,eAAe,EAAE,YAAY,GAAG,SAAS;IAOvD,MAAM,IAAI,GAAG;WAON,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,WAAW;CAM/C"} \ No newline at end of file diff --git a/build/globalApi/FaceMatcher.js b/build/globalApi/FaceMatcher.js deleted file mode 100644 index b8e654b..0000000 --- a/build/globalApi/FaceMatcher.js +++ /dev/null @@ -1,57 +0,0 @@ -import { FaceMatch } from '../classes/FaceMatch'; -import { LabeledFaceDescriptors } from '../classes/LabeledFaceDescriptors'; -import { euclideanDistance } from '../euclideanDistance'; -export class FaceMatcher { - constructor(inputs, distanceThreshold = 0.6) { - this._distanceThreshold = distanceThreshold; - const inputArray = Array.isArray(inputs) ? inputs : [inputs]; - if (!inputArray.length) { - throw new Error(`FaceRecognizer.constructor - expected atleast one input`); - } - let count = 1; - const createUniqueLabel = () => `person ${count++}`; - this._labeledDescriptors = inputArray.map((desc) => { - if (desc instanceof LabeledFaceDescriptors) { - return desc; - } - if (desc instanceof Float32Array) { - return new LabeledFaceDescriptors(createUniqueLabel(), [desc]); - } - if (desc.descriptor && desc.descriptor instanceof Float32Array) { - return new LabeledFaceDescriptors(createUniqueLabel(), [desc.descriptor]); - } - throw new Error(`FaceRecognizer.constructor - expected inputs to be of type LabeledFaceDescriptors | WithFaceDescriptor | Float32Array | Array | Float32Array>`); - }); - } - get labeledDescriptors() { return this._labeledDescriptors; } - get distanceThreshold() { return this._distanceThreshold; } - computeMeanDistance(queryDescriptor, descriptors) { - return descriptors - .map(d => euclideanDistance(d, queryDescriptor)) - .reduce((d1, d2) => d1 + d2, 0) - / (descriptors.length || 1); - } - matchDescriptor(queryDescriptor) { - return this.labeledDescriptors - .map(({ descriptors, label }) => new FaceMatch(label, this.computeMeanDistance(queryDescriptor, descriptors))) - .reduce((best, curr) => best.distance < curr.distance ? best : curr); - } - findBestMatch(queryDescriptor) { - const bestMatch = this.matchDescriptor(queryDescriptor); - return bestMatch.distance < this.distanceThreshold - ? bestMatch - : new FaceMatch('unknown', bestMatch.distance); - } - toJSON() { - return { - distanceThreshold: this.distanceThreshold, - labeledDescriptors: this.labeledDescriptors.map((ld) => ld.toJSON()) - }; - } - static fromJSON(json) { - const labeledDescriptors = json.labeledDescriptors - .map((ld) => LabeledFaceDescriptors.fromJSON(ld)); - return new FaceMatcher(labeledDescriptors, json.distanceThreshold); - } -} -//# sourceMappingURL=FaceMatcher.js.map \ No newline at end of file diff --git a/build/globalApi/FaceMatcher.js.map b/build/globalApi/FaceMatcher.js.map deleted file mode 100644 index 867185e..0000000 --- a/build/globalApi/FaceMatcher.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FaceMatcher.js","sourceRoot":"","sources":["../../src/globalApi/FaceMatcher.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/globalApi/PredictAgeAndGenderTask.d.ts b/build/globalApi/PredictAgeAndGenderTask.d.ts deleted file mode 100644 index e1094d9..0000000 --- a/build/globalApi/PredictAgeAndGenderTask.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { TNetInput } from '../dom'; -import { WithAge } from '../factories/WithAge'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -import { WithFaceLandmarks } from '../factories/WithFaceLandmarks'; -import { WithGender } from '../factories/WithGender'; -import { ComposableTask } from './ComposableTask'; -import { ComputeAllFaceDescriptorsTask, ComputeSingleFaceDescriptorTask } from './ComputeFaceDescriptorsTasks'; -import { PredictAllFaceExpressionsTask, PredictAllFaceExpressionsWithFaceAlignmentTask, PredictSingleFaceExpressionsTask, PredictSingleFaceExpressionsWithFaceAlignmentTask } from './PredictFaceExpressionsTask'; -export declare class PredictAgeAndGenderTaskBase extends ComposableTask { - protected parentTask: ComposableTask | Promise; - protected input: TNetInput; - protected extractedFaces?: (tf.Tensor3D | HTMLCanvasElement)[] | undefined; - constructor(parentTask: ComposableTask | Promise, input: TNetInput, extractedFaces?: (tf.Tensor3D | HTMLCanvasElement)[] | undefined); -} -export declare class PredictAllAgeAndGenderTask> extends PredictAgeAndGenderTaskBase>[], TSource[]> { - run(): Promise>[]>; - withFaceExpressions(): PredictAllFaceExpressionsTask>>; -} -export declare class PredictSingleAgeAndGenderTask> extends PredictAgeAndGenderTaskBase> | undefined, TSource | undefined> { - run(): Promise> | undefined>; - withFaceExpressions(): PredictSingleFaceExpressionsTask>>; -} -export declare class PredictAllAgeAndGenderWithFaceAlignmentTask>> extends PredictAllAgeAndGenderTask { - withFaceExpressions(): PredictAllFaceExpressionsWithFaceAlignmentTask>>; - withFaceDescriptors(): ComputeAllFaceDescriptorsTask>>; -} -export declare class PredictSingleAgeAndGenderWithFaceAlignmentTask>> extends PredictSingleAgeAndGenderTask { - withFaceExpressions(): PredictSingleFaceExpressionsWithFaceAlignmentTask>>; - withFaceDescriptor(): ComputeSingleFaceDescriptorTask>>; -} -//# sourceMappingURL=PredictAgeAndGenderTask.d.ts.map \ No newline at end of file diff --git a/build/globalApi/PredictAgeAndGenderTask.d.ts.map b/build/globalApi/PredictAgeAndGenderTask.d.ts.map deleted file mode 100644 index 31f0c53..0000000 --- a/build/globalApi/PredictAgeAndGenderTask.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PredictAgeAndGenderTask.d.ts","sourceRoot":"","sources":["../../src/globalApi/PredictAgeAndGenderTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAiB,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAoB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAG/G,OAAO,EACL,6BAA6B,EAC7B,8CAA8C,EAC9C,gCAAgC,EAChC,iDAAiD,EAClD,MAAM,8BAA8B,CAAC;AAEtC,qBAAa,2BAA2B,CAAC,OAAO,EAAE,aAAa,CAAE,SAAQ,cAAc,CAAC,OAAO,CAAC;IAE5F,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5E,SAAS,CAAC,KAAK,EAAE,SAAS;IAC1B,SAAS,CAAC,cAAc,CAAC;gBAFf,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,EAClE,KAAK,EAAE,SAAS,EAChB,cAAc,CAAC,iDAAwC;CAIpE;AAED,qBAAa,0BAA0B,CACrC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,CACrC,SAAQ,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;IAEjE,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;IAmB3D,mBAAmB;CAGpB;AAED,qBAAa,6BAA6B,CACxC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,CACpC,SAAQ,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAEtF,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAiBrE,mBAAmB;CAGpB;AAED,qBAAa,2CAA2C,CACtD,OAAO,SAAS,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CACxD,SAAQ,0BAA0B,CAAC,OAAO,CAAC;IAE3C,mBAAmB;IAInB,mBAAmB;CAGpB;AAED,qBAAa,8CAA8C,CACzD,OAAO,SAAS,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CACxD,SAAQ,6BAA6B,CAAC,OAAO,CAAC;IAE9C,mBAAmB;IAInB,kBAAkB;CAGnB"} \ No newline at end of file diff --git a/build/globalApi/PredictAgeAndGenderTask.js b/build/globalApi/PredictAgeAndGenderTask.js deleted file mode 100644 index 5a17aa8..0000000 --- a/build/globalApi/PredictAgeAndGenderTask.js +++ /dev/null @@ -1,58 +0,0 @@ -import { extendWithAge } from '../factories/WithAge'; -import { extendWithGender } from '../factories/WithGender'; -import { ComposableTask } from './ComposableTask'; -import { ComputeAllFaceDescriptorsTask, ComputeSingleFaceDescriptorTask } from './ComputeFaceDescriptorsTasks'; -import { extractAllFacesAndComputeResults, extractSingleFaceAndComputeResult } from './extractFacesAndComputeResults'; -import { nets } from './nets'; -import { PredictAllFaceExpressionsTask, PredictAllFaceExpressionsWithFaceAlignmentTask, PredictSingleFaceExpressionsTask, PredictSingleFaceExpressionsWithFaceAlignmentTask, } from './PredictFaceExpressionsTask'; -export class PredictAgeAndGenderTaskBase extends ComposableTask { - constructor(parentTask, input, extractedFaces) { - super(); - this.parentTask = parentTask; - this.input = input; - this.extractedFaces = extractedFaces; - } -} -export class PredictAllAgeAndGenderTask extends PredictAgeAndGenderTaskBase { - async run() { - const parentResults = await this.parentTask; - const ageAndGenderByFace = await extractAllFacesAndComputeResults(parentResults, this.input, async (faces) => await Promise.all(faces.map(face => nets.ageGenderNet.predictAgeAndGender(face))), this.extractedFaces); - return parentResults.map((parentResult, i) => { - const { age, gender, genderProbability } = ageAndGenderByFace[i]; - return extendWithAge(extendWithGender(parentResult, gender, genderProbability), age); - }); - } - withFaceExpressions() { - return new PredictAllFaceExpressionsTask(this, this.input); - } -} -export class PredictSingleAgeAndGenderTask extends PredictAgeAndGenderTaskBase { - async run() { - const parentResult = await this.parentTask; - if (!parentResult) { - return; - } - const { age, gender, genderProbability } = await extractSingleFaceAndComputeResult(parentResult, this.input, face => nets.ageGenderNet.predictAgeAndGender(face), this.extractedFaces); - return extendWithAge(extendWithGender(parentResult, gender, genderProbability), age); - } - withFaceExpressions() { - return new PredictSingleFaceExpressionsTask(this, this.input); - } -} -export class PredictAllAgeAndGenderWithFaceAlignmentTask extends PredictAllAgeAndGenderTask { - withFaceExpressions() { - return new PredictAllFaceExpressionsWithFaceAlignmentTask(this, this.input); - } - withFaceDescriptors() { - return new ComputeAllFaceDescriptorsTask(this, this.input); - } -} -export class PredictSingleAgeAndGenderWithFaceAlignmentTask extends PredictSingleAgeAndGenderTask { - withFaceExpressions() { - return new PredictSingleFaceExpressionsWithFaceAlignmentTask(this, this.input); - } - withFaceDescriptor() { - return new ComputeSingleFaceDescriptorTask(this, this.input); - } -} -//# sourceMappingURL=PredictAgeAndGenderTask.js.map \ No newline at end of file diff --git a/build/globalApi/PredictAgeAndGenderTask.js.map b/build/globalApi/PredictAgeAndGenderTask.js.map deleted file mode 100644 index e18d85f..0000000 --- a/build/globalApi/PredictAgeAndGenderTask.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PredictAgeAndGenderTask.js","sourceRoot":"","sources":["../../src/globalApi/PredictAgeAndGenderTask.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/globalApi/PredictFaceExpressionsTask.d.ts b/build/globalApi/PredictFaceExpressionsTask.d.ts deleted file mode 100644 index d70b1be..0000000 --- a/build/globalApi/PredictFaceExpressionsTask.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { TNetInput } from '../dom'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -import { WithFaceExpressions } from '../factories/WithFaceExpressions'; -import { WithFaceLandmarks } from '../factories/WithFaceLandmarks'; -import { ComposableTask } from './ComposableTask'; -import { ComputeAllFaceDescriptorsTask, ComputeSingleFaceDescriptorTask } from './ComputeFaceDescriptorsTasks'; -import { PredictAllAgeAndGenderTask, PredictAllAgeAndGenderWithFaceAlignmentTask, PredictSingleAgeAndGenderTask, PredictSingleAgeAndGenderWithFaceAlignmentTask } from './PredictAgeAndGenderTask'; -export declare class PredictFaceExpressionsTaskBase extends ComposableTask { - protected parentTask: ComposableTask | Promise; - protected input: TNetInput; - protected extractedFaces?: (tf.Tensor3D | HTMLCanvasElement)[] | undefined; - constructor(parentTask: ComposableTask | Promise, input: TNetInput, extractedFaces?: (tf.Tensor3D | HTMLCanvasElement)[] | undefined); -} -export declare class PredictAllFaceExpressionsTask> extends PredictFaceExpressionsTaskBase[], TSource[]> { - run(): Promise[]>; - withAgeAndGender(): PredictAllAgeAndGenderTask>; -} -export declare class PredictSingleFaceExpressionsTask> extends PredictFaceExpressionsTaskBase | undefined, TSource | undefined> { - run(): Promise | undefined>; - withAgeAndGender(): PredictSingleAgeAndGenderTask>; -} -export declare class PredictAllFaceExpressionsWithFaceAlignmentTask>> extends PredictAllFaceExpressionsTask { - withAgeAndGender(): PredictAllAgeAndGenderWithFaceAlignmentTask>; - withFaceDescriptors(): ComputeAllFaceDescriptorsTask>; -} -export declare class PredictSingleFaceExpressionsWithFaceAlignmentTask>> extends PredictSingleFaceExpressionsTask { - withAgeAndGender(): PredictSingleAgeAndGenderWithFaceAlignmentTask>; - withFaceDescriptor(): ComputeSingleFaceDescriptorTask>; -} -//# sourceMappingURL=PredictFaceExpressionsTask.d.ts.map \ No newline at end of file diff --git a/build/globalApi/PredictFaceExpressionsTask.d.ts.map b/build/globalApi/PredictFaceExpressionsTask.d.ts.map deleted file mode 100644 index b6535ee..0000000 --- a/build/globalApi/PredictFaceExpressionsTask.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PredictFaceExpressionsTask.d.ts","sourceRoot":"","sources":["../../src/globalApi/PredictFaceExpressionsTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAA6B,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAG/G,OAAO,EACL,0BAA0B,EAC1B,2CAA2C,EAC3C,6BAA6B,EAC7B,8CAA8C,EAC/C,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,8BAA8B,CAAC,OAAO,EAAE,aAAa,CAAE,SAAQ,cAAc,CAAC,OAAO,CAAC;IAE/F,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5E,SAAS,CAAC,KAAK,EAAE,SAAS;IAC1B,SAAS,CAAC,cAAc,CAAC;gBAFf,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,EAClE,KAAK,EAAE,SAAS,EAChB,cAAc,CAAC,iDAAwC;CAIpE;AAED,qBAAa,6BAA6B,CACxC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,CACrC,SAAQ,8BAA8B,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;IAEpE,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;IAkB3D,gBAAgB;CAGjB;AAED,qBAAa,gCAAgC,CAC3C,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,CACpC,SAAQ,8BAA8B,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAEzF,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAiBrE,gBAAgB;CAGjB;AAED,qBAAa,8CAA8C,CACzD,OAAO,SAAS,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CACxD,SAAQ,6BAA6B,CAAC,OAAO,CAAC;IAE9C,gBAAgB;IAIhB,mBAAmB;CAGpB;AAED,qBAAa,iDAAiD,CAC5D,OAAO,SAAS,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CACxD,SAAQ,gCAAgC,CAAC,OAAO,CAAC;IAEjD,gBAAgB;IAIhB,kBAAkB;CAGnB"} \ No newline at end of file diff --git a/build/globalApi/PredictFaceExpressionsTask.js b/build/globalApi/PredictFaceExpressionsTask.js deleted file mode 100644 index 7c528af..0000000 --- a/build/globalApi/PredictFaceExpressionsTask.js +++ /dev/null @@ -1,54 +0,0 @@ -import { extendWithFaceExpressions } from '../factories/WithFaceExpressions'; -import { ComposableTask } from './ComposableTask'; -import { ComputeAllFaceDescriptorsTask, ComputeSingleFaceDescriptorTask } from './ComputeFaceDescriptorsTasks'; -import { extractAllFacesAndComputeResults, extractSingleFaceAndComputeResult } from './extractFacesAndComputeResults'; -import { nets } from './nets'; -import { PredictAllAgeAndGenderTask, PredictAllAgeAndGenderWithFaceAlignmentTask, PredictSingleAgeAndGenderTask, PredictSingleAgeAndGenderWithFaceAlignmentTask, } from './PredictAgeAndGenderTask'; -export class PredictFaceExpressionsTaskBase extends ComposableTask { - constructor(parentTask, input, extractedFaces) { - super(); - this.parentTask = parentTask; - this.input = input; - this.extractedFaces = extractedFaces; - } -} -export class PredictAllFaceExpressionsTask extends PredictFaceExpressionsTaskBase { - async run() { - const parentResults = await this.parentTask; - const faceExpressionsByFace = await extractAllFacesAndComputeResults(parentResults, this.input, async (faces) => await Promise.all(faces.map(face => nets.faceExpressionNet.predictExpressions(face))), this.extractedFaces); - return parentResults.map((parentResult, i) => extendWithFaceExpressions(parentResult, faceExpressionsByFace[i])); - } - withAgeAndGender() { - return new PredictAllAgeAndGenderTask(this, this.input); - } -} -export class PredictSingleFaceExpressionsTask extends PredictFaceExpressionsTaskBase { - async run() { - const parentResult = await this.parentTask; - if (!parentResult) { - return; - } - const faceExpressions = await extractSingleFaceAndComputeResult(parentResult, this.input, face => nets.faceExpressionNet.predictExpressions(face), this.extractedFaces); - return extendWithFaceExpressions(parentResult, faceExpressions); - } - withAgeAndGender() { - return new PredictSingleAgeAndGenderTask(this, this.input); - } -} -export class PredictAllFaceExpressionsWithFaceAlignmentTask extends PredictAllFaceExpressionsTask { - withAgeAndGender() { - return new PredictAllAgeAndGenderWithFaceAlignmentTask(this, this.input); - } - withFaceDescriptors() { - return new ComputeAllFaceDescriptorsTask(this, this.input); - } -} -export class PredictSingleFaceExpressionsWithFaceAlignmentTask extends PredictSingleFaceExpressionsTask { - withAgeAndGender() { - return new PredictSingleAgeAndGenderWithFaceAlignmentTask(this, this.input); - } - withFaceDescriptor() { - return new ComputeSingleFaceDescriptorTask(this, this.input); - } -} -//# sourceMappingURL=PredictFaceExpressionsTask.js.map \ No newline at end of file diff --git a/build/globalApi/PredictFaceExpressionsTask.js.map b/build/globalApi/PredictFaceExpressionsTask.js.map deleted file mode 100644 index eb91708..0000000 --- a/build/globalApi/PredictFaceExpressionsTask.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PredictFaceExpressionsTask.js","sourceRoot":"","sources":["../../src/globalApi/PredictFaceExpressionsTask.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,yBAAyB,EAAuB,MAAM,kCAAkC,CAAC;AAElG,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAC/G,OAAO,EAAE,gCAAgC,EAAE,iCAAiC,EAAE,MAAM,iCAAiC,CAAC;AACtH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EACL,0BAA0B,EAC1B,2CAA2C,EAC3C,6BAA6B,EAC7B,8CAA8C,GAC/C,MAAM,2BAA2B,CAAC;AAEnC,MAAM,OAAO,8BAAuD,SAAQ,cAAuB;IACjG,YACY,UAAkE,EAClE,KAAgB,EAChB,cAAuD;QAEjE,KAAK,EAAE,CAAA;QAJG,eAAU,GAAV,UAAU,CAAwD;QAClE,UAAK,GAAL,KAAK,CAAW;QAChB,mBAAc,GAAd,cAAc,CAAyC;IAGnE,CAAC;CACF;AAED,MAAM,OAAO,6BAEX,SAAQ,8BAAyE;IAE1E,KAAK,CAAC,GAAG;QAEd,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAA;QAE3C,MAAM,qBAAqB,GAAG,MAAM,gCAAgC,CAClE,aAAa,EACb,IAAI,CAAC,KAAK,EACV,KAAK,EAAC,KAAK,EAAC,EAAE,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAA6B,CACpF,CAAC,EACF,IAAI,CAAC,cAAc,CACpB,CAAA;QAED,OAAO,aAAa,CAAC,GAAG,CACtB,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC,yBAAyB,CAAU,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAChG,CAAA;IACH,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,0BAA0B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACzD,CAAC;CACF;AAED,MAAM,OAAO,gCAEV,SAAQ,8BAA6F;IAE/F,KAAK,CAAC,GAAG;QAEd,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAA;QAC1C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAM;SACP;QAED,MAAM,eAAe,GAAG,MAAM,iCAAiC,CAC7D,YAAY,EACZ,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAA6B,EACnF,IAAI,CAAC,cAAc,CACpB,CAAA;QAED,OAAO,yBAAyB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAA;IACjE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC;CACF;AAED,MAAM,OAAO,8CAEX,SAAQ,6BAAsC;IAE9C,gBAAgB;QACd,OAAO,IAAI,2CAA2C,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1E,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC;CACF;AAED,MAAM,OAAO,iDAEX,SAAQ,gCAAyC;IAEjD,gBAAgB;QACd,OAAO,IAAI,8CAA8C,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7E,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,+BAA+B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC9D,CAAC;CACF"} \ No newline at end of file diff --git a/build/globalApi/allFaces.d.ts b/build/globalApi/allFaces.d.ts deleted file mode 100644 index 9673e4e..0000000 --- a/build/globalApi/allFaces.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TNetInput } from '../dom'; -import { WithFaceDescriptor, WithFaceDetection, WithFaceLandmarks } from '../factories'; -import { ITinyYolov2Options } from '../tinyYolov2'; -export declare function allFacesSsdMobilenetv1(input: TNetInput, minConfidence?: number): Promise>>[]>; -export declare function allFacesTinyYolov2(input: TNetInput, forwardParams?: ITinyYolov2Options): Promise>>[]>; -export declare const allFaces: typeof allFacesSsdMobilenetv1; -//# sourceMappingURL=allFaces.d.ts.map \ No newline at end of file diff --git a/build/globalApi/allFaces.d.ts.map b/build/globalApi/allFaces.d.ts.map deleted file mode 100644 index 537c791..0000000 --- a/build/globalApi/allFaces.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"allFaces.d.ts","sourceRoot":"","sources":["../../src/globalApi/allFaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAExF,OAAO,EAAE,kBAAkB,EAAqB,MAAM,eAAe,CAAC;AAKtE,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,SAAS,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAKzE;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,SAAS,EAChB,aAAa,GAAE,kBAAuB,GACrC,OAAO,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAKzE;AAED,eAAO,MAAM,QAAQ,+BAAyB,CAAA"} \ No newline at end of file diff --git a/build/globalApi/allFaces.js b/build/globalApi/allFaces.js deleted file mode 100644 index 556c384..0000000 --- a/build/globalApi/allFaces.js +++ /dev/null @@ -1,18 +0,0 @@ -import { SsdMobilenetv1Options } from '../ssdMobilenetv1'; -import { TinyYolov2Options } from '../tinyYolov2'; -import { detectAllFaces } from './detectFaces'; -// export allFaces API for backward compatibility -export async function allFacesSsdMobilenetv1(input, minConfidence) { - console.warn('allFacesSsdMobilenetv1 is deprecated and will be removed soon, use the high level api instead'); - return await detectAllFaces(input, new SsdMobilenetv1Options(minConfidence ? { minConfidence } : {})) - .withFaceLandmarks() - .withFaceDescriptors(); -} -export async function allFacesTinyYolov2(input, forwardParams = {}) { - console.warn('allFacesTinyYolov2 is deprecated and will be removed soon, use the high level api instead'); - return await detectAllFaces(input, new TinyYolov2Options(forwardParams)) - .withFaceLandmarks() - .withFaceDescriptors(); -} -export const allFaces = allFacesSsdMobilenetv1; -//# sourceMappingURL=allFaces.js.map \ No newline at end of file diff --git a/build/globalApi/allFaces.js.map b/build/globalApi/allFaces.js.map deleted file mode 100644 index 9b4b3fc..0000000 --- a/build/globalApi/allFaces.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"allFaces.js","sourceRoot":"","sources":["../../src/globalApi/allFaces.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAsB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,iDAAiD;AAEjD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAAgB,EAChB,aAAsB;IAEtB,OAAO,CAAC,IAAI,CAAC,+FAA+F,CAAC,CAAA;IAC7G,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,IAAI,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAClG,iBAAiB,EAAE;SACnB,mBAAmB,EAAE,CAAA;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAgB,EAChB,gBAAoC,EAAE;IAEtC,OAAO,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAA;IACzG,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,IAAI,iBAAiB,CAAC,aAAa,CAAC,CAAC;SACrE,iBAAiB,EAAE;SACnB,mBAAmB,EAAE,CAAA;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,sBAAsB,CAAA"} \ No newline at end of file diff --git a/build/globalApi/detectFaces.d.ts b/build/globalApi/detectFaces.d.ts deleted file mode 100644 index 1723de0..0000000 --- a/build/globalApi/detectFaces.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { TNetInput } from '../dom'; -import { DetectAllFacesTask, DetectSingleFaceTask } from './DetectFacesTasks'; -import { FaceDetectionOptions } from './types'; -export declare function detectSingleFace(input: TNetInput, options?: FaceDetectionOptions): DetectSingleFaceTask; -export declare function detectAllFaces(input: TNetInput, options?: FaceDetectionOptions): DetectAllFacesTask; -//# sourceMappingURL=detectFaces.d.ts.map \ No newline at end of file diff --git a/build/globalApi/detectFaces.d.ts.map b/build/globalApi/detectFaces.d.ts.map deleted file mode 100644 index 0e3ef1e..0000000 --- a/build/globalApi/detectFaces.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"detectFaces.d.ts","sourceRoot":"","sources":["../../src/globalApi/detectFaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,SAAS,EAChB,OAAO,GAAE,oBAAkD,GAC1D,oBAAoB,CAEtB;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,EAChB,OAAO,GAAE,oBAAkD,GAC1D,kBAAkB,CAEpB"} \ No newline at end of file diff --git a/build/globalApi/detectFaces.js b/build/globalApi/detectFaces.js deleted file mode 100644 index 94ae9c2..0000000 --- a/build/globalApi/detectFaces.js +++ /dev/null @@ -1,9 +0,0 @@ -import { SsdMobilenetv1Options } from '../ssdMobilenetv1/SsdMobilenetv1Options'; -import { DetectAllFacesTask, DetectSingleFaceTask } from './DetectFacesTasks'; -export function detectSingleFace(input, options = new SsdMobilenetv1Options()) { - return new DetectSingleFaceTask(input, options); -} -export function detectAllFaces(input, options = new SsdMobilenetv1Options()) { - return new DetectAllFacesTask(input, options); -} -//# sourceMappingURL=detectFaces.js.map \ No newline at end of file diff --git a/build/globalApi/detectFaces.js.map b/build/globalApi/detectFaces.js.map deleted file mode 100644 index ebee87d..0000000 --- a/build/globalApi/detectFaces.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"detectFaces.js","sourceRoot":"","sources":["../../src/globalApi/detectFaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG9E,MAAM,UAAU,gBAAgB,CAC9B,KAAgB,EAChB,UAAgC,IAAI,qBAAqB,EAAE;IAE3D,OAAO,IAAI,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AACjD,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAgB,EAChB,UAAgC,IAAI,qBAAqB,EAAE;IAE3D,OAAO,IAAI,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAC/C,CAAC"} \ No newline at end of file diff --git a/build/globalApi/extractFacesAndComputeResults.d.ts b/build/globalApi/extractFacesAndComputeResults.d.ts deleted file mode 100644 index cb51276..0000000 --- a/build/globalApi/extractFacesAndComputeResults.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FaceDetection } from '../classes/FaceDetection'; -import { TNetInput } from '../dom'; -import { WithFaceDetection } from '../factories/WithFaceDetection'; -import { WithFaceLandmarks } from '../factories/WithFaceLandmarks'; -export declare function extractAllFacesAndComputeResults, TResult>(parentResults: TSource[], input: TNetInput, computeResults: (faces: Array) => Promise, extractedFaces?: Array | null, getRectForAlignment?: (parentResult: WithFaceLandmarks) => FaceDetection): Promise; -export declare function extractSingleFaceAndComputeResult, TResult>(parentResult: TSource, input: TNetInput, computeResult: (face: HTMLCanvasElement | tf.Tensor3D) => Promise, extractedFaces?: Array | null, getRectForAlignment?: (parentResult: WithFaceLandmarks) => FaceDetection): Promise; -//# sourceMappingURL=extractFacesAndComputeResults.d.ts.map \ No newline at end of file diff --git a/build/globalApi/extractFacesAndComputeResults.d.ts.map b/build/globalApi/extractFacesAndComputeResults.d.ts.map deleted file mode 100644 index 2a3a51b..0000000 --- a/build/globalApi/extractFacesAndComputeResults.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFacesAndComputeResults.d.ts","sourceRoot":"","sources":["../../src/globalApi/extractFacesAndComputeResults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAoC,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAuB,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExF,wBAAsB,gCAAgC,CAAC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,EAAE,OAAO,EACnG,aAAa,EAAE,OAAO,EAAE,EACxB,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,EACnF,cAAc,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,IAAI,EAC9D,mBAAmB,GAAE,CAAC,YAAY,EAAE,iBAAiB,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,aAAgD,oBAkBzH;AAED,wBAAsB,iCAAiC,CAAC,OAAO,SAAS,iBAAiB,CAAC,EAAE,CAAC,EAAE,OAAO,EACpG,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,CAAC,IAAI,EAAE,iBAAiB,GAAG,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,EAC1E,cAAc,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,IAAI,EAC9D,mBAAmB,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,aAAa,oBASvF"} \ No newline at end of file diff --git a/build/globalApi/extractFacesAndComputeResults.js b/build/globalApi/extractFacesAndComputeResults.js deleted file mode 100644 index eb045d4..0000000 --- a/build/globalApi/extractFacesAndComputeResults.js +++ /dev/null @@ -1,18 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { extractFaces, extractFaceTensors } from '../dom'; -import { isWithFaceLandmarks } from '../factories/WithFaceLandmarks'; -export async function extractAllFacesAndComputeResults(parentResults, input, computeResults, extractedFaces, getRectForAlignment = ({ alignedRect }) => alignedRect) { - const faceBoxes = parentResults.map(parentResult => isWithFaceLandmarks(parentResult) - ? getRectForAlignment(parentResult) - : parentResult.detection); - const faces = extractedFaces || (input instanceof tf.Tensor - ? await extractFaceTensors(input, faceBoxes) - : await extractFaces(input, faceBoxes)); - const results = await computeResults(faces); - faces.forEach(f => f instanceof tf.Tensor && f.dispose()); - return results; -} -export async function extractSingleFaceAndComputeResult(parentResult, input, computeResult, extractedFaces, getRectForAlignment) { - return extractAllFacesAndComputeResults([parentResult], input, async (faces) => computeResult(faces[0]), extractedFaces, getRectForAlignment); -} -//# sourceMappingURL=extractFacesAndComputeResults.js.map \ No newline at end of file diff --git a/build/globalApi/extractFacesAndComputeResults.js.map b/build/globalApi/extractFacesAndComputeResults.js.map deleted file mode 100644 index 533fa02..0000000 --- a/build/globalApi/extractFacesAndComputeResults.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractFacesAndComputeResults.js","sourceRoot":"","sources":["../../src/globalApi/extractFacesAndComputeResults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAa,MAAM,QAAQ,CAAC;AAErE,OAAO,EAAE,mBAAmB,EAAqB,MAAM,gCAAgC,CAAC;AAExF,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,aAAwB,EACxB,KAAgB,EAChB,cAAmF,EACnF,cAA8D,EAC9D,sBAAwF,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW;IAExH,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CACjD,mBAAmB,CAAC,YAAY,CAAC;QAC/B,CAAC,CAAC,mBAAmB,CAAC,YAAY,CAAC;QACnC,CAAC,CAAC,YAAY,CAAC,SAAS,CAC3B,CAAA;IACD,MAAM,KAAK,GAA2C,cAAc,IAAI,CACtE,KAAK,YAAY,EAAE,CAAC,MAAM;QACxB,CAAC,CAAC,MAAM,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC;QAC5C,CAAC,CAAC,MAAM,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CACzC,CAAA;IAED,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,CAAA;IAE3C,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IAEzD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,YAAqB,EACrB,KAAgB,EAChB,aAA0E,EAC1E,cAA8D,EAC9D,mBAAsF;IAEtF,OAAO,gCAAgC,CACrC,CAAC,YAAY,CAAC,EACd,KAAK,EACL,KAAK,EAAC,KAAK,EAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACtC,cAAc,EACd,mBAAmB,CACpB,CAAA;AACH,CAAC"} \ No newline at end of file diff --git a/build/globalApi/index.d.ts b/build/globalApi/index.d.ts deleted file mode 100644 index 120830e..0000000 --- a/build/globalApi/index.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export * from './allFaces'; -export * from './ComposableTask'; -export * from './ComputeFaceDescriptorsTasks'; -export * from './detectFaces'; -export * from './DetectFacesTasks'; -export * from './DetectFaceLandmarksTasks'; -export * from './FaceMatcher'; -export * from './nets'; -export * from './types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/globalApi/index.d.ts.map b/build/globalApi/index.d.ts.map deleted file mode 100644 index 1afcf07..0000000 --- a/build/globalApi/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/globalApi/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/globalApi/index.js b/build/globalApi/index.js deleted file mode 100644 index e9c24a1..0000000 --- a/build/globalApi/index.js +++ /dev/null @@ -1,10 +0,0 @@ -export * from './allFaces'; -export * from './ComposableTask'; -export * from './ComputeFaceDescriptorsTasks'; -export * from './detectFaces'; -export * from './DetectFacesTasks'; -export * from './DetectFaceLandmarksTasks'; -export * from './FaceMatcher'; -export * from './nets'; -export * from './types'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/globalApi/index.js.map b/build/globalApi/index.js.map deleted file mode 100644 index 0de97b9..0000000 --- a/build/globalApi/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/globalApi/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA"} \ No newline at end of file diff --git a/build/globalApi/nets.d.ts b/build/globalApi/nets.d.ts deleted file mode 100644 index d1367d3..0000000 --- a/build/globalApi/nets.d.ts +++ /dev/null @@ -1,106 +0,0 @@ -import { AgeGenderNet } from '../ageGenderNet/AgeGenderNet'; -import { AgeAndGenderPrediction } from '../ageGenderNet/types'; -import { FaceDetection } from '../classes/FaceDetection'; -import { FaceLandmarks68 } from '../classes/FaceLandmarks68'; -import { TNetInput } from '../dom'; -import { FaceExpressionNet } from '../faceExpressionNet/FaceExpressionNet'; -import { FaceExpressions } from '../faceExpressionNet/FaceExpressions'; -import { FaceLandmark68Net } from '../faceLandmarkNet/FaceLandmark68Net'; -import { FaceLandmark68TinyNet } from '../faceLandmarkNet/FaceLandmark68TinyNet'; -import { FaceRecognitionNet } from '../faceRecognitionNet/FaceRecognitionNet'; -import { SsdMobilenetv1 } from '../ssdMobilenetv1/SsdMobilenetv1'; -import { SsdMobilenetv1Options } from '../ssdMobilenetv1/SsdMobilenetv1Options'; -import { TinyFaceDetector } from '../tinyFaceDetector/TinyFaceDetector'; -import { TinyFaceDetectorOptions } from '../tinyFaceDetector/TinyFaceDetectorOptions'; -import { ITinyYolov2Options, TinyYolov2 } from '../tinyYolov2'; -export declare const nets: { - ssdMobilenetv1: SsdMobilenetv1; - tinyFaceDetector: TinyFaceDetector; - tinyYolov2: TinyYolov2; - faceLandmark68Net: FaceLandmark68Net; - faceLandmark68TinyNet: FaceLandmark68TinyNet; - faceRecognitionNet: FaceRecognitionNet; - faceExpressionNet: FaceExpressionNet; - ageGenderNet: AgeGenderNet; -}; -/** - * Attempts to detect all faces in an image using SSD Mobilenetv1 Network. - * - * @param input The input image. - * @param options (optional, default: see SsdMobilenetv1Options constructor for default parameters). - * @returns Bounding box of each face with score. - */ -export declare const ssdMobilenetv1: (input: TNetInput, options: SsdMobilenetv1Options) => Promise; -/** - * Attempts to detect all faces in an image using the Tiny Face Detector. - * - * @param input The input image. - * @param options (optional, default: see TinyFaceDetectorOptions constructor for default parameters). - * @returns Bounding box of each face with score. - */ -export declare const tinyFaceDetector: (input: TNetInput, options: TinyFaceDetectorOptions) => Promise; -/** - * Attempts to detect all faces in an image using the Tiny Yolov2 Network. - * - * @param input The input image. - * @param options (optional, default: see TinyYolov2Options constructor for default parameters). - * @returns Bounding box of each face with score. - */ -export declare const tinyYolov2: (input: TNetInput, options: ITinyYolov2Options) => Promise; -/** - * Detects the 68 point face landmark positions of the face shown in an image. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns 68 point face landmarks or array thereof in case of batch input. - */ -export declare const detectFaceLandmarks: (input: TNetInput) => Promise; -/** - * Detects the 68 point face landmark positions of the face shown in an image - * using a tinier version of the 68 point face landmark model, which is slightly - * faster at inference, but also slightly less accurate. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns 68 point face landmarks or array thereof in case of batch input. - */ -export declare const detectFaceLandmarksTiny: (input: TNetInput) => Promise; -/** - * Computes a 128 entry vector (face descriptor / face embeddings) from the face shown in an image, - * which uniquely represents the features of that persons face. The computed face descriptor can - * be used to measure the similarity between faces, by computing the euclidean distance of two - * face descriptors. - * - * @param inputs The face image extracted from the aligned bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns Face descriptor with 128 entries or array thereof in case of batch input. - */ -export declare const computeFaceDescriptor: (input: TNetInput) => Promise; -/** - * Recognizes the facial expressions from a face image. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns Facial expressions with corresponding probabilities or array thereof in case of batch input. - */ -export declare const recognizeFaceExpressions: (input: TNetInput) => Promise; -/** - * Predicts age and gender from a face image. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns Predictions with age, gender and gender probability or array thereof in case of batch input. - */ -export declare const predictAgeAndGender: (input: TNetInput) => Promise; -export declare const loadSsdMobilenetv1Model: (url: string) => Promise; -export declare const loadTinyFaceDetectorModel: (url: string) => Promise; -export declare const loadTinyYolov2Model: (url: string) => Promise; -export declare const loadFaceLandmarkModel: (url: string) => Promise; -export declare const loadFaceLandmarkTinyModel: (url: string) => Promise; -export declare const loadFaceRecognitionModel: (url: string) => Promise; -export declare const loadFaceExpressionModel: (url: string) => Promise; -export declare const loadAgeGenderModel: (url: string) => Promise; -export declare const loadFaceDetectionModel: (url: string) => Promise; -export declare const locateFaces: (input: TNetInput, options: SsdMobilenetv1Options) => Promise; -export declare const detectLandmarks: (input: TNetInput) => Promise; -//# sourceMappingURL=nets.d.ts.map \ No newline at end of file diff --git a/build/globalApi/nets.d.ts.map b/build/globalApi/nets.d.ts.map deleted file mode 100644 index c3147a4..0000000 --- a/build/globalApi/nets.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"nets.d.ts","sourceRoot":"","sources":["../../src/globalApi/nets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAG9E,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/D,eAAO,MAAM,IAAI;;;;;;;;;CAShB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,UAAW,SAAS,WAAW,qBAAqB,KAAG,QAAQ,aAAa,EAAE,CACxD,CAAA;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,UAAW,SAAS,WAAW,uBAAuB,KAAG,QAAQ,aAAa,EAAE,CAC1D,CAAA;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,UAAW,SAAS,WAAW,kBAAkB,KAAG,QAAQ,aAAa,EAAE,CACrD,CAAA;AAE7C;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,UAAW,SAAS,KAAG,QAAQ,eAAe,GAAG,eAAe,EAAE,CACnD,CAAA;AAE/C;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,UAAW,SAAS,KAAG,QAAQ,eAAe,GAAG,eAAe,EAAE,CACnD,CAAA;AAEnD;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,UAAW,SAAS,KAAG,QAAQ,YAAY,GAAG,YAAY,EAAE,CACxC,CAAA;AAGtD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,UAAW,SAAS,KAAG,QAAQ,eAAe,GAAG,eAAe,EAAE,CACrD,CAAA;AAElD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,UAAW,SAAS,KAAG,QAAQ,sBAAsB,GAAG,sBAAsB,EAAE,CAClE,CAAA;AAE9C,eAAO,MAAM,uBAAuB,QAAS,MAAM,kBAAkC,CAAA;AACrF,eAAO,MAAM,yBAAyB,QAAS,MAAM,kBAAoC,CAAA;AACzF,eAAO,MAAM,mBAAmB,QAAS,MAAM,kBAA8B,CAAA;AAC7E,eAAO,MAAM,qBAAqB,QAAS,MAAM,kBAAqC,CAAA;AACtF,eAAO,MAAM,yBAAyB,QAAS,MAAM,kBAAyC,CAAA;AAC9F,eAAO,MAAM,wBAAwB,QAAS,MAAM,kBAAsC,CAAA;AAC1F,eAAO,MAAM,uBAAuB,QAAS,MAAM,kBAAqC,CAAA;AACxF,eAAO,MAAM,kBAAkB,QAAS,MAAM,kBAAgC,CAAA;AAG9E,eAAO,MAAM,sBAAsB,QAVU,MAAM,kBAUU,CAAA;AAC7D,eAAO,MAAM,WAAW,UA1Fc,SAAS,WAAW,qBAAqB,KAAG,QAAQ,aAAa,EAAE,CA0FhE,CAAA;AACzC,eAAO,MAAM,eAAe,UA7De,SAAS,KAAG,QAAQ,eAAe,GAAG,eAAe,EAAE,CA6DhD,CAAA"} \ No newline at end of file diff --git a/build/globalApi/nets.js b/build/globalApi/nets.js deleted file mode 100644 index c39b26b..0000000 --- a/build/globalApi/nets.js +++ /dev/null @@ -1,100 +0,0 @@ -import { AgeGenderNet } from '../ageGenderNet/AgeGenderNet'; -import { FaceExpressionNet } from '../faceExpressionNet/FaceExpressionNet'; -import { FaceLandmark68Net } from '../faceLandmarkNet/FaceLandmark68Net'; -import { FaceLandmark68TinyNet } from '../faceLandmarkNet/FaceLandmark68TinyNet'; -import { FaceRecognitionNet } from '../faceRecognitionNet/FaceRecognitionNet'; -import { SsdMobilenetv1 } from '../ssdMobilenetv1/SsdMobilenetv1'; -import { TinyFaceDetector } from '../tinyFaceDetector/TinyFaceDetector'; -import { TinyYolov2 } from '../tinyYolov2'; -export const nets = { - ssdMobilenetv1: new SsdMobilenetv1(), - tinyFaceDetector: new TinyFaceDetector(), - tinyYolov2: new TinyYolov2(), - faceLandmark68Net: new FaceLandmark68Net(), - faceLandmark68TinyNet: new FaceLandmark68TinyNet(), - faceRecognitionNet: new FaceRecognitionNet(), - faceExpressionNet: new FaceExpressionNet(), - ageGenderNet: new AgeGenderNet() -}; -/** - * Attempts to detect all faces in an image using SSD Mobilenetv1 Network. - * - * @param input The input image. - * @param options (optional, default: see SsdMobilenetv1Options constructor for default parameters). - * @returns Bounding box of each face with score. - */ -export const ssdMobilenetv1 = (input, options) => nets.ssdMobilenetv1.locateFaces(input, options); -/** - * Attempts to detect all faces in an image using the Tiny Face Detector. - * - * @param input The input image. - * @param options (optional, default: see TinyFaceDetectorOptions constructor for default parameters). - * @returns Bounding box of each face with score. - */ -export const tinyFaceDetector = (input, options) => nets.tinyFaceDetector.locateFaces(input, options); -/** - * Attempts to detect all faces in an image using the Tiny Yolov2 Network. - * - * @param input The input image. - * @param options (optional, default: see TinyYolov2Options constructor for default parameters). - * @returns Bounding box of each face with score. - */ -export const tinyYolov2 = (input, options) => nets.tinyYolov2.locateFaces(input, options); -/** - * Detects the 68 point face landmark positions of the face shown in an image. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns 68 point face landmarks or array thereof in case of batch input. - */ -export const detectFaceLandmarks = (input) => nets.faceLandmark68Net.detectLandmarks(input); -/** - * Detects the 68 point face landmark positions of the face shown in an image - * using a tinier version of the 68 point face landmark model, which is slightly - * faster at inference, but also slightly less accurate. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns 68 point face landmarks or array thereof in case of batch input. - */ -export const detectFaceLandmarksTiny = (input) => nets.faceLandmark68TinyNet.detectLandmarks(input); -/** - * Computes a 128 entry vector (face descriptor / face embeddings) from the face shown in an image, - * which uniquely represents the features of that persons face. The computed face descriptor can - * be used to measure the similarity between faces, by computing the euclidean distance of two - * face descriptors. - * - * @param inputs The face image extracted from the aligned bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns Face descriptor with 128 entries or array thereof in case of batch input. - */ -export const computeFaceDescriptor = (input) => nets.faceRecognitionNet.computeFaceDescriptor(input); -/** - * Recognizes the facial expressions from a face image. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns Facial expressions with corresponding probabilities or array thereof in case of batch input. - */ -export const recognizeFaceExpressions = (input) => nets.faceExpressionNet.predictExpressions(input); -/** - * Predicts age and gender from a face image. - * - * @param inputs The face image extracted from the bounding box of a face. Can - * also be an array of input images, which will be batch processed. - * @returns Predictions with age, gender and gender probability or array thereof in case of batch input. - */ -export const predictAgeAndGender = (input) => nets.ageGenderNet.predictAgeAndGender(input); -export const loadSsdMobilenetv1Model = (url) => nets.ssdMobilenetv1.load(url); -export const loadTinyFaceDetectorModel = (url) => nets.tinyFaceDetector.load(url); -export const loadTinyYolov2Model = (url) => nets.tinyYolov2.load(url); -export const loadFaceLandmarkModel = (url) => nets.faceLandmark68Net.load(url); -export const loadFaceLandmarkTinyModel = (url) => nets.faceLandmark68TinyNet.load(url); -export const loadFaceRecognitionModel = (url) => nets.faceRecognitionNet.load(url); -export const loadFaceExpressionModel = (url) => nets.faceExpressionNet.load(url); -export const loadAgeGenderModel = (url) => nets.ageGenderNet.load(url); -// backward compatibility -export const loadFaceDetectionModel = loadSsdMobilenetv1Model; -export const locateFaces = ssdMobilenetv1; -export const detectLandmarks = detectFaceLandmarks; -//# sourceMappingURL=nets.js.map \ No newline at end of file diff --git a/build/globalApi/nets.js.map b/build/globalApi/nets.js.map deleted file mode 100644 index 30134fb..0000000 --- a/build/globalApi/nets.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"nets.js","sourceRoot":"","sources":["../../src/globalApi/nets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAM5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAG9E,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAsB,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/D,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,cAAc,EAAE,IAAI,cAAc,EAAE;IACpC,gBAAgB,EAAE,IAAI,gBAAgB,EAAE;IACxC,UAAU,EAAE,IAAI,UAAU,EAAE;IAC5B,iBAAiB,EAAE,IAAI,iBAAiB,EAAE;IAC1C,qBAAqB,EAAE,IAAI,qBAAqB,EAAE;IAClD,kBAAkB,EAAE,IAAI,kBAAkB,EAAE;IAC5C,iBAAiB,EAAE,IAAI,iBAAiB,EAAE;IAC1C,YAAY,EAAE,IAAI,YAAY,EAAE;CACjC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAgB,EAAE,OAA8B,EAA4B,EAAE,CAC3G,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAEjD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAgB,EAAE,OAAgC,EAA4B,EAAE,CAC/G,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAEnD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAE,OAA2B,EAA4B,EAAE,CACpG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAE7C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAgB,EAAgD,EAAE,CACpG,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAgB,EAAiD,EAAE,CACzG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;AAEnD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAgB,EAA2C,EAAE,CACjG,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAGtD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAgB,EAAgD,EAAE,CACzG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAgB,EAA8D,EAAE,CAClH,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;AAE9C,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACrF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACzF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACtF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC9F,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE9E,yBAAyB;AACzB,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAAA;AAC7D,MAAM,CAAC,MAAM,WAAW,GAAG,cAAc,CAAA;AACzC,MAAM,CAAC,MAAM,eAAe,GAAG,mBAAmB,CAAA"} \ No newline at end of file diff --git a/build/globalApi/types.d.ts b/build/globalApi/types.d.ts deleted file mode 100644 index b8f644a..0000000 --- a/build/globalApi/types.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { FaceDetection } from '../classes/FaceDetection'; -import { TNetInput } from '../dom'; -import { SsdMobilenetv1Options } from '../ssdMobilenetv1/SsdMobilenetv1Options'; -import { TinyFaceDetectorOptions } from '../tinyFaceDetector/TinyFaceDetectorOptions'; -import { TinyYolov2Options } from '../tinyYolov2'; -export declare type FaceDetectionOptions = TinyFaceDetectorOptions | SsdMobilenetv1Options | TinyYolov2Options; -export declare type FaceDetectionFunction = (input: TNetInput) => Promise; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/globalApi/types.d.ts.map b/build/globalApi/types.d.ts.map deleted file mode 100644 index 1b8c6a8..0000000 --- a/build/globalApi/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globalApi/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,oBAAY,oBAAoB,GAAG,uBAAuB,GAAG,qBAAqB,GAAG,iBAAiB,CAAA;AAEtG,oBAAY,qBAAqB,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA"} \ No newline at end of file diff --git a/build/globalApi/types.js b/build/globalApi/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/globalApi/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/globalApi/types.js.map b/build/globalApi/types.js.map deleted file mode 100644 index 1473b90..0000000 --- a/build/globalApi/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/globalApi/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/index.d.ts b/build/index.d.ts deleted file mode 100644 index 048fa81..0000000 --- a/build/index.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -declare const test = "test"; -import * as tf from '@tensorflow/tfjs-core'; -import * as draw from './draw'; -import * as utils from './utils'; -export { draw, utils, tf, test }; -export * from './ageGenderNet/index'; -export * from './classes/index'; -export * from './dom/index'; -export * from './env/index'; -export * from './faceExpressionNet/index'; -export * from './faceLandmarkNet/index'; -export * from './faceRecognitionNet/index'; -export * from './factories/index'; -export * from './globalApi/index'; -export * from './ops/index'; -export * from './ssdMobilenetv1/index'; -export * from './tinyFaceDetector/index'; -export * from './tinyYolov2/index'; -export * from './euclideanDistance'; -export * from './NeuralNetwork'; -export * from './resizeResults'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/index.d.ts.map b/build/index.d.ts.map deleted file mode 100644 index 2e912b8..0000000 --- a/build/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,IAAI,SAAS,CAAC;AACpB,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"} \ No newline at end of file diff --git a/build/index.js b/build/index.js deleted file mode 100644 index 9ccdc3e..0000000 --- a/build/index.js +++ /dev/null @@ -1,22 +0,0 @@ -const test = 'test'; -import * as tf from '@tensorflow/tfjs-core'; -import * as draw from './draw'; -import * as utils from './utils'; -export { draw, utils, tf, test }; -export * from './ageGenderNet/index'; -export * from './classes/index'; -export * from './dom/index'; -export * from './env/index'; -export * from './faceExpressionNet/index'; -export * from './faceLandmarkNet/index'; -export * from './faceRecognitionNet/index'; -export * from './factories/index'; -export * from './globalApi/index'; -export * from './ops/index'; -export * from './ssdMobilenetv1/index'; -export * from './tinyFaceDetector/index'; -export * from './tinyYolov2/index'; -export * from './euclideanDistance'; -export * from './NeuralNetwork'; -export * from './resizeResults'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/index.js.map b/build/index.js.map deleted file mode 100644 index 8a324e2..0000000 --- a/build/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,MAAM,CAAC;AACpB,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"} \ No newline at end of file diff --git a/build/ops/index.d.ts b/build/ops/index.d.ts deleted file mode 100644 index b372636..0000000 --- a/build/ops/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * from './iou'; -export * from './minBbox'; -export * from './nonMaxSuppression'; -export * from './normalize'; -export * from './padToSquare'; -export * from './shuffleArray'; -export declare function sigmoid(x: number): number; -export declare function inverseSigmoid(x: number): number; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/ops/index.d.ts.map b/build/ops/index.d.ts.map deleted file mode 100644 index ce19b0e..0000000 --- a/build/ops/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ops/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAE9B,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,UAEhC;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,UAEvC"} \ No newline at end of file diff --git a/build/ops/index.js b/build/ops/index.js deleted file mode 100644 index 5b45757..0000000 --- a/build/ops/index.js +++ /dev/null @@ -1,13 +0,0 @@ -export * from './iou'; -export * from './minBbox'; -export * from './nonMaxSuppression'; -export * from './normalize'; -export * from './padToSquare'; -export * from './shuffleArray'; -export function sigmoid(x) { - return 1 / (1 + Math.exp(-x)); -} -export function inverseSigmoid(x) { - return Math.log(x / (1 - x)); -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/ops/index.js.map b/build/ops/index.js.map deleted file mode 100644 index e84f6cf..0000000 --- a/build/ops/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ops/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAE9B,MAAM,UAAU,OAAO,CAAC,CAAS;IAC/B,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,CAAS;IACtC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAC9B,CAAC"} \ No newline at end of file diff --git a/build/ops/iou.d.ts b/build/ops/iou.d.ts deleted file mode 100644 index 7ab1059..0000000 --- a/build/ops/iou.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Box } from '../classes/Box'; -export declare function iou(box1: Box, box2: Box, isIOU?: boolean): number; -//# sourceMappingURL=iou.d.ts.map \ No newline at end of file diff --git a/build/ops/iou.d.ts.map b/build/ops/iou.d.ts.map deleted file mode 100644 index 8d513ea..0000000 --- a/build/ops/iou.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"iou.d.ts","sourceRoot":"","sources":["../../src/ops/iou.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,wBAAgB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,GAAE,OAAc,UAQ9D"} \ No newline at end of file diff --git a/build/ops/iou.js b/build/ops/iou.js deleted file mode 100644 index bcbec9d..0000000 --- a/build/ops/iou.js +++ /dev/null @@ -1,9 +0,0 @@ -export function iou(box1, box2, isIOU = true) { - const width = Math.max(0.0, Math.min(box1.right, box2.right) - Math.max(box1.left, box2.left)); - const height = Math.max(0.0, Math.min(box1.bottom, box2.bottom) - Math.max(box1.top, box2.top)); - const interSection = width * height; - return isIOU - ? interSection / (box1.area + box2.area - interSection) - : interSection / Math.min(box1.area, box2.area); -} -//# sourceMappingURL=iou.js.map \ No newline at end of file diff --git a/build/ops/iou.js.map b/build/ops/iou.js.map deleted file mode 100644 index 216a7dd..0000000 --- a/build/ops/iou.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"iou.js","sourceRoot":"","sources":["../../src/ops/iou.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAG,CAAC,IAAS,EAAE,IAAS,EAAE,QAAiB,IAAI;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9F,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/F,MAAM,YAAY,GAAG,KAAK,GAAG,MAAM,CAAA;IAEnC,OAAO,KAAK;QACV,CAAC,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACvD,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;AACnD,CAAC"} \ No newline at end of file diff --git a/build/ops/minBbox.d.ts b/build/ops/minBbox.d.ts deleted file mode 100644 index ac34355..0000000 --- a/build/ops/minBbox.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { BoundingBox, IPoint } from '../classes'; -export declare function minBbox(pts: IPoint[]): BoundingBox; -//# sourceMappingURL=minBbox.d.ts.map \ No newline at end of file diff --git a/build/ops/minBbox.d.ts.map b/build/ops/minBbox.d.ts.map deleted file mode 100644 index 0bc2648..0000000 --- a/build/ops/minBbox.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"minBbox.d.ts","sourceRoot":"","sources":["../../src/ops/minBbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEjD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,WAAW,CASlD"} \ No newline at end of file diff --git a/build/ops/minBbox.js b/build/ops/minBbox.js deleted file mode 100644 index e7915e3..0000000 --- a/build/ops/minBbox.js +++ /dev/null @@ -1,11 +0,0 @@ -import { BoundingBox } from '../classes'; -export function minBbox(pts) { - const xs = pts.map(pt => pt.x); - const ys = pts.map(pt => pt.y); - const minX = xs.reduce((min, x) => x < min ? x : min, Infinity); - const minY = ys.reduce((min, y) => y < min ? y : min, Infinity); - const maxX = xs.reduce((max, x) => max < x ? x : max, 0); - const maxY = ys.reduce((max, y) => max < y ? y : max, 0); - return new BoundingBox(minX, minY, maxX, maxY); -} -//# sourceMappingURL=minBbox.js.map \ No newline at end of file diff --git a/build/ops/minBbox.js.map b/build/ops/minBbox.js.map deleted file mode 100644 index 5ae1a06..0000000 --- a/build/ops/minBbox.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"minBbox.js","sourceRoot":"","sources":["../../src/ops/minBbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAU,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,OAAO,CAAC,GAAa;IACnC,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9B,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9B,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAC/D,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAC/D,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACxD,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IAExD,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAChD,CAAC"} \ No newline at end of file diff --git a/build/ops/nonMaxSuppression.d.ts b/build/ops/nonMaxSuppression.d.ts deleted file mode 100644 index 1189f32..0000000 --- a/build/ops/nonMaxSuppression.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { Box } from '../classes/Box'; -export declare function nonMaxSuppression(boxes: Box[], scores: number[], iouThreshold: number, isIOU?: boolean): number[]; -//# sourceMappingURL=nonMaxSuppression.d.ts.map \ No newline at end of file diff --git a/build/ops/nonMaxSuppression.d.ts.map b/build/ops/nonMaxSuppression.d.ts.map deleted file mode 100644 index e460001..0000000 --- a/build/ops/nonMaxSuppression.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"nonMaxSuppression.d.ts","sourceRoot":"","sources":["../../src/ops/nonMaxSuppression.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGrC,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,GAAG,EAAE,EACZ,MAAM,EAAE,MAAM,EAAE,EAChB,YAAY,EAAE,MAAM,EACpB,KAAK,GAAE,OAAc,GACpB,MAAM,EAAE,CAgCV"} \ No newline at end of file diff --git a/build/ops/nonMaxSuppression.js b/build/ops/nonMaxSuppression.js deleted file mode 100644 index 05ded75..0000000 --- a/build/ops/nonMaxSuppression.js +++ /dev/null @@ -1,23 +0,0 @@ -import { iou } from './iou'; -export function nonMaxSuppression(boxes, scores, iouThreshold, isIOU = true) { - let indicesSortedByScore = scores - .map((score, boxIndex) => ({ score, boxIndex })) - .sort((c1, c2) => c1.score - c2.score) - .map(c => c.boxIndex); - const pick = []; - while (indicesSortedByScore.length > 0) { - const curr = indicesSortedByScore.pop(); - pick.push(curr); - const indices = indicesSortedByScore; - const outputs = []; - for (let i = 0; i < indices.length; i++) { - const idx = indices[i]; - const currBox = boxes[curr]; - const idxBox = boxes[idx]; - outputs.push(iou(currBox, idxBox, isIOU)); - } - indicesSortedByScore = indicesSortedByScore.filter((_, j) => outputs[j] <= iouThreshold); - } - return pick; -} -//# sourceMappingURL=nonMaxSuppression.js.map \ No newline at end of file diff --git a/build/ops/nonMaxSuppression.js.map b/build/ops/nonMaxSuppression.js.map deleted file mode 100644 index 24abc7c..0000000 --- a/build/ops/nonMaxSuppression.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"nonMaxSuppression.js","sourceRoot":"","sources":["../../src/ops/nonMaxSuppression.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,MAAM,UAAU,iBAAiB,CAC/B,KAAY,EACZ,MAAgB,EAChB,YAAoB,EACpB,QAAiB,IAAI;IAGrB,IAAI,oBAAoB,GAAG,MAAM;SAC9B,GAAG,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;SAC/C,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;SACrC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAEvB,MAAM,IAAI,GAAa,EAAE,CAAA;IAEzB,OAAM,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;QACrC,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,EAAY,CAAA;QACjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEf,MAAM,OAAO,GAAG,oBAAoB,CAAA;QAEpC,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAEtB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;YAEzB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;SAC1C;QAED,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,CAChD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,YAAY,CACrC,CAAA;KACF;IAED,OAAO,IAAI,CAAA;AAEb,CAAC"} \ No newline at end of file diff --git a/build/ops/normalize.d.ts b/build/ops/normalize.d.ts deleted file mode 100644 index 5896e9c..0000000 --- a/build/ops/normalize.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare function normalize(x: tf.Tensor4D, meanRgb: number[]): tf.Tensor4D; -//# sourceMappingURL=normalize.d.ts.map \ No newline at end of file diff --git a/build/ops/normalize.d.ts.map b/build/ops/normalize.d.ts.map deleted file mode 100644 index 7da4a40..0000000 --- a/build/ops/normalize.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../src/ops/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,wBAAgB,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAUxE"} \ No newline at end of file diff --git a/build/ops/normalize.js b/build/ops/normalize.js deleted file mode 100644 index e489c02..0000000 --- a/build/ops/normalize.js +++ /dev/null @@ -1,12 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function normalize(x, meanRgb) { - return tf.tidy(() => { - const [r, g, b] = meanRgb; - const avg_r = tf.fill([...x.shape.slice(0, 3), 1], r); - const avg_g = tf.fill([...x.shape.slice(0, 3), 1], g); - const avg_b = tf.fill([...x.shape.slice(0, 3), 1], b); - const avg_rgb = tf.concat([avg_r, avg_g, avg_b], 3); - return tf.sub(x, avg_rgb); - }); -} -//# sourceMappingURL=normalize.js.map \ No newline at end of file diff --git a/build/ops/normalize.js.map b/build/ops/normalize.js.map deleted file mode 100644 index a0c8650..0000000 --- a/build/ops/normalize.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../src/ops/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,UAAU,SAAS,CAAC,CAAc,EAAE,OAAiB;IACzD,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAA;QACzB,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACrD,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACrD,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACrD,MAAM,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;QAEnD,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ops/padToSquare.d.ts b/build/ops/padToSquare.d.ts deleted file mode 100644 index b546993..0000000 --- a/build/ops/padToSquare.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -/** - * Pads the smaller dimension of an image tensor with zeros, such that width === height. - * - * @param imgTensor The image tensor. - * @param isCenterImage (optional, default: false) If true, add an equal amount of padding on - * both sides of the minor dimension oof the image. - * @returns The padded tensor with width === height. - */ -export declare function padToSquare(imgTensor: tf.Tensor4D, isCenterImage?: boolean): tf.Tensor4D; -//# sourceMappingURL=padToSquare.d.ts.map \ No newline at end of file diff --git a/build/ops/padToSquare.d.ts.map b/build/ops/padToSquare.d.ts.map deleted file mode 100644 index 299a8d0..0000000 --- a/build/ops/padToSquare.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"padToSquare.d.ts","sourceRoot":"","sources":["../../src/ops/padToSquare.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,EAAE,CAAC,QAAQ,EACtB,aAAa,GAAE,OAAe,GAC7B,EAAE,CAAC,QAAQ,CAkCb"} \ No newline at end of file diff --git a/build/ops/padToSquare.js b/build/ops/padToSquare.js deleted file mode 100644 index ca4d024..0000000 --- a/build/ops/padToSquare.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -/** - * Pads the smaller dimension of an image tensor with zeros, such that width === height. - * - * @param imgTensor The image tensor. - * @param isCenterImage (optional, default: false) If true, add an equal amount of padding on - * both sides of the minor dimension oof the image. - * @returns The padded tensor with width === height. - */ -export function padToSquare(imgTensor, isCenterImage = false) { - return tf.tidy(() => { - const [height, width] = imgTensor.shape.slice(1); - if (height === width) { - return imgTensor; - } - const dimDiff = Math.abs(height - width); - const paddingAmount = Math.round(dimDiff * (isCenterImage ? 0.5 : 1)); - const paddingAxis = height > width ? 2 : 1; - const createPaddingTensor = (paddingAmount) => { - const paddingTensorShape = imgTensor.shape.slice(); - paddingTensorShape[paddingAxis] = paddingAmount; - return tf.fill(paddingTensorShape, 0); - }; - const paddingTensorAppend = createPaddingTensor(paddingAmount); - const remainingPaddingAmount = dimDiff - paddingTensorAppend.shape[paddingAxis]; - const paddingTensorPrepend = isCenterImage && remainingPaddingAmount - ? createPaddingTensor(remainingPaddingAmount) - : null; - const tensorsToStack = [ - paddingTensorPrepend, - imgTensor, - paddingTensorAppend - ] - .filter(t => !!t) - .map((t) => t.toFloat()); - return tf.concat(tensorsToStack, paddingAxis); - }); -} -//# sourceMappingURL=padToSquare.js.map \ No newline at end of file diff --git a/build/ops/padToSquare.js.map b/build/ops/padToSquare.js.map deleted file mode 100644 index 32b423e..0000000 --- a/build/ops/padToSquare.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"padToSquare.js","sourceRoot":"","sources":["../../src/ops/padToSquare.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,SAAsB,EACtB,gBAAyB,KAAK;IAE9B,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAChD,IAAI,MAAM,KAAK,KAAK,EAAE;YACpB,OAAO,SAAS,CAAA;SACjB;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA;QACxC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrE,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAE1C,MAAM,mBAAmB,GAAG,CAAC,aAAqB,EAAa,EAAE;YAC/D,MAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;YAClD,kBAAkB,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;YAC/C,OAAO,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAA;QACvC,CAAC,CAAA;QAED,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAA;QAC9D,MAAM,sBAAsB,GAAG,OAAO,GAAI,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAY,CAAA;QAE3F,MAAM,oBAAoB,GAAG,aAAa,IAAI,sBAAsB;YAClE,CAAC,CAAC,mBAAmB,CAAC,sBAAsB,CAAC;YAC7C,CAAC,CAAC,IAAI,CAAA;QAER,MAAM,cAAc,GAAG;YACrB,oBAAoB;YACpB,SAAS;YACT,mBAAmB;SACpB;aACE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB,GAAG,CAAC,CAAC,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAkB,CAAA;QACtD,OAAO,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ops/shuffleArray.d.ts b/build/ops/shuffleArray.d.ts deleted file mode 100644 index 741441a..0000000 --- a/build/ops/shuffleArray.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function shuffleArray(inputArray: any[]): any[]; -//# sourceMappingURL=shuffleArray.d.ts.map \ No newline at end of file diff --git a/build/ops/shuffleArray.d.ts.map b/build/ops/shuffleArray.d.ts.map deleted file mode 100644 index 8ca3a83..0000000 --- a/build/ops/shuffleArray.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"shuffleArray.d.ts","sourceRoot":"","sources":["../../src/ops/shuffleArray.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,UAAU,EAAE,GAAG,EAAE,SAS7C"} \ No newline at end of file diff --git a/build/ops/shuffleArray.js b/build/ops/shuffleArray.js deleted file mode 100644 index e9baaa0..0000000 --- a/build/ops/shuffleArray.js +++ /dev/null @@ -1,11 +0,0 @@ -export function shuffleArray(inputArray) { - const array = inputArray.slice(); - for (let i = array.length - 1; i > 0; i--) { - const j = Math.floor(Math.random() * (i + 1)); - const x = array[i]; - array[i] = array[j]; - array[j] = x; - } - return array; -} -//# sourceMappingURL=shuffleArray.js.map \ No newline at end of file diff --git a/build/ops/shuffleArray.js.map b/build/ops/shuffleArray.js.map deleted file mode 100644 index 5a50a75..0000000 --- a/build/ops/shuffleArray.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"shuffleArray.js","sourceRoot":"","sources":["../../src/ops/shuffleArray.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,YAAY,CAAC,UAAiB;IAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,CAAA;IAChC,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAClB,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACnB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;KACf;IACD,OAAO,KAAK,CAAA;AACd,CAAC"} \ No newline at end of file diff --git a/build/resizeResults.d.ts b/build/resizeResults.d.ts deleted file mode 100644 index dfb650f..0000000 --- a/build/resizeResults.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { IDimensions } from './classes'; -export declare function resizeResults(results: T, dimensions: IDimensions): T; -//# sourceMappingURL=resizeResults.d.ts.map \ No newline at end of file diff --git a/build/resizeResults.d.ts.map b/build/resizeResults.d.ts.map deleted file mode 100644 index 64ef8be..0000000 --- a/build/resizeResults.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"resizeResults.d.ts","sourceRoot":"","sources":["../src/resizeResults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,WAAW,CAAC;AAMpD,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,GAAG,CAAC,CA4BvE"} \ No newline at end of file diff --git a/build/resizeResults.js b/build/resizeResults.js deleted file mode 100644 index 2d5ec8a..0000000 --- a/build/resizeResults.js +++ /dev/null @@ -1,27 +0,0 @@ -import { Dimensions } from './classes'; -import { FaceDetection } from './classes/FaceDetection'; -import { FaceLandmarks } from './classes/FaceLandmarks'; -import { extendWithFaceDetection, isWithFaceDetection } from './factories/WithFaceDetection'; -import { extendWithFaceLandmarks, isWithFaceLandmarks } from './factories/WithFaceLandmarks'; -export function resizeResults(results, dimensions) { - const { width, height } = new Dimensions(dimensions.width, dimensions.height); - if (width <= 0 || height <= 0) { - throw new Error(`resizeResults - invalid dimensions: ${JSON.stringify({ width, height })}`); - } - if (Array.isArray(results)) { - return results.map(obj => resizeResults(obj, { width, height })); - } - if (isWithFaceLandmarks(results)) { - const resizedDetection = results.detection.forSize(width, height); - const resizedLandmarks = results.unshiftedLandmarks.forSize(resizedDetection.box.width, resizedDetection.box.height); - return extendWithFaceLandmarks(extendWithFaceDetection(results, resizedDetection), resizedLandmarks); - } - if (isWithFaceDetection(results)) { - return extendWithFaceDetection(results, results.detection.forSize(width, height)); - } - if (results instanceof FaceLandmarks || results instanceof FaceDetection) { - return results.forSize(width, height); - } - return results; -} -//# sourceMappingURL=resizeResults.js.map \ No newline at end of file diff --git a/build/resizeResults.js.map b/build/resizeResults.js.map deleted file mode 100644 index 4278f2d..0000000 --- a/build/resizeResults.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"resizeResults.js","sourceRoot":"","sources":["../src/resizeResults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAC7F,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAE7F,MAAM,UAAU,aAAa,CAAI,OAAU,EAAE,UAAuB;IAElE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;IAE7E,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;KAC5F;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAa,CAAA;KAC7E;IAED,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE;QAChC,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACjE,MAAM,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEpH,OAAO,uBAAuB,CAAC,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,CAAA;KACrG;IAED,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE;QAChC,OAAO,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;KAClF;IAED,IAAI,OAAO,YAAY,aAAa,IAAI,OAAO,YAAY,aAAa,EAAE;QACxE,OAAQ,OAAe,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;KAC/C;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1.d.ts b/build/ssdMobilenetv1/SsdMobilenetv1.d.ts deleted file mode 100644 index f19cb15..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FaceDetection } from '../classes/FaceDetection'; -import { NetInput, TNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { ISsdMobilenetv1Options } from './SsdMobilenetv1Options'; -import { NetParams } from './types'; -export declare class SsdMobilenetv1 extends NeuralNetwork { - constructor(); - forwardInput(input: NetInput): { - boxes: tf.Tensor2D[]; - scores: tf.Tensor1D[]; - }; - forward(input: TNetInput): Promise<{ - boxes: tf.Tensor2D[]; - scores: tf.Tensor1D[]; - }>; - locateFaces(input: TNetInput, options?: ISsdMobilenetv1Options): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=SsdMobilenetv1.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1.d.ts.map b/build/ssdMobilenetv1/SsdMobilenetv1.d.ts.map deleted file mode 100644 index 70a16b0..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SsdMobilenetv1.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/SsdMobilenetv1.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAOjD,OAAO,EAAE,sBAAsB,EAAyB,MAAM,yBAAyB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,qBAAa,cAAe,SAAQ,aAAa,CAAC,SAAS,CAAC;;IAMnD,YAAY,CAAC,KAAK,EAAE,QAAQ;;;;IAuBtB,OAAO,CAAC,KAAK,EAAE,SAAS;;;;IAIxB,WAAW,CACtB,KAAK,EAAE,SAAS,EAChB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,aAAa,EAAE,CAAC;IAqE3B,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IAIjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAG9C"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1.js b/build/ssdMobilenetv1/SsdMobilenetv1.js deleted file mode 100644 index 982a823..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1.js +++ /dev/null @@ -1,82 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { Rect } from '../classes'; -import { FaceDetection } from '../classes/FaceDetection'; -import { toNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -import { mobileNetV1 } from './mobileNetV1'; -import { nonMaxSuppression } from './nonMaxSuppression'; -import { outputLayer } from './outputLayer'; -import { predictionLayer } from './predictionLayer'; -import { SsdMobilenetv1Options } from './SsdMobilenetv1Options'; -export class SsdMobilenetv1 extends NeuralNetwork { - constructor() { - super('SsdMobilenetv1'); - } - forwardInput(input) { - const { params } = this; - if (!params) { - throw new Error('SsdMobilenetv1 - load model before inference'); - } - return tf.tidy(() => { - const batchTensor = input.toBatchTensor(512, false).toFloat(); - const x = tf.sub(tf.mul(batchTensor, tf.scalar(0.007843137718737125)), tf.scalar(1)); - const features = mobileNetV1(x, params.mobilenetv1); - const { boxPredictions, classPredictions } = predictionLayer(features.out, features.conv11, params.prediction_layer); - return outputLayer(boxPredictions, classPredictions, params.output_layer); - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - async locateFaces(input, options = {}) { - const { maxResults, minConfidence } = new SsdMobilenetv1Options(options); - const netInput = await toNetInput(input); - const { boxes: _boxes, scores: _scores } = this.forwardInput(netInput); - // TODO batches - const boxes = _boxes[0]; - const scores = _scores[0]; - for (let i = 1; i < _boxes.length; i++) { - _boxes[i].dispose(); - _scores[i].dispose(); - } - // TODO find a better way to filter by minConfidence - const scoresData = Array.from(await scores.data()); - const iouThreshold = 0.5; - const indices = nonMaxSuppression(boxes, scoresData, maxResults, iouThreshold, minConfidence); - const reshapedDims = netInput.getReshapedInputDimensions(0); - const inputSize = netInput.inputSize; - const padX = inputSize / reshapedDims.width; - const padY = inputSize / reshapedDims.height; - const boxesData = boxes.arraySync(); - const results = indices - .map(idx => { - const [top, bottom] = [ - Math.max(0, boxesData[idx][0]), - Math.min(1.0, boxesData[idx][2]) - ].map(val => val * padY); - const [left, right] = [ - Math.max(0, boxesData[idx][1]), - Math.min(1.0, boxesData[idx][3]) - ].map(val => val * padX); - return new FaceDetection(scoresData[idx], new Rect(left, top, right - left, bottom - top), { - height: netInput.getInputHeight(0), - width: netInput.getInputWidth(0) - }); - }); - boxes.dispose(); - scores.dispose(); - return results; - } - getDefaultModelName() { - return 'ssd_mobilenetv1_model'; - } - extractParamsFromWeigthMap(weightMap) { - return extractParamsFromWeigthMap(weightMap); - } - extractParams(weights) { - return extractParams(weights); - } -} -//# sourceMappingURL=SsdMobilenetv1.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1.js.map b/build/ssdMobilenetv1/SsdMobilenetv1.js.map deleted file mode 100644 index 448a2f0..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SsdMobilenetv1.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/SsdMobilenetv1.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts b/build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts deleted file mode 100644 index 8b6800e..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -export interface ISsdMobilenetv1Options { - minConfidence?: number; - maxResults?: number; -} -export declare class SsdMobilenetv1Options { - protected _name: string; - private _minConfidence; - private _maxResults; - constructor({ minConfidence, maxResults }?: ISsdMobilenetv1Options); - get minConfidence(): number; - get maxResults(): number; -} -//# sourceMappingURL=SsdMobilenetv1Options.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts.map b/build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts.map deleted file mode 100644 index f159f41..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1Options.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SsdMobilenetv1Options.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/SsdMobilenetv1Options.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,qBAAqB;IAChC,SAAS,CAAC,KAAK,EAAE,MAAM,CAA0B;IAEjD,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,WAAW,CAAQ;gBAEf,EAAE,aAAa,EAAE,UAAU,EAAE,GAAE,sBAA2B;IAatE,IAAI,aAAa,IAAI,MAAM,CAA+B;IAC1D,IAAI,UAAU,IAAI,MAAM,CAA4B;CACrD"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1Options.js b/build/ssdMobilenetv1/SsdMobilenetv1Options.js deleted file mode 100644 index da74d09..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1Options.js +++ /dev/null @@ -1,16 +0,0 @@ -export class SsdMobilenetv1Options { - constructor({ minConfidence, maxResults } = {}) { - this._name = 'SsdMobilenetv1Options'; - this._minConfidence = minConfidence || 0.5; - this._maxResults = maxResults || 100; - if (typeof this._minConfidence !== 'number' || this._minConfidence <= 0 || this._minConfidence >= 1) { - throw new Error(`${this._name} - expected minConfidence to be a number between 0 and 1`); - } - if (typeof this._maxResults !== 'number') { - throw new Error(`${this._name} - expected maxResults to be a number`); - } - } - get minConfidence() { return this._minConfidence; } - get maxResults() { return this._maxResults; } -} -//# sourceMappingURL=SsdMobilenetv1Options.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/SsdMobilenetv1Options.js.map b/build/ssdMobilenetv1/SsdMobilenetv1Options.js.map deleted file mode 100644 index 4de33c6..0000000 --- a/build/ssdMobilenetv1/SsdMobilenetv1Options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SsdMobilenetv1Options.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/SsdMobilenetv1Options.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,qBAAqB;IAMhC,YAAY,EAAE,aAAa,EAAE,UAAU,KAA6B,EAAE;QAL5D,UAAK,GAAW,uBAAuB,CAAA;QAM/C,IAAI,CAAC,cAAc,GAAG,aAAa,IAAI,GAAG,CAAA;QAC1C,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,GAAG,CAAA;QAEpC,IAAI,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YACnG,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,0DAA0D,CAAC,CAAA;SACzF;QAED,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,uCAAuC,CAAC,CAAA;SACtE;IACH,CAAC;IAED,IAAI,aAAa,KAAa,OAAO,IAAI,CAAC,cAAc,CAAA,CAAC,CAAC;IAC1D,IAAI,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAA,CAAC,CAAC;CACrD"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/boxPredictionLayer.d.ts b/build/ssdMobilenetv1/boxPredictionLayer.d.ts deleted file mode 100644 index df8fcfd..0000000 --- a/build/ssdMobilenetv1/boxPredictionLayer.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { BoxPredictionParams } from './types'; -export declare function boxPredictionLayer(x: tf.Tensor4D, params: BoxPredictionParams): { - boxPredictionEncoding: tf.Tensor; - classPrediction: tf.Tensor; -}; -//# sourceMappingURL=boxPredictionLayer.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/boxPredictionLayer.d.ts.map b/build/ssdMobilenetv1/boxPredictionLayer.d.ts.map deleted file mode 100644 index 245a71d..0000000 --- a/build/ssdMobilenetv1/boxPredictionLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"boxPredictionLayer.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/boxPredictionLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAG9C,wBAAgB,kBAAkB,CAChC,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,MAAM,EAAE,mBAAmB;;;EAoB5B"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/boxPredictionLayer.js b/build/ssdMobilenetv1/boxPredictionLayer.js deleted file mode 100644 index 7018d0c..0000000 --- a/build/ssdMobilenetv1/boxPredictionLayer.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { convLayer } from '../common'; -export function boxPredictionLayer(x, params) { - return tf.tidy(() => { - const batchSize = x.shape[0]; - const boxPredictionEncoding = tf.reshape(convLayer(x, params.box_encoding_predictor), [batchSize, -1, 1, 4]); - const classPrediction = tf.reshape(convLayer(x, params.class_predictor), [batchSize, -1, 3]); - return { - boxPredictionEncoding, - classPrediction - }; - }); -} -//# sourceMappingURL=boxPredictionLayer.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/boxPredictionLayer.js.map b/build/ssdMobilenetv1/boxPredictionLayer.js.map deleted file mode 100644 index 93497d7..0000000 --- a/build/ssdMobilenetv1/boxPredictionLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"boxPredictionLayer.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/boxPredictionLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC,MAAM,UAAU,kBAAkB,CAChC,CAAc,EACd,MAA2B;IAE3B,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAE5B,MAAM,qBAAqB,GAAG,EAAE,CAAC,OAAO,CACtC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,sBAAsB,CAAC,EAC3C,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACtB,CAAA;QACD,MAAM,eAAe,GAAG,EAAE,CAAC,OAAO,CAChC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,eAAe,CAAC,EACpC,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CACnB,CAAA;QAED,OAAO;YACL,qBAAqB;YACrB,eAAe;SAChB,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParams.d.ts b/build/ssdMobilenetv1/extractParams.d.ts deleted file mode 100644 index 12cc2d4..0000000 --- a/build/ssdMobilenetv1/extractParams.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParams(weights: Float32Array): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParams.d.ts.map b/build/ssdMobilenetv1/extractParams.d.ts.map deleted file mode 100644 index 0b1ab49..0000000 --- a/build/ssdMobilenetv1/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/extractParams.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0B,YAAY,EAAqC,MAAM,WAAW,CAAC;AACpG,OAAO,EAAe,SAAS,EAA8C,MAAM,SAAS,CAAC;AA8L7F,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAsCzG"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParams.js b/build/ssdMobilenetv1/extractParams.js deleted file mode 100644 index 6de523c..0000000 --- a/build/ssdMobilenetv1/extractParams.js +++ /dev/null @@ -1,159 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { extractWeightsFactory } from '../common'; -function extractorsFactory(extractWeights, paramMappings) { - function extractDepthwiseConvParams(numChannels, mappedPrefix) { - const filters = tf.tensor4d(extractWeights(3 * 3 * numChannels), [3, 3, numChannels, 1]); - const batch_norm_scale = tf.tensor1d(extractWeights(numChannels)); - const batch_norm_offset = tf.tensor1d(extractWeights(numChannels)); - const batch_norm_mean = tf.tensor1d(extractWeights(numChannels)); - const batch_norm_variance = tf.tensor1d(extractWeights(numChannels)); - paramMappings.push({ paramPath: `${mappedPrefix}/filters` }, { paramPath: `${mappedPrefix}/batch_norm_scale` }, { paramPath: `${mappedPrefix}/batch_norm_offset` }, { paramPath: `${mappedPrefix}/batch_norm_mean` }, { paramPath: `${mappedPrefix}/batch_norm_variance` }); - return { - filters, - batch_norm_scale, - batch_norm_offset, - batch_norm_mean, - batch_norm_variance - }; - } - function extractConvParams(channelsIn, channelsOut, filterSize, mappedPrefix, isPointwiseConv) { - const filters = tf.tensor4d(extractWeights(channelsIn * channelsOut * filterSize * filterSize), [filterSize, filterSize, channelsIn, channelsOut]); - const bias = tf.tensor1d(extractWeights(channelsOut)); - paramMappings.push({ paramPath: `${mappedPrefix}/filters` }, { paramPath: `${mappedPrefix}/${isPointwiseConv ? 'batch_norm_offset' : 'bias'}` }); - return { filters, bias }; - } - function extractPointwiseConvParams(channelsIn, channelsOut, filterSize, mappedPrefix) { - const { filters, bias } = extractConvParams(channelsIn, channelsOut, filterSize, mappedPrefix, true); - return { - filters, - batch_norm_offset: bias - }; - } - function extractConvPairParams(channelsIn, channelsOut, mappedPrefix) { - const depthwise_conv = extractDepthwiseConvParams(channelsIn, `${mappedPrefix}/depthwise_conv`); - const pointwise_conv = extractPointwiseConvParams(channelsIn, channelsOut, 1, `${mappedPrefix}/pointwise_conv`); - return { depthwise_conv, pointwise_conv }; - } - function extractMobilenetV1Params() { - const conv_0 = extractPointwiseConvParams(3, 32, 3, 'mobilenetv1/conv_0'); - const conv_1 = extractConvPairParams(32, 64, 'mobilenetv1/conv_1'); - const conv_2 = extractConvPairParams(64, 128, 'mobilenetv1/conv_2'); - const conv_3 = extractConvPairParams(128, 128, 'mobilenetv1/conv_3'); - const conv_4 = extractConvPairParams(128, 256, 'mobilenetv1/conv_4'); - const conv_5 = extractConvPairParams(256, 256, 'mobilenetv1/conv_5'); - const conv_6 = extractConvPairParams(256, 512, 'mobilenetv1/conv_6'); - const conv_7 = extractConvPairParams(512, 512, 'mobilenetv1/conv_7'); - const conv_8 = extractConvPairParams(512, 512, 'mobilenetv1/conv_8'); - const conv_9 = extractConvPairParams(512, 512, 'mobilenetv1/conv_9'); - const conv_10 = extractConvPairParams(512, 512, 'mobilenetv1/conv_10'); - const conv_11 = extractConvPairParams(512, 512, 'mobilenetv1/conv_11'); - const conv_12 = extractConvPairParams(512, 1024, 'mobilenetv1/conv_12'); - const conv_13 = extractConvPairParams(1024, 1024, 'mobilenetv1/conv_13'); - return { - conv_0, - conv_1, - conv_2, - conv_3, - conv_4, - conv_5, - conv_6, - conv_7, - conv_8, - conv_9, - conv_10, - conv_11, - conv_12, - conv_13 - }; - } - function extractPredictionLayerParams() { - const conv_0 = extractPointwiseConvParams(1024, 256, 1, 'prediction_layer/conv_0'); - const conv_1 = extractPointwiseConvParams(256, 512, 3, 'prediction_layer/conv_1'); - const conv_2 = extractPointwiseConvParams(512, 128, 1, 'prediction_layer/conv_2'); - const conv_3 = extractPointwiseConvParams(128, 256, 3, 'prediction_layer/conv_3'); - const conv_4 = extractPointwiseConvParams(256, 128, 1, 'prediction_layer/conv_4'); - const conv_5 = extractPointwiseConvParams(128, 256, 3, 'prediction_layer/conv_5'); - const conv_6 = extractPointwiseConvParams(256, 64, 1, 'prediction_layer/conv_6'); - const conv_7 = extractPointwiseConvParams(64, 128, 3, 'prediction_layer/conv_7'); - const box_encoding_0_predictor = extractConvParams(512, 12, 1, 'prediction_layer/box_predictor_0/box_encoding_predictor'); - const class_predictor_0 = extractConvParams(512, 9, 1, 'prediction_layer/box_predictor_0/class_predictor'); - const box_encoding_1_predictor = extractConvParams(1024, 24, 1, 'prediction_layer/box_predictor_1/box_encoding_predictor'); - const class_predictor_1 = extractConvParams(1024, 18, 1, 'prediction_layer/box_predictor_1/class_predictor'); - const box_encoding_2_predictor = extractConvParams(512, 24, 1, 'prediction_layer/box_predictor_2/box_encoding_predictor'); - const class_predictor_2 = extractConvParams(512, 18, 1, 'prediction_layer/box_predictor_2/class_predictor'); - const box_encoding_3_predictor = extractConvParams(256, 24, 1, 'prediction_layer/box_predictor_3/box_encoding_predictor'); - const class_predictor_3 = extractConvParams(256, 18, 1, 'prediction_layer/box_predictor_3/class_predictor'); - const box_encoding_4_predictor = extractConvParams(256, 24, 1, 'prediction_layer/box_predictor_4/box_encoding_predictor'); - const class_predictor_4 = extractConvParams(256, 18, 1, 'prediction_layer/box_predictor_4/class_predictor'); - const box_encoding_5_predictor = extractConvParams(128, 24, 1, 'prediction_layer/box_predictor_5/box_encoding_predictor'); - const class_predictor_5 = extractConvParams(128, 18, 1, 'prediction_layer/box_predictor_5/class_predictor'); - const box_predictor_0 = { - box_encoding_predictor: box_encoding_0_predictor, - class_predictor: class_predictor_0 - }; - const box_predictor_1 = { - box_encoding_predictor: box_encoding_1_predictor, - class_predictor: class_predictor_1 - }; - const box_predictor_2 = { - box_encoding_predictor: box_encoding_2_predictor, - class_predictor: class_predictor_2 - }; - const box_predictor_3 = { - box_encoding_predictor: box_encoding_3_predictor, - class_predictor: class_predictor_3 - }; - const box_predictor_4 = { - box_encoding_predictor: box_encoding_4_predictor, - class_predictor: class_predictor_4 - }; - const box_predictor_5 = { - box_encoding_predictor: box_encoding_5_predictor, - class_predictor: class_predictor_5 - }; - return { - conv_0, - conv_1, - conv_2, - conv_3, - conv_4, - conv_5, - conv_6, - conv_7, - box_predictor_0, - box_predictor_1, - box_predictor_2, - box_predictor_3, - box_predictor_4, - box_predictor_5 - }; - } - return { - extractMobilenetV1Params, - extractPredictionLayerParams - }; -} -export function extractParams(weights) { - const paramMappings = []; - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const { extractMobilenetV1Params, extractPredictionLayerParams } = extractorsFactory(extractWeights, paramMappings); - const mobilenetv1 = extractMobilenetV1Params(); - const prediction_layer = extractPredictionLayerParams(); - const extra_dim = tf.tensor3d(extractWeights(5118 * 4), [1, 5118, 4]); - const output_layer = { - extra_dim - }; - paramMappings.push({ paramPath: 'output_layer/extra_dim' }); - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { - params: { - mobilenetv1, - prediction_layer, - output_layer - }, - paramMappings - }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParams.js.map b/build/ssdMobilenetv1/extractParams.js.map deleted file mode 100644 index 7757ed6..0000000 --- a/build/ssdMobilenetv1/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/extractParams.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts b/build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index 163969a..0000000 --- a/build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { NetParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts.map b/build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index 7f09d00..0000000 --- a/build/ssdMobilenetv1/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAqE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE5G,OAAO,EAAoC,SAAS,EAA8C,MAAM,SAAS,CAAC;AAwGlH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,GAC3B;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CA2BtD"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParamsFromWeigthMap.js b/build/ssdMobilenetv1/extractParamsFromWeigthMap.js deleted file mode 100644 index 8e32ed4..0000000 --- a/build/ssdMobilenetv1/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,100 +0,0 @@ -import { disposeUnusedWeightTensors, extractWeightEntryFactory } from '../common'; -import { isTensor3D } from '../utils'; -function extractorsFactory(weightMap, paramMappings) { - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - function extractPointwiseConvParams(prefix, idx, mappedPrefix) { - const filters = extractWeightEntry(`${prefix}/Conv2d_${idx}_pointwise/weights`, 4, `${mappedPrefix}/filters`); - const batch_norm_offset = extractWeightEntry(`${prefix}/Conv2d_${idx}_pointwise/convolution_bn_offset`, 1, `${mappedPrefix}/batch_norm_offset`); - return { filters, batch_norm_offset }; - } - function extractConvPairParams(idx) { - const mappedPrefix = `mobilenetv1/conv_${idx}`; - const prefixDepthwiseConv = `MobilenetV1/Conv2d_${idx}_depthwise`; - const mappedPrefixDepthwiseConv = `${mappedPrefix}/depthwise_conv`; - const mappedPrefixPointwiseConv = `${mappedPrefix}/pointwise_conv`; - const filters = extractWeightEntry(`${prefixDepthwiseConv}/depthwise_weights`, 4, `${mappedPrefixDepthwiseConv}/filters`); - const batch_norm_scale = extractWeightEntry(`${prefixDepthwiseConv}/BatchNorm/gamma`, 1, `${mappedPrefixDepthwiseConv}/batch_norm_scale`); - const batch_norm_offset = extractWeightEntry(`${prefixDepthwiseConv}/BatchNorm/beta`, 1, `${mappedPrefixDepthwiseConv}/batch_norm_offset`); - const batch_norm_mean = extractWeightEntry(`${prefixDepthwiseConv}/BatchNorm/moving_mean`, 1, `${mappedPrefixDepthwiseConv}/batch_norm_mean`); - const batch_norm_variance = extractWeightEntry(`${prefixDepthwiseConv}/BatchNorm/moving_variance`, 1, `${mappedPrefixDepthwiseConv}/batch_norm_variance`); - return { - depthwise_conv: { - filters, - batch_norm_scale, - batch_norm_offset, - batch_norm_mean, - batch_norm_variance - }, - pointwise_conv: extractPointwiseConvParams('MobilenetV1', idx, mappedPrefixPointwiseConv) - }; - } - function extractMobilenetV1Params() { - return { - conv_0: extractPointwiseConvParams('MobilenetV1', 0, 'mobilenetv1/conv_0'), - conv_1: extractConvPairParams(1), - conv_2: extractConvPairParams(2), - conv_3: extractConvPairParams(3), - conv_4: extractConvPairParams(4), - conv_5: extractConvPairParams(5), - conv_6: extractConvPairParams(6), - conv_7: extractConvPairParams(7), - conv_8: extractConvPairParams(8), - conv_9: extractConvPairParams(9), - conv_10: extractConvPairParams(10), - conv_11: extractConvPairParams(11), - conv_12: extractConvPairParams(12), - conv_13: extractConvPairParams(13) - }; - } - function extractConvParams(prefix, mappedPrefix) { - const filters = extractWeightEntry(`${prefix}/weights`, 4, `${mappedPrefix}/filters`); - const bias = extractWeightEntry(`${prefix}/biases`, 1, `${mappedPrefix}/bias`); - return { filters, bias }; - } - function extractBoxPredictorParams(idx) { - const box_encoding_predictor = extractConvParams(`Prediction/BoxPredictor_${idx}/BoxEncodingPredictor`, `prediction_layer/box_predictor_${idx}/box_encoding_predictor`); - const class_predictor = extractConvParams(`Prediction/BoxPredictor_${idx}/ClassPredictor`, `prediction_layer/box_predictor_${idx}/class_predictor`); - return { box_encoding_predictor, class_predictor }; - } - function extractPredictionLayerParams() { - return { - conv_0: extractPointwiseConvParams('Prediction', 0, 'prediction_layer/conv_0'), - conv_1: extractPointwiseConvParams('Prediction', 1, 'prediction_layer/conv_1'), - conv_2: extractPointwiseConvParams('Prediction', 2, 'prediction_layer/conv_2'), - conv_3: extractPointwiseConvParams('Prediction', 3, 'prediction_layer/conv_3'), - conv_4: extractPointwiseConvParams('Prediction', 4, 'prediction_layer/conv_4'), - conv_5: extractPointwiseConvParams('Prediction', 5, 'prediction_layer/conv_5'), - conv_6: extractPointwiseConvParams('Prediction', 6, 'prediction_layer/conv_6'), - conv_7: extractPointwiseConvParams('Prediction', 7, 'prediction_layer/conv_7'), - box_predictor_0: extractBoxPredictorParams(0), - box_predictor_1: extractBoxPredictorParams(1), - box_predictor_2: extractBoxPredictorParams(2), - box_predictor_3: extractBoxPredictorParams(3), - box_predictor_4: extractBoxPredictorParams(4), - box_predictor_5: extractBoxPredictorParams(5) - }; - } - return { - extractMobilenetV1Params, - extractPredictionLayerParams - }; -} -export function extractParamsFromWeigthMap(weightMap) { - const paramMappings = []; - const { extractMobilenetV1Params, extractPredictionLayerParams } = extractorsFactory(weightMap, paramMappings); - const extra_dim = weightMap['Output/extra_dim']; - paramMappings.push({ originalPath: 'Output/extra_dim', paramPath: 'output_layer/extra_dim' }); - if (!isTensor3D(extra_dim)) { - throw new Error(`expected weightMap['Output/extra_dim'] to be a Tensor3D, instead have ${extra_dim}`); - } - const params = { - mobilenetv1: extractMobilenetV1Params(), - prediction_layer: extractPredictionLayerParams(), - output_layer: { - extra_dim - } - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/extractParamsFromWeigthMap.js.map b/build/ssdMobilenetv1/extractParamsFromWeigthMap.js.map deleted file mode 100644 index b60921e..0000000 --- a/build/ssdMobilenetv1/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/index.d.ts b/build/ssdMobilenetv1/index.d.ts deleted file mode 100644 index 7ce6251..0000000 --- a/build/ssdMobilenetv1/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { SsdMobilenetv1 } from './SsdMobilenetv1'; -export * from './SsdMobilenetv1'; -export * from './SsdMobilenetv1Options'; -export declare function createSsdMobilenetv1(weights: Float32Array): SsdMobilenetv1; -export declare function createFaceDetectionNet(weights: Float32Array): SsdMobilenetv1; -export declare class FaceDetectionNet extends SsdMobilenetv1 { -} -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/index.d.ts.map b/build/ssdMobilenetv1/index.d.ts.map deleted file mode 100644 index 8ca1c39..0000000 --- a/build/ssdMobilenetv1/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AAExC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,YAAY,kBAIzD;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,kBAE3D;AAGD,qBAAa,gBAAiB,SAAQ,cAAc;CAAG"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/index.js b/build/ssdMobilenetv1/index.js deleted file mode 100644 index 7ca7b0d..0000000 --- a/build/ssdMobilenetv1/index.js +++ /dev/null @@ -1,15 +0,0 @@ -import { SsdMobilenetv1 } from './SsdMobilenetv1'; -export * from './SsdMobilenetv1'; -export * from './SsdMobilenetv1Options'; -export function createSsdMobilenetv1(weights) { - const net = new SsdMobilenetv1(); - net.extractWeights(weights); - return net; -} -export function createFaceDetectionNet(weights) { - return createSsdMobilenetv1(weights); -} -// alias for backward compatibily -export class FaceDetectionNet extends SsdMobilenetv1 { -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/index.js.map b/build/ssdMobilenetv1/index.js.map deleted file mode 100644 index 761f8e5..0000000 --- a/build/ssdMobilenetv1/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AAExC,MAAM,UAAU,oBAAoB,CAAC,OAAqB;IACxD,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE,CAAA;IAChC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3B,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAqB;IAC1D,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAA;AACtC,CAAC;AAED,iCAAiC;AACjC,MAAM,OAAO,gBAAiB,SAAQ,cAAc;CAAG"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/mobileNetV1.d.ts b/build/ssdMobilenetv1/mobileNetV1.d.ts deleted file mode 100644 index 1d11181..0000000 --- a/build/ssdMobilenetv1/mobileNetV1.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { MobileNetV1 } from './types'; -export declare function mobileNetV1(x: tf.Tensor4D, params: MobileNetV1.Params): { - out: tf.Tensor4D; - conv11: any; -}; -//# sourceMappingURL=mobileNetV1.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/mobileNetV1.d.ts.map b/build/ssdMobilenetv1/mobileNetV1.d.ts.map deleted file mode 100644 index eaf0a67..0000000 --- a/build/ssdMobilenetv1/mobileNetV1.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mobileNetV1.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/mobileNetV1.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA6BtC,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM;;;EA0CrE"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/mobileNetV1.js b/build/ssdMobilenetv1/mobileNetV1.js deleted file mode 100644 index 3d7fcd7..0000000 --- a/build/ssdMobilenetv1/mobileNetV1.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { pointwiseConvLayer } from './pointwiseConvLayer'; -const epsilon = 0.0010000000474974513; -function depthwiseConvLayer(x, params, strides) { - return tf.tidy(() => { - let out = tf.depthwiseConv2d(x, params.filters, strides, 'same'); - out = tf.batchNorm(out, params.batch_norm_mean, params.batch_norm_variance, params.batch_norm_offset, params.batch_norm_scale, epsilon); - return tf.clipByValue(out, 0, 6); - }); -} -function getStridesForLayerIdx(layerIdx) { - return [2, 4, 6, 12].some(idx => idx === layerIdx) ? [2, 2] : [1, 1]; -} -export function mobileNetV1(x, params) { - return tf.tidy(() => { - let conv11 = null; - let out = pointwiseConvLayer(x, params.conv_0, [2, 2]); - const convPairParams = [ - params.conv_1, - params.conv_2, - params.conv_3, - params.conv_4, - params.conv_5, - params.conv_6, - params.conv_7, - params.conv_8, - params.conv_9, - params.conv_10, - params.conv_11, - params.conv_12, - params.conv_13 - ]; - convPairParams.forEach((param, i) => { - const layerIdx = i + 1; - const depthwiseConvStrides = getStridesForLayerIdx(layerIdx); - out = depthwiseConvLayer(out, param.depthwise_conv, depthwiseConvStrides); - out = pointwiseConvLayer(out, param.pointwise_conv, [1, 1]); - if (layerIdx === 11) { - conv11 = out; - } - }); - if (conv11 === null) { - throw new Error('mobileNetV1 - output of conv layer 11 is null'); - } - return { - out, - conv11: conv11 - }; - }); -} -//# sourceMappingURL=mobileNetV1.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/mobileNetV1.js.map b/build/ssdMobilenetv1/mobileNetV1.js.map deleted file mode 100644 index 35f0263..0000000 --- a/build/ssdMobilenetv1/mobileNetV1.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mobileNetV1.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/mobileNetV1.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,OAAO,GAAG,qBAAqB,CAAA;AAErC,SAAS,kBAAkB,CACzB,CAAc,EACd,MAAuC,EACvC,OAAyB;IAEzB,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,IAAI,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAChE,GAAG,GAAG,EAAE,CAAC,SAAS,CAChB,GAAG,EACH,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,gBAAgB,EACvB,OAAO,CACR,CAAA;QACD,OAAO,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAElC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAgB;IAC7C,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,CAAc,EAAE,MAA0B;IACpE,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,IAAI,MAAM,GAAG,IAAI,CAAA;QACjB,IAAI,GAAG,GAAG,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAEtD,MAAM,cAAc,GAAG;YACrB,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,MAAM;YACb,MAAM,CAAC,OAAO;YACd,MAAM,CAAC,OAAO;YACd,MAAM,CAAC,OAAO;YACd,MAAM,CAAC,OAAO;SACf,CAAA;QAED,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAA;YACtB,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;YAC5D,GAAG,GAAG,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAA;YACzE,GAAG,GAAG,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3D,IAAI,QAAQ,KAAK,EAAE,EAAE;gBACnB,MAAM,GAAG,GAAG,CAAA;aACb;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,MAAM,KAAK,IAAI,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;SACjE;QAED,OAAO;YACL,GAAG;YACH,MAAM,EAAE,MAAa;SACtB,CAAA;IAEH,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/nonMaxSuppression.d.ts b/build/ssdMobilenetv1/nonMaxSuppression.d.ts deleted file mode 100644 index 580a5de..0000000 --- a/build/ssdMobilenetv1/nonMaxSuppression.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare function nonMaxSuppression(boxes: tf.Tensor2D, scores: number[], maxOutputSize: number, iouThreshold: number, scoreThreshold: number): number[]; -//# sourceMappingURL=nonMaxSuppression.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/nonMaxSuppression.d.ts.map b/build/ssdMobilenetv1/nonMaxSuppression.d.ts.map deleted file mode 100644 index 756dccb..0000000 --- a/build/ssdMobilenetv1/nonMaxSuppression.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"nonMaxSuppression.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/nonMaxSuppression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAE3C,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,EAAE,CAAC,QAAQ,EAClB,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,GACrB,MAAM,EAAE,CAwCV"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/nonMaxSuppression.js b/build/ssdMobilenetv1/nonMaxSuppression.js deleted file mode 100644 index e705ac5..0000000 --- a/build/ssdMobilenetv1/nonMaxSuppression.js +++ /dev/null @@ -1,54 +0,0 @@ -export function nonMaxSuppression(boxes, scores, maxOutputSize, iouThreshold, scoreThreshold) { - const numBoxes = boxes.shape[0]; - const outputSize = Math.min(maxOutputSize, numBoxes); - const candidates = scores - .map((score, boxIndex) => ({ score, boxIndex })) - .filter(c => c.score > scoreThreshold) - .sort((c1, c2) => c2.score - c1.score); - const suppressFunc = (x) => x <= iouThreshold ? 1 : 0; - const selected = []; - candidates.forEach(c => { - if (selected.length >= outputSize) { - return; - } - const originalScore = c.score; - for (let j = selected.length - 1; j >= 0; --j) { - const iou = IOU(boxes, c.boxIndex, selected[j]); - if (iou === 0.0) { - continue; - } - c.score *= suppressFunc(iou); - if (c.score <= scoreThreshold) { - break; - } - } - if (originalScore === c.score) { - selected.push(c.boxIndex); - } - }); - return selected; -} -function IOU(boxes, i, j) { - const boxesData = boxes.arraySync(); - const yminI = Math.min(boxesData[i][0], boxesData[i][2]); - const xminI = Math.min(boxesData[i][1], boxesData[i][3]); - const ymaxI = Math.max(boxesData[i][0], boxesData[i][2]); - const xmaxI = Math.max(boxesData[i][1], boxesData[i][3]); - const yminJ = Math.min(boxesData[j][0], boxesData[j][2]); - const xminJ = Math.min(boxesData[j][1], boxesData[j][3]); - const ymaxJ = Math.max(boxesData[j][0], boxesData[j][2]); - const xmaxJ = Math.max(boxesData[j][1], boxesData[j][3]); - const areaI = (ymaxI - yminI) * (xmaxI - xminI); - const areaJ = (ymaxJ - yminJ) * (xmaxJ - xminJ); - if (areaI <= 0 || areaJ <= 0) { - return 0.0; - } - const intersectionYmin = Math.max(yminI, yminJ); - const intersectionXmin = Math.max(xminI, xminJ); - const intersectionYmax = Math.min(ymaxI, ymaxJ); - const intersectionXmax = Math.min(xmaxI, xmaxJ); - const intersectionArea = Math.max(intersectionYmax - intersectionYmin, 0.0) * - Math.max(intersectionXmax - intersectionXmin, 0.0); - return intersectionArea / (areaI + areaJ - intersectionArea); -} -//# sourceMappingURL=nonMaxSuppression.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/nonMaxSuppression.js.map b/build/ssdMobilenetv1/nonMaxSuppression.js.map deleted file mode 100644 index e1d629c..0000000 --- a/build/ssdMobilenetv1/nonMaxSuppression.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"nonMaxSuppression.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/nonMaxSuppression.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/outputLayer.d.ts b/build/ssdMobilenetv1/outputLayer.d.ts deleted file mode 100644 index f8ab338..0000000 --- a/build/ssdMobilenetv1/outputLayer.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { OutputLayerParams } from './types'; -export declare function outputLayer(boxPredictions: tf.Tensor4D, classPredictions: tf.Tensor4D, params: OutputLayerParams): { - boxes: tf.Tensor2D[]; - scores: tf.Tensor1D[]; -}; -//# sourceMappingURL=outputLayer.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/outputLayer.d.ts.map b/build/ssdMobilenetv1/outputLayer.d.ts.map deleted file mode 100644 index 2f44527..0000000 --- a/build/ssdMobilenetv1/outputLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"outputLayer.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/outputLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AA+C5C,wBAAgB,WAAW,CACzB,cAAc,EAAE,EAAE,CAAC,QAAQ,EAC3B,gBAAgB,EAAE,EAAE,CAAC,QAAQ,EAC7B,MAAM,EAAE,iBAAiB;;;EAgC1B"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/outputLayer.js b/build/ssdMobilenetv1/outputLayer.js deleted file mode 100644 index df80ca7..0000000 --- a/build/ssdMobilenetv1/outputLayer.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -function getCenterCoordinatesAndSizesLayer(x) { - const vec = tf.unstack(tf.transpose(x, [1, 0])); - const sizes = [ - tf.sub(vec[2], vec[0]), - tf.sub(vec[3], vec[1]) - ]; - const centers = [ - tf.add(vec[0], tf.div(sizes[0], tf.scalar(2))), - tf.add(vec[1], tf.div(sizes[1], tf.scalar(2))) - ]; - return { - sizes, - centers - }; -} -function decodeBoxesLayer(x0, x1) { - const { sizes, centers } = getCenterCoordinatesAndSizesLayer(x0); - const vec = tf.unstack(tf.transpose(x1, [1, 0])); - const div0_out = tf.div(tf.mul(tf.exp(tf.div(vec[2], tf.scalar(5))), sizes[0]), tf.scalar(2)); - const add0_out = tf.add(tf.mul(tf.div(vec[0], tf.scalar(10)), sizes[0]), centers[0]); - const div1_out = tf.div(tf.mul(tf.exp(tf.div(vec[3], tf.scalar(5))), sizes[1]), tf.scalar(2)); - const add1_out = tf.add(tf.mul(tf.div(vec[1], tf.scalar(10)), sizes[1]), centers[1]); - return tf.transpose(tf.stack([ - tf.sub(add0_out, div0_out), - tf.sub(add1_out, div1_out), - tf.add(add0_out, div0_out), - tf.add(add1_out, div1_out) - ]), [1, 0]); -} -export function outputLayer(boxPredictions, classPredictions, params) { - return tf.tidy(() => { - const batchSize = boxPredictions.shape[0]; - let boxes = decodeBoxesLayer(tf.reshape(tf.tile(params.extra_dim, [batchSize, 1, 1]), [-1, 4]), tf.reshape(boxPredictions, [-1, 4])); - boxes = tf.reshape(boxes, [batchSize, (boxes.shape[0] / batchSize), 4]); - const scoresAndClasses = tf.sigmoid(tf.slice(classPredictions, [0, 0, 1], [-1, -1, -1])); - let scores = tf.slice(scoresAndClasses, [0, 0, 0], [-1, -1, 1]); - scores = tf.reshape(scores, [batchSize, scores.shape[1]]); - const boxesByBatch = tf.unstack(boxes); - const scoresByBatch = tf.unstack(scores); - return { - boxes: boxesByBatch, - scores: scoresByBatch - }; - }); -} -//# sourceMappingURL=outputLayer.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/outputLayer.js.map b/build/ssdMobilenetv1/outputLayer.js.map deleted file mode 100644 index 895fb27..0000000 --- a/build/ssdMobilenetv1/outputLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"outputLayer.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/outputLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAK5C,SAAS,iCAAiC,CAAC,CAAc;IACvD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAE/C,MAAM,KAAK,GAAG;QACZ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACtB,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;KACvB,CAAA;IAED,MAAM,OAAO,GAAG;QACd,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;KAC/C,CAAA;IAED,OAAO;QACL,KAAK;QACL,OAAO;KACR,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAe,EAAE,EAAe;IACxD,MAAM,EACJ,KAAK,EACL,OAAO,EACR,GAAG,iCAAiC,CAAC,EAAE,CAAC,CAAA;IAEzC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAEhD,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7F,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAEpF,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7F,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAEpF,OAAO,EAAE,CAAC,SAAS,CACjB,EAAE,CAAC,KAAK,CAAC;QACP,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC1B,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC1B,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC1B,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC;KAC3B,CAAC,EACF,CAAC,CAAC,EAAE,CAAC,CAAC,CACP,CAAA;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,cAA2B,EAC3B,gBAA6B,EAC7B,MAAyB;IAEzB,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEzC,IAAI,KAAK,GAAG,gBAAgB,CAC1B,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgB,EAChF,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgB,CACnD,CAAA;QACD,KAAK,GAAG,EAAE,CAAC,OAAO,CAChB,KAAK,EACL,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,CAC7C,CAAA;QAED,MAAM,gBAAgB,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACxF,IAAI,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAc,CAAA;QAE5E,MAAM,GAAG,EAAE,CAAC,OAAO,CACjB,MAAM,EACN,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CACvC,CAAA;QAED,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAkB,CAAA;QACvD,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAkB,CAAA;QAEzD,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,aAAa;SACtB,CAAA;IAEH,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/pointwiseConvLayer.d.ts b/build/ssdMobilenetv1/pointwiseConvLayer.d.ts deleted file mode 100644 index 1782b95..0000000 --- a/build/ssdMobilenetv1/pointwiseConvLayer.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { PointwiseConvParams } from './types'; -export declare function pointwiseConvLayer(x: tf.Tensor4D, params: PointwiseConvParams, strides: [number, number]): tf.Tensor4D; -//# sourceMappingURL=pointwiseConvLayer.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/pointwiseConvLayer.d.ts.map b/build/ssdMobilenetv1/pointwiseConvLayer.d.ts.map deleted file mode 100644 index 2075ede..0000000 --- a/build/ssdMobilenetv1/pointwiseConvLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pointwiseConvLayer.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/pointwiseConvLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,wBAAgB,kBAAkB,CAChC,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,eAS1B"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/pointwiseConvLayer.js b/build/ssdMobilenetv1/pointwiseConvLayer.js deleted file mode 100644 index 7f5dace..0000000 --- a/build/ssdMobilenetv1/pointwiseConvLayer.js +++ /dev/null @@ -1,9 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function pointwiseConvLayer(x, params, strides) { - return tf.tidy(() => { - let out = tf.conv2d(x, params.filters, strides, 'same'); - out = tf.add(out, params.batch_norm_offset); - return tf.clipByValue(out, 0, 6); - }); -} -//# sourceMappingURL=pointwiseConvLayer.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/pointwiseConvLayer.js.map b/build/ssdMobilenetv1/pointwiseConvLayer.js.map deleted file mode 100644 index 7b1686d..0000000 --- a/build/ssdMobilenetv1/pointwiseConvLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pointwiseConvLayer.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/pointwiseConvLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,MAAM,UAAU,kBAAkB,CAChC,CAAc,EACd,MAA2B,EAC3B,OAAyB;IAEzB,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,IAAI,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QACvD,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAA;QAC3C,OAAO,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAElC,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/predictionLayer.d.ts b/build/ssdMobilenetv1/predictionLayer.d.ts deleted file mode 100644 index 9f8662d..0000000 --- a/build/ssdMobilenetv1/predictionLayer.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { PredictionLayerParams } from './types'; -export declare function predictionLayer(x: tf.Tensor4D, conv11: tf.Tensor4D, params: PredictionLayerParams): { - boxPredictions: tf.Tensor4D; - classPredictions: tf.Tensor4D; -}; -//# sourceMappingURL=predictionLayer.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/predictionLayer.d.ts.map b/build/ssdMobilenetv1/predictionLayer.d.ts.map deleted file mode 100644 index c49a5c9..0000000 --- a/build/ssdMobilenetv1/predictionLayer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"predictionLayer.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/predictionLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEhD,wBAAgB,eAAe,CAC7B,CAAC,EAAE,EAAE,CAAC,QAAQ,EACd,MAAM,EAAE,EAAE,CAAC,QAAQ,EACnB,MAAM,EAAE,qBAAqB;;;EA2C9B"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/predictionLayer.js b/build/ssdMobilenetv1/predictionLayer.js deleted file mode 100644 index 5e4814a..0000000 --- a/build/ssdMobilenetv1/predictionLayer.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { boxPredictionLayer } from './boxPredictionLayer'; -import { pointwiseConvLayer } from './pointwiseConvLayer'; -export function predictionLayer(x, conv11, params) { - return tf.tidy(() => { - const conv0 = pointwiseConvLayer(x, params.conv_0, [1, 1]); - const conv1 = pointwiseConvLayer(conv0, params.conv_1, [2, 2]); - const conv2 = pointwiseConvLayer(conv1, params.conv_2, [1, 1]); - const conv3 = pointwiseConvLayer(conv2, params.conv_3, [2, 2]); - const conv4 = pointwiseConvLayer(conv3, params.conv_4, [1, 1]); - const conv5 = pointwiseConvLayer(conv4, params.conv_5, [2, 2]); - const conv6 = pointwiseConvLayer(conv5, params.conv_6, [1, 1]); - const conv7 = pointwiseConvLayer(conv6, params.conv_7, [2, 2]); - const boxPrediction0 = boxPredictionLayer(conv11, params.box_predictor_0); - const boxPrediction1 = boxPredictionLayer(x, params.box_predictor_1); - const boxPrediction2 = boxPredictionLayer(conv1, params.box_predictor_2); - const boxPrediction3 = boxPredictionLayer(conv3, params.box_predictor_3); - const boxPrediction4 = boxPredictionLayer(conv5, params.box_predictor_4); - const boxPrediction5 = boxPredictionLayer(conv7, params.box_predictor_5); - const boxPredictions = tf.concat([ - boxPrediction0.boxPredictionEncoding, - boxPrediction1.boxPredictionEncoding, - boxPrediction2.boxPredictionEncoding, - boxPrediction3.boxPredictionEncoding, - boxPrediction4.boxPredictionEncoding, - boxPrediction5.boxPredictionEncoding - ], 1); - const classPredictions = tf.concat([ - boxPrediction0.classPrediction, - boxPrediction1.classPrediction, - boxPrediction2.classPrediction, - boxPrediction3.classPrediction, - boxPrediction4.classPrediction, - boxPrediction5.classPrediction - ], 1); - return { - boxPredictions, - classPredictions - }; - }); -} -//# sourceMappingURL=predictionLayer.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/predictionLayer.js.map b/build/ssdMobilenetv1/predictionLayer.js.map deleted file mode 100644 index 0b5ce45..0000000 --- a/build/ssdMobilenetv1/predictionLayer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"predictionLayer.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/predictionLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,UAAU,eAAe,CAC7B,CAAc,EACd,MAAmB,EACnB,MAA6B;IAE7B,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAElB,MAAM,KAAK,GAAG,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAE9D,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC,CAAA;QACzE,MAAM,cAAc,GAAG,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,eAAe,CAAC,CAAA;QACpE,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAA;QACxE,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAA;QACxE,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAA;QACxE,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAA;QAExE,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;YAC/B,cAAc,CAAC,qBAAqB;YACpC,cAAc,CAAC,qBAAqB;YACpC,cAAc,CAAC,qBAAqB;YACpC,cAAc,CAAC,qBAAqB;YACpC,cAAc,CAAC,qBAAqB;YACpC,cAAc,CAAC,qBAAqB;SACrC,EAAE,CAAC,CAAgB,CAAA;QAEpB,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC;YACjC,cAAc,CAAC,eAAe;YAC9B,cAAc,CAAC,eAAe;YAC9B,cAAc,CAAC,eAAe;YAC9B,cAAc,CAAC,eAAe;YAC9B,cAAc,CAAC,eAAe;YAC9B,cAAc,CAAC,eAAe;SAC/B,EAAE,CAAC,CAAgB,CAAA;QAEpB,OAAO;YACL,cAAc;YACd,gBAAgB;SACjB,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/types.d.ts b/build/ssdMobilenetv1/types.d.ts deleted file mode 100644 index 25ba550..0000000 --- a/build/ssdMobilenetv1/types.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ConvParams } from '../common'; -export declare type PointwiseConvParams = { - filters: tf.Tensor4D; - batch_norm_offset: tf.Tensor1D; -}; -export declare namespace MobileNetV1 { - type DepthwiseConvParams = { - filters: tf.Tensor4D; - batch_norm_scale: tf.Tensor1D; - batch_norm_offset: tf.Tensor1D; - batch_norm_mean: tf.Tensor1D; - batch_norm_variance: tf.Tensor1D; - }; - type ConvPairParams = { - depthwise_conv: DepthwiseConvParams; - pointwise_conv: PointwiseConvParams; - }; - type Params = { - conv_0: PointwiseConvParams; - conv_1: ConvPairParams; - conv_2: ConvPairParams; - conv_3: ConvPairParams; - conv_4: ConvPairParams; - conv_5: ConvPairParams; - conv_6: ConvPairParams; - conv_7: ConvPairParams; - conv_8: ConvPairParams; - conv_9: ConvPairParams; - conv_10: ConvPairParams; - conv_11: ConvPairParams; - conv_12: ConvPairParams; - conv_13: ConvPairParams; - }; -} -export declare type BoxPredictionParams = { - box_encoding_predictor: ConvParams; - class_predictor: ConvParams; -}; -export declare type PredictionLayerParams = { - conv_0: PointwiseConvParams; - conv_1: PointwiseConvParams; - conv_2: PointwiseConvParams; - conv_3: PointwiseConvParams; - conv_4: PointwiseConvParams; - conv_5: PointwiseConvParams; - conv_6: PointwiseConvParams; - conv_7: PointwiseConvParams; - box_predictor_0: BoxPredictionParams; - box_predictor_1: BoxPredictionParams; - box_predictor_2: BoxPredictionParams; - box_predictor_3: BoxPredictionParams; - box_predictor_4: BoxPredictionParams; - box_predictor_5: BoxPredictionParams; -}; -export declare type OutputLayerParams = { - extra_dim: tf.Tensor3D; -}; -export declare type NetParams = { - mobilenetv1: MobileNetV1.Params; - prediction_layer: PredictionLayerParams; - output_layer: OutputLayerParams; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/types.d.ts.map b/build/ssdMobilenetv1/types.d.ts.map deleted file mode 100644 index b9f2056..0000000 --- a/build/ssdMobilenetv1/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ssdMobilenetv1/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,oBAAY,mBAAmB,GAAG;IAChC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAA;IACpB,iBAAiB,EAAE,EAAE,CAAC,QAAQ,CAAA;CAC/B,CAAA;AAED,yBAAiB,WAAW,CAAC;IAE3B,KAAY,mBAAmB,GAAG;QAChC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAA;QACpB,gBAAgB,EAAE,EAAE,CAAC,QAAQ,CAAA;QAC7B,iBAAiB,EAAE,EAAE,CAAC,QAAQ,CAAA;QAC9B,eAAe,EAAE,EAAE,CAAC,QAAQ,CAAA;QAC5B,mBAAmB,EAAE,EAAE,CAAC,QAAQ,CAAA;KACjC,CAAA;IAED,KAAY,cAAc,GAAG;QAC3B,cAAc,EAAE,mBAAmB,CAAA;QACnC,cAAc,EAAE,mBAAmB,CAAA;KACpC,CAAA;IAED,KAAY,MAAM,GAAG;QACnB,MAAM,EAAE,mBAAmB,CAAA;QAC3B,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,MAAM,EAAE,cAAc,CAAA;QACtB,OAAO,EAAE,cAAc,CAAA;QACvB,OAAO,EAAE,cAAc,CAAA;QACvB,OAAO,EAAE,cAAc,CAAA;QACvB,OAAO,EAAE,cAAc,CAAA;KACxB,CAAA;CAEF;AAED,oBAAY,mBAAmB,GAAG;IAChC,sBAAsB,EAAE,UAAU,CAAA;IAClC,eAAe,EAAE,UAAU,CAAA;CAC5B,CAAA;AAED,oBAAY,qBAAqB,GAAG;IAClC,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,mBAAmB,CAAA;IAC3B,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;CACrC,CAAA;AAED,oBAAY,iBAAiB,GAAG;IAC9B,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAA;CACvB,CAAA;AAED,oBAAY,SAAS,GAAG;IACtB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC;IAChC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,YAAY,EAAE,iBAAiB,CAAA;CAChC,CAAA"} \ No newline at end of file diff --git a/build/ssdMobilenetv1/types.js b/build/ssdMobilenetv1/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/ssdMobilenetv1/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/ssdMobilenetv1/types.js.map b/build/ssdMobilenetv1/types.js.map deleted file mode 100644 index c7a2d5f..0000000 --- a/build/ssdMobilenetv1/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ssdMobilenetv1/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetector.d.ts b/build/tinyFaceDetector/TinyFaceDetector.d.ts deleted file mode 100644 index 6fc8aa7..0000000 --- a/build/tinyFaceDetector/TinyFaceDetector.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FaceDetection, Point } from '../classes'; -import { ParamMapping } from '../common'; -import { TNetInput } from '../dom'; -import { ITinyYolov2Options } from '../tinyYolov2'; -import { TinyYolov2Base } from '../tinyYolov2/TinyYolov2Base'; -import { TinyYolov2NetParams } from '../tinyYolov2/types'; -export declare class TinyFaceDetector extends TinyYolov2Base { - constructor(); - get anchors(): Point[]; - locateFaces(input: TNetInput, forwardParams: ITinyYolov2Options): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: TinyYolov2NetParams; - paramMappings: ParamMapping[]; - }; -} -//# sourceMappingURL=TinyFaceDetector.d.ts.map \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetector.d.ts.map b/build/tinyFaceDetector/TinyFaceDetector.d.ts.map deleted file mode 100644 index bc85819..0000000 --- a/build/tinyFaceDetector/TinyFaceDetector.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyFaceDetector.d.ts","sourceRoot":"","sources":["../../src/tinyFaceDetector/TinyFaceDetector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,qBAAa,gBAAiB,SAAQ,cAAc;;IAgBlD,IAAW,OAAO,IAAI,KAAK,EAAE,CAE5B;IAEY,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAKvG,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,mBAAmB,CAAC;QAAC,aAAa,EAAE,YAAY,EAAE,CAAA;KAAE;CAGnI"} \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetector.js b/build/tinyFaceDetector/TinyFaceDetector.js deleted file mode 100644 index 9024d31..0000000 --- a/build/tinyFaceDetector/TinyFaceDetector.js +++ /dev/null @@ -1,31 +0,0 @@ -import { FaceDetection } from '../classes'; -import { TinyYolov2Base } from '../tinyYolov2/TinyYolov2Base'; -import { BOX_ANCHORS, IOU_THRESHOLD, MEAN_RGB } from './const'; -export class TinyFaceDetector extends TinyYolov2Base { - constructor() { - const config = { - withSeparableConvs: true, - iouThreshold: IOU_THRESHOLD, - classes: ['face'], - anchors: BOX_ANCHORS, - meanRgb: MEAN_RGB, - isFirstLayerConv2d: true, - filterSizes: [3, 16, 32, 64, 128, 256, 512] - }; - super(config); - } - get anchors() { - return this.config.anchors; - } - async locateFaces(input, forwardParams) { - const objectDetections = await this.detect(input, forwardParams); - return objectDetections.map(det => new FaceDetection(det.score, det.relativeBox, { width: det.imageWidth, height: det.imageHeight })); - } - getDefaultModelName() { - return 'tiny_face_detector_model'; - } - extractParamsFromWeigthMap(weightMap) { - return super.extractParamsFromWeigthMap(weightMap); - } -} -//# sourceMappingURL=TinyFaceDetector.js.map \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetector.js.map b/build/tinyFaceDetector/TinyFaceDetector.js.map deleted file mode 100644 index 0e3f274..0000000 --- a/build/tinyFaceDetector/TinyFaceDetector.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyFaceDetector.js","sourceRoot":"","sources":["../../src/tinyFaceDetector/TinyFaceDetector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAS,MAAM,YAAY,CAAC;AAIlD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,MAAM,OAAO,gBAAiB,SAAQ,cAAc;IAElD;QACE,MAAM,MAAM,GAAG;YACb,kBAAkB,EAAE,IAAI;YACxB,YAAY,EAAE,aAAa;YAC3B,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,WAAW;YACpB,OAAO,EAAE,QAAQ;YACjB,kBAAkB,EAAE,IAAI;YACxB,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;SAC5C,CAAA;QAED,KAAK,CAAC,MAAM,CAAC,CAAA;IACf,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,KAAgB,EAAE,aAAiC;QAC1E,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QAChE,OAAO,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IACvI,CAAC;IAES,mBAAmB;QAC3B,OAAO,0BAA0B,CAAA;IACnC,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAC/D,OAAO,KAAK,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAA;IACpD,CAAC;CACF"} \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts b/build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts deleted file mode 100644 index 44984ae..0000000 --- a/build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ITinyYolov2Options, TinyYolov2Options } from '../tinyYolov2'; -export interface ITinyFaceDetectorOptions extends ITinyYolov2Options { -} -export declare class TinyFaceDetectorOptions extends TinyYolov2Options { - protected _name: string; -} -//# sourceMappingURL=TinyFaceDetectorOptions.d.ts.map \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts.map b/build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts.map deleted file mode 100644 index 65fc57c..0000000 --- a/build/tinyFaceDetector/TinyFaceDetectorOptions.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyFaceDetectorOptions.d.ts","sourceRoot":"","sources":["../../src/tinyFaceDetector/TinyFaceDetectorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEtE,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;CAAG;AAEvE,qBAAa,uBAAwB,SAAQ,iBAAiB;IAC5D,SAAS,CAAC,KAAK,EAAE,MAAM,CAA4B;CACpD"} \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetectorOptions.js b/build/tinyFaceDetector/TinyFaceDetectorOptions.js deleted file mode 100644 index 53d6172..0000000 --- a/build/tinyFaceDetector/TinyFaceDetectorOptions.js +++ /dev/null @@ -1,8 +0,0 @@ -import { TinyYolov2Options } from '../tinyYolov2'; -export class TinyFaceDetectorOptions extends TinyYolov2Options { - constructor() { - super(...arguments); - this._name = 'TinyFaceDetectorOptions'; - } -} -//# sourceMappingURL=TinyFaceDetectorOptions.js.map \ No newline at end of file diff --git a/build/tinyFaceDetector/TinyFaceDetectorOptions.js.map b/build/tinyFaceDetector/TinyFaceDetectorOptions.js.map deleted file mode 100644 index a468927..0000000 --- a/build/tinyFaceDetector/TinyFaceDetectorOptions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyFaceDetectorOptions.js","sourceRoot":"","sources":["../../src/tinyFaceDetector/TinyFaceDetectorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAItE,MAAM,OAAO,uBAAwB,SAAQ,iBAAiB;IAA9D;;QACY,UAAK,GAAW,yBAAyB,CAAA;IACrD,CAAC;CAAA"} \ No newline at end of file diff --git a/build/tinyFaceDetector/const.d.ts b/build/tinyFaceDetector/const.d.ts deleted file mode 100644 index 991c035..0000000 --- a/build/tinyFaceDetector/const.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Point } from '../classes'; -export declare const IOU_THRESHOLD = 0.4; -export declare const BOX_ANCHORS: Point[]; -export declare const MEAN_RGB: [number, number, number]; -//# sourceMappingURL=const.d.ts.map \ No newline at end of file diff --git a/build/tinyFaceDetector/const.d.ts.map b/build/tinyFaceDetector/const.d.ts.map deleted file mode 100644 index b96dd22..0000000 --- a/build/tinyFaceDetector/const.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../src/tinyFaceDetector/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,eAAO,MAAM,aAAa,MAAM,CAAA;AAEhC,eAAO,MAAM,WAAW,SAMvB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAA8B,CAAA"} \ No newline at end of file diff --git a/build/tinyFaceDetector/const.js b/build/tinyFaceDetector/const.js deleted file mode 100644 index f1cbe87..0000000 --- a/build/tinyFaceDetector/const.js +++ /dev/null @@ -1,11 +0,0 @@ -import { Point } from '../classes'; -export const IOU_THRESHOLD = 0.4; -export const BOX_ANCHORS = [ - new Point(1.603231, 2.094468), - new Point(6.041143, 7.080126), - new Point(2.882459, 3.518061), - new Point(4.266906, 5.178857), - new Point(9.041765, 10.66308) -]; -export const MEAN_RGB = [117.001, 114.697, 97.404]; -//# sourceMappingURL=const.js.map \ No newline at end of file diff --git a/build/tinyFaceDetector/const.js.map b/build/tinyFaceDetector/const.js.map deleted file mode 100644 index 041f497..0000000 --- a/build/tinyFaceDetector/const.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/tinyFaceDetector/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;AAEhC,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA"} \ No newline at end of file diff --git a/build/tinyFaceDetector/index.d.ts b/build/tinyFaceDetector/index.d.ts deleted file mode 100644 index 11643f9..0000000 --- a/build/tinyFaceDetector/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { TinyFaceDetector } from './TinyFaceDetector'; -export * from './TinyFaceDetector'; -export * from './TinyFaceDetectorOptions'; -export declare function createTinyFaceDetector(weights: Float32Array): TinyFaceDetector; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/tinyFaceDetector/index.d.ts.map b/build/tinyFaceDetector/index.d.ts.map deleted file mode 100644 index f18daa7..0000000 --- a/build/tinyFaceDetector/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tinyFaceDetector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAE1C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,oBAI3D"} \ No newline at end of file diff --git a/build/tinyFaceDetector/index.js b/build/tinyFaceDetector/index.js deleted file mode 100644 index 0c0bd91..0000000 --- a/build/tinyFaceDetector/index.js +++ /dev/null @@ -1,9 +0,0 @@ -import { TinyFaceDetector } from './TinyFaceDetector'; -export * from './TinyFaceDetector'; -export * from './TinyFaceDetectorOptions'; -export function createTinyFaceDetector(weights) { - const net = new TinyFaceDetector(); - net.extractWeights(weights); - return net; -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/tinyFaceDetector/index.js.map b/build/tinyFaceDetector/index.js.map deleted file mode 100644 index fb02caa..0000000 --- a/build/tinyFaceDetector/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tinyFaceDetector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAE1C,MAAM,UAAU,sBAAsB,CAAC,OAAqB;IAC1D,MAAM,GAAG,GAAG,IAAI,gBAAgB,EAAE,CAAA;IAClC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3B,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2.d.ts b/build/tinyYolov2/TinyYolov2.d.ts deleted file mode 100644 index d1c6ee4..0000000 --- a/build/tinyYolov2/TinyYolov2.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { FaceDetection, Point } from '../classes'; -import { ParamMapping } from '../common/types'; -import { TNetInput } from '../dom/types'; -import { TinyYolov2Base } from './TinyYolov2Base'; -import { ITinyYolov2Options } from './TinyYolov2Options'; -import { TinyYolov2NetParams } from './types'; -export declare class TinyYolov2 extends TinyYolov2Base { - constructor(withSeparableConvs?: boolean); - get withSeparableConvs(): boolean; - get anchors(): Point[]; - locateFaces(input: TNetInput, forwardParams: ITinyYolov2Options): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: TinyYolov2NetParams; - paramMappings: ParamMapping[]; - }; -} -//# sourceMappingURL=TinyYolov2.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2.d.ts.map b/build/tinyYolov2/TinyYolov2.d.ts.map deleted file mode 100644 index 869b54b..0000000 --- a/build/tinyYolov2/TinyYolov2.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyYolov2.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/TinyYolov2.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AASzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,qBAAa,UAAW,SAAQ,cAAc;gBAEhC,kBAAkB,GAAE,OAAc;IAoB9C,IAAW,kBAAkB,IAAI,OAAO,CAEvC;IAED,IAAW,OAAO,IAAI,KAAK,EAAE,CAE5B;IAEY,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAKvG,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,mBAAmB,CAAC;QAAC,aAAa,EAAE,YAAY,EAAE,CAAA;KAAE;CAGnI"} \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2.js b/build/tinyYolov2/TinyYolov2.js deleted file mode 100644 index a69ea6d..0000000 --- a/build/tinyYolov2/TinyYolov2.js +++ /dev/null @@ -1,38 +0,0 @@ -import { FaceDetection } from '../classes'; -import { BOX_ANCHORS, BOX_ANCHORS_SEPARABLE, DEFAULT_MODEL_NAME, DEFAULT_MODEL_NAME_SEPARABLE_CONV, IOU_THRESHOLD, MEAN_RGB_SEPARABLE, } from './const'; -import { TinyYolov2Base } from './TinyYolov2Base'; -export class TinyYolov2 extends TinyYolov2Base { - constructor(withSeparableConvs = true) { - const config = Object.assign({}, { - withSeparableConvs, - iouThreshold: IOU_THRESHOLD, - classes: ['face'] - }, withSeparableConvs - ? { - anchors: BOX_ANCHORS_SEPARABLE, - meanRgb: MEAN_RGB_SEPARABLE - } - : { - anchors: BOX_ANCHORS, - withClassScores: true - }); - super(config); - } - get withSeparableConvs() { - return this.config.withSeparableConvs; - } - get anchors() { - return this.config.anchors; - } - async locateFaces(input, forwardParams) { - const objectDetections = await this.detect(input, forwardParams); - return objectDetections.map(det => new FaceDetection(det.score, det.relativeBox, { width: det.imageWidth, height: det.imageHeight })); - } - getDefaultModelName() { - return this.withSeparableConvs ? DEFAULT_MODEL_NAME_SEPARABLE_CONV : DEFAULT_MODEL_NAME; - } - extractParamsFromWeigthMap(weightMap) { - return super.extractParamsFromWeigthMap(weightMap); - } -} -//# sourceMappingURL=TinyYolov2.js.map \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2.js.map b/build/tinyYolov2/TinyYolov2.js.map deleted file mode 100644 index 56e0b40..0000000 --- a/build/tinyYolov2/TinyYolov2.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyYolov2.js","sourceRoot":"","sources":["../../src/tinyYolov2/TinyYolov2.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAS,MAAM,YAAY,CAAC;AAGlD,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,iCAAiC,EACjC,aAAa,EACb,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIlD,MAAM,OAAO,UAAW,SAAQ,cAAc;IAE5C,YAAY,qBAA8B,IAAI;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;YAC/B,kBAAkB;YAClB,YAAY,EAAE,aAAa;YAC3B,OAAO,EAAE,CAAC,MAAM,CAAC;SAClB,EACD,kBAAkB;YAChB,CAAC,CAAC;gBACA,OAAO,EAAE,qBAAqB;gBAC9B,OAAO,EAAE,kBAAkB;aAC5B;YACD,CAAC,CAAC;gBACA,OAAO,EAAE,WAAW;gBACpB,eAAe,EAAE,IAAI;aACtB,CACF,CAAA;QAED,KAAK,CAAC,MAAM,CAAC,CAAA;IACf,CAAC;IAED,IAAW,kBAAkB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAA;IACvC,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,KAAgB,EAAE,aAAiC;QAC1E,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QAChE,OAAO,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IACvI,CAAC;IAES,mBAAmB;QAC3B,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,kBAAkB,CAAA;IACzF,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAC/D,OAAO,KAAK,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAA;IACpD,CAAC;CACF"} \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Base.d.ts b/build/tinyYolov2/TinyYolov2Base.d.ts deleted file mode 100644 index 633c1a8..0000000 --- a/build/tinyYolov2/TinyYolov2Base.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { BoundingBox } from '../classes/BoundingBox'; -import { Dimensions } from '../classes/Dimensions'; -import { ObjectDetection } from '../classes/ObjectDetection'; -import { NetInput } from '../dom/NetInput'; -import { TNetInput } from '../dom/types'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { TinyYolov2Config } from './config'; -import { ITinyYolov2Options } from './TinyYolov2Options'; -import { DefaultTinyYolov2NetParams, MobilenetParams, TinyYolov2NetParams } from './types'; -export declare class TinyYolov2Base extends NeuralNetwork { - static DEFAULT_FILTER_SIZES: number[]; - private _config; - constructor(config: TinyYolov2Config); - get config(): TinyYolov2Config; - get withClassScores(): boolean; - get boxEncodingSize(): number; - runTinyYolov2(x: tf.Tensor4D, params: DefaultTinyYolov2NetParams): tf.Tensor4D; - runMobilenet(x: tf.Tensor4D, params: MobilenetParams): tf.Tensor4D; - forwardInput(input: NetInput, inputSize: number): tf.Tensor4D; - forward(input: TNetInput, inputSize: number): Promise; - detect(input: TNetInput, forwardParams?: ITinyYolov2Options): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: TinyYolov2NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: TinyYolov2NetParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractBoxes(outputTensor: tf.Tensor4D, inputBlobDimensions: Dimensions, scoreThreshold?: number): Promise<{ - row: number; - col: number; - anchor: number; - box: BoundingBox; - score: number; - classScore: number; - label: number; - }[]>; - private extractPredictedClass; -} -//# sourceMappingURL=TinyYolov2Base.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Base.d.ts.map b/build/tinyYolov2/TinyYolov2Base.d.ts.map deleted file mode 100644 index cc95b40..0000000 --- a/build/tinyYolov2/TinyYolov2Base.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyYolov2Base.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/TinyYolov2Base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAI7D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,EAAE,gBAAgB,EAAkB,MAAM,UAAU,CAAC;AAM5D,OAAO,EAAE,kBAAkB,EAAqB,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE3F,qBAAa,cAAe,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAEpE,OAAc,oBAAoB,WAEjC;IAED,OAAO,CAAC,OAAO,CAAkB;gBAErB,MAAM,EAAE,gBAAgB;IAMpC,IAAW,MAAM,IAAI,gBAAgB,CAEpC;IAED,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,eAAe,IAAI,MAAM,CAEnC;IAEM,aAAa,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,0BAA0B,GAAG,EAAE,CAAC,QAAQ;IAoB9E,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,GAAG,EAAE,CAAC,QAAQ;IAsBlE,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,EAAE,CAAC,QAAQ;IAsBvD,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAIlE,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,GAAE,kBAAuB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IA0CzG,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IAIjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;cAU7B,YAAY,CAC1B,YAAY,EAAE,EAAE,CAAC,QAAQ,EACzB,mBAAmB,EAAE,UAAU,EAC/B,cAAc,CAAC,EAAE,MAAM;;;;;;;;;YAgEX,qBAAqB;CAWpC"} \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Base.js b/build/tinyYolov2/TinyYolov2Base.js deleted file mode 100644 index 051ee3f..0000000 --- a/build/tinyYolov2/TinyYolov2Base.js +++ /dev/null @@ -1,186 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { BoundingBox } from '../classes/BoundingBox'; -import { ObjectDetection } from '../classes/ObjectDetection'; -import { convLayer } from '../common'; -import { toNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { sigmoid } from '../ops'; -import { nonMaxSuppression } from '../ops/nonMaxSuppression'; -import { normalize } from '../ops/normalize'; -import { validateConfig } from './config'; -import { convWithBatchNorm } from './convWithBatchNorm'; -import { depthwiseSeparableConv } from './depthwiseSeparableConv'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -import { leaky } from './leaky'; -import { TinyYolov2Options } from './TinyYolov2Options'; -export class TinyYolov2Base extends NeuralNetwork { - constructor(config) { - super('TinyYolov2'); - validateConfig(config); - this._config = config; - } - get config() { - return this._config; - } - get withClassScores() { - return this.config.withClassScores || this.config.classes.length > 1; - } - get boxEncodingSize() { - return 5 + (this.withClassScores ? this.config.classes.length : 0); - } - runTinyYolov2(x, params) { - let out = convWithBatchNorm(x, params.conv0); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = convWithBatchNorm(out, params.conv1); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = convWithBatchNorm(out, params.conv2); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = convWithBatchNorm(out, params.conv3); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = convWithBatchNorm(out, params.conv4); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = convWithBatchNorm(out, params.conv5); - out = tf.maxPool(out, [2, 2], [1, 1], 'same'); - out = convWithBatchNorm(out, params.conv6); - out = convWithBatchNorm(out, params.conv7); - return convLayer(out, params.conv8, 'valid', false); - } - runMobilenet(x, params) { - let out = this.config.isFirstLayerConv2d - ? leaky(convLayer(x, params.conv0, 'valid', false)) - : depthwiseSeparableConv(x, params.conv0); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = depthwiseSeparableConv(out, params.conv1); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = depthwiseSeparableConv(out, params.conv2); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = depthwiseSeparableConv(out, params.conv3); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = depthwiseSeparableConv(out, params.conv4); - out = tf.maxPool(out, [2, 2], [2, 2], 'same'); - out = depthwiseSeparableConv(out, params.conv5); - out = tf.maxPool(out, [2, 2], [1, 1], 'same'); - out = params.conv6 ? depthwiseSeparableConv(out, params.conv6) : out; - out = params.conv7 ? depthwiseSeparableConv(out, params.conv7) : out; - return convLayer(out, params.conv8, 'valid', false); - } - forwardInput(input, inputSize) { - const { params } = this; - if (!params) { - throw new Error('TinyYolov2 - load model before inference'); - } - return tf.tidy(() => { - let batchTensor = input.toBatchTensor(inputSize, false).toFloat(); - batchTensor = this.config.meanRgb - ? normalize(batchTensor, this.config.meanRgb) - : batchTensor; - batchTensor = batchTensor.div(tf.scalar(256)); - return this.config.withSeparableConvs - ? this.runMobilenet(batchTensor, params) - : this.runTinyYolov2(batchTensor, params); - }); - } - async forward(input, inputSize) { - return await this.forwardInput(await toNetInput(input), inputSize); - } - async detect(input, forwardParams = {}) { - const { inputSize, scoreThreshold } = new TinyYolov2Options(forwardParams); - const netInput = await toNetInput(input); - const out = await this.forwardInput(netInput, inputSize); - const out0 = tf.tidy(() => tf.unstack(out)[0].expandDims()); - const inputDimensions = { - width: netInput.getInputWidth(0), - height: netInput.getInputHeight(0) - }; - const results = await this.extractBoxes(out0, netInput.getReshapedInputDimensions(0), scoreThreshold); - out.dispose(); - out0.dispose(); - const boxes = results.map(res => res.box); - const scores = results.map(res => res.score); - const classScores = results.map(res => res.classScore); - const classNames = results.map(res => this.config.classes[res.label]); - const indices = nonMaxSuppression(boxes.map(box => box.rescale(inputSize)), scores, this.config.iouThreshold, true); - const detections = indices.map(idx => new ObjectDetection(scores[idx], classScores[idx], classNames[idx], boxes[idx], inputDimensions)); - return detections; - } - getDefaultModelName() { - return ''; - } - extractParamsFromWeigthMap(weightMap) { - return extractParamsFromWeigthMap(weightMap, this.config); - } - extractParams(weights) { - const filterSizes = this.config.filterSizes || TinyYolov2Base.DEFAULT_FILTER_SIZES; - const numFilters = filterSizes ? filterSizes.length : undefined; - if (numFilters !== 7 && numFilters !== 8 && numFilters !== 9) { - throw new Error(`TinyYolov2 - expected 7 | 8 | 9 convolutional filters, but found ${numFilters} filterSizes in config`); - } - return extractParams(weights, this.config, this.boxEncodingSize, filterSizes); - } - async extractBoxes(outputTensor, inputBlobDimensions, scoreThreshold) { - const { width, height } = inputBlobDimensions; - const inputSize = Math.max(width, height); - const correctionFactorX = inputSize / width; - const correctionFactorY = inputSize / height; - const numCells = outputTensor.shape[1]; - const numBoxes = this.config.anchors.length; - const [boxesTensor, scoresTensor, classScoresTensor] = tf.tidy(() => { - const reshaped = outputTensor.reshape([numCells, numCells, numBoxes, this.boxEncodingSize]); - const boxes = reshaped.slice([0, 0, 0, 0], [numCells, numCells, numBoxes, 4]); - const scores = reshaped.slice([0, 0, 0, 4], [numCells, numCells, numBoxes, 1]); - const classScores = this.withClassScores - ? tf.softmax(reshaped.slice([0, 0, 0, 5], [numCells, numCells, numBoxes, this.config.classes.length]), 3) - : tf.scalar(0); - return [boxes, scores, classScores]; - }); - const results = []; - const scoresData = await scoresTensor.array(); - const boxesData = await boxesTensor.array(); - for (let row = 0; row < numCells; row++) { - for (let col = 0; col < numCells; col++) { - for (let anchor = 0; anchor < numBoxes; anchor++) { - const score = sigmoid(scoresData[row][col][anchor][0]); - if (!scoreThreshold || score > scoreThreshold) { - const ctX = ((col + sigmoid(boxesData[row][col][anchor][0])) / numCells) * correctionFactorX; - const ctY = ((row + sigmoid(boxesData[row][col][anchor][1])) / numCells) * correctionFactorY; - const width = ((Math.exp(boxesData[row][col][anchor][2]) * this.config.anchors[anchor].x) / numCells) * correctionFactorX; - const height = ((Math.exp(boxesData[row][col][anchor][3]) * this.config.anchors[anchor].y) / numCells) * correctionFactorY; - const x = (ctX - (width / 2)); - const y = (ctY - (height / 2)); - const pos = { row, col, anchor }; - const { classScore, label } = this.withClassScores - ? await this.extractPredictedClass(classScoresTensor, pos) - : { classScore: 1, label: 0 }; - results.push({ - box: new BoundingBox(x, y, x + width, y + height), - score: score, - classScore: score * classScore, - label, - ...pos - }); - } - } - } - } - boxesTensor.dispose(); - scoresTensor.dispose(); - classScoresTensor.dispose(); - return results; - } - async extractPredictedClass(classesTensor, pos) { - const { row, col, anchor } = pos; - const classesData = await classesTensor.array(); - return Array(this.config.classes.length).fill(0) - .map((_, i) => classesData[row][col][anchor][i]) - .map((classScore, label) => ({ - classScore, - label - })) - .reduce((max, curr) => max.classScore > curr.classScore ? max : curr); - } -} -TinyYolov2Base.DEFAULT_FILTER_SIZES = [ - 3, 16, 32, 64, 128, 256, 512, 1024, 1024 -]; -//# sourceMappingURL=TinyYolov2Base.js.map \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Base.js.map b/build/tinyYolov2/TinyYolov2Base.js.map deleted file mode 100644 index e507cbd..0000000 --- a/build/tinyYolov2/TinyYolov2Base.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyYolov2Base.js","sourceRoot":"","sources":["../../src/tinyYolov2/TinyYolov2Base.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Options.d.ts b/build/tinyYolov2/TinyYolov2Options.d.ts deleted file mode 100644 index 396e977..0000000 --- a/build/tinyYolov2/TinyYolov2Options.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -export declare enum TinyYolov2SizeType { - XS = 224, - SM = 320, - MD = 416, - LG = 608 -} -export interface ITinyYolov2Options { - inputSize?: number; - scoreThreshold?: number; -} -export declare class TinyYolov2Options { - protected _name: string; - private _inputSize; - private _scoreThreshold; - constructor({ inputSize, scoreThreshold }?: ITinyYolov2Options); - get inputSize(): number; - get scoreThreshold(): number; -} -//# sourceMappingURL=TinyYolov2Options.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Options.d.ts.map b/build/tinyYolov2/TinyYolov2Options.d.ts.map deleted file mode 100644 index ca4c4a0..0000000 --- a/build/tinyYolov2/TinyYolov2Options.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyYolov2Options.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/TinyYolov2Options.ts"],"names":[],"mappings":"AAAA,oBAAY,kBAAkB;IAC5B,EAAE,MAAM;IACR,EAAE,MAAM;IACR,EAAE,MAAM;IACR,EAAE,MAAM;CACT;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,qBAAa,iBAAiB;IAC5B,SAAS,CAAC,KAAK,EAAE,MAAM,CAAsB;IAE7C,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,eAAe,CAAQ;gBAEnB,EAAE,SAAS,EAAE,cAAc,EAAE,GAAE,kBAAuB;IAalE,IAAI,SAAS,IAAI,MAAM,CAA2B;IAClD,IAAI,cAAc,IAAI,MAAM,CAAgC;CAC7D"} \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Options.js b/build/tinyYolov2/TinyYolov2Options.js deleted file mode 100644 index 679a167..0000000 --- a/build/tinyYolov2/TinyYolov2Options.js +++ /dev/null @@ -1,23 +0,0 @@ -export var TinyYolov2SizeType; -(function (TinyYolov2SizeType) { - TinyYolov2SizeType[TinyYolov2SizeType["XS"] = 224] = "XS"; - TinyYolov2SizeType[TinyYolov2SizeType["SM"] = 320] = "SM"; - TinyYolov2SizeType[TinyYolov2SizeType["MD"] = 416] = "MD"; - TinyYolov2SizeType[TinyYolov2SizeType["LG"] = 608] = "LG"; -})(TinyYolov2SizeType || (TinyYolov2SizeType = {})); -export class TinyYolov2Options { - constructor({ inputSize, scoreThreshold } = {}) { - this._name = 'TinyYolov2Options'; - this._inputSize = inputSize || 416; - this._scoreThreshold = scoreThreshold || 0.5; - if (typeof this._inputSize !== 'number' || this._inputSize % 32 !== 0) { - throw new Error(`${this._name} - expected inputSize to be a number divisible by 32`); - } - if (typeof this._scoreThreshold !== 'number' || this._scoreThreshold <= 0 || this._scoreThreshold >= 1) { - throw new Error(`${this._name} - expected scoreThreshold to be a number between 0 and 1`); - } - } - get inputSize() { return this._inputSize; } - get scoreThreshold() { return this._scoreThreshold; } -} -//# sourceMappingURL=TinyYolov2Options.js.map \ No newline at end of file diff --git a/build/tinyYolov2/TinyYolov2Options.js.map b/build/tinyYolov2/TinyYolov2Options.js.map deleted file mode 100644 index b5cdada..0000000 --- a/build/tinyYolov2/TinyYolov2Options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyYolov2Options.js","sourceRoot":"","sources":["../../src/tinyYolov2/TinyYolov2Options.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,yDAAQ,CAAA;AACV,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAOD,MAAM,OAAO,iBAAiB;IAM5B,YAAY,EAAE,SAAS,EAAE,cAAc,KAAyB,EAAE;QALxD,UAAK,GAAW,mBAAmB,CAAA;QAM3C,IAAI,CAAC,UAAU,GAAG,SAAS,IAAI,GAAG,CAAA;QAClC,IAAI,CAAC,eAAe,GAAG,cAAc,IAAI,GAAG,CAAA;QAE5C,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,KAAK,CAAC,EAAE;YACrE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,sDAAsD,CAAC,CAAA;SACrF;QAED,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,EAAE;YACtG,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,2DAA2D,CAAC,CAAA;SAC1F;IACH,CAAC;IAED,IAAI,SAAS,KAAa,OAAO,IAAI,CAAC,UAAU,CAAA,CAAC,CAAC;IAClD,IAAI,cAAc,KAAa,OAAO,IAAI,CAAC,eAAe,CAAA,CAAC,CAAC;CAC7D"} \ No newline at end of file diff --git a/build/tinyYolov2/config.d.ts b/build/tinyYolov2/config.d.ts deleted file mode 100644 index d9dbd6f..0000000 --- a/build/tinyYolov2/config.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Point } from '../classes/Point'; -export declare type TinyYolov2Config = { - withSeparableConvs: boolean; - iouThreshold: number; - anchors: Point[]; - classes: string[]; - meanRgb?: [number, number, number]; - withClassScores?: boolean; - filterSizes?: number[]; - isFirstLayerConv2d?: boolean; -}; -export declare function validateConfig(config: any): void; -//# sourceMappingURL=config.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/config.d.ts.map b/build/tinyYolov2/config.d.ts.map deleted file mode 100644 index 30de6ae..0000000 --- a/build/tinyYolov2/config.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,oBAAY,gBAAgB,GAAG;IAC7B,kBAAkB,EAAE,OAAO,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,KAAK,EAAE,CAAA;IAChB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAID,wBAAgB,cAAc,CAAC,MAAM,EAAE,GAAG,QAuCzC"} \ No newline at end of file diff --git a/build/tinyYolov2/config.js b/build/tinyYolov2/config.js deleted file mode 100644 index d492168..0000000 --- a/build/tinyYolov2/config.js +++ /dev/null @@ -1,28 +0,0 @@ -const isNumber = (arg) => typeof arg === 'number'; -export function validateConfig(config) { - if (!config) { - throw new Error(`invalid config: ${config}`); - } - if (typeof config.withSeparableConvs !== 'boolean') { - throw new Error(`config.withSeparableConvs has to be a boolean, have: ${config.withSeparableConvs}`); - } - if (!isNumber(config.iouThreshold) || config.iouThreshold < 0 || config.iouThreshold > 1.0) { - throw new Error(`config.iouThreshold has to be a number between [0, 1], have: ${config.iouThreshold}`); - } - if (!Array.isArray(config.classes) - || !config.classes.length - || !config.classes.every((c) => typeof c === 'string')) { - throw new Error(`config.classes has to be an array class names: string[], have: ${JSON.stringify(config.classes)}`); - } - if (!Array.isArray(config.anchors) - || !config.anchors.length - || !config.anchors.map((a) => a || {}).every((a) => isNumber(a.x) && isNumber(a.y))) { - throw new Error(`config.anchors has to be an array of { x: number, y: number }, have: ${JSON.stringify(config.anchors)}`); - } - if (config.meanRgb && (!Array.isArray(config.meanRgb) - || config.meanRgb.length !== 3 - || !config.meanRgb.every(isNumber))) { - throw new Error(`config.meanRgb has to be an array of shape [number, number, number], have: ${JSON.stringify(config.meanRgb)}`); - } -} -//# sourceMappingURL=config.js.map \ No newline at end of file diff --git a/build/tinyYolov2/config.js.map b/build/tinyYolov2/config.js.map deleted file mode 100644 index cfc4b02..0000000 --- a/build/tinyYolov2/config.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/tinyYolov2/config.ts"],"names":[],"mappings":"AAaA,MAAM,QAAQ,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAA;AAEtD,MAAM,UAAU,cAAc,CAAC,MAAW;IACxC,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAA;KAC7C;IAED,IAAI,OAAO,MAAM,CAAC,kBAAkB,KAAK,SAAS,EAAE;QAClD,MAAM,IAAI,KAAK,CAAC,wDAAwD,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAA;KACrG;IAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,IAAI,MAAM,CAAC,YAAY,GAAG,GAAG,EAAE;QAC1F,MAAM,IAAI,KAAK,CAAC,gEAAgE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAA;KACvG;IAED,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;WAC3B,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM;WACtB,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAC3D;QAEA,MAAM,IAAI,KAAK,CAAC,kEAAkE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;KACpH;IAED,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;WAC3B,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM;WACtB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7F;QAEA,MAAM,IAAI,KAAK,CAAC,wEAAwE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;KAC1H;IAED,IAAI,MAAM,CAAC,OAAO,IAAI,CACpB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;WAC3B,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;WAC3B,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CACnC,EAAE;QAED,MAAM,IAAI,KAAK,CAAC,8EAA8E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;KAChI;AACH,CAAC"} \ No newline at end of file diff --git a/build/tinyYolov2/const.d.ts b/build/tinyYolov2/const.d.ts deleted file mode 100644 index ca9f834..0000000 --- a/build/tinyYolov2/const.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { Point } from '../classes'; -export declare const IOU_THRESHOLD = 0.4; -export declare const BOX_ANCHORS: Point[]; -export declare const BOX_ANCHORS_SEPARABLE: Point[]; -export declare const MEAN_RGB_SEPARABLE: [number, number, number]; -export declare const DEFAULT_MODEL_NAME = "tiny_yolov2_model"; -export declare const DEFAULT_MODEL_NAME_SEPARABLE_CONV = "tiny_yolov2_separable_conv_model"; -//# sourceMappingURL=const.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/const.d.ts.map b/build/tinyYolov2/const.d.ts.map deleted file mode 100644 index fcd99e8..0000000 --- a/build/tinyYolov2/const.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,eAAO,MAAM,aAAa,MAAM,CAAA;AAEhC,eAAO,MAAM,WAAW,SAMvB,CAAA;AAED,eAAO,MAAM,qBAAqB,SAMjC,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAA8B,CAAA;AAEtF,eAAO,MAAM,kBAAkB,sBAAsB,CAAA;AACrD,eAAO,MAAM,iCAAiC,qCAAqC,CAAA"} \ No newline at end of file diff --git a/build/tinyYolov2/const.js b/build/tinyYolov2/const.js deleted file mode 100644 index 75ac107..0000000 --- a/build/tinyYolov2/const.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Point } from '../classes'; -export const IOU_THRESHOLD = 0.4; -export const BOX_ANCHORS = [ - new Point(0.738768, 0.874946), - new Point(2.42204, 2.65704), - new Point(4.30971, 7.04493), - new Point(10.246, 4.59428), - new Point(12.6868, 11.8741) -]; -export const BOX_ANCHORS_SEPARABLE = [ - new Point(1.603231, 2.094468), - new Point(6.041143, 7.080126), - new Point(2.882459, 3.518061), - new Point(4.266906, 5.178857), - new Point(9.041765, 10.66308) -]; -export const MEAN_RGB_SEPARABLE = [117.001, 114.697, 97.404]; -export const DEFAULT_MODEL_NAME = 'tiny_yolov2_model'; -export const DEFAULT_MODEL_NAME_SEPARABLE_CONV = 'tiny_yolov2_separable_conv_model'; -//# sourceMappingURL=const.js.map \ No newline at end of file diff --git a/build/tinyYolov2/const.js.map b/build/tinyYolov2/const.js.map deleted file mode 100644 index 05b52d2..0000000 --- a/build/tinyYolov2/const.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/tinyYolov2/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;AAEhC,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1B,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;CAC5B,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;AAEtF,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAA;AACrD,MAAM,CAAC,MAAM,iCAAiC,GAAG,kCAAkC,CAAA"} \ No newline at end of file diff --git a/build/tinyYolov2/convWithBatchNorm.d.ts b/build/tinyYolov2/convWithBatchNorm.d.ts deleted file mode 100644 index 02b0352..0000000 --- a/build/tinyYolov2/convWithBatchNorm.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ConvWithBatchNorm } from './types'; -export declare function convWithBatchNorm(x: tf.Tensor4D, params: ConvWithBatchNorm): tf.Tensor4D; -//# sourceMappingURL=convWithBatchNorm.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/convWithBatchNorm.d.ts.map b/build/tinyYolov2/convWithBatchNorm.d.ts.map deleted file mode 100644 index 91be0a8..0000000 --- a/build/tinyYolov2/convWithBatchNorm.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convWithBatchNorm.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/convWithBatchNorm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,iBAAiB,GAAG,EAAE,CAAC,QAAQ,CAWxF"} \ No newline at end of file diff --git a/build/tinyYolov2/convWithBatchNorm.js b/build/tinyYolov2/convWithBatchNorm.js deleted file mode 100644 index 3f8e503..0000000 --- a/build/tinyYolov2/convWithBatchNorm.js +++ /dev/null @@ -1,13 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { leaky } from './leaky'; -export function convWithBatchNorm(x, params) { - return tf.tidy(() => { - let out = tf.pad(x, [[0, 0], [1, 1], [1, 1], [0, 0]]); - out = tf.conv2d(out, params.conv.filters, [1, 1], 'valid'); - out = tf.sub(out, params.bn.sub); - out = tf.mul(out, params.bn.truediv); - out = tf.add(out, params.conv.bias); - return leaky(out); - }); -} -//# sourceMappingURL=convWithBatchNorm.js.map \ No newline at end of file diff --git a/build/tinyYolov2/convWithBatchNorm.js.map b/build/tinyYolov2/convWithBatchNorm.js.map deleted file mode 100644 index e858d16..0000000 --- a/build/tinyYolov2/convWithBatchNorm.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"convWithBatchNorm.js","sourceRoot":"","sources":["../../src/tinyYolov2/convWithBatchNorm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,MAAM,UAAU,iBAAiB,CAAC,CAAc,EAAE,MAAyB;IACzE,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAgB,CAAA;QAEpE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QAC1D,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;QAChC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;QACpC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEnC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/tinyYolov2/depthwiseSeparableConv.d.ts b/build/tinyYolov2/depthwiseSeparableConv.d.ts deleted file mode 100644 index cffd719..0000000 --- a/build/tinyYolov2/depthwiseSeparableConv.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { SeparableConvParams } from '../common/types'; -export declare function depthwiseSeparableConv(x: tf.Tensor4D, params: SeparableConvParams): tf.Tensor4D; -//# sourceMappingURL=depthwiseSeparableConv.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/depthwiseSeparableConv.d.ts.map b/build/tinyYolov2/depthwiseSeparableConv.d.ts.map deleted file mode 100644 index b8bb523..0000000 --- a/build/tinyYolov2/depthwiseSeparableConv.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"depthwiseSeparableConv.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/depthwiseSeparableConv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,GAAG,EAAE,CAAC,QAAQ,CAS/F"} \ No newline at end of file diff --git a/build/tinyYolov2/depthwiseSeparableConv.js b/build/tinyYolov2/depthwiseSeparableConv.js deleted file mode 100644 index a8e8fd4..0000000 --- a/build/tinyYolov2/depthwiseSeparableConv.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { leaky } from './leaky'; -export function depthwiseSeparableConv(x, params) { - return tf.tidy(() => { - let out = tf.pad(x, [[0, 0], [1, 1], [1, 1], [0, 0]]); - out = tf.separableConv2d(out, params.depthwise_filter, params.pointwise_filter, [1, 1], 'valid'); - out = tf.add(out, params.bias); - return leaky(out); - }); -} -//# sourceMappingURL=depthwiseSeparableConv.js.map \ No newline at end of file diff --git a/build/tinyYolov2/depthwiseSeparableConv.js.map b/build/tinyYolov2/depthwiseSeparableConv.js.map deleted file mode 100644 index e760b72..0000000 --- a/build/tinyYolov2/depthwiseSeparableConv.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"depthwiseSeparableConv.js","sourceRoot":"","sources":["../../src/tinyYolov2/depthwiseSeparableConv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,UAAU,sBAAsB,CAAC,CAAc,EAAE,MAA2B;IAChF,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAgB,CAAA;QAEpE,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QAChG,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAE9B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/tinyYolov2/extractParams.d.ts b/build/tinyYolov2/extractParams.d.ts deleted file mode 100644 index 69970cd..0000000 --- a/build/tinyYolov2/extractParams.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ParamMapping } from '../common/types'; -import { TinyYolov2Config } from './config'; -import { TinyYolov2NetParams } from './types'; -export declare function extractParams(weights: Float32Array, config: TinyYolov2Config, boxEncodingSize: number, filterSizes: number[]): { - params: TinyYolov2NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/extractParams.d.ts.map b/build/tinyYolov2/extractParams.d.ts.map deleted file mode 100644 index d39182c..0000000 --- a/build/tinyYolov2/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/extractParams.ts"],"names":[],"mappings":"AAKA,OAAO,EAA0B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAgC,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAoC5E,wBAAgB,aAAa,CAC3B,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,gBAAgB,EACxB,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EAAE,GACpB;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAoDhE"} \ No newline at end of file diff --git a/build/tinyYolov2/extractParams.js b/build/tinyYolov2/extractParams.js deleted file mode 100644 index e56fcbd..0000000 --- a/build/tinyYolov2/extractParams.js +++ /dev/null @@ -1,63 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { extractConvParamsFactory } from '../common'; -import { extractSeparableConvParamsFactory } from '../common/extractSeparableConvParamsFactory'; -import { extractWeightsFactory } from '../common/extractWeightsFactory'; -function extractorsFactory(extractWeights, paramMappings) { - const extractConvParams = extractConvParamsFactory(extractWeights, paramMappings); - function extractBatchNormParams(size, mappedPrefix) { - const sub = tf.tensor1d(extractWeights(size)); - const truediv = tf.tensor1d(extractWeights(size)); - paramMappings.push({ paramPath: `${mappedPrefix}/sub` }, { paramPath: `${mappedPrefix}/truediv` }); - return { sub, truediv }; - } - function extractConvWithBatchNormParams(channelsIn, channelsOut, mappedPrefix) { - const conv = extractConvParams(channelsIn, channelsOut, 3, `${mappedPrefix}/conv`); - const bn = extractBatchNormParams(channelsOut, `${mappedPrefix}/bn`); - return { conv, bn }; - } - const extractSeparableConvParams = extractSeparableConvParamsFactory(extractWeights, paramMappings); - return { - extractConvParams, - extractConvWithBatchNormParams, - extractSeparableConvParams - }; -} -export function extractParams(weights, config, boxEncodingSize, filterSizes) { - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const paramMappings = []; - const { extractConvParams, extractConvWithBatchNormParams, extractSeparableConvParams } = extractorsFactory(extractWeights, paramMappings); - let params; - if (config.withSeparableConvs) { - const [s0, s1, s2, s3, s4, s5, s6, s7, s8] = filterSizes; - const conv0 = config.isFirstLayerConv2d - ? extractConvParams(s0, s1, 3, 'conv0') - : extractSeparableConvParams(s0, s1, 'conv0'); - const conv1 = extractSeparableConvParams(s1, s2, 'conv1'); - const conv2 = extractSeparableConvParams(s2, s3, 'conv2'); - const conv3 = extractSeparableConvParams(s3, s4, 'conv3'); - const conv4 = extractSeparableConvParams(s4, s5, 'conv4'); - const conv5 = extractSeparableConvParams(s5, s6, 'conv5'); - const conv6 = s7 ? extractSeparableConvParams(s6, s7, 'conv6') : undefined; - const conv7 = s8 ? extractSeparableConvParams(s7, s8, 'conv7') : undefined; - const conv8 = extractConvParams(s8 || s7 || s6, 5 * boxEncodingSize, 1, 'conv8'); - params = { conv0, conv1, conv2, conv3, conv4, conv5, conv6, conv7, conv8 }; - } - else { - const [s0, s1, s2, s3, s4, s5, s6, s7, s8] = filterSizes; - const conv0 = extractConvWithBatchNormParams(s0, s1, 'conv0'); - const conv1 = extractConvWithBatchNormParams(s1, s2, 'conv1'); - const conv2 = extractConvWithBatchNormParams(s2, s3, 'conv2'); - const conv3 = extractConvWithBatchNormParams(s3, s4, 'conv3'); - const conv4 = extractConvWithBatchNormParams(s4, s5, 'conv4'); - const conv5 = extractConvWithBatchNormParams(s5, s6, 'conv5'); - const conv6 = extractConvWithBatchNormParams(s6, s7, 'conv6'); - const conv7 = extractConvWithBatchNormParams(s7, s8, 'conv7'); - const conv8 = extractConvParams(s8, 5 * boxEncodingSize, 1, 'conv8'); - params = { conv0, conv1, conv2, conv3, conv4, conv5, conv6, conv7, conv8 }; - } - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { params, paramMappings }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/tinyYolov2/extractParams.js.map b/build/tinyYolov2/extractParams.js.map deleted file mode 100644 index e0080c5..0000000 --- a/build/tinyYolov2/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/tinyYolov2/extractParams.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/tinyYolov2/extractParamsFromWeigthMap.d.ts b/build/tinyYolov2/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index e0747f6..0000000 --- a/build/tinyYolov2/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common/types'; -import { TinyYolov2Config } from './config'; -import { TinyYolov2NetParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap, config: TinyYolov2Config): { - params: TinyYolov2NetParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/extractParamsFromWeigthMap.d.ts.map b/build/tinyYolov2/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index 9257df0..0000000 --- a/build/tinyYolov2/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAM5C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAgC,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAkC5E,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,EAC5B,MAAM,EAAE,gBAAgB,GACvB;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CA0ChE"} \ No newline at end of file diff --git a/build/tinyYolov2/extractParamsFromWeigthMap.js b/build/tinyYolov2/extractParamsFromWeigthMap.js deleted file mode 100644 index 30e2194..0000000 --- a/build/tinyYolov2/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,62 +0,0 @@ -import { disposeUnusedWeightTensors } from '../common/disposeUnusedWeightTensors'; -import { loadSeparableConvParamsFactory } from '../common/extractSeparableConvParamsFactory'; -import { extractWeightEntryFactory } from '../common/extractWeightEntryFactory'; -function extractorsFactory(weightMap, paramMappings) { - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - function extractBatchNormParams(prefix) { - const sub = extractWeightEntry(`${prefix}/sub`, 1); - const truediv = extractWeightEntry(`${prefix}/truediv`, 1); - return { sub, truediv }; - } - function extractConvParams(prefix) { - const filters = extractWeightEntry(`${prefix}/filters`, 4); - const bias = extractWeightEntry(`${prefix}/bias`, 1); - return { filters, bias }; - } - function extractConvWithBatchNormParams(prefix) { - const conv = extractConvParams(`${prefix}/conv`); - const bn = extractBatchNormParams(`${prefix}/bn`); - return { conv, bn }; - } - const extractSeparableConvParams = loadSeparableConvParamsFactory(extractWeightEntry); - return { - extractConvParams, - extractConvWithBatchNormParams, - extractSeparableConvParams - }; -} -export function extractParamsFromWeigthMap(weightMap, config) { - const paramMappings = []; - const { extractConvParams, extractConvWithBatchNormParams, extractSeparableConvParams } = extractorsFactory(weightMap, paramMappings); - let params; - if (config.withSeparableConvs) { - const numFilters = (config.filterSizes && config.filterSizes.length || 9); - params = { - conv0: config.isFirstLayerConv2d ? extractConvParams('conv0') : extractSeparableConvParams('conv0'), - conv1: extractSeparableConvParams('conv1'), - conv2: extractSeparableConvParams('conv2'), - conv3: extractSeparableConvParams('conv3'), - conv4: extractSeparableConvParams('conv4'), - conv5: extractSeparableConvParams('conv5'), - conv6: numFilters > 7 ? extractSeparableConvParams('conv6') : undefined, - conv7: numFilters > 8 ? extractSeparableConvParams('conv7') : undefined, - conv8: extractConvParams('conv8') - }; - } - else { - params = { - conv0: extractConvWithBatchNormParams('conv0'), - conv1: extractConvWithBatchNormParams('conv1'), - conv2: extractConvWithBatchNormParams('conv2'), - conv3: extractConvWithBatchNormParams('conv3'), - conv4: extractConvWithBatchNormParams('conv4'), - conv5: extractConvWithBatchNormParams('conv5'), - conv6: extractConvWithBatchNormParams('conv6'), - conv7: extractConvWithBatchNormParams('conv7'), - conv8: extractConvParams('conv8') - }; - } - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/tinyYolov2/extractParamsFromWeigthMap.js.map b/build/tinyYolov2/extractParamsFromWeigthMap.js.map deleted file mode 100644 index 74f73fb..0000000 --- a/build/tinyYolov2/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/tinyYolov2/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/tinyYolov2/index.d.ts b/build/tinyYolov2/index.d.ts deleted file mode 100644 index bfee139..0000000 --- a/build/tinyYolov2/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { TinyYolov2 } from './TinyYolov2'; -export * from './TinyYolov2Options'; -export * from './config'; -export * from './types'; -export { TinyYolov2 }; -export declare function createTinyYolov2(weights: Float32Array, withSeparableConvs?: boolean): TinyYolov2; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/index.d.ts.map b/build/tinyYolov2/index.d.ts.map deleted file mode 100644 index 5dc96df..0000000 --- a/build/tinyYolov2/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,cAAc,qBAAqB,CAAC;AAEpC,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AAEvB,OAAO,EAAE,UAAU,EAAE,CAAA;AAErB,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,kBAAkB,GAAE,OAAc,cAIzF"} \ No newline at end of file diff --git a/build/tinyYolov2/index.js b/build/tinyYolov2/index.js deleted file mode 100644 index 6714ce2..0000000 --- a/build/tinyYolov2/index.js +++ /dev/null @@ -1,11 +0,0 @@ -import { TinyYolov2 } from './TinyYolov2'; -export * from './TinyYolov2Options'; -export * from './config'; -export * from './types'; -export { TinyYolov2 }; -export function createTinyYolov2(weights, withSeparableConvs = true) { - const net = new TinyYolov2(withSeparableConvs); - net.extractWeights(weights); - return net; -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/tinyYolov2/index.js.map b/build/tinyYolov2/index.js.map deleted file mode 100644 index ac186e5..0000000 --- a/build/tinyYolov2/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tinyYolov2/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,cAAc,qBAAqB,CAAC;AAEpC,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AAEvB,OAAO,EAAE,UAAU,EAAE,CAAA;AAErB,MAAM,UAAU,gBAAgB,CAAC,OAAqB,EAAE,qBAA8B,IAAI;IACxF,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAC9C,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3B,OAAO,GAAG,CAAA;AACZ,CAAC"} \ No newline at end of file diff --git a/build/tinyYolov2/leaky.d.ts b/build/tinyYolov2/leaky.d.ts deleted file mode 100644 index dc35656..0000000 --- a/build/tinyYolov2/leaky.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export declare function leaky(x: tf.Tensor4D): tf.Tensor4D; -//# sourceMappingURL=leaky.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/leaky.d.ts.map b/build/tinyYolov2/leaky.d.ts.map deleted file mode 100644 index 7492aa9..0000000 --- a/build/tinyYolov2/leaky.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"leaky.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/leaky.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAMjD"} \ No newline at end of file diff --git a/build/tinyYolov2/leaky.js b/build/tinyYolov2/leaky.js deleted file mode 100644 index 37b63f6..0000000 --- a/build/tinyYolov2/leaky.js +++ /dev/null @@ -1,9 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -export function leaky(x) { - return tf.tidy(() => { - const min = tf.mul(x, tf.scalar(0.10000000149011612)); - return tf.add(tf.relu(tf.sub(x, min)), min); - //return tf.maximum(x, min) - }); -} -//# sourceMappingURL=leaky.js.map \ No newline at end of file diff --git a/build/tinyYolov2/leaky.js.map b/build/tinyYolov2/leaky.js.map deleted file mode 100644 index 0ff8205..0000000 --- a/build/tinyYolov2/leaky.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"leaky.js","sourceRoot":"","sources":["../../src/tinyYolov2/leaky.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,UAAU,KAAK,CAAC,CAAc;IAClC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAA;QACrD,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QAC3C,2BAA2B;IAC7B,CAAC,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/build/tinyYolov2/types.d.ts b/build/tinyYolov2/types.d.ts deleted file mode 100644 index fabac66..0000000 --- a/build/tinyYolov2/types.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ConvParams } from '../common'; -import { SeparableConvParams } from '../common/types'; -export declare type BatchNorm = { - sub: tf.Tensor1D; - truediv: tf.Tensor1D; -}; -export declare type ConvWithBatchNorm = { - conv: ConvParams; - bn: BatchNorm; -}; -export declare type MobilenetParams = { - conv0: SeparableConvParams | ConvParams; - conv1: SeparableConvParams; - conv2: SeparableConvParams; - conv3: SeparableConvParams; - conv4: SeparableConvParams; - conv5: SeparableConvParams; - conv6?: SeparableConvParams; - conv7?: SeparableConvParams; - conv8: ConvParams; -}; -export declare type DefaultTinyYolov2NetParams = { - conv0: ConvWithBatchNorm; - conv1: ConvWithBatchNorm; - conv2: ConvWithBatchNorm; - conv3: ConvWithBatchNorm; - conv4: ConvWithBatchNorm; - conv5: ConvWithBatchNorm; - conv6: ConvWithBatchNorm; - conv7: ConvWithBatchNorm; - conv8: ConvParams; -}; -export declare type TinyYolov2NetParams = DefaultTinyYolov2NetParams | MobilenetParams; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/tinyYolov2/types.d.ts.map b/build/tinyYolov2/types.d.ts.map deleted file mode 100644 index d8609c1..0000000 --- a/build/tinyYolov2/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tinyYolov2/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,oBAAY,SAAS,GAAG;IACtB,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAA;IAChB,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAA;CACrB,CAAA;AAED,oBAAY,iBAAiB,GAAG;IAC9B,IAAI,EAAE,UAAU,CAAA;IAChB,EAAE,EAAE,SAAS,CAAA;CACd,CAAA;AAED,oBAAY,eAAe,GAAG;IAC5B,KAAK,EAAE,mBAAmB,GAAG,UAAU,CAAA;IACvC,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,CAAC,EAAE,mBAAmB,CAAA;IAC3B,KAAK,CAAC,EAAE,mBAAmB,CAAA;IAC3B,KAAK,EAAE,UAAU,CAAA;CAClB,CAAA;AAED,oBAAY,0BAA0B,GAAG;IACvC,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,UAAU,CAAA;CAClB,CAAA;AAED,oBAAY,mBAAmB,GAAG,0BAA0B,GAAG,eAAe,CAAA"} \ No newline at end of file diff --git a/build/tinyYolov2/types.js b/build/tinyYolov2/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/tinyYolov2/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/tinyYolov2/types.js.map b/build/tinyYolov2/types.js.map deleted file mode 100644 index 85a0149..0000000 --- a/build/tinyYolov2/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tinyYolov2/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/build/utils/index.d.ts b/build/utils/index.d.ts deleted file mode 100644 index 1fee00b..0000000 --- a/build/utils/index.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { Point } from '../classes'; -import { Dimensions, IDimensions } from '../classes/Dimensions'; -export declare function isTensor(tensor: any, dim: number): boolean; -export declare function isTensor1D(tensor: any): tensor is tf.Tensor1D; -export declare function isTensor2D(tensor: any): tensor is tf.Tensor2D; -export declare function isTensor3D(tensor: any): tensor is tf.Tensor3D; -export declare function isTensor4D(tensor: any): tensor is tf.Tensor4D; -export declare function isFloat(num: number): boolean; -export declare function isEven(num: number): boolean; -export declare function round(num: number, prec?: number): number; -export declare function isDimensions(obj: any): boolean; -export declare function computeReshapedDimensions({ width, height }: IDimensions, inputSize: number): Dimensions; -export declare function getCenterPoint(pts: Point[]): Point; -export declare function range(num: number, start: number, step: number): number[]; -export declare function isValidNumber(num: any): boolean; -export declare function isValidProbablitiy(num: any): boolean; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/utils/index.d.ts.map b/build/utils/index.d.ts.map deleted file mode 100644 index eecef0b..0000000 --- a/build/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEhE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,WAEhD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,QAAQ,CAE7D;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,QAAQ,CAE7D;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,QAAQ,CAE7D;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,QAAQ,CAE7D;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,WAElC;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,WAEjC;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,MAAU,UAGlD;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAE9C;AAED,wBAAgB,yBAAyB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAG1F;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,CAGlD;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAExE;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,WAErC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,WAE1C"} \ No newline at end of file diff --git a/build/utils/index.js b/build/utils/index.js deleted file mode 100644 index f591532..0000000 --- a/build/utils/index.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { Point } from '../classes'; -import { Dimensions } from '../classes/Dimensions'; -export function isTensor(tensor, dim) { - return tensor instanceof tf.Tensor && tensor.shape.length === dim; -} -export function isTensor1D(tensor) { - return isTensor(tensor, 1); -} -export function isTensor2D(tensor) { - return isTensor(tensor, 2); -} -export function isTensor3D(tensor) { - return isTensor(tensor, 3); -} -export function isTensor4D(tensor) { - return isTensor(tensor, 4); -} -export function isFloat(num) { - return num % 1 !== 0; -} -export function isEven(num) { - return num % 2 === 0; -} -export function round(num, prec = 2) { - const f = Math.pow(10, prec); - return Math.floor(num * f) / f; -} -export function isDimensions(obj) { - return obj && obj.width && obj.height; -} -export function computeReshapedDimensions({ width, height }, inputSize) { - const scale = inputSize / Math.max(height, width); - return new Dimensions(Math.round(width * scale), Math.round(height * scale)); -} -export function getCenterPoint(pts) { - return pts.reduce((sum, pt) => sum.add(pt), new Point(0, 0)) - .div(new Point(pts.length, pts.length)); -} -export function range(num, start, step) { - return Array(num).fill(0).map((_, i) => start + (i * step)); -} -export function isValidNumber(num) { - return !!num && num !== Infinity && num !== -Infinity && !isNaN(num) || num === 0; -} -export function isValidProbablitiy(num) { - return isValidNumber(num) && 0 <= num && num <= 1.0; -} -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/utils/index.js.map b/build/utils/index.js.map deleted file mode 100644 index 6bc5339..0000000 --- a/build/utils/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/xception/TinyXception.d.ts b/build/xception/TinyXception.d.ts deleted file mode 100644 index 705992a..0000000 --- a/build/xception/TinyXception.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { NetInput, TNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { TinyXceptionParams } from './types'; -export declare class TinyXception extends NeuralNetwork { - private _numMainBlocks; - constructor(numMainBlocks: number); - forwardInput(input: NetInput): tf.Tensor4D; - forward(input: TNetInput): Promise; - protected getDefaultModelName(): string; - protected extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap): { - params: TinyXceptionParams; - paramMappings: import("../common").ParamMapping[]; - }; - protected extractParams(weights: Float32Array): { - params: TinyXceptionParams; - paramMappings: import("../common").ParamMapping[]; - }; -} -//# sourceMappingURL=TinyXception.d.ts.map \ No newline at end of file diff --git a/build/xception/TinyXception.d.ts.map b/build/xception/TinyXception.d.ts.map deleted file mode 100644 index 2027b82..0000000 --- a/build/xception/TinyXception.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyXception.d.ts","sourceRoot":"","sources":["../../src/xception/TinyXception.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKjD,OAAO,EAAyC,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAuBpF,qBAAa,YAAa,SAAQ,aAAa,CAAC,kBAAkB,CAAC;IAEjE,OAAO,CAAC,cAAc,CAAQ;gBAElB,aAAa,EAAE,MAAM;IAK1B,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,QAAQ;IA2BpC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC;IAI5D,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC,SAAS,CAAC,0BAA0B,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc;;;;IAIjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY;;;;CAG9C"} \ No newline at end of file diff --git a/build/xception/TinyXception.js b/build/xception/TinyXception.js deleted file mode 100644 index d53a5ce..0000000 --- a/build/xception/TinyXception.js +++ /dev/null @@ -1,65 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { depthwiseSeparableConv } from '../common'; -import { toNetInput } from '../dom'; -import { NeuralNetwork } from '../NeuralNetwork'; -import { normalize } from '../ops'; -import { range } from '../utils'; -import { extractParams } from './extractParams'; -import { extractParamsFromWeigthMap } from './extractParamsFromWeigthMap'; -function conv(x, params, stride) { - return tf.add(tf.conv2d(x, params.filters, stride, 'same'), params.bias); -} -function reductionBlock(x, params, isActivateInput = true) { - let out = isActivateInput ? tf.relu(x) : x; - out = depthwiseSeparableConv(out, params.separable_conv0, [1, 1]); - out = depthwiseSeparableConv(tf.relu(out), params.separable_conv1, [1, 1]); - out = tf.maxPool(out, [3, 3], [2, 2], 'same'); - out = tf.add(out, conv(x, params.expansion_conv, [2, 2])); - return out; -} -function mainBlock(x, params) { - let out = depthwiseSeparableConv(tf.relu(x), params.separable_conv0, [1, 1]); - out = depthwiseSeparableConv(tf.relu(out), params.separable_conv1, [1, 1]); - out = depthwiseSeparableConv(tf.relu(out), params.separable_conv2, [1, 1]); - out = tf.add(out, x); - return out; -} -export class TinyXception extends NeuralNetwork { - constructor(numMainBlocks) { - super('TinyXception'); - this._numMainBlocks = numMainBlocks; - } - forwardInput(input) { - const { params } = this; - if (!params) { - throw new Error('TinyXception - load model before inference'); - } - return tf.tidy(() => { - const batchTensor = input.toBatchTensor(112, true); - const meanRgb = [122.782, 117.001, 104.298]; - const normalized = normalize(batchTensor, meanRgb).div(tf.scalar(256)); - let out = tf.relu(conv(normalized, params.entry_flow.conv_in, [2, 2])); - out = reductionBlock(out, params.entry_flow.reduction_block_0, false); - out = reductionBlock(out, params.entry_flow.reduction_block_1); - range(this._numMainBlocks, 0, 1).forEach((idx) => { - out = mainBlock(out, params.middle_flow[`main_block_${idx}`]); - }); - out = reductionBlock(out, params.exit_flow.reduction_block); - out = tf.relu(depthwiseSeparableConv(out, params.exit_flow.separable_conv, [1, 1])); - return out; - }); - } - async forward(input) { - return this.forwardInput(await toNetInput(input)); - } - getDefaultModelName() { - return 'tiny_xception_model'; - } - extractParamsFromWeigthMap(weightMap) { - return extractParamsFromWeigthMap(weightMap, this._numMainBlocks); - } - extractParams(weights) { - return extractParams(weights, this._numMainBlocks); - } -} -//# sourceMappingURL=TinyXception.js.map \ No newline at end of file diff --git a/build/xception/TinyXception.js.map b/build/xception/TinyXception.js.map deleted file mode 100644 index 1ad4348..0000000 --- a/build/xception/TinyXception.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TinyXception.js","sourceRoot":"","sources":["../../src/xception/TinyXception.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAAc,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAuB,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAG1E,SAAS,IAAI,CAAC,CAAc,EAAE,MAAkB,EAAE,MAAwB;IACxE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;AAC1E,CAAC;AAED,SAAS,cAAc,CAAC,CAAc,EAAE,MAA4B,EAAE,kBAA2B,IAAI;IACnG,IAAI,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1C,GAAG,GAAG,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACjE,GAAG,GAAG,sBAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAG,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3E,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IAC7C,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,EAAG,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1D,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,SAAS,CAAC,CAAc,EAAE,MAAuB;IACxD,IAAI,GAAG,GAAG,sBAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5E,GAAG,GAAG,sBAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1E,GAAG,GAAG,sBAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1E,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IACpB,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,OAAO,YAAa,SAAQ,aAAiC;IAIjE,YAAY,aAAqB;QAC/B,KAAK,CAAC,cAAc,CAAC,CAAA;QACrB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAA;IACrC,CAAC;IAEM,YAAY,CAAC,KAAe;QAEjC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;SAC9D;QAED,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YAClD,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3C,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAgB,CAAA;YAErF,IAAI,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACtE,GAAG,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;YACrE,GAAG,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;YAE9D,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC/C,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC,CAAA;YAC/D,CAAC,CAAC,CAAA;YAEF,GAAG,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;YAC3D,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACnF,OAAO,GAAG,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,KAAgB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACnD,CAAC;IAES,mBAAmB;QAC3B,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAES,0BAA0B,CAAC,SAA4B;QAC/D,OAAO,0BAA0B,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;IACnE,CAAC;IAES,aAAa,CAAC,OAAqB;QAC3C,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;IACpD,CAAC;CACF"} \ No newline at end of file diff --git a/build/xception/extractParams.d.ts b/build/xception/extractParams.d.ts deleted file mode 100644 index 9c8b4a6..0000000 --- a/build/xception/extractParams.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ParamMapping } from '../common/types'; -import { TinyXceptionParams } from './types'; -export declare function extractParams(weights: Float32Array, numMainBlocks: number): { - params: TinyXceptionParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParams.d.ts.map \ No newline at end of file diff --git a/build/xception/extractParams.d.ts.map b/build/xception/extractParams.d.ts.map deleted file mode 100644 index f3c4fc0..0000000 --- a/build/xception/extractParams.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.d.ts","sourceRoot":"","sources":["../../src/xception/extractParams.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAAyC,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAkCpF,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,kBAAkB,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CA+CzI"} \ No newline at end of file diff --git a/build/xception/extractParams.js b/build/xception/extractParams.js deleted file mode 100644 index 66772a5..0000000 --- a/build/xception/extractParams.js +++ /dev/null @@ -1,55 +0,0 @@ -import { extractConvParamsFactory, extractSeparableConvParamsFactory, extractWeightsFactory } from '../common'; -import { range } from '../utils'; -function extractorsFactory(extractWeights, paramMappings) { - const extractConvParams = extractConvParamsFactory(extractWeights, paramMappings); - const extractSeparableConvParams = extractSeparableConvParamsFactory(extractWeights, paramMappings); - function extractReductionBlockParams(channelsIn, channelsOut, mappedPrefix) { - const separable_conv0 = extractSeparableConvParams(channelsIn, channelsOut, `${mappedPrefix}/separable_conv0`); - const separable_conv1 = extractSeparableConvParams(channelsOut, channelsOut, `${mappedPrefix}/separable_conv1`); - const expansion_conv = extractConvParams(channelsIn, channelsOut, 1, `${mappedPrefix}/expansion_conv`); - return { separable_conv0, separable_conv1, expansion_conv }; - } - function extractMainBlockParams(channels, mappedPrefix) { - const separable_conv0 = extractSeparableConvParams(channels, channels, `${mappedPrefix}/separable_conv0`); - const separable_conv1 = extractSeparableConvParams(channels, channels, `${mappedPrefix}/separable_conv1`); - const separable_conv2 = extractSeparableConvParams(channels, channels, `${mappedPrefix}/separable_conv2`); - return { separable_conv0, separable_conv1, separable_conv2 }; - } - return { - extractConvParams, - extractSeparableConvParams, - extractReductionBlockParams, - extractMainBlockParams - }; -} -export function extractParams(weights, numMainBlocks) { - const paramMappings = []; - const { extractWeights, getRemainingWeights } = extractWeightsFactory(weights); - const { extractConvParams, extractSeparableConvParams, extractReductionBlockParams, extractMainBlockParams } = extractorsFactory(extractWeights, paramMappings); - const entry_flow_conv_in = extractConvParams(3, 32, 3, 'entry_flow/conv_in'); - const entry_flow_reduction_block_0 = extractReductionBlockParams(32, 64, 'entry_flow/reduction_block_0'); - const entry_flow_reduction_block_1 = extractReductionBlockParams(64, 128, 'entry_flow/reduction_block_1'); - const entry_flow = { - conv_in: entry_flow_conv_in, - reduction_block_0: entry_flow_reduction_block_0, - reduction_block_1: entry_flow_reduction_block_1 - }; - const middle_flow = {}; - range(numMainBlocks, 0, 1).forEach((idx) => { - middle_flow[`main_block_${idx}`] = extractMainBlockParams(128, `middle_flow/main_block_${idx}`); - }); - const exit_flow_reduction_block = extractReductionBlockParams(128, 256, 'exit_flow/reduction_block'); - const exit_flow_separable_conv = extractSeparableConvParams(256, 512, 'exit_flow/separable_conv'); - const exit_flow = { - reduction_block: exit_flow_reduction_block, - separable_conv: exit_flow_separable_conv - }; - if (getRemainingWeights().length !== 0) { - throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`); - } - return { - paramMappings, - params: { entry_flow, middle_flow, exit_flow } - }; -} -//# sourceMappingURL=extractParams.js.map \ No newline at end of file diff --git a/build/xception/extractParams.js.map b/build/xception/extractParams.js.map deleted file mode 100644 index de87d79..0000000 --- a/build/xception/extractParams.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParams.js","sourceRoot":"","sources":["../../src/xception/extractParams.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/xception/extractParamsFromWeigthMap.d.ts b/build/xception/extractParamsFromWeigthMap.d.ts deleted file mode 100644 index 58524bc..0000000 --- a/build/xception/extractParamsFromWeigthMap.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as tf from '@tensorflow/tfjs-core'; -import { ParamMapping } from '../common'; -import { TinyXceptionParams } from './types'; -export declare function extractParamsFromWeigthMap(weightMap: tf.NamedTensorMap, numMainBlocks: number): { - params: TinyXceptionParams; - paramMappings: ParamMapping[]; -}; -//# sourceMappingURL=extractParamsFromWeigthMap.d.ts.map \ No newline at end of file diff --git a/build/xception/extractParamsFromWeigthMap.d.ts.map b/build/xception/extractParamsFromWeigthMap.d.ts.map deleted file mode 100644 index 13e62d7..0000000 --- a/build/xception/extractParamsFromWeigthMap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.d.ts","sourceRoot":"","sources":["../../src/xception/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE5C,OAAO,EAIL,YAAY,EACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAyC,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAmCpF,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,EAAE,CAAC,cAAc,EAC5B,aAAa,EAAE,MAAM,GACpB;IAAE,MAAM,EAAE,kBAAkB,CAAC;IAAC,aAAa,EAAE,YAAY,EAAE,CAAA;CAAE,CAqC/D"} \ No newline at end of file diff --git a/build/xception/extractParamsFromWeigthMap.js b/build/xception/extractParamsFromWeigthMap.js deleted file mode 100644 index 5bc6512..0000000 --- a/build/xception/extractParamsFromWeigthMap.js +++ /dev/null @@ -1,51 +0,0 @@ -import { disposeUnusedWeightTensors, extractWeightEntryFactory, loadSeparableConvParamsFactory, } from '../common'; -import { loadConvParamsFactory } from '../common/loadConvParamsFactory'; -import { range } from '../utils'; -function loadParamsFactory(weightMap, paramMappings) { - const extractWeightEntry = extractWeightEntryFactory(weightMap, paramMappings); - const extractConvParams = loadConvParamsFactory(extractWeightEntry); - const extractSeparableConvParams = loadSeparableConvParamsFactory(extractWeightEntry); - function extractReductionBlockParams(mappedPrefix) { - const separable_conv0 = extractSeparableConvParams(`${mappedPrefix}/separable_conv0`); - const separable_conv1 = extractSeparableConvParams(`${mappedPrefix}/separable_conv1`); - const expansion_conv = extractConvParams(`${mappedPrefix}/expansion_conv`); - return { separable_conv0, separable_conv1, expansion_conv }; - } - function extractMainBlockParams(mappedPrefix) { - const separable_conv0 = extractSeparableConvParams(`${mappedPrefix}/separable_conv0`); - const separable_conv1 = extractSeparableConvParams(`${mappedPrefix}/separable_conv1`); - const separable_conv2 = extractSeparableConvParams(`${mappedPrefix}/separable_conv2`); - return { separable_conv0, separable_conv1, separable_conv2 }; - } - return { - extractConvParams, - extractSeparableConvParams, - extractReductionBlockParams, - extractMainBlockParams - }; -} -export function extractParamsFromWeigthMap(weightMap, numMainBlocks) { - const paramMappings = []; - const { extractConvParams, extractSeparableConvParams, extractReductionBlockParams, extractMainBlockParams } = loadParamsFactory(weightMap, paramMappings); - const entry_flow_conv_in = extractConvParams('entry_flow/conv_in'); - const entry_flow_reduction_block_0 = extractReductionBlockParams('entry_flow/reduction_block_0'); - const entry_flow_reduction_block_1 = extractReductionBlockParams('entry_flow/reduction_block_1'); - const entry_flow = { - conv_in: entry_flow_conv_in, - reduction_block_0: entry_flow_reduction_block_0, - reduction_block_1: entry_flow_reduction_block_1 - }; - const middle_flow = {}; - range(numMainBlocks, 0, 1).forEach((idx) => { - middle_flow[`main_block_${idx}`] = extractMainBlockParams(`middle_flow/main_block_${idx}`); - }); - const exit_flow_reduction_block = extractReductionBlockParams('exit_flow/reduction_block'); - const exit_flow_separable_conv = extractSeparableConvParams('exit_flow/separable_conv'); - const exit_flow = { - reduction_block: exit_flow_reduction_block, - separable_conv: exit_flow_separable_conv - }; - disposeUnusedWeightTensors(weightMap, paramMappings); - return { params: { entry_flow, middle_flow, exit_flow }, paramMappings }; -} -//# sourceMappingURL=extractParamsFromWeigthMap.js.map \ No newline at end of file diff --git a/build/xception/extractParamsFromWeigthMap.js.map b/build/xception/extractParamsFromWeigthMap.js.map deleted file mode 100644 index 571f9c2..0000000 --- a/build/xception/extractParamsFromWeigthMap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"extractParamsFromWeigthMap.js","sourceRoot":"","sources":["../../src/xception/extractParamsFromWeigthMap.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,8BAA8B,GAE/B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,SAAS,iBAAiB,CAAC,SAAc,EAAE,aAA6B;IAEtE,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE9E,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,CAAA;IACnE,MAAM,0BAA0B,GAAG,8BAA8B,CAAC,kBAAkB,CAAC,CAAA;IAErF,SAAS,2BAA2B,CAAC,YAAoB;QAEvD,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,YAAY,kBAAkB,CAAC,CAAA;QACrF,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,YAAY,kBAAkB,CAAC,CAAA;QACrF,MAAM,cAAc,GAAG,iBAAiB,CAAC,GAAG,YAAY,iBAAiB,CAAC,CAAA;QAE1E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA;IAC7D,CAAC;IAED,SAAS,sBAAsB,CAAC,YAAoB;QAElD,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,YAAY,kBAAkB,CAAC,CAAA;QACrF,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,YAAY,kBAAkB,CAAC,CAAA;QACrF,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,YAAY,kBAAkB,CAAC,CAAA;QAErF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAA;IAC9D,CAAC;IAED,OAAO;QACL,iBAAiB;QACjB,0BAA0B;QAC1B,2BAA2B;QAC3B,sBAAsB;KACvB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,SAA4B,EAC5B,aAAqB;IAGrB,MAAM,aAAa,GAAmB,EAAE,CAAA;IAExC,MAAM,EACJ,iBAAiB,EACjB,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACvB,GAAG,iBAAiB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAE/C,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;IAClE,MAAM,4BAA4B,GAAG,2BAA2B,CAAC,8BAA8B,CAAC,CAAA;IAChG,MAAM,4BAA4B,GAAG,2BAA2B,CAAC,8BAA8B,CAAC,CAAA;IAEhG,MAAM,UAAU,GAAG;QACjB,OAAO,EAAE,kBAAkB;QAC3B,iBAAiB,EAAE,4BAA4B;QAC/C,iBAAiB,EAAE,4BAA4B;KAChD,CAAA;IAED,MAAM,WAAW,GAAG,EAAE,CAAA;IACtB,KAAK,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACzC,WAAW,CAAC,cAAc,GAAG,EAAE,CAAC,GAAG,sBAAsB,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAA;IAC5F,CAAC,CAAC,CAAA;IAEF,MAAM,yBAAyB,GAAG,2BAA2B,CAAC,2BAA2B,CAAC,CAAA;IAC1F,MAAM,wBAAwB,GAAG,0BAA0B,CAAC,0BAA0B,CAAC,CAAA;IAEvF,MAAM,SAAS,GAAG;QAChB,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,wBAAwB;KACzC,CAAA;IAED,0BAA0B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;IAEpD,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,CAAA;AAC1E,CAAC"} \ No newline at end of file diff --git a/build/xception/index.d.ts b/build/xception/index.d.ts deleted file mode 100644 index 60563d0..0000000 --- a/build/xception/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './TinyXception'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/build/xception/index.d.ts.map b/build/xception/index.d.ts.map deleted file mode 100644 index 11365a7..0000000 --- a/build/xception/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/xception/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"} \ No newline at end of file diff --git a/build/xception/index.js b/build/xception/index.js deleted file mode 100644 index 0fc246d..0000000 --- a/build/xception/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export * from './TinyXception'; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/xception/index.js.map b/build/xception/index.js.map deleted file mode 100644 index 4f5ca3f..0000000 --- a/build/xception/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/xception/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"} \ No newline at end of file diff --git a/build/xception/types.d.ts b/build/xception/types.d.ts deleted file mode 100644 index 0a03a3e..0000000 --- a/build/xception/types.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { ConvParams, SeparableConvParams } from '../common'; -export declare type ReductionBlockParams = { - separable_conv0: SeparableConvParams; - separable_conv1: SeparableConvParams; - expansion_conv: ConvParams; -}; -export declare type MainBlockParams = { - separable_conv0: SeparableConvParams; - separable_conv1: SeparableConvParams; - separable_conv2: SeparableConvParams; -}; -export declare type TinyXceptionParams = { - entry_flow: { - conv_in: ConvParams; - reduction_block_0: ReductionBlockParams; - reduction_block_1: ReductionBlockParams; - }; - middle_flow: any; - exit_flow: { - reduction_block: ReductionBlockParams; - separable_conv: SeparableConvParams; - }; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/build/xception/types.d.ts.map b/build/xception/types.d.ts.map deleted file mode 100644 index af6a731..0000000 --- a/build/xception/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/xception/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAE5D,oBAAY,oBAAoB,GAAG;IACjC,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;IACpC,cAAc,EAAE,UAAU,CAAA;CAC3B,CAAA;AAED,oBAAY,eAAe,GAAG;IAC5B,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;IACpC,eAAe,EAAE,mBAAmB,CAAA;CACrC,CAAA;AAED,oBAAY,kBAAkB,GAAG;IAC/B,UAAU,EAAE;QACV,OAAO,EAAE,UAAU,CAAA;QACnB,iBAAiB,EAAE,oBAAoB,CAAA;QACvC,iBAAiB,EAAE,oBAAoB,CAAA;KACxC,CAAA;IACD,WAAW,EAAE,GAAG,CAAC;IACjB,SAAS,EAAE;QACT,eAAe,EAAE,oBAAoB,CAAA;QACrC,cAAc,EAAE,mBAAmB,CAAA;KACpC,CAAA;CACF,CAAA"} \ No newline at end of file diff --git a/build/xception/types.js b/build/xception/types.js deleted file mode 100644 index 718fd38..0000000 --- a/build/xception/types.js +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/xception/types.js.map b/build/xception/types.js.map deleted file mode 100644 index f62d155..0000000 --- a/build/xception/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/xception/types.ts"],"names":[],"mappings":""} \ No newline at end of file