--- title: 'VoTT 安裝流程與建立專案(Ubuntu 18.04) ' disqus: hackmd --- VoTT 安裝流程與建立專案(Ubuntu 18.04) === [TOC] ## Ubuntu 18.04 VoTT 安裝流程與建立專案 ### 1. 下載 VoTT source code > (1) 為了方便管理整個專案,請先開一個資料夾後進入* ```gherkin= $ mkdir VoTT $ cd VoTT ``` * 註: 請選擇安裝位置,注意此份安裝文件可能會與您安裝的位置不同 > (2) 下載 source code* ```gherkin= $ git clone https://github.com/masteree108/VoTT_NTUT_Ubuntu18.git ``` * 註: 此包 source code 是基於在 [microsoft/VoTT](https://github.com/microsoft/VoTT/) 2.2.0版本上開發新功能 ### 2. 安裝相關套件 > (1) 由於編譯與執行需要使用到NPM與node.js相關套件,所以使用[PPA](https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-18-04)進行安裝,若直接安裝如下容易出錯 ~~$ sudo apt install npm~~ ~~$ sudo apt install nodejs~~ [詳細安裝方法1](https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-18-04) [詳細安裝方法2](https://github.com/nodesource/distributions) > (2) 由於編譯與執行需要使用到NPM與node.js相關套件,所以使用PPA進行安裝,若直接安裝如下容易出錯 ```gherkin= 若有舊版 nodejs 和 npm 請先移除 $ sudo apt-get purge nodejs $ sudo npm uninstall npm -g (若上一行移除成功則不須做此行) ``` ```gherkin= 安裝 $ cd /tmp $ curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh \ && sudo chmod +x nodesource_setup.sh \ && sudo ./nodesource_setup.sh \ && sudo apt-get install -y nodejs \ && sudo apt install build-essential ``` > (3) 檢查安裝板本 ```gherkin= $ nodejs -v v10.23.1 $ npm -v 6.14.10 ``` ### 3. VoTT 安裝、編譯與運行 > (1) 回到VoTT/VoTT_NTUT 資料夾 ```gherkin= $ cd VoTT/VoTT_NTUT ``` > (2) 執行編譯與運行* ```gherkin= $ npm ci $ npm start ``` * 註: 若是source code有修改,在執行npm start即會進行編譯檢查 運行後會出現 web 與 local版本,由於官方文件有說明 web 版本只能載入雲端上的專案, 這份文件沒有使用此功能,所以文件範例會已local版本當教學(下圖為local版本) ![](https://i.imgur.com/NUyK1cA.png) ### 4. 關於 security token > 引述官方文件如下 #### NOTE: Project files can be shared among multiple people. In order to share sensitive project settings, all parties must 為了讓專案讓LAB的同學共同使用, security token 使用先前研究留下來的key ```gherkin= Name : NTUTDrone Token Key : qITjd1Rj6hFqC7uB0OGxPKYVxIFSdcMrprQAMS5rEhc= ``` 點選左下角的齒輪,輸入之前的 security token ![](https://i.imgur.com/aSEvMqN.png) ### 5. 建立專案 > (1)建立一個專案資料夾 ```gherkin= $ cd VoTT $ mkdir Drone_Project $ cd Drone_Project $ mkdir -p Drone_Target/001 //用來放置專案的.vott檔案* $ mkdir -p Drone_Source/001 //用來放置來源影片* ``` * 註:Drone_001是代表影片代號名稱,每個影片都會個別建立自己的資料夾以免混亂, 若有002影片就分別在Drone_Target與Drone_Source建立002資料夾,依此類推 > (2) 執行VoTT ```gherkin= $ cd ../VoTT_NTUT $ npm start ``` > (3) 新建專案設定(名稱、專案路徑、來源路徑等) * 在VoTT內點選 New Project ![](https://i.imgur.com/RietpWp.png) * 專案名稱:NTUT_Drone ![](https://i.imgur.com/E7Mz8tW.png) * Security Token: 選擇 "**4. 關於 security token**" 所建立的設定, 下拉即可找到 **NTUTDrone Token** 選項 ![](https://i.imgur.com/oDF61qV.png) * Source Connection 選擇右邊的Add Connection會進入Connection Settings畫面 按照下圖選擇 輸入Display Name: Drone_Source_001 (_00X請依據影片名稱創立) Provider 選擇 Local File System Local File System 選擇剛剛在 "**(1)建立一個專案資料夾**" 建立的source資料夾 Drone_Source/001 按下Save Connection回到 Project Settings ![](https://i.imgur.com/vSgRdHE.png) 選擇剛剛設定的資料夾 ![](https://i.imgur.com/YQ4z1mY.png) * Target Connection 選擇右邊的Add Connection會進入Connection Settings畫面 按照下圖選擇 輸入Display Name: Drone_Target_001 (_00X請依據影片名稱創立) Provider 選擇 Local File System Local File System 選擇剛剛在 "**(1)建立一個專案資料夾**" 建立的target資料夾 Drone_Target/001 按下Save Connection回到 Project Settings ![](https://i.imgur.com/y4thq8S.png) 選擇剛剛設定的資料夾 ![](https://i.imgur.com/zZBXEbR.png) * Video Settings 使用預設的15,下圖為整個專案設定,按下 Save Project 按鈕完成新建專案設定 ![](https://i.imgur.com/I34sZLS.png) * 完成後會看到的專案畫面 ![](https://i.imgur.com/vtLd1k9.jpg) ### 6. 載入專案 > 選擇Open Local Project, 找到剛剛在"**(1)建立一個專案資料夾**" 建立的target資料夾 Drone_Target/001 ,可看到NTUT_Drone.vott ![](https://i.imgur.com/2zxfg5A.png) ![](https://i.imgur.com/2WuA25D.png) ### 7. 匯出專案 > (1) 匯出專案設定 * 這邊統一採匯出csv與json格式,請專案負責人這兩種格式都必須要匯出!! Asset State 選擇 Only tagged Assets 另外取消include Images選項 匯出 CSV ![](https://i.imgur.com/BaX4bUf.png) 匯出 JSON ![](https://i.imgur.com/ilsVbz8.png) > (2) 匯出專案範例 * 若是標注完成,可按下右上角匯出按鈕 ![](https://i.imgur.com/rUIpAzz.png) ![](https://i.imgur.com/dGPvOoa.jpg) !!請注意,csv格式會匯出在Drone_Target/001資料夾!! ![](https://i.imgur.com/8gv5m9c.png) !!另外請在更改一次匯出設定,在匯出JSON檔案!! ![](https://i.imgur.com/vzFiXyN.png) !!**請再次確認這兩種格式必須都要匯出**,否則期末無法算出誰標的最多,攸關分數很重要!! ###### tags: `setup`, `VoTT`