- refactor docs following other model examples
[face-privacy-filter.git] / docs / tutorials / lesson1.md
1 # Wrapping Models for Deployment
2 To utilize this transformer model set, it first creates a detect transformer
3 and then a pixelate transformer.
4 Continue to the [next tutorial](lesson2.md)
5 to see how to utilize these models with a simple demo API server.
6
7
8 ## Model Deployment
9 Following similar use pattens described by the main client library, there are
10 two primary modes to export and deploy the generated classifier: by dumping
11 it to disk or by pushing it to an onboarding server.  Please consult the
12 [reference manual](../image-classification.md#usage) for more specific arguments
13 but the examples below demonstrate basic capabilities.
14
15 This single repo has a number of different models that can be
16 composed together for operation.
17
18 * Dump the `detect` model to disk.
19 ```
20 python face_privacy_filter/filter_image.py -d model_detect -f detect
21 ```
22 * Dump the `pixelate` model to disk.
23 ```
24 python face_privacy_filter/filter_image.py -d model_pix -f pixelate
25 ```
26
27
28 ## In-place Evaluation
29 In-place evaluation **will utilize** a serialized version of the model and load
30 it into memory for use in-place.  This mode is handy for quick
31 evaluation of images or image sets for use in other classifiers.
32
33 * Evaluate the `detect` model from disk and a previously produced detect object
34 ```
35 python face_privacy_filter/filter_image.py -d model_detect -p output.csv -i web_demo/images/face_DiCaprio.jpg
36 ```
37 * Example for evaluating the `pixelate` model from disk and a previously produced detect object
38 ```
39 python face_privacy_filter/filter_image.py -d model_pix -i detect.csv -p output.jpg --csv_input
40 ```
41
42
43 # Installation Troubleshoting
44 Using some environment-based versions of python (e.g. conda),
45 one problem seemed to come up with the installation of the dependent
46 package `opencv-python`.  If you launch your python instance and see
47 an error like the one below, keep reading.
48
49 ```
50 >>> import cv2
51 Traceback (most recent call last):
52   File "<stdin>", line 1, in <module>
53 ImportError: dynamic module does not define module export function (PyInit_cv2)
54 >>>
55 ```
56
57 This is likely because your `PYTHONPATH` is not correctly configured to
58 point to the additional installed libraries.
59
60 * From the [simple example here](https://stackoverflow.com/a/42160595)
61 you can check your environment with `echo $PYTHONPATH`.  If it does not
62 contain the directory that you installed to, then you have a problem.
63 * Please check your installation by running `python -v -v; import cv2` and checking
64 that the last loaded library is in the right location.
65 * In some instances, this variable needed to be blank to work properly (i.e.
66 `export PYTHONPATH=`) run at some time during start up.
67