開源圖像標註工具labelme的安裝使用及漢化

一 LabelMe簡介python

labelme是麻省理工(MIT)的計算機科學和人工智能實驗室(CSAIL)研發的圖像標註工具,人們可使用該工具建立定製化標註任務或執行圖像標註,項目源代碼已經開源。git

項目開源地址:https://github.com/CSAILVision/LabelMeAnnotationToolgithub

labelMe項目地址:http://labelme.csail.mit.edu/Release3.0/windows

MIT的labelme源代碼能夠安裝到服務器上使用,是一個在線的Javascript圖像標註工具,可在任意地方使用,不須要在電腦中安裝大型數據集。服務器

本文主要介紹一個python版本的labelme,這個labelme項目是利用QT Designer進行圖形界面的開發,生成ui文件,使用工具轉換爲py文件,而後再添加python編寫的邏輯實現,最終呈如今你們面前的都是py文件。這個python版本也是開源的。app

Python版本labelme地址:https://github.com/wkentaro/labelme工具

二 LabelMe的安裝開發工具

個人安裝環境是Windows 10,labelme的安裝須要不少依賴的環境和程序,主要的環境是anaconda,還須要的是python和pyqt,具體安裝過程以下ui

  1. 安裝anaconda。在anaconda官網https://www.anaconda.com/download/上下載合適的版本,使用最新的或者比較穩定的,有兩個版本,我選擇的是python3版本。

 

下載後默認安裝,一直點擊下一步,直到完成安裝。人工智能

2.    安裝依賴程序和labelme。anaconda安裝成功後,在開始菜單中,會有多個anaconda工具,其中就有Anaconda Prompt,運行它,就像windows中的cmd命令行同樣。執行如下命令,完成相應的程序安裝。

安裝python環境

conda create –name=labelme python=3.6(對應本身的python版本)

安裝pyqt

conda install pyqt(會安裝最新的pyqt5)

安裝labelme

pip install labelme

運行labelme。

仍是在Anaconda Prompt中輸入labelme,即運行labelme,圖形化的labelme界面就會打開。

三 LabelMe的py代碼在pycharm中運行

Python集成開發工具Pycharm的安裝及使用,你們能夠自行百度,比較簡單,再也不介紹。首先將https://github.com/wkentaro/labelme中的源代碼下載到本地,在pytharm中打開labelme項目,要讓labelme運行起來,最重要就是設置labelme的運行環境,也就是設置好labelme運行時用到的那些依賴。在上一步的labelme的安裝中,已經將labelme的依賴都安裝完成了,咱們只須要在pycharm中設置便可。

在pycharm的File菜單選擇settings…,打開軟件配置窗口,左側的Project Interpreter(項目解釋器),在右側要選擇合適的python環境,這裏使用在上一步中安裝的python程序,這個python程序是默認安裝的,地址是C:\Users\dell\AppData\Local\conda\conda\envs\labelme\python.exe,這個python環境包含的了不少安裝包,都是labelme運行依賴的一些程序。設置完成後,點擊確認。

打開labelme根目錄下的main.py文件,而後點擊右鍵,選擇Run ’main’,或者在菜單Run選擇Run ’main’,這樣就能夠正常運行labelme項目了。 

四 LabelMe的漢化

Labelme在pycharm中運行後,咱們就能夠對labelme進行二次開發了。比較簡單的一個開發就是漢化,labelme界面都是英文,想把它裏面的菜單、提示信息等改成中文,就能夠根據項目結構,修改相應的py文件便可。

在main.py的導入模塊中,有from labelme.app import MainWindow,能夠知道labelme的窗口主要在app模塊中設置,打開與main.py同目錄的app.py,能夠看到不少菜單名稱以及提示信息,根據運行窗口中菜單名稱和提示信息,在app.py程序中查找,而後進行有針對的修改,就能夠了。

五 LabelMe轉換爲exe文件

爲了方便使用labelme程序,能夠將py程序轉換爲exe程序,在windows環境中無需安裝python,就能夠運行labelme。轉換工具使用的是pyinstaller,比較早的pyinstaller介紹文章說它不支持python3,如今已經支持python3了。

1 安裝pyinstaller

首先安裝pywin32

pip install pywin32

而後安裝pyinstaller

pip install pyinstaller

2 使用pyinstaller

比較簡單的轉換操做

pyinstaller -F E:/ python_workspace/labelme/main.py

會在當前目錄生成dist文件夾,build文件夾和spec文件

dist目錄(目錄裏面有可執行文件)

build目錄(生成exe的中間文件)

spec文件(要轉換文件的同一目錄下,用於生成exe文件,能夠修改來自定義生成exe的屬性)

其中-F是參數,表示要生成一個exe文件,文件在dist目錄中。

還有一些其餘的參數使用,能夠利用pyinstaller -h命令查看,好比-w生成窗口界面程序,-c生成控制檯程序,--distpath制定生成exe文件的路徑,--log-level指定輸出的日誌信息等等。

六 總結

Labelme是一個開源圖像標註工具,對它進行使用及二次開發涉及到比較多的知識,經過研究labelme能夠了解不少新知識,除了文中介紹的一些知識外,還有圖形開發工具QT Designer,是一種能夠集成到pycharm中的圖形開發工具,生成ui文件,能夠轉換爲py文件,和pycharm結合,能夠進行圖形界面開發,python版的labelme就是使用QT開發界面。在研究的過程當中,也碰到一些問題,好比轉化爲exe文件時,有路徑不正確的問題,須要根據提示信息修改程序的路徑;圖片不能顯示的問題,須要將圖片轉換爲base64形式保存,這些是pyinstaller須要完善的。

參考資料

1 http://www.myzaker.com/article/598012931bc8e0ab2a000022/,MIT 開放圖像標註工具 LabelMe 源代碼:助力機器視覺的發展

2 https://blog.csdn.net/shwan_ma/article/details/77823281,圖像語義分割,Label data的標註--Labelme(python)

3 http://www.javashuo.com/article/p-enfzwzbb-c.html,pyinstaller使用-python項目轉換成exe可執行文件

相關文章
相關標籤/搜索