Files
photoassistant/TODO

150 lines
6.2 KiB
Plaintext

## GENERAL
* work out why no thumbs for:
pa=# select e.name from entry e, file f where f.eid = e.id and e.type_id =1 and f.thumbnail is null;
name
-------------------------------------------
dad and mum wedding with priest.bmp
dad with albina.bmp
dad portrait.bmp
presents.bmp
dad and mums wedding party.bmp
images.png
images (2).png
the boys.bmp
dad mum willie and emilio.bmp
dad with ross on trike.bmp
dad mum out.bmp
snowies machinery.bmp
images (1).png
dad and mums wedding party with names.bmp
dads wedding.bmp
dads wedding2.bmp
pa=# select e.name from entry e, file f where f.eid = e.id and e.type_id = 2 and f.thumbnail is null;
name
------------------------
20210526_205257_01.mp4
20210526_205257_99.mp4
2014-xmas-hps.xcf
rabbits.xcf
IMG_2553.MOV
IMG_2553.MOV
IMG_2553.MOV
DSCN0553.MOV
DSCN0555.MOV
DSCN0552.MOV
DSCN0556.MOV
DSCN0554.MOV
(including why .xcf is seen as a video???)
* remember last import dir, so you can just go straight back to it
* put a delete option on viewer page
* close button on invalid password should look like danger/alert/close for jobs
* maybe strip unnecessary / at end of directory name. i think i have left behind empty folders, e.g. check switzerland and austria
- also should allow move to existing folder soon...
* move all unsorted photos/* -> import/
-- should make a select with right-click also enable move/del buttons
TEST if this works with moving a folder/dir and a combo of folder/dir and a file
fix first: BUG-64 [DONE] and the folder move todo above <- TODO
* metadata at folder level with file level to add more richness
* add an option on the person menu to run_ai_on all photos (or at least import/storage)
* when hitting back button to a search, it doesnt handle the post, etc.
$(document).ready(function() {
window.history.pushState(null, "", window.location.href);
window.onpopstate = function() {
window.history.pushState(null, "", window.location.href);
};
});
* get build process to create a random string for secret for PROD, otherwise use builtin for dev
Dup issues:
* when we have lots of dups, sort the directories by alpha so its consistent when choosing
* auto-detect has 0 choices to keep 0 files -- not sure what that was about really
* comment your code
* html files?
* per file you could select an unknown face and add it as a ref img to an existing person, or make a new person and attach?
* from menu, we could try to get smart/fancy... say find face with largest size, check it vs. other faces, if it matches more than say 10? we offer it up as a required ref img, then cut that face (with margin) out and use it is a new ref image / person
- read that guys face matching / clustering / nearest neighbour examples, for a whole new AI capability
https://www.pyimagesearch.com/2018/07/09/face-clustering-with-python/
* fix up logging in general
* support animated gifs in html5 canvas
## DB
* Dir can have date in the DB, so we can do Oldest/Newest dirs in Folder view
### BACKEND
* revisit SymlinkName() and make it simpler (see comment in shared.py)
* if you change paths in settings, then re-run Initialisation checks (for symlinks to new path names)
- this actively is crashing, added a file in storage2/ (no symlink), so job mgr crashed, and DB doesnt have the content until you make the symlink (via re-running job mgr)
-- started on some basic optimisations (commit logs every 100 logs, not each log)
- with debugs: import = 04:11, getfiledetails== 0:35:35
- without debugs: import == 04:03, getfiledetails == 0:35:36 -- not a sig diff
- with exifread & debug: import == 04:26
*** Need to use thread-safe sessions per Thread, half-assed version did not work
need a manual button to restart a job in the GUI,
(based on file-level optims, just run the job as new and it will optim over already done parts and continue)
Admin
-> do I want to have admin roles/users?
-> purge deleted files (and associated DB data) needs a dbox or privs
### AI
* faces per file (need a threshold for too many? OR
* consider size of bbox of face / 'high-quality' faces -- if face is too small in image, dont match it
### UI
??? ipads can't do selections and contextMenus, do I want to re-factor to cater for this?
- partial fix, double-click / tap allows viewing (most useful context-menu feature)
* viewer needs to allow toggle to scan_model (and prob. right-click on file... AI (with CNN) AI (with hog)
- make the form-select AI_Model actually do the change (but need more mem on mara really)
For AI / rescan:
way to override per file:
the model used [partial - UI done, need mem on mara]
the threshold used?
maybe on the per file you could select an unknown face and add it as a ref img to a existing person, or make a new person and attach?
file details is sort of crap - only works on import path
- probably better to have a different 'view', e.g. folders/flat/detailed
job management:
joblog needs to show only say 25 log lines (last?) by default and allow see start/end, page by page, and search
clear all jobs (via GUI)
clear old jobs? (via b/end?)
-> auto delete jobs older than ???
clear FE messages (at least dup ones on File data deletion) -- in backend
timelineview? (I think maybe sunburst for large amounts of files, then maybe something more timeline-series for drilling in?)
(vertical timeline, date has thumbnails (small) horizontally along
a page, etc.?
https://www.highcharts.com/docs/chart-and-series-types/timeline-series
https://www.highcharts.com/demo/sunburst
https://www.highcharts.com/demo/heatmap
https://www.highcharts.com/demo/packed-bubble-split
### SORTER
* exif processing?
* location stuff - test a new photo from my camera out
-- image is in dir, need to look at exifread output
### FUTURE:
* can emby use nfo for images (for AI/tags?)
-NO sadly