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


一 LabelMe簡介

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

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

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

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

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

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

二 LabelMe的安裝

我的安裝環境是Windows 10,labelme的安裝需要很多依賴的環境和程序,主要的環境是anaconda,還需要的是python和pyqt,具體安裝過程如下

  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 https://blog.csdn.net/pipisorry/article/details/50620122,pyinstaller使用-python項目轉換成exe可執行文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM