Commit graph

120 commits

Author SHA1 Message Date
Michael Mayer
abfd2fa79d Videos: Improve indexing and searching #312
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-16 17:07:44 +02:00
Michael Mayer
a16f00f359 Backend: Add support for DateTime in Exif metadata #304
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-15 11:15:15 +02:00
Michael Mayer
6c6ea0ac3d Support GPSVersionID 2.0.0.0 #295
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-06 08:03:57 +02:00
Michael Mayer
1c53a565a7 Configure on-demand rendering of regular thumbnail sizes #294
Can be enabled by setting PHOTOPRISM_RESAMPLE_UNCACHED to true

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-05 15:42:54 +02:00
Michael Mayer
2032b40f2b Backend: Code clean-up
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-03 18:00:50 +02:00
Michael Mayer
3e6df5fd5d Backend: Replace filepath.Walk with godirwalk.Walk #267
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-01 17:31:49 +02:00
Michael Mayer
44abbfc43a Backend: Use fastwalk.Walk instead of filepath.Walk in tests #267
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-01 15:35:47 +02:00
Michael Mayer
743b2dc348 Backend: Downgrade protobuf from v1.4.0 to v1.3.5
Error: invalid type: got uint64, want pointer
Stack trace:
github.com/pingcap/tidb/store/tikv.(*copIteratorWorker).handleTask.func1
	/go/pkg/mod/github.com/pingcap/tidb@v2.1.11+incompatible/store/tikv/coprocessor.go:616
runtime.gopanic
	/usr/local/go/src/runtime/panic.go:969
google.golang.org/protobuf/internal/impl.fieldInfoForScalar
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/internal/impl/message_reflect_field.go:228
google.golang.org/protobuf/internal/impl.(*MessageInfo).makeKnownFieldsFunc
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/internal/impl/message_reflect.go:67
google.golang.org/protobuf/internal/impl.(*MessageInfo).makeReflectFuncs
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/internal/impl/message_reflect.go:36
google.golang.org/protobuf/internal/impl.(*MessageInfo).initOnce
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/internal/impl/message.go:91
google.golang.org/protobuf/internal/impl.(*MessageInfo).init
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/internal/impl/message.go:73
google.golang.org/protobuf/internal/impl.(*messageReflectWrapper).ProtoMethods
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/internal/impl/message_reflect_gen.go:150
google.golang.org/protobuf/proto.protoMethods
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/proto/proto_methods.go:18
google.golang.org/protobuf/proto.UnmarshalOptions.unmarshal
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/proto/decode.go:76
google.golang.org/protobuf/proto.UnmarshalOptions.UnmarshalState
	/go/pkg/mod/google.golang.org/protobuf@v1.21.0/proto/decode.go:63
github.com/golang/protobuf/proto.UnmarshalMerge
	/go/pkg/mod/github.com/golang/protobuf@v1.4.0/proto/wire.go:67
