Manav Rathi 1 vuosi sitten
vanhempi
commit
19f06e6494
22 muutettua tiedostoa jossa 39 lisäystä ja 39 poistoa
  1. 1 1
      web/apps/photos/src/components/Search/SearchBar/searchInput/MenuWithPeople.tsx
  2. 1 1
      web/apps/photos/src/components/Search/SearchBar/searchInput/index.tsx
  3. 2 2
      web/apps/photos/src/components/ml/PeopleList.tsx
  4. 1 1
      web/apps/photos/src/services/face/db.ts
  5. 1 1
      web/apps/photos/src/services/face/face.worker.ts
  6. 0 0
      web/apps/photos/src/services/face/geom.ts
  7. 2 2
      web/apps/photos/src/services/face/image.ts
  8. 1 1
      web/apps/photos/src/services/face/index.ts
  9. 1 1
      web/apps/photos/src/services/face/types.ts
  10. 2 2
      web/apps/photos/src/services/machineLearning/arcfaceAlignmentService.ts
  11. 2 2
      web/apps/photos/src/services/machineLearning/arcfaceCropService.ts
  12. 3 3
      web/apps/photos/src/services/machineLearning/faceService.ts
  13. 1 1
      web/apps/photos/src/services/machineLearning/hdbscanClusteringService.ts
  14. 1 1
      web/apps/photos/src/services/machineLearning/laplacianBlurDetectionService.ts
  15. 4 4
      web/apps/photos/src/services/machineLearning/machineLearningService.ts
  16. 4 4
      web/apps/photos/src/services/machineLearning/mlWorkManager.ts
  17. 1 1
      web/apps/photos/src/services/machineLearning/mobileFaceNetEmbeddingService.ts
  18. 3 3
      web/apps/photos/src/services/machineLearning/peopleService.ts
  19. 2 2
      web/apps/photos/src/services/machineLearning/yoloFaceDetectionService.ts
  20. 2 2
      web/apps/photos/src/services/searchService.ts
  21. 2 2
      web/apps/photos/src/types/search/index.ts
  22. 2 2
      web/apps/photos/src/utils/image/index.ts

+ 1 - 1
web/apps/photos/src/components/Search/SearchBar/searchInput/MenuWithPeople.tsx

@@ -5,7 +5,7 @@ import { t } from "i18next";
 import { AppContext } from "pages/_app";
 import { useContext } from "react";
 import { components } from "react-select";
-import { IndexStatus } from "services/ml/db";
+import { IndexStatus } from "services/face/db";
 import { Suggestion, SuggestionType } from "types/search";
 
 const { Menu } = components;

+ 1 - 1
web/apps/photos/src/components/Search/SearchBar/searchInput/index.tsx

@@ -9,8 +9,8 @@ import { useCallback, useContext, useEffect, useRef, useState } from "react";
 import { components } from "react-select";
 import AsyncSelect from "react-select/async";
 import { InputActionMeta } from "react-select/src/types";
+import { Person } from "services/face/types";
 import { City } from "services/locationSearchService";
