long needed update to the README

This commit is contained in:
Xevion
2019-11-03 20:17:52 -06:00
parent 604f509e50
commit cd5da68568

View File

@@ -6,20 +6,40 @@ This repository is for a interesting project involving Google's Vision API and s
## How does it work?
This application is built in Python and utilizes the `google-cloud` python module. Install using `pip install google-cloud`. A key should be provided by google in a `.json` file, insert this at `./package/key/photo_tagging_service.json`.
This application is built in Python and utilizes the `google-cloud` python module family.
All requirements will be automatically be installed whenever `pip install .` is ran inside the `phototag` directory.
The basic process for each photo be tagged is as follows
1. Build relevant paths and identify important information used throughout the process
2. Save RAW files as JPEG using `rawpy`
3. Optimize JPEG files using thumbnailing and quality measures
4. Open and send the file to Google using the Vision API with `google_cloud.vision`
5. Compile and save the image's labels from Google
a. JPEGs use the `iptcinfo3` module to save
b. RAW files use a messy implemetation of the `xml` module to read and write tags (experimental) from and to the XMP Sidecar file used by Adobe
6. Delete the temporary (optimized) file and move the original image to the output folder.
The command used to access this program is `phototag run`, which would process and label all eligible images in the working directory.
## Features
Automatic tagging of photos using a high quality Vision API
* Automatic tagging of photos using Google's Vision API
* Fast and accurate, it returns specific keywords using Google's very own Labelling model
* Can easily be used yourself if you sign up
* Super cheap and easy to setup
Automatic compression of photos for minimal data usage on both your and Google's end
* Automatic compression of photos for minimal data usage on both your and Google's end
* Uses combination thumbnailing and general JPEG compression to reduce size to a mere some dozen kilobytes.
Support for .NEF RAW file compression with .XMP metadata files.
* Support for both JPEG and RAW
* Store tags in JPEG via IPTC metadata
* Store tags in RAW files through Adobe's XMP sidecar files
* Full support for NEF only, it is assumed but not tested whether or not CR2 and other formats will behave the same.
* Requires a existing XMP file to be available
- With added support for all non .NEF files with basic
## Creation
## Learning
I've typed up a good file with everything I've learned about XMP files, Adobe, and just how complex this problem really was for me.
I've typed up a file with everything I've learned about XMP files, Adobe, and just how complex this problem really was for me.
[./LEARNING.md](./LEARNING.md)