github.com/golang/protobuf/proto.Unmarshal

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-01 14:05:55 +02:00
Michael Mayer
b326aae603 Backend: Update additional dependencies
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-01 13:54:01 +02:00
Michael Mayer
eea36826af Backend: Update dependencies
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-05-01 13:32:38 +02:00
Michael Mayer
260cca91fe Backend: Refactor entity package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-30 20:07:03 +02:00
Michael Mayer
fe6d46ea5f Upgrade TensorFlow to 1.15.2 without AVX #289
Custom TensorFlow build without SSE4.1 SSE4.2 AVX AVX2 FMA support.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-27 19:00:15 +02:00
Michael Mayer
606e416e2a Upgrade dsoprea/go-jpeg-image-structure
See https://github.com/dsoprea/go-jpeg-image-structure/issues/6

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-22 14:47:45 +02:00
Michael Mayer
da823a8062 Upgrade TensorFlow to 1.15.0 #282
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-22 10:27:02 +02:00
Michael Mayer
20a5912210 Rename, remove and re-activate labels
Still need to fix label names when re-indexing so that custom names are used, if changed by the user.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-17 21:20:38 +02:00
Theresa Gresch
74e33e1917 Backend: Improve labels 2020-04-16 23:16:55 +02:00
Michael Mayer
d834c64378 Revert version of go-jpeg-image-structure
Should fix "processing finished before EOI encountered" bug.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-07 00:51:45 +02:00
Michael Mayer
a836dd1497 Backend: Upgrade dependencies
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-04-02 14:13:41 +02:00
Michael Mayer
b86f68c3f3 Backend: Add WebDAV client and dummy test server #225
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-03-27 11:01:41 +01:00
Michael Mayer
01527c180e Add WebDAV server
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-21 04:23:16 +01:00
Michael Mayer
4efa383c57 API: Proof-of-concept for form handling
We don't want to directly write to models so that only selected fields can be changed and values can be validated for security reasons.

Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-02-02 03:36:00 +01:00
Michael Mayer
7ecc146460 Backend: Rename utils.go to auth.go #221
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-28 13:12:29 +01:00
Dustin Oprea
d1a6656251 go.mod: Bump go-exif (#228)
Fixes #219
2020-01-26 09:51:27 +01:00
Michael Mayer
e1ad0684b3 Backend: Add "exif" prefix to log message #219
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-24 18:50:57 +01:00
Michael Mayer
c31470dafb Initial code for new Places UI
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-15 04:04:33 +01:00
Michael Mayer
bba914878a Backend: Remove go-xmp import
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-14 03:41:40 +01:00
Michael Mayer
2eadc5a073 Backend: Update go.mod
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-14 01:58:28 +01:00
Dustin Oprea
9b1bf83abe Optimize EXIF integration (#192)
Use JPEG- and PNG-specific parsing if possible and brute-force search
only for others.

- Adopted go-exif/v2.

Fixes #172
2020-01-14 01:47:26 +01:00
Michael Mayer
c978fa00f1 Backend: Proof-of-concept for indexing XMP files #68
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-13 23:14:10 +01:00
Michael Mayer
c147eee30f Backend: Add stub for meta package #172
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-01-07 17:36:49 +01:00
Michael Mayer
366c70d992 Optimize performance and data structures
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-27 05:18:52 +01:00
Michael Mayer
52b57e9fba Backend: Add maps package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-20 11:30:58 +01:00
Michael Mayer
410e82f5c3 Backend: Add OpenStreetMap package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-19 17:17:13 +01:00
Michael Mayer
dc46ab9bc8 Fix indexer issues & use go generate to create stopwords map
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-12-10 16:58:01 +01:00
Michael Mayer
65f084193e Add event hub & websocket for push notifications
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-16 16:06:34 +01:00
Michael Mayer
56c97ec057 Basic login for admin #16
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-08 06:53:40 +01:00
Michael Mayer
a48cc3578e Upgrade Go to 1.13.4
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-11-07 15:02:27 +01:00
Michael Mayer
0f47c84138 Implement time zone support for "TakenAt"
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-09-19 14:23:39 -07:00
Michael Mayer
a2bf11c96f Fix go.mod/sum after upgrade to Go 1.13
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-09-19 10:26:28 -07:00
Michael Mayer
8f145ce9a9 Dockerfile: Upgrade to Go 1.13
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2019-09-19 09:26:08 -07:00
Michael Mayer
1e6f1795c2 Upgrade Exif library #13 2019-06-27 02:21:36 +02:00
Michael Mayer
768483faa7 Resolve merge conflict in go.mod 2019-06-24 21:01:09 +02:00
Michael Mayer
06353a7b17 Upgrade TensorFlow for Go to 1.14.0 2019-06-24 20:59:11 +02:00
Michael Mayer
ad93ad1289 Use dsoprea/go-exif to parse Exif tags #21 2019-06-20 05:38:23 +02:00
Vedhavyas Singareddi
f63efc5f51 Implement daemon mode (#119)
* add daemon process
* add daemon stop command
* add daemon log to log file
* check for running daemons
* minor changes
2019-06-20 01:11:03 +02:00
Michael Mayer
c230de6b2b Add time zone info to photos (if available) 2019-06-07 00:04:34 +02:00
Michael Mayer
df995b4f15 Rename tags to labels incl priority, source and uncertainty 2019-06-04 18:26:41 +02:00
Michael Mayer
3ceec890e3 Upgrade TiDB server to 2.1.11 2019-06-04 01:09:56 +02:00
Theresa Gresch
dc67f8ccb2 Merge branch 'develop' of /Users/theresa/Development/graciousgrey/photoprismRepo/photoprism with conflicts. 2019-05-12 13:03:18 +02:00
Michael Mayer
868e1b80b9 Use reflection and yaml.Unmarshal() for configuration, see #66 2019-05-04 05:25:00 +02:00
Michael Mayer
9e0ca24dee go.mod cleanup 2019-05-02 16:03:09 +02:00
Michael Mayer
3315b87305 Use logrus for logging 2019-05-02 14:10:05 +02:00
Michael Mayer
8289de2746 Improve logging and set optional password for built-in TiDB server 2019-05-01 14:54:11 +02:00
Michael Mayer
026563ebad Upgrade Go mod dependencies 2019-05-01 07:40:38 +02:00
Michael Mayer
818019a7ec Use nasnet mobile instead of inception v1 for image classification 2019-04-30 13:17:01 +02:00
Michael Mayer
ffc64cceb0 Use 3x3 thumbnail for color indexing #7
Other implementations were unstable due to the use of random numbers.
This seems to be fast and also enables us to search specific parts
of an image. 16 colors are indexed (Material Design).
2019-04-26 02:22:53 +02:00
Sebastian Kunert
48a9f78cb3 Improve color indexing by using k-means clustering (#103)
* First commit for color-improvements

* Use k-means for prominent color detection

* Remove debugging code

* Add color checks to tests

* Add additional test for color names
2019-04-18 17:27:08 +02:00
Vedhavyas Singareddi
74dc8be598 Fix/defer leaks (#91)
* fix defer leaks
* go mod tidy
2019-01-13 00:45:22 +01:00
Michael Mayer
43b860801c Proof-of-concept for using TiDB instead of MySQL #60 2018-12-18 18:38:30 +01:00
Michael Mayer
c5ee0fee48 Add darktable development docker image #62
- Improved build scripts and Dockerfile
- broadwayd can be used as display server for darktable or other GTK based software
2018-11-12 06:58:39 +01:00
Michael Mayer
7c559a21ab Updated dependencies #39 2018-11-08 20:29:16 +01:00
Michael Mayer
133c7964ad Add tensorflow model and test file to development image #39 2018-11-08 16:41:14 +01:00
Gergely Brautigam
b202bb6cc7 Refactoring the photoprism package #53
* Started refactoring the photoprism package.

* A lot of more comments and eliminating utils.

* Fixed search.

* See #50 The great refactor -- Refactor config to YAML, Add Docs, Revise exported fields
2018-11-01 17:01:45 +01:00
Michael Mayer
ce64bc8146 Running "go mod tidy" after "go build"
See https://github.com/golang/go/issues/27176
2018-10-21 11:01:48 +03:00
Michael Mayer
78d9484d81 Directory clean-up: Moved source code to internal/ and config files to configs/ 2018-09-14 14:04:03 +02:00
Michael Mayer
91411a450b Refactored tag search and added tag_slug column; improved search form 2018-09-13 07:05:13 +02:00
Michael Mayer
3d23056851 Indexer now automatically sets title, keywords and detected colors 2018-09-11 10:56:52 +02:00
Michael Mayer
1716c5a38f Formatted code (go fmt ./...) 2018-09-06 14:47:32 +02:00
Michael Mayer
e11cfbf793 Use make for Dockerfile and Travis CI 2018-09-05 22:55:28 +02:00
Michael Mayer
b45204e54b Added Makefiles and migrated to go modules 2018-09-05 20:26:03 +02:00