-import { Person } from "services/ml/types";
 import {
     getAutoCompleteSuggestions,
     getDefaultOptions,

+ 2 - 2
web/apps/photos/src/components/ml/PeopleList.tsx

@@ -3,8 +3,8 @@ import { Skeleton, styled } from "@mui/material";
 import { Legend } from "components/PhotoViewer/styledComponents/Legend";
 import { t } from "i18next";
 import React, { useEffect, useState } from "react";
-import mlIDbStorage from "services/ml/db";
-import { Face, Person, type MlFileData } from "services/ml/types";
+import mlIDbStorage from "services/face/db";
+import { Face, Person, type MlFileData } from "services/face/types";
 import { EnteFile } from "types/file";
 
 const FaceChipContainer = styled("div")`

+ 1 - 1
web/apps/photos/src/services/ml/db.ts → web/apps/photos/src/services/face/db.ts

@@ -9,11 +9,11 @@ import {
     openDB,
 } from "idb";
 import isElectron from "is-electron";
+import { Face, MLLibraryData, MlFileData, Person } from "services/face/types";
 import {
     DEFAULT_ML_SEARCH_CONFIG,
     MAX_ML_SYNC_ERROR_COUNT,
 } from "services/machineLearning/machineLearningService";
-import { Face, MLLibraryData, MlFileData, Person } from "services/ml/types";
 
 export interface IndexStatus {
     outOfSyncFilesExists: boolean;

+ 1 - 1
web/apps/photos/src/services/ml/face.worker.ts → web/apps/photos/src/services/face/face.worker.ts

@@ -1,7 +1,7 @@
 import log from "@/next/log";
 import { expose } from "comlink";
+import { MachineLearningWorker } from "services/face/types";
 import mlService from "services/machineLearning/machineLearningService";
-import { MachineLearningWorker } from "services/ml/types";
 import { EnteFile } from "types/file";
 
 export class DedicatedMLWorker implements MachineLearningWorker {

+ 0 - 0
web/apps/photos/src/services/ml/geom.ts → web/apps/photos/src/services/face/geom.ts


+ 2 - 2
web/apps/photos/src/services/machineLearning/readerService.ts → web/apps/photos/src/services/face/image.ts

@@ -2,9 +2,9 @@ import { FILE_TYPE } from "@/media/file-type";
 import { decodeLivePhoto } from "@/media/live-photo";
 import log from "@/next/log";
 import DownloadManager from "services/download";
+import { Dimensions } from "services/face/geom";
+import { DetectedFace, MLSyncFileContext } from "services/face/types";
 import { getLocalFiles } from "services/fileService";
-import { Dimensions } from "services/ml/geom";
-import { DetectedFace, MLSyncFileContext } from "services/ml/types";
 import { EnteFile } from "types/file";
 import { getRenderableImage } from "utils/file";
 import { clamp } from "utils/image";

+ 1 - 1
web/apps/photos/src/services/ml/face.ts → web/apps/photos/src/services/face/index.ts

@@ -1,5 +1,5 @@
 import { ComlinkWorker } from "@/next/worker/comlink-worker";
-import type { DedicatedMLWorker } from "services/ml/face.worker";
+import type { DedicatedMLWorker } from "services/face/face.worker";
 
 const createFaceWebWorker = () =>
     new Worker(new URL("face.worker.ts", import.meta.url));

+ 1 - 1
web/apps/photos/src/services/ml/types.ts → web/apps/photos/src/services/face/types.ts

@@ -1,6 +1,6 @@
 import { DebugInfo } from "hdbscan";
 import PQueue from "p-queue";
-import { Dimensions } from "services/ml/geom";
+import { Dimensions } from "services/face/geom";
 import { EnteFile } from "types/file";
 import { Box, Point } from "./geom";
 

+ 2 - 2
web/apps/photos/src/services/machineLearning/arcfaceAlignmentService.ts

@@ -1,12 +1,12 @@
 import { Matrix } from "ml-matrix";
-import { Point } from "services/ml/geom";
+import { Point } from "services/face/geom";
 import {
     FaceAlignment,
     FaceAlignmentMethod,
     FaceAlignmentService,
     FaceDetection,
     Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 import { getSimilarityTransformation } from "similarity-transformation";
 
 class ArcfaceAlignmentService implements FaceAlignmentService {

+ 2 - 2
web/apps/photos/src/services/machineLearning/arcfaceCropService.ts

@@ -1,4 +1,4 @@
-import { Box, enlargeBox } from "services/ml/geom";
+import { Box, enlargeBox } from "services/face/geom";
 import {
     FaceAlignment,
     FaceCrop,
@@ -6,7 +6,7 @@ import {
     FaceCropService,
     FaceDetection,
     Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 import { cropWithRotation } from "utils/image";
 import { getArcfaceAlignment } from "./arcfaceAlignmentService";
 

+ 3 - 3
web/apps/photos/src/services/machineLearning/faceService.ts

@@ -1,6 +1,6 @@
 import { openCache } from "@/next/blob-cache";
 import log from "@/next/log";
-import mlIDbStorage from "services/ml/db";
+import mlIDbStorage from "services/face/db";
 import {
     DetectedFace,
     Face,
@@ -8,14 +8,14 @@ import {
     MLSyncFileContext,
     type FaceAlignment,
     type Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 import { imageBitmapToBlob, warpAffineFloat32List } from "utils/image";
 import {
     fetchImageBitmap,
     fetchImageBitmapForContext,
     getFaceId,
     getLocalFile,
-} from "./readerService";
+} from "../face/image";
 
 class FaceService {
     async syncFileFaceDetections(

+ 1 - 1
web/apps/photos/src/services/machineLearning/hdbscanClusteringService.ts

@@ -5,7 +5,7 @@ import {
     ClusteringService,
     HdbscanResults,
     Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 
 class HdbscanClusteringService implements ClusteringService {
     public method: Versioned<ClusteringMethod>;

+ 1 - 1
web/apps/photos/src/services/machineLearning/laplacianBlurDetectionService.ts

@@ -3,7 +3,7 @@ import {
     BlurDetectionService,
     Face,
     Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 import { createGrayscaleIntMatrixFromNormalized2List } from "utils/image";
 import { mobileFaceNetFaceSize } from "./mobileFaceNetEmbeddingService";
 

+ 4 - 4
web/apps/photos/src/services/machineLearning/machineLearningService.ts

@@ -10,8 +10,7 @@ import { CustomError, parseUploadErrorCodes } from "@ente/shared/error";
 import PQueue from "p-queue";
 import downloadManager from "services/download";
 import { putEmbedding } from "services/embeddingService";
-import { getLocalFiles } from "services/fileService";
-import mlIDbStorage, { ML_SEARCH_CONFIG_NAME } from "services/ml/db";
+import mlIDbStorage, { ML_SEARCH_CONFIG_NAME } from "services/face/db";
 import {
     BlurDetectionMethod,
     BlurDetectionService,
@@ -35,7 +34,8 @@ import {
     MLSyncFileContext,
     MLSyncResult,
     MlFileData,
-} from "services/ml/types";
+} from "services/face/types";
+import { getLocalFiles } from "services/fileService";
 import { EnteFile } from "types/file";
 import { isInternalUserForML } from "utils/user";
 import arcfaceAlignmentService from "./arcfaceAlignmentService";
@@ -46,7 +46,7 @@ import laplacianBlurDetectionService from "./laplacianBlurDetectionService";
 import mobileFaceNetEmbeddingService from "./mobileFaceNetEmbeddingService";
 import PeopleService from "./peopleService";
 
-import { fetchImageBitmapForContext } from "./readerService";
+import { fetchImageBitmapForContext } from "../face/image";
 import yoloFaceDetectionService from "./yoloFaceDetectionService";
 
 /**

+ 4 - 4
web/apps/photos/src/services/machineLearning/mlWorkManager.ts

@@ -5,10 +5,10 @@ import { eventBus, Events } from "@ente/shared/events";
 import { getToken, getUserID } from "@ente/shared/storage/localStorage/helpers";
 import debounce from "debounce";
 import PQueue from "p-queue";
-import mlIDbStorage from "services/ml/db";
-import { createFaceComlinkWorker } from "services/ml/face";
-import type { DedicatedMLWorker } from "services/ml/face.worker";
-import { MLSyncResult } from "services/ml/types";
+import mlIDbStorage from "services/face/db";
+import { createFaceComlinkWorker } from "services/face";
+import type { DedicatedMLWorker } from "services/face/face.worker";
+import { MLSyncResult } from "services/face/types";
 import { EnteFile } from "types/file";
 import { logQueueStats } from "./machineLearningService";
 

+ 1 - 1
web/apps/photos/src/services/machineLearning/mobileFaceNetEmbeddingService.ts

@@ -4,7 +4,7 @@ import {
     FaceEmbeddingMethod,
     FaceEmbeddingService,
     Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 
 export const mobileFaceNetFaceSize = 112;
 

+ 3 - 3
web/apps/photos/src/services/machineLearning/peopleService.ts

@@ -1,8 +1,8 @@
 import log from "@/next/log";
-import mlIDbStorage from "services/ml/db";
-import { Face, MLSyncContext, Person } from "services/ml/types";
+import mlIDbStorage from "services/face/db";
+import { Face, MLSyncContext, Person } from "services/face/types";
+import { fetchImageBitmap, getLocalFile } from "../face/image";
 import FaceService, { isDifferentOrOld } from "./faceService";
-import { fetchImageBitmap, getLocalFile } from "./readerService";
 
 class PeopleService {
     async syncPeopleIndex(syncContext: MLSyncContext) {

+ 2 - 2
web/apps/photos/src/services/machineLearning/yoloFaceDetectionService.ts

@@ -6,13 +6,13 @@ import {
     Point,
     boxFromBoundingBox,
     newBox,
-} from "services/ml/geom";
+} from "services/face/geom";
 import {
     FaceDetection,
     FaceDetectionMethod,
     FaceDetectionService,
     Versioned,
-} from "services/ml/types";
+} from "services/face/types";
 import {
     Matrix,
     applyToPoint,

+ 2 - 2
web/apps/photos/src/services/searchService.ts

@@ -2,9 +2,9 @@ import { FILE_TYPE } from "@/media/file-type";
 import log from "@/next/log";
 import * as chrono from "chrono-node";
 import { t } from "i18next";
+import mlIDbStorage from "services/face/db";
+import { Person } from "services/face/types";
 import { defaultMLVersion } from "services/machineLearning/machineLearningService";
-import mlIDbStorage from "services/ml/db";
-import { Person } from "services/ml/types";
 import { Collection } from "types/collection";
 import { EntityType, LocationTag, LocationTagData } from "types/entity";
 import { EnteFile } from "types/file";

+ 2 - 2
web/apps/photos/src/types/search/index.ts

@@ -1,7 +1,7 @@
 import { FILE_TYPE } from "@/media/file-type";
+import { IndexStatus } from "services/face/db";
+import { Person } from "services/face/types";
 import { City } from "services/locationSearchService";
-import { IndexStatus } from "services/ml/db";
-import { Person } from "services/ml/types";
 import { LocationTagData } from "types/entity";
 import { EnteFile } from "types/file";
 

+ 2 - 2
web/apps/photos/src/utils/image/index.ts

@@ -1,8 +1,8 @@
 // these utils only work in env where OffscreenCanvas is available
 
 import { Matrix, inverse } from "ml-matrix";
-import { Box, Dimensions, enlargeBox } from "services/ml/geom";
-import { FaceAlignment } from "services/ml/types";
+import { Box, Dimensions, enlargeBox } from "services/face/geom";
+import { FaceAlignment } from "services/face/types";
 
 export function normalizePixelBetween0And1(pixelValue: number) {
     return pixelValue / 255.0;