---
# System prepended metadata

title: Tensorboard

---

# Tensorboard
* train.py：
    * 執行：
    ```
    python3 train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/faster_rcnn_resnet101_coco.config
    ```
    * 輸出：
    ```
    python3 export_inference_graph.py --input_type image_tensor --pipeline_config_path training/faster_rcnn_resnet101_coco.config --trained_checkpoint_prefix training/model.ckpt-XXXX --output_directory out_graph_dir
    ```
    </br>

* eval.py：
    * 使用cpu因為train.py正在使用gpu：
    ```
     sudo python3 eval.py --logtostderr --pipeline_config_path=training/faster_rcnn_resnet101_coco.config --checkpoint_dir=training --eval_dir=eval/
    ```
    * 使用cpu的方式，在程式碼加上這段：
    ``` python
    os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
    ```
    * 注意python 3.6不支援unicode所以在執行時會出現error:
     要到objection_detection/utils/object_detection_evaluation改code
     這部分已經改完了但還是紀錄一下，只要有出現下面這段都要改成str
     ```python
     #category_name = unicode(category_name, 'utf-8')
     category_name = str(category_name.encode('utf-8'))
     ```
     
    </br>
* tensorboard：
    * 在train.py的資料夾執行：
    ```
     tensorboard --logdir=./
    ```
    * 會得到一段網址：
    ``` 
     預設port為6006
     開啟chrome連上去
    ```
    </br>
* 遠端連到server的localhost:
    * 設定tunnel
    ![](https://i.imgur.com/vYt3umV.png)
    remote server 填127.0.0.1 port:6006
    ssh server 填server的位址、名稱、port
    </br>
* 儲存後按下start就會相通了
    * 之後打開chrome輸入localhost:16006就好了


