I am trying to get the TensorFlow Object Detection API to train a Mask RCNN model. Since I am using a Nvidia Jetson TX1, I installed TensorFlow 1.4 using the prebuilt wheel from this github repo.
While trying to run
cd <tensorflow>/models/research
python object_detection/model_main.py \
--pipeline_config_path=${PIPELINE_CONFIG_PATH} \
--model_dir=${MODEL_DIR} \
--num_train_steps=${NUM_TRAIN_STEPS} \
--num_eval_steps=${NUM_EVAL_STEPS} \
--alsologtostderr
I hit the following the error:
[libprotobuf FATAL google/protobuf/stubs/common.cc:61]
This program requires version 3.4.0 of the Protocol Buffer runtime library,
but the installed version is 2.6.1.
Please update your library. If you compiled the program yourself,
make sure that your headers are from the same version of Protocol Buffers
as your link-time library.
(Version verification failed in
"external/protobuf_archive/src/google/protobuf/any.pb.cc".)
terminate called after throwing an instance of 'google::protobuf::FatalException'
It's telling me to update the protobuf
library, but I have no clue how to do that, because I already tried to install the newest version (see below). Actually I don't even know who exactly is throwing this error.
Hopefully someone can help me on this. Thanks in advance!
I installed the Object Detection API following the official tutorial, especially I installed a newer version of protobuf
via
# remove old version
sudo apt purge protobuf-compiler
# download prebuilt protoc
cd ~/protobuf
wget https://github.com/google/protobuf/releases/download/v3.6.0/protoc-3.6.0-linux-aarch_64.zip
unzip protobuf-python*.zip
export PATH=$PATH:~/protobuf/bin
I think this installation works, because I get the desired output:
$ protoc --version
libprotoc 3.6.0
$ which protoc
/home/<username>/protobuf/bin/protoc
But also if I type
$ sudo find . -name "*libprotobuf*"
/usr/lib/aarch64-linux-gnu/libprotobuf-lite.so.9.0.1
/usr/lib/aarch64-linux-gnu/libprotobuf.so.9
/usr/lib/aarch64-linux-gnu/libprotobuf.so.9.0.1
/usr/lib/aarch64-linux-gnu/libprotobuf-lite.so.9
there is something installed by apt
. Not sure if that has something to do with the error.
Running on:
- Ubuntu 16.04
- Python 3.5
- TensorFlow 1.4