rockchip-linux / rknpu

BSD 3-Clause "New" or "Revised" License
205 stars 60 forks source link

Cannot build rknn model on mobilenet_v1 example #3

Closed aciddust closed 5 years ago

aciddust commented 5 years ago

Development environment

Host PC : Linux d3fau1t-cvs 4.15.0-48-generic #51~16.04.1-Ubuntu SMP Fri Apr 5 12:01:12 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux Evaluation Board : rk3399pro1p3v11_016 using buildroot rootfs

On Host PC

My local Python

d3fau1t@d3fau1t-cvs:~/rknpu$ which python
/usr/bin/python
d3fau1t@d3fau1t-cvs:~/rknpu$ python -V
Python 3.5.2

Create new venv

d3fau1t@d3fau1t-cvs:~/rknpu$ virtualenv -p /usr/bin/python venv
Running virtualenv with interpreter /usr/bin/python
Using base prefix '/usr'
New python executable in /home/d3fau1t/rknpu/venv/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.

Entry venv and install packages (with rknn-toolkit-0.9.8-*.whl)

d3fau1t@d3fau1t-cvs:~/rknpu$ source venv/bin/activate
(venv) d3fau1t@d3fau1t-cvs:~/rknpu$ 
(venv) d3fau1t@d3fau1t-cvs:~/rknpu$ cd rknn-toolkit/packages/
(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit/packages$ pip install -r requirements-cpu.txt 

...
Successfully installed Cython-0.29.7 Jinja2-2.10.1 MarkupSafe-1.1.1 Pillow-6.0.0 Werkzeug-0.15.2 absl-py-0.7.1 astor-0.7.1 click-7.0 cycler-0.10.0 decorator-4.4.0 dill-0.2.8.2 flask-1.0.2 flatbuffers-1.9 gast-0.2.2 grpcio-1.20.1 h5py-2.9.0 itsdangerous-1.1.0 keras-applications-1.0.7 keras-preprocessing-1.0.9 kiwisolver-1.1.0 lmdb-0.94 markdown-3.1 matplotlib-3.0.3 mock-3.0.5 networkx-1.11 numpy-1.16.3 onnx-1.5.0 opencv-python-4.1.0.25 protobuf-3.7.1 pyparsing-2.4.0 python-dateutil-2.8.0 scipy-1.2.1 six-1.12.0 tensorboard-1.13.1 tensorflow-1.13.1 tensorflow-estimator-1.13.0 termcolor-1.1.0 typing-3.6.6 typing-extensions-3.7.2
(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit/packages$
(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit/packages$ pip install rknn_toolkit-0.9.8-cp35-cp35m-linux_x86_64.whl
Processing ./rknn_toolkit-0.9.8-cp35-cp35m-linux_x86_64.whl
...
Installing collected packages: rknn-toolkit
Successfully installed rknn-toolkit-0.9.8
(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit/packages$ 

Run mobilenet_v1 example

(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit$ cd example/mobilenet_v1
(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit/example/mobilenet_v1$ python test.py
--> config model
done
--> Loading model
done
--> Building model
E Catch exception when building RKNN model!
T Traceback (most recent call last):
T   File "rknn/api/rknn_base.py", line 470, in rknn.api.rknn_base.RKNNBase.build
T   File "rknn/api/rknn_base.py", line 887, in rknn.api.rknn_base.RKNNBase._quantize
T   File "rknn/base/rknnlib/app/tensorzone/workspace.py", line 231, in rknn.base.rknnlib.app.tensorzone.workspace.Workspace.load_data
T   File "rknn/base/rknnlib/app/tensorzone/graph.py", line 32, in rknn.base.rknnlib.app.tensorzone.graph.Graph.load_data
T   File "rknn/base/rknnlib/rknnnet.py", line 323, in rknn.base.rknnlib.rknnnet.rknnNet.load_data
T   File "rknn/base/rknnlib/rknnnet.py", line 335, in rknn.base.rknnlib.rknnnet.rknnNet._load_old_data
T   File "rknn/base/rknnlib/rknnnet.py", line 336, in rknn.base.rknnlib.rknnnet.rknnNet._load_old_data
T   File "/home/d3fau1t/rknpu/venv/lib/python3.5/site-packages/numpy/lib/npyio.py", line 447, in load
T     pickle_kwargs=pickle_kwargs)
T   File "/home/d3fau1t/rknpu/venv/lib/python3.5/site-packages/numpy/lib/format.py", line 692, in read_array
T     raise ValueError("Object arrays cannot be loaded when "
T ValueError: Object arrays cannot be loaded when allow_pickle=False
Build mobilenet_v1 failed!
(venv) d3fau1t@d3fau1t-cvs:~/rknpu/rknn-toolkit/example/mobilenet_v1$ 

On Evaluation board

*I modified rk3399pro menuconfig file( enable OpenCV,rknn,numpy..) before build rootfs image**

It is the same result that occurred on PC.


Is it really runnable?

aciddust commented 5 years ago

Use this repo. https://github.com/rockchip-linux/rknn-toolkit

Thank you for your fast response