跳到主要內容

發表文章

RPA-Uipath(7)-OCR相關技術

在 UiPath 中, OCR (Optical Character Recognition) 功能可以用來識別並提取圖像或掃描文件中的文本內容,使機器能夠理解並處理這些文本數據。 UiPath 提供了多個 OCR 引擎的選擇,每個引擎都有一些差異,包括效果、支持語言、速度等方面。以下是常見的幾個 OCR 引擎及其差異: 以下我們介紹兩種用 OCR 取得文字的方式與 4 種 OCR 引擎。 1.      利用 Load Image + OCR 引擎取得整張圖像中的文字。 a.          非雲端服務: Micorsoft OCR, Tessract OCR b.         雲端服務: Google Cloud Vision, Micosoft Azure Computer Vision < 特別注意 > : l    Google Cloud Vision à 屬性欄位中的 Apikey 為必要填寫,以下提供教學影片如何取得 API key 。 l    Micosoft Azure Computer Vision à 屬性欄位中的 Apikey 與 EndPoint 為必要填寫,以下提供教學影片如何取得 API key 。 [ 補充 ] : l    “Google Cloud Vision” API key 取得方式參考影片: https://www.youtube.com/watch?v=cld-An4u_I8 l    “Micosoft Azure Computer Vision” API key 與 end point 取得方式參考影片: https://www.youtube.com/watch?v=hSzMtcEUtHk 2.    利用 Get OCR Text + OCR 引擎取得整張圖像中的文字或部分區域的文字。 7.1 Load Image + OCR 引擎取得整張圖像中的文字 < 範...
最近的文章

Python筆記(15)-將程式打包執行檔(使用pyinstaller模組)

當我們將我們想要的自動化功能使用程式語言設計完成後,我們會發現要程執行這個程式就必須安裝對應的程式語言,但當我們想將這個功能給其他人用的時候,這時候要特別安裝對應的程式語言,這樣會非常麻煩,所以比較好的解法是將程式語言打包成執行檔 ( 檔案類型為 .exe) ,這時候就可以在沒有安裝對應的程式語言也能夠執行, Python 針對程式打包成執行檔比較常使用的 pyinstaller 模組,以下我們介紹如何使用這個模組來打包程式變成執行檔。 15.1 常見的 pyinstaller 參數 我們講常用到的參數列表如下並說明每一個參數的意義。 15.2 建立執行檔 我們將建立執行檔的過程步驟化如下: Step1. 開啟 Anaconda Prompt 命令列視窗    Step2. 將路徑切換至 .py 檔的放置路徑。如果在不同槽,需先切換至另一個槽再修改路徑。 Step3. 輸入打包執行檔指令 這邊特別說明一下,這裡的 ico 檔路徑與 .py 檔路徑都是直接為檔名是因為目前的絕對路徑已經在 D:\Bolg 資料 \Python\Python(15) ,所以在這個路徑下的檔案,要填寫它們的路徑就不用再打上 D:\Bolg 資料 \Python\Python(15) 。 Step4. 開始打包 Step3. 完成後按下 Enter 就會開始進行打包,這個過程需要一點時間,尤其 .py 檔非常大,要等的時間比較久,如果打包成功會顯示下方畫面。 完成後,會出現 3 個檔案,分別是 build 、 dist 、 spec 檔,其中執行檔會放置在 dist 資料夾中,此時此執行檔即可直接執行 ( 沒有 python 環境亦可 ) 。 另外, spec 檔內包含打包過程中的參數設定,我們可以從中修改參數設定再透過以下指令就可以重新打包,不需要再重 Step1. 開始。 15.3 另一種打包執行檔的方式 我們用上述方法打包執行檔會發現所打包出來的執行檔的大小會很大,這是因為我們的 anaconda 在安裝時就安裝了許多套件,所以打包過程中會把不必要的套件也打包進去,這將使得打包過程會比較久且執行檔再執行的時候也會比較久。這裡我們提供一個比較簡單的方法,就是我們建立一個虛擬環境,在這個虛擬環境下我們只安裝最簡單的 python 軟體,這時候在...

Python筆記(14)- 時間模組使用(time與datetime)

我們常常在資料分析或設計特殊功能常常會使用到時間資料的剖析,這邊我們介紹兩個日期時間的相關模組 time 與 datetime 。 14.1 time 模組 我們在使用 time 模組中的函數必須匯入此模組,即 import time 。 time 模組可以有兩種的時間格是,一種稱為時間戳,以秒數表示 ( 自 1970 年 1 月 1 日 00:00:00 開始算起 ) ,一種則是明確表示年月日時分秒的格式,程式語法如下: 特別注意的是, ctime() 中如果不放任何參數,則會回傳當前時間與日期格式,若要放入參數 t ,則 t 必須是時間戳,回傳結果則是 t 對應的時間與日期格式。 如果想要分別取得當前時間的年月日時分秒等訊息,則可使用 localtime() 函數, 如果不放任何參數,則會回傳當前時間的時間元組,若要放入參數 t ,則 t 必須是時間戳,回傳結果則是 t 對應的時間元組。時間元組格式如下: 特別要說明的是 tm_wday 代表一週中的第幾天, tm_yday 則代表一年中的第幾天, tm_isdst 則代表時間使否有使用夏令時間, 1 代表有使用, 0 代表沒有使用, -1 則代表不確定。 我們可以利用時間元組的屬性分別得到年月日時分秒等資訊,範例說明如下: 14.2 使用 time 模組中的 strftime() 函數自訂時間格式 要自訂時間格式,就必須先定義時間格式,資料類型為字串,以下我們整理幾個常用到字串所代表的時間意義: strftime() 函數需要兩個參數,時間格式與時間元組,結構如下: strftime( 時間格式 , 時間元組 ) ,以下我們舉幾個範例如下: 14.3 使用 time 模組中的 strptime() 函數將時間字串轉換成時間元組 strptime() 可以將任意時間字串轉換成時間元組,一樣需要兩個參數,一個是時間字串,另一個是時間字串對應的時間格式,結構如下: strftime( 時間字串 , 時間格式 ) ,以下我們舉幾個範例如下: 14.4 牛刀小試 - 利用 time 模組進行時間早晚比對與計算時間差 我們的範例中給訂兩個時間字串,我們利用時間戳的大小關係來比較時間早晚,所以必須將時間字串先轉換成時間戳,這時候會使用到一個函數叫做 mktime(t) ,此函數可以回傳時間戳,但參數 t ...