Commit graph

2516 commits

Author SHA1 Message Date
Shailesh Pandit b9d32cc1e6 Dispose sync context in local file sync flow 2022-01-03 07:13:59 +05:30
Shailesh Pandit fc459171f4 Fix typo 2022-01-02 22:33:40 +05:30
Shailesh Pandit 502a023fa3 Run ml sync concurrently 2022-01-02 22:27:42 +05:30
Shailesh Pandit 86052cc393 Run face clustering using configured method
Save face clustering results
Display noise faces on ml debug page
2021-12-31 12:08:50 +05:30
Shailesh Pandit 30f9088c81 Show face crops and images in rows 2021-12-29 18:45:47 +05:30
Shailesh Pandit 778431d01b Normalize landmark and box thickness in ml debug 2021-12-29 17:11:46 +05:30
Shailesh Pandit 9d3bf5ce6f Detected face transforms to and from face crop 2021-12-29 12:10:11 +05:30
Shailesh Pandit 162d760b80 Use transformation-matrix package for transforms 2021-12-29 10:32:01 +05:30
Shailesh Pandit 385acec1ab Do 2nd pass of blazeface on close ups
for better accuracy
Transform utils
2021-12-28 20:30:52 +05:30
Shailesh Pandit 72b2a6ad8b Handle empty faces in unidentified faces 2021-12-25 14:22:38 +05:30
Shailesh Pandit 8177cd336b Show unidentified faces in info panel
Add local file debugging info to ml debug page
showing aligned face box and landmarks and face crops
2021-12-25 13:07:24 +05:30
Shailesh Pandit 91bd053cf5 Use face crops while calculating embeddings
Simulate mlVersion update requiring only embeddings to be recalculated
without downloading full image
2021-12-24 12:27:29 +05:30
Shailesh Pandit 7b06f5d8f8 imageSource not updated based on actual source 2021-12-23 23:59:49 +05:30
Shailesh Pandit 44f4362f0f Store ml sync error count for a file, limit retry
Download original quality files for photos and live photos only
2021-12-23 23:40:21 +05:30
Shailesh Pandit b4c31c5845 Store face crops, extract aligned faces from face crops
Align faces using center, size and rotation only, using this aligned faces can be extracted without whole image
2021-12-23 18:27:53 +05:30
Shailesh Pandit 4ebcddbb84 Provision to run ml sync on original images
To capture high resolution face images
Use ImageBitmap till tf models as tf manipulations on variable dimention images leads to gpu memory leak - https://github.com/tensorflow/tfjs/issues/604
2021-12-20 22:20:20 +05:30
Shailesh Pandit 0e366264a0 TF memory cleaned only with tf.dispose and tf.tidy
Remove usage of startScope and endScope, can be used for debugging
2021-12-15 17:20:07 +05:30
Shailesh Pandit f5ca124fc9 Only sync updated ml methods for existing files 2021-12-14 19:44:13 +05:30
Shailesh Pandit 2d17dd30e9 For uploaded files use local files for ML Sync
Extract out ML work manager and sync job from worker
Start and stop ML Sync job on app start, login and logout
2021-12-12 23:12:18 +05:30
Shailesh Pandit 470f9fb931 Move machine learning types to types folder 2021-12-08 12:43:51 +05:30
Shailesh Pandit 4d89e7df96 Revert comented ffmpeg code
As not required after common upload types are extracted out
2021-12-08 12:22:12 +05:30
Shailesh Pandit d65de21be5 Merge branch 'upload-types-refactor' into machine-learning 2021-12-08 11:59:07 +05:30
Shailesh Pandit d5199acc43 Extract common types in upload service to upload types
Required for not including code required for upload service in other parts just requiring common types
e.g. ffmpegService is included in machine learning web worker while including downloadManager service
2021-12-08 11:53:34 +05:30
Shailesh Pandit 28b77bcf0a Merge branch 'master' into machine-learning 2021-12-07 18:41:29 +05:30
Vishnu Mohandas 79046cc694
Enable batch edit of creation-time for 243 2021-12-03 10:08:54 +05:30
Shailesh Pandit 39386941f5 Sync people index only after new files are synced
Maintain files and people latest versions
2021-12-01 19:21:02 +05:30
Shailesh Pandit 498603eb34 Clear tf memory usage after each sync run 2021-12-01 19:00:57 +05:30
Shailesh Pandit 7bfddfedce Handle async updates in PeopleList 2021-12-01 11:18:36 +05:30
Abhinav a0708ac3f8 log dateTime value on getUNIXTime fail 2021-11-30 11:15:36 +05:30
Abhinav 0e57c8830b fail safe error handling 2021-11-30 11:14:33 +05:30
Abhinav 9454540175 update name to getCachedOriginalFile 2021-11-29 14:14:28 +05:30
Abhinav 3a0e6b2f98 renamed get preview to getThumbnail 2021-11-29 14:12:24 +05:30
Abhinav a1672d3c2f handle saving to cache in getPreview itself 2021-11-29 14:11:41 +05:30
Abhinav 1f3734b577 fix isFileHEIC check 2021-11-29 12:09:21 +05:30
Abhinav 9e3c294775 check in memory cache for thumbnail before hitting browser cache 2021-11-29 12:08:53 +05:30
Abhinav f997c7457a use converted suffix instead of forPreview to to avoid duplicate download of unconverted files 2021-11-29 11:18:28 +05:30
Abhinav f688d620cc prevent duplicate file download calls 2021-11-29 10:42:46 +05:30
Shailesh Pandit 1d41644ac8 Add people to search, filter photos by person 2021-11-28 21:45:44 +05:30
Shailesh Pandit af130f803b Set person face chip to one having max pixels
And detection probability score
2021-11-28 11:28:13 +05:30
Shailesh Pandit e96e1a9ee4 Show people face chips in info panel of image 2021-11-28 11:17:56 +05:30
Abhinav 4b93b9e9a4 only show progress bar if sync not in progress 2021-11-27 16:47:54 +05:30
Shailesh Pandit 52b20c9783 Rename personId to id 2021-11-27 15:40:29 +05:30
Abhinav 6ba24037e1 add download logic 2021-11-27 15:40:15 +05:30
Shailesh Pandit 320099df59 Sync people from generated clusters
Update personId in faces
2021-11-27 15:31:03 +05:30
Abhinav 97b9ac0626 add download all button 2021-11-27 13:23:05 +05:30
Shailesh Pandit 83e21d7aab Fix build, better naming, disable tsne 2021-11-27 11:34:26 +05:30
Shailesh Pandit 0d72fccd7a Streamline clustering config and service
Fix tsne
MLDebug to have start and stop ml sync
2021-11-27 09:55:39 +05:30
Shailesh Pandit 8d6ec08d08 Run clustering on all faces in db 2021-11-26 20:31:34 +05:30
Shailesh Pandit b4ad482431 Process new and outdated files in ml sync 2021-11-26 19:59:13 +05:30
Vishnu Mohandas 935f480b04
Merge pull request #250 from ente-io/photoswipe-error-handling
fixes photoswipe issues
2021-11-25 23:07:14 +05:30
Shailesh Pandit 1f0853debd Run ml-worker batches continuously
Persist versioned faces in indexdb
2021-11-25 22:08:28 +05:30
Abhinav 80e26b10b7 fix width and height missing from photoswipe items 2021-11-25 17:25:56 +05:30
abhinavkgrd 4c30c45724
Merge pull request #249 from ente-io/ffmpeg-load-fail-handling
ffmpeg load fail handling
2021-11-25 12:11:53 +05:30
abhinavkgrd 863b814d88
Merge pull request #237 from ente-io/fix-file-type-not-logged
missed a place where type info was not logged
2021-11-25 11:55:19 +05:30
Abhinav 7f8d2b84c8 clear failed ffmpeg instance..so new load is trigerred 2021-11-25 11:28:16 +05:30
abhinavkgrd 5e3551e8c3
Merge pull request #246 from ente-io/stripe-redirect
Stripe redirect fix
2021-11-24 14:05:36 +05:30
abhinavkgrd d1e98d17a5
Merge pull request #247 from ente-io/fix-multi-folder-detection
Fix multi folder detection
2021-11-24 13:51:43 +05:30
Abhinav ca86255bd3 use app context instead of locl storage key 2021-11-23 17:55:04 +05:30
Abhinav 18878ec240 remove console logs 2021-11-23 17:24:58 +05:30
Abhinav e204fb2aef fix multiple folder detection 2021-11-23 17:24:58 +05:30
Abhinav 7bd3a4ad42 Revert "preserve other query param during collection url set"
This reverts commit 4d5fae1591.
2021-11-23 10:44:56 +05:30
Abhinav 62a761e5ca handle missing key or token 2021-11-23 09:45:19 +05:30
Abhinav f592a04ad2 prevent router loop 2021-11-23 09:40:19 +05:30
Abhinav cb3775c690 dont need shallow update 2021-11-23 00:01:42 +05:30
Abhinav 0c8ad4b67c wait for router ready before checkSubscriptionPurchase 2021-11-22 22:59:34 +05:30
Abhinav 4bdbc36b25 fix change 2021-11-22 22:32:30 +05:30
Abhinav 97a3eef465 preserve rest queryParam after checkSubscriptionPurchase 2021-11-22 22:10:05 +05:30
Abhinav 4d5fae1591 preserve other query param during collection url set 2021-11-22 22:09:25 +05:30
Abhinav 879ab66c08 save redirectURL in localStorage before auth redirect 2021-11-22 21:54:32 +05:30
Shailesh Pandit 986f514cba Hide clustering params not used in hdbscan 2021-11-22 11:53:59 +05:30
Shailesh Pandit 9068b5643a Limit tsne to 200 faces
As it takes exponential time and 200 faces is enough for analysis
2021-11-22 11:49:05 +05:30
Shailesh Pandit d16837262d Use arcface alignment for mobilefacenet
Use rotation alignment in blazeface to fapi flow
Extract aligned face images before embeddings calculations
2021-11-20 14:56:36 +05:30
Abhinav e13787df7a only pass non trashed file user files for search 2021-11-20 12:15:51 +05:30
Abhinav 8929f235e7 improve error handling 2021-11-20 12:06:25 +05:30
Abhinav b95be7bf06 fix style 2021-11-19 02:21:10 +05:30
Abhinav e3aa37c09e update copy 2021-11-19 01:50:59 +05:30
Abhinav 56791e2c91 update layout 2021-11-19 01:36:58 +05:30
Abhinav 60fef97f7b update copies 2021-11-19 01:34:54 +05:30
Abhinav db92ac123f update string 2021-11-19 00:59:56 +05:30
Abhinav 8d6b889126 fix date selector width 2021-11-19 00:49:39 +05:30
Abhinav b928052165 make fix creation time visible to array of userIds 2021-11-19 00:25:11 +05:30
Abhinav 18c6edab2c null check 2021-11-19 00:25:11 +05:30
Abhinav aca752f00e refactor component 2021-11-19 00:25:11 +05:30
Abhinav b2162c4398 add options for fix creation time 2021-11-19 00:24:47 +05:30
Abhinav 91cbbfc3eb refactor date picker into seperate component 2021-11-18 22:20:53 +05:30
Abhinav 2b7e5f2074 one more place with same issue 2021-11-18 10:12:19 +05:30
abhinavkgrd e913615f57
Merge pull request #221 from ente-io/fix-creation-time
Fix creation time
2021-11-17 22:26:16 +05:30
Shailesh Pandit eeec2d1012 Make TFJSFaceEmbeddingService api compatible 2021-11-17 16:42:55 +05:30
Shailesh Pandit 0380fb64e3 Create worker env for face-api without global patch 2021-11-17 16:41:45 +05:30
Abhinav d62739e259 show fix creation for selected user 2021-11-17 15:10:09 +05:30
Shailesh Pandit 3764e67709 Add required face-api.js files to work with latest tfjs 2021-11-17 14:14:43 +05:30
Shailesh Pandit 4171e8cb3a Use blazeface for detection, face-api for alignment and embeddings 2021-11-17 14:01:30 +05:30
Abhinav 8ad2d3f23f skip non image file before downoading itself 2021-11-17 13:51:21 +05:30
Abhinav bb9c82db52 remove unused LS_KEYS 2021-11-17 13:36:23 +05:30
Abhinav 0c23ace8ff remove redundant code 2021-11-17 13:29:46 +05:30
Abhinav 84617a3267 trigger popper open only if attributes not null 2021-11-17 13:17:21 +05:30
Abhinav f8de2f21c7 move setProgressTracker to finally block for any case update 2021-11-17 13:16:29 +05:30
Abhinav 80aa50b8fb only try to parse image exif 2021-11-17 13:11:33 +05:30
Abhinav d15cef404d update strings 2021-11-17 13:05:41 +05:30
Abhinav 29ecff60d6 reorder selection bar icons 2021-11-17 10:29:40 +05:30