|
@@ -1,10 +1,10 @@
|
|
|
# Autoquality<i class='badge badge-pro'></i><i class='badge badge-v3'></i>
|
|
|
|
|
|
-imgproxy can calculate quality for your resulting images so they fit the selected metric the best. The supported methods are [none](#none), [size](#autoquality-by-file-size), [dssim](#autoquality-by-dssim), and [ml](#autoquality-with-ml).
|
|
|
+imgproxy can calculate quality for your resultant images so they best fit the selected metric. The supported methods are [none](#none), [size](#autoquality-by-file-size), [dssim](#autoquality-by-dssim), and [ml](#autoquality-with-ml).
|
|
|
|
|
|
-**⚠️Warning:** Autoquality requires the image to be saved several times. Use it only when you prefer the resulting size and quality over the speed.
|
|
|
+**⚠️Warning:** Autoquality requires an image to be saved several times. Use it only when you prefer the resultant quality and size over speed.
|
|
|
|
|
|
-You can enable autoquality with [config](configuration.md#autoquality) (for all images) or with [processing options](generating_the_url.md#autoquality) (for each image individually).
|
|
|
+You can enable autoquality using [config options](configuration.md#autoquality) (for all images) or with [processing options](generating_the_url.md#autoquality) (for each image individually).
|
|
|
|
|
|
## None
|
|
|
|
|
@@ -26,11 +26,11 @@ IMGPROXY_AUTOQUALITY_METHOD="none"
|
|
|
|
|
|
## Autoquality by file size
|
|
|
|
|
|
-With this method, imgproxy will try to degrade the quality so your image fit the desired file size.
|
|
|
+With this method, imgproxy will try to degrade the quality so your image fits the desired file size.
|
|
|
|
|
|
**Method name:** `size`
|
|
|
|
|
|
-**Target:** desired file size
|
|
|
+**Target:** the desired file size
|
|
|
|
|
|
#### Config example
|
|
|
|
|
@@ -52,11 +52,11 @@ IMGPROXY_AUTOQUALITY_FORMAT_MAX="avif=50"
|
|
|
|
|
|
## Autoquality by DSSIM
|
|
|
|
|
|
-With this method imgproxy will try to select the quality so the saved image would have the desired [DSSIM](https://en.wikipedia.org/wiki/Structural_similarity#Structural_Dissimilarity) value.
|
|
|
+With this method imgproxy will try to select a level of quality so that the saved image will have the desired [DSSIM](https://en.wikipedia.org/wiki/Structural_similarity#Structural_Dissimilarity) value.
|
|
|
|
|
|
**Method name:** `dssim`
|
|
|
|
|
|
-**Target:** desired DSSIM value
|
|
|
+**Target:** the desired DSSIM value
|
|
|
|
|
|
#### Config example
|
|
|
|
|
@@ -81,13 +81,13 @@ IMGPROXY_AUTOQUALITY_FORMAT_MAX="avif=50"
|
|
|
|
|
|
## Autoquality with ML
|
|
|
|
|
|
-This method is almost the same as [DSSIM](#autoquality-by-dssim) but imgproxy will try to predict the initial quality using neural networks. Requires neural networs to be configured (see the config examlpe or the config documentation). If a neural network for the resulting format is not provided, [DSSIM](#autoquality-by-dssim) method will be used instead.
|
|
|
+This method is almost the same as autoquality with [DSSIM](#autoquality-by-dssim) but imgproxy will try to predict the initial quality using neural networks. This requires neural networks to be configured (see the config examlpe or the config documentation). If a neural network for the resulting format is not provided, the [DSSIM](#autoquality-by-dssim) method will be used instead.
|
|
|
|
|
|
-**📝Note:** When this method is used, imgproxy will save JPEG images with the most optimal [advanced JPEG compression](configuration.md#advanced-jpeg-compression) settings ignoring config and processing options.
|
|
|
+**📝Note:** When this method is used, imgproxy will save JPEG images with the most optimal [advanced JPEG compression](configuration.md#advanced-jpeg-compression) settings, ignoring config and processing options.
|
|
|
|
|
|
**Method name:** `ml`
|
|
|
|
|
|
-**Target:** desired DSSIM value
|
|
|
+**Target:** the desired DSSIM value
|
|
|
|
|
|
#### Config example
|
|
|
|
|
@@ -108,7 +108,7 @@ IMGPROXY_AUTOQUALITY_WEBP_NET="/networks/autoquality-webp.pb"
|
|
|
IMGPROXY_AUTOQUALITY_AVIF_NET="/networks/autoquality-avif.pb"
|
|
|
```
|
|
|
|
|
|
-**📝Note:** If you trust your autoquality neural network, you may want to set `IMGPROXY_AUTOQUALITY_ALLOWED_ERROR` to 1 (maximum possible DSSIM value). In this case, imgproxy will always use the quality predicted by the neural network.
|
|
|
+**📝Note:** If you trust your neural network's autoquality, you may want to set `IMGPROXY_AUTOQUALITY_ALLOWED_ERROR` to 1 (the maximum possible DSSIM value). In this case, imgproxy will always use the quality predicted by the neural network.
|
|
|
|
|
|
#### Processing options example
|
|
|
|
|
@@ -118,10 +118,10 @@ IMGPROXY_AUTOQUALITY_AVIF_NET="/networks/autoquality-avif.pb"
|
|
|
|
|
|
### Neural networks format
|
|
|
|
|
|
-Neural networs should fit the following requirements:
|
|
|
-* Tensorflow frozen graph format.
|
|
|
-* Input layer size is 416x416.
|
|
|
+Neural networks should fit the following requirements:
|
|
|
+* Tensorflow frozen graph format
|
|
|
+* Input layer size is 416x416
|
|
|
* Output layer size is 1x100
|
|
|
-* Output layer values are logits of quality probabilities.
|
|
|
+* Output layer values are logits of quality probabilities
|
|
|
|
|
|
-If you're an imgproxy Pro user and you want to train your own network but you don't know how, feel free to contact the imgproxy team for intructions.
|
|
|
+If you're an imgproxy Pro user and you want to train your own network but you don't know how, feel free to contact the imgproxy team for instructions.
|