OpenR8 AI 軟體 使用手冊

 

 

一、章節介紹

 

此文件的章節主要如下列:

一、章節介紹:即為本章節。

二、下載 OpenR8:說明如何下載本軟體。

三、 OpenR8資料夾介紹: 介紹本軟體的資料夾。。

四、資料夾目錄說明: 說明本軟體資料夾內容。。

五、執行R8.exe:說明如何執行本軟體執行檔。

六、變更語言成為繁體中文介面:介紹如何變更介面語言。

七、讀取解決方案: 開啟已存在的流程檔案。現有流程檔案用途請參閱資料夾目錄說明。

八、新增解決方案:如果現有流程檔案未有符合需求,可自行建立一個新的流程檔案,透過不同的功能方塊組合出想要的功能。

九、視窗介面介紹-功能區:介紹介面如何儲存、新增、執行、除錯等功能介紹。

十、視窗介面介紹-流程編輯區:介紹如何新增、移動、刪除、複製流程內容,以及如何修改流程的變數。

十一、Run 執行:介紹如何執行流程檔案。

十二、Debug 除錯:介紹如何除錯流程檔案。

十三、其它介紹:常見問題排除。

(備註:如果在自行新增編輯流程有任何疑問,想對每一個流程方塊進一步的認識,請參閱 OpenR8 library 文件,其文件將介紹函式庫所有方塊的功能以及其參數的說明。)

 

首先,本文件會先介紹如何下載 OpenR8 軟體。下載完後執行 R8 軟體,開啟已現有的流程或者新增編輯流程,流程確認後,運行與顯示其結果。

其操作使用主要流程為下圖1,每一個步驟於本文件之每一章節會依序詳細介紹。

 

圖 1. 操作流程.png

圖1.操作流程 。

 

 

二、下載 OpenR8

 

下載 OpenR8 只需四步驟,請依下述步驟逐一操作。

步驟一 :

瀏覽器網址請輸入https://tw.openrobot.club/openr8。顯示畫面如下圖2。

 

圖 2.OpenR8首頁.png

圖2.OpenR8 首頁 。

 

步驟二:

本軟體限會員下載,請先登入會員,如無會員,可免費加入會員】後登入

登入】與【註冊】位置如下圖3。

 

圖 3. OpenR8首頁之登入註冊位置.png

圖3.OpenR8 首頁之登入註冊位置 。

 

步驟三:

登入後,OpenR8 頁面請拉至下方,畫面如下圖4,請選擇下載點,點擊即可下載。

 

圖 4. OpenR8下載.png

圖4.OpenR8 下載 。

 

步驟四:

下載完為壓縮檔案。請先將檔案【解壓縮】到想放的位置。

 

 

三、OpenR8 資料夾介紹

 

OpenR8 檔案包含【3rdparty】、【data】、【include】、【language】、【lib】、【library】、【resource】、【solution】、【src 】資料夾以及【其他檔案】。下列會個別介紹每一個資料夾的用途與功能。OpenR8 資料夾如圖5。資料夾詳細內容可至下一章節【資料夾目錄說明】察看。

 

圖 5. OpenR8資料夾.png

圖5.OpenR8 資料夾 。

 

名稱

用途與功能

內容

資料夾詳細介紹位於下一章節【資料夾目錄說明】

3rdparty

OpenR8 合法引用的第三方函式庫。

Curl

Jansson

OpenCV

OpenGL

OpenSSL

TinyXML2

WxWidgets

data

每個 soultion 共用的資料。

Image

doc

OpenR8 與相關第三方軟體的說明文件。

OpenR8 使用手冊.pdf

OpenR8 Image_PCB_SSD_Caffe.pdf

……

include

OpenR8 引用軟體的標頭檔。

R7.hpp

language

OpenR8 語言轉換翻譯的檔案。可支援多國語言,如繁體中文、簡體中文、日文、英文。

zh_TW.txt

zh_CN.txt

JP.txt

lib

OpenR8 引用軟體的函式庫。 如果要從 src 資料夾下編譯 visual studio,就需匯入此資料夾下的 R7_lib.lib。

R7_lib.lib

library

OpenR8 函式庫所引用的動態連結程式庫。

如果自行新增新的函式時,需將其函式的 dll 放置此資料夾底下。

Barcode

Basler

Caffe

CGI

COM

CUDA

CURL

FC2

File

Halcon17

Httpd

Image

KVM

Mouse

NVIDIA

OpenCV

OpenGL

OpenVINO

OS

Python

Socket

Sound

Timer

solution

OpenR8 的解決方案範例。可以依照需求來選擇合適的方案。

CGI

CURL

Data_Analysis

DeepLearningServer

DeepLearningServer_Python

File

ForLoop

GetComputerID

Halcon

HttpServer

HttpServer_DeepLearning

HttpServer_DeepLearning_Python

HttpServer_DeepLearning_Python_PCB

If

Image

Image_Barcode

Image_Basler

Image_Benchmark

Image_Binarize

Image_Cap

Image_ConvertFileFormat

Image_DataArgumentation

Image_FaceRecognitionCelebrity

Image_FC2

Image_FindBlob

Image_FindBlob2

Image_FindRotateVerticalAngle

Image_GetSharpness

Image_MoveMouseThenScreenShot

Image_OCR_FC_Caffe_FC

Image_PCB_DefectDetection_SSD512_Caffe

Image_PCB_FasterRCNN_Keras

Image_PCB_MaskRCNN_Keras

Image_PCB_SSD300_Caffe

Image_PCB_SSD_Keras

Image_PCB_SSD512_Caffe

Image_PCB_YOLOv3_Keras

Image_VideoCapture_OpenCV

Image_Webcam_SSD300_Caffe

IntegerList_Caffe_FC

KVM

Loop

NVIDIA

OpenGL

OpenVINO

OS

Print

Python

Socket

SoundInput

Stock_Taiwan

Stock_Taiwan_1D_LSTMx2_internal

String

Timer

XOR_Caffe_FC

src

OpenR8 的函式原始碼。

Basler

CGI

COM

CSharp_App

CSharp_ImagePost

CUDA

CURL

FC2

File

Halcon17

Httpd

KVM

Mouse

NVIDIA

OpenCV

OpenGL

OpenVINO

OS

Python

R8

Socket

Sound

Template

Timer

wxWidgets_App

Tools

Windows 64 位元工具軟體

Compression

Deep Learning

Editor

Git

Hardware

Image

Meeting

Merge

NVIDA

Python

Remote Control

Streaming

Web Server

Windows

表1 OpenR8 資料夾介紹。

 

 

四、資料夾目錄說明

 

3rdparty: 引用的第三方函式庫。

 

Curl】是一個利用 URL 語法在命令列下工作的檔案傳輸工具。它支援檔案上傳和下載,是一個綜合的傳輸工具。

Jansson】是一個用於解碼、編碼、生成 JSON 的 C 的函式庫。

OpenCV】是一個跨平台的電腦視覺庫

OpenGL】開放圖形庫或者「開放式圖形庫」,是用於繪製2D、3D向量圖形的跨語言、跨平台的應用程式編程介面(API)。

OpenSSL】是一個開放原始碼的軟體函式庫,應用程式可以使用這個套件來進行安全通訊,避免竊聽,同時確認另一端連線者的身分。

TinyXML2】是一個 C++ 的開源解析 XML 的解析庫。

WxWidgets】是一個開放原始碼且跨平台的物件工具集(widget toolkit),其函式庫可用來建立基本的圖形使用者介面(GUI)。

 

Data: 每個 soultion 共用的資料。

 

Image】OpenR8 解決方案檔案所共用的影像。

 

library: OpenR8 函式庫所引用的動態連結程式庫。

 

Solution: OpenR8 的解決方案範例。

 

Src: OpenR8 函式原始碼。

 

方案詳細清單與介紹如下表2。讀取解決方案可參考【讀取解決方案】之章節。

方案

用途

程式碼

方案範例

Barcode

解析一維條碼後,回傳解析出來的字串結果。

用一維掃描器掃描,會回傳 【OpenR8 Barcode】。

Image_Barcode

Basler

將Basler廠牌的相機取像轉換成影像。

Image_Basler

CUDA

檢查顯示卡是否支援 CUDA

Caffe

深度學習。

例如:

字元辨識(0~9)。

PCB 偵測電容。

Image_FaceRecognition

Celebrity

Image_OCR_FC_Caffe_FC

Image_PCB_DefectDetection_

SSD512_Caffe

Image_PCB_SSD300_Caffe

Image_PCB_SSD512_Caffe

Image_Webcam_SSD300_Caffe

IntegerList_Caffe_FC

XOR_Caffe_FC

CGI

可以讓使用者、Web 伺服器、外部程式三者之間交換資訊的機制。

CGI

COM

用於透過 COM PORT 來發送/接收RS232命令。

CSharp_App

簡易的小介面範例,呼叫 R7.exe 運行從 .flow export出來之 .cpp 檔案。

CSharp_ImagePost

SolutionHttpServer_

DeepLearning_Python

的介面端範例。

此會 post 一張圖給

HttpServer_DeepLea

rning_Python,再把收到的 json 顯示出來。

CURL

是一個利用URL語法在命令列下工作的檔案傳輸工具。可以支援檔案上傳和下載。

CURL

FC2

Flycapture的初始化、開啟相機、設定相機快門與增益、取像轉RAW8 影像數據格式等。

Image_FC2

File

檔案的相關功能。

例如:

讀取或儲存影像、刪除資料夾目錄、刪除檔案、讀取或儲字串至檔案、讀二元檔案等。

File

GetComputerID

取得網路卡的序號。

GetComputerID

Halcon17

用Halcon的框架做卷積神經網路影像辨識。

Halcon

Httpd

架設 Http 伺服器,讓使用者可以透過瀏覽器以 GET / POST 等方法與 OpenR8 溝通。

HttpServer

HttpServer_DeepLearning

HttpServer_DeepLearning_

Python

HttpServer_DeepLearning_

Python_PCB

If

ForLoop

Loop

Print

String

判斷式。如果….,就做什麼事。

迴圈。重複執行某件事。

列印。視窗顯示出指定的影像或字串變數等。

字串。進行字串的相加、取代等運算。

If

ForLoop

Loop

Print

String

Image

影像處理相關的功能與應用,以及將OpenCV 的功能圖形介面化。

處理範例:影像二元化。影像找 blob。影像找物件旋轉角度等等。

應用範例: 辨識瓶蓋有沒有蓋緊等。

Image

Image_Benchmark

Image_Binarize

Image_Cap

Image_ConvertFileF

ormat

Image_DataAugment

ation

Image_FindBlob

Image_FindBlob2

Image_FindRotat

eVerticalAngle

Image_GetSharpness

KVM

模擬遠端控制,需注意此 Library 要配合 Httpd Library 使用。詳細內容見 solution 裡面的 KVM 範例。

KVM

Mouse

控制滑鼠的點擊與移動。

Image_MoveMouseThenScreenShot

NVIDIA

檢查電腦裝置是否有GPU或CUDA。

NVIDIA

OpenCV

使用 OpenCV 從攝影機讀入影像。

Image_VideoCaptur

e_OpenCV

OpenGL

使用 OpenGL 的功能來開視窗以及顯示影像。

OpenGL

OpenVINO

深度學習。使用 Intel OpenVINO 進行的影像推論。

OpenVINO

OS

​基本小功能。

例如:開啟一個指定資料夾、開啟一個網頁、開啟一個執行檔、列印一份文件。

OS

Python

呼叫以 Python 語言編寫的程式碼。

需注意系統需要安裝 Python 直譯器(例如: CPython )才能運行此 Library 。

Data_Analysis

Image_PCB_FasterRC

NN_Keras

Image_PCB_MaskRC

NN_Keras

Image_PCB_SSD

300_Keras

Image_PCB_YOLOv3_K

eras

Python

Stock_Taiwan

Stock_Taiwan_1D_LSTM

x2_internal

R8

也就是 OpenR8,為這份手冊所說明之軟體的主體。

R8

Socket

Socket是一種作業系統提供的行程間通訊機制。

例如:使用者端與伺服器端從一開始設定初始值,如閘道、地址、連線模式等,以及至後續的傳送與接收數據。

Socket

Sound

錄製或播放 wav 格式的聲音。

SoundInput

Template

簡易的小範例。呼叫R7.exe運行從 .flow export出來之 .cpp檔案。

Timer

計算流程中的運算時間。

例如:可以知道整個 flow流程中,某一段流程執行所需時間。

Timer

wxWidgets_App

簡易的小範例。使用 wxWidgets 運行從 .flow export出來之 .cpp檔案。

 

 

表2. OpenR8 函式介紹。

 

 

五、執行 R8.exe

 

在下載 OpenR8 章節中所下載好的檔案裡,可以找到【OpenR8 資料夾】底下有一個【R8.exe】執行檔。如下圖6。滑鼠點擊兩下即可執行R8.exe。

 

圖 6.執行 R8.exe.png

圖6.執行 R8.exe 。

 

 

六、變更語言成為繁體中文介面

 

請點選【File】=>【Language】=>【繁體中文】=>【確定】。如下圖 7

點選完,請重新啟動 OpenR8。關閉 OpenR8,再次執行R8.exe。即可顯示繁體中文介面。如下圖 8

 

圖 7. 變更語言成為繁體中文介面.png

圖 7. 變更語言成為繁體中文介面。

 

圖 8. 繁體中文介面.png

圖 8. 繁體中文介面。

 

 

七、讀取解決方案

 

圖 8.1繁體中文介面.png

 

請點選【檔案】=>【開啟】=>【進入到OpenR8底下的solution 資料夾】=>【選擇欲讀取的解決方案】=>【選擇其flow 檔開啟】

例如:欲選擇方案為 Image,點選Image資料夾,進入該資料夾後,滑鼠點擊Image.flow兩下開啟,即可成功讀取解決方案。如下圖 9圖 10圖 11

 

圖 9. 選擇解決方案.png

圖 9. 選擇解決方案 。

 

圖 10. 選擇方案之檔案.png

圖 10. 選擇方案之檔案 。

 

圖 11. 開啟解決方案檔案.png

圖 11. 開啟解決方案檔案。

 

 

八、新增解決方案

 

圖 12. 新增流程.png

圖 12. 新增流程。

 

如果已存在的解決方案不是自己想要的解決方案時,可以建立一個自己想要的解決方案。

 

圖 13. 新增流程過程.png

圖 13. 新增流程過程 。

 

例如:開啟OpenR8 的網站。

 

【從函式庫拉想要的函式到流程中】

首先,需要個開啟網頁的函式。

 

圖 14. 從函式庫拉想要的函式到流程中.png

圖 14.  從函式庫拉想要的函式到流程中。

 

【編輯流程內函式所需的變數】

 

圖 15. 編輯流程內函式所需的變數.png

圖 15. 編輯流程內函式所需的變數。

 

【儲存解決方案】

請點選【檔案】=>【儲存】來儲存解決方案。

 

圖 16. 儲存解決方案.png

圖16.儲存解決方案。

 

【按下執行或除錯看結果】

請點選【執行】或是【除錯】來看結果。

 

圖 17. 按下執行或除錯看結果.png

圖 17. 按下執行或除錯看結果。

 

 

九、視窗介面介紹 — 功能區

 

圖 18. 功能區的位置.png

圖 18. 功能區的位置。

 

功能區主要有十大功能,【檔案】、【函式庫】、【還原】、【重做】、【執行】、【除錯】、【工作路徑】、【幫助】、【商店】、【論壇】下面1~10點會詳細介紹、說明。

  1. 【檔案】:

檔案內含【新增】、【開啟】、【儲存】、【另存】、【加密】、【匯出】、【language】、【離開】等功能,下面1.1~1.8會詳細介紹、說明。

 

圖 19. 檔案位置與內容.png

圖 19. 檔案位置與內容。

 

1.1【新增】:開啟一個全新的R8專案檔案(.flow、.r6、.xml)。

1.2【開啟】:開啟一個已存在的R8專案檔案(.flow、.r6、.xml)。

1.3【儲存】:儲存R8專案檔案。

1.4【另存】:另存新的R8專案檔案。

1.5【加密】:將 R8專案檔案加密後儲存。

1.6【匯出】:

  1. 輸出Windows批次文件:輸出可在 Windows 執行的bat檔。
  2. 輸出 Visual C++ 文件:輸出可在 Visual Studio 執行的 C++ 檔。

1.7【Language】:OpenR8 的語言設定,有 English、日本語、简体中文、繁體中文等四種語言。

1.8【離開】:關閉OpenR8。

  1. 【函式庫】:

可選擇要使用哪些函式庫的功能,有勾選的將會出現在左方的函式庫中。

※請注意:這裡的函式庫與資料夾中的 library 息息相關,如果誤刪資料夾中的 library 導致函式庫無法導入,需重新下載OpenR8安裝。

 

圖 20. 函式庫功能一覽.png

圖 20. 函式庫功能一覽。

 

 

  1. 【還原】:

可還原上一步動作(限定編輯R8專案檔案時才會觸發)。

 

圖 21. 還原位置.png

圖 21. 還原位置。

 

舉例:使用第八章【新增解決方案】的開啟網頁之範例。

 

圖 22. 還原的應用.png

圖 22. 還原的應用。

 

  1. 【重做】:

可取消還原上一步動作(限定編輯R8專案檔案時才會觸發)。

 

圖 23. 重做位置.png

圖 23. 重做位置。

 

舉例:使用第八章【新增解決方案】的開啟網頁之範例。

 

圖 24. 重做流程.png

圖 24. 重做流程。

 

  1. 【執行】:

執行R8專案檔案,但不會執行除錯相關函式(請參考第6點除錯)。

※按下執行前若檔案未儲存,會跳出『Please save flow before run it.』來提示儲存R8專案檔案,如圖 25。

如圖 26為例,將R8專案檔案儲存後,按下【執行】,即可開啟https://tw.openrobot.club/article/index?sn=10982 網頁。

 

圖 25. 執行前儲存的提示.png

圖 25. 執行前儲存的提示。

 

圖 26. 執行的結果.png

圖 26. 執行的結果。

 

  1. 【除錯】:

R8 的除錯相關函式如下圖 27

 

圖 27. 除錯相關函式.png

圖 27. 除錯相關函式。

 

圖 28. 專案檔案加入偵錯函式後.png

圖 28. 專案檔案加入偵錯函式後。

 

圖 29. R8專案檔案加入偵錯函式後 按下除錯運行結果.png

圖 29. R8專案檔案加入偵錯函式後,按下除錯運行結果。

 

圖 29,按下除錯後可以看到視窗除了開啟網頁之外,還印了“歡迎來到開源俱樂部”的字串,可利用此模式來偵錯程式運行的情況。

※按下執行(第五點)時,不會顯示除錯相關函式。

  1. 【工作路徑】:

設定R8專案檔案的路徑,預設為運行 R8.exe的同層資料夾中,solution的資料夾內,按下圖 30紅框標示的工作路徑可自行更改想要的位置。

圖 30. 設定R8專案檔案的路徑.png

圖 30. 設定R8專案檔案的路徑。

 

  1. 【幫助】:

按下關於會跳至https://tw.openrobot.club/article/index?sn=10969 介紹、說明。如圖 31。

 

圖 31. 幫助資訊.png

圖 31. 幫助資訊。

 

  1. 【商店】:

按下後,會跳至按下後,會跳至 https://download.openrobot.club/shop1有深度學習用的電腦主機可購買。如下圖 32。

 

圖 32. 深度學習電腦專賣店資訊.png

圖 32. 深度學習電腦專賣店資訊。

 

  1. 【論壇】:

按下後,會跳至https://www.facebook.com/groups/openrobotclubtw/ 對於 OpenR8 使用有遇到疑問,可以到這邊交流。如下圖 33。

 

圖 31. 幫助資訊.png

圖 33. 開源機器人俱樂部臉書頁面。

 

 

十、視窗介面介紹 — 流程編輯區

 

圖 34. 功能區的位置.png

圖 34. 功能區的位置。

 

流程編輯區主要有五大區域,分別為【函式庫】、【流程】、【函式】、【變數】、【變數區】,各區域的功能與之間的關係,下面1~5點會詳細介紹、說明。

  1. 函式庫:

顯示支援函式的區塊,會依照函式類別區分,和功能區的函式庫的勾選有關,只有功能區的函式庫有勾選的,才會在底下的函式庫中顯示。

 

圖 35. 函式庫的位置.png

圖 35. 函式庫的位置。

 

※在函式庫中的搜尋函式名稱來找到想要的函式,如圖 36

 

圖 36. 可搜尋函式的全稱或一部分名稱來找尋想要的函式.png

圖 36.  可搜尋函式的全稱或一部分名稱來找尋想要的函式。

 

※在函式庫中的函式按右鍵,可連到網站說明此函式用法,如圖 37

 

圖 37. 右鍵點擊函式可查看線上說明文章.png

圖 37. 右鍵點擊函式可查看線上說明文章。

 

  1.  流程:

在流程中,會對流程中的函式做的動作有【新增】、【移動】、【複製】、【刪除】、【啟用與停用】。

2.1【新增】:

從函式庫新增函式到流程的方法有兩種,有拖曳函式與對函式雙擊左鍵,如圖 38、圖 39。

2.2【移動】:

把流程中的函式按住左鍵不放,往上或往下移動到想要的位置在放開來改變流程中函式的順序,如圖40。

2.3【複製】:

點擊流程中想複製的函式,在右方的函式中有個複製的按鈕,按下後,會出現在想要複製的函式的下一個位置,如圖41

2.4. 【刪除】:

點擊流程中想刪除的函式,在右方的函式中有個刪除的按鈕,按下刪除後,想刪除的函式會消失在流程中,如圖42

2.5.【啟用與停用】:

若想暫時不執行流程中的某函式,可點擊流程中暫時不執行的函式,在右方的函式中啟用的勾取消,這樣按執行或除錯時,皆不會執行此函式,被停用的函式字體會變成淺灰色,如圖43

 

圖 38. 函式庫按住左鍵拖曳函式到流程想要的位置.png

圖38.函式庫按住左鍵拖曳函式到流程想要的位置 。

 

圖 39. 對函式庫的函式雙擊左鍵後出現在流程的位置.png

圖39.對函式庫的函式雙擊左鍵後出現在流程的位置 。

 

圖 40. 拖曳函式在流程中的位置.png

圖40.拖曳函式在流程中的位置 。

 

圖 41. 函式複製功能.png

圖41.函式複製功能 。

 

圖 42. 函式刪除功能.png

圖42.函式刪除功能 。

 

圖 43. 淺灰色字體的函式.png

圖43.淺灰色字體的函式 。

 

  1. 函式:

在流程點擊函式,可在流程右方的函式內看到該函式參數內容,如圖44

 

圖 44. 函式的位置.png

圖44.函式的位置 。

 

圖45的函式內容為範例,底下3.1 ~ 3.8介紹函式的內容。

 

圖 45. 函式的範例.png

圖45.函式的範例 。

 

3.1【名稱】:該函式的名稱,以圖45為例,該函式名稱為『整數_加法』。

3.2【備註】:想對該函式加的備註,會將備註顯示在流程內,如圖46

3.3【整數 A、整數 B、整數 C】:根據每個函式不同,所顯示的參數也不同,以圖45為例,按新增可新增一個變數來設定參數名稱與內容,如圖47。按下編輯則是更改原有參數名稱與內容(詳見第4點、變數),或編輯的左方下拉選擇需要的參數,如圖48

3.4【啟用】:勾選與否決定運行時是否執行此函式,不勾選時在流程中的此函式字體會變淺灰色,如圖43。

3.5【序號】:給函式的編號,每一個在流程的函式都有獨立的編號。

3.6【刪除】:按下刪除會刪除此函式在流程中的位置,若想復原請按上方還原按鈕,如圖51

3.7【複製】:按下複製會在流程中此函式的下方插入個一模一樣的函式,如圖52

3.8【幫助】:功能如同在函式庫對函式點擊右鍵功能一樣,會連到網站說明此函式參數用途與用法,如圖53

 

圖 46. 函式備註會出現在流程該函式的 內.png

圖46.函式備註會出現在流程該函式的()內。 

 

圖 47. 函式變數的新增.png

圖47.函式變數的新增 。

 

圖 48. 函式變數的編輯.png

圖48.函式變數的編輯 。

 

圖 49. 函式變數下拉式選單選擇想要的變數.png

圖49.函式變數下拉式選單選擇想要的變數 。

 

※變數的下拉式選單中選擇最後一個空白欄位,代表將清空該變數欄位,如圖50

 

圖 50. 函式變數清空欄位.png

圖50.函式變數清空欄位 。

 

圖 51. 函式刪除功能.png

圖51.函式刪除功能 。

 

圖 52. 函式複製功能.png

圖52.函式複製功能 。

 

圖 53. 函式幫助功能.png

圖53.函式幫助功能 。

 

  1. 變數:

 

圖 54. 變數的範例.png

圖54.變數的範例 。

 

第3.3 點【變數】按下新增或編輯後,可在此區域修改名稱與參數值,以圖48為例,在整數 C 按下新增(或編輯)後,可在下方變數區塊中改變變數內容。

 

圖 55. 按下編輯或新增來更改變數內容.png

圖55.按下編輯或新增來更改變數內容 。

 

圖54為例,需要設定變數的【名稱】、【備註】、【值】,4.1到4.6會詳細介紹、說明。

 

4.1【名稱】: 設定變數的名稱,在按下函式的新增時預設名字為該變數名稱,可更改成其它    名字,如圖56。

4.2.【備註】:

有時忘記變數的用途、或想加的備註,皆可在此欄填寫,填寫後只要有用到此        變數的函式,在其欄位皆會加入注釋,如圖57

4.3.【型】: 為型態的意思,像 int 代表為整數,不提供型態的選擇,型態代表的意思可參考下方表3的變數型態表。

4.4.【值】:

想讓這個變數名稱代表什麼值,舉例:想讓“網址 = www.google.com”,需將“名稱”填 “網址”、 “值”填    www.google.com,如圖58。

4.5.【序號】: 

對變數的編號。

4.6.【刪除】:

刪除此變數,如圖59。若誤刪時,請善用上方功能列之還原按鈕。

 

圖 56. 對變數名稱進行改名.png

圖56.對變數名稱進行改名 。

 

圖 57. 對變數加上備註.png

圖57.對變數加上備註 。

 

圖 58. 對變數填入設定值.png

圖58.對變數填入設定值 。

 

圖 59. 刪除變數.png

圖59.刪除變數 。

 

變數型態

int(整數)

0、-1、1000……等整數。

float(浮點數)

0.555555、-0.1……等小數點後六位內的浮點數。

double(雙精度浮點數)

3.1415927…...等超過小數點後六位精密的浮點數

bool(布林)

True(1)、False(0)兩種是與否的值。

string(字串)

ABC、0、1A2B……等字串。

image(影像)

圖檔。

表3 參數型態表。

 

  1. 變數區:

變數區會列出R8專案檔案內所有的變數,找到想更改或查看變數點擊左鍵後,即可在變數(第4點、變數)裡更改。。

 

圖 60. 整個 R8專案檔案內所有的變數.png

圖60.在流程中某個函式的所有變數 。

 

圖 61. 搜尋特定變數名稱.png

圖61.整個 R8 專案檔案內所有的變數 。

 

圖61為例,搜尋“整數”,可列出整個 R8 專案檔案內所有包含“整數”的變數名稱,按下 X 會回歸列出整個 R8 專案檔案內所有的變數的模式。

 

 

十一、Run執行

 

如果欲查看方案的結果,可以透過點選【執行】來顯示方案流程的結果。

例如:選擇的 Image 解決方案後,點選執行,結果如下圖62、圖63。

 

圖 62. Run 執行.png

圖 62. Run 執行 。

 

圖 63. Run 執行結果.png

圖63.Run 執行結果。

 

 

十二、Debug 除錯

 

當執行結果有疑問或需要除錯時,可以透過除錯來確認執行過程的步驟。

例如: 如下圖 64,可以藉由【偵錯_列印】的步驟來顯示流程中欲確認的變數。運行除錯後,將顯示欲確認的變數。如下圖 65。

與 Run 執行的差別: Run 僅執行 Image 的流程,不會顯示偵錯_列印。反之,Debug 除錯會顯示偵錯_列印。

 

圖 64. Debug 偵錯.png

圖64.Debug 偵錯 。

 

圖 65. Debug 偵錯結果.png

圖65.Debug 偵錯結果 。

 

 

十四、其他介紹

 

【常見問題】

 

  • 為什麼更改變數名稱總是會在後面加上數字,刪掉數字了還是會出現?

 

原因:

如果這個變數名稱之前有使用過,再創一個同樣名稱的變數時,為了不重複原則,會自動為變數後面加上數字以示區別。

 

解決方案:

更改成別的名字,或對之前舊的變數名稱做更名或刪除。

 

  • 為什麼我的函式中參數名稱都是 unload?

 

原因:

  1. 在最上排函式庫的選擇中,若未將所需的函式庫勾選,在開其他範例時,由於未能載入函式庫而出現 unload。
  2. 若與 R8 .exe 同層的資料夾中 library 的資料夾內沒有所選擇的函式庫時,由於未能載入函式庫而出現 unload。

 

解決方案:

  1. 在最上排函式庫的選擇中,勾選所需的函式庫,再重啟 R8.exe 即可。
  2. 需重新下載 OpenR8。

 

  • 明明有這個變數名稱,為什麼我在下拉式選單裡頭找不到?

 

原因:

如果在變數區裡頭明明搜尋到想要的參數,在函式的參數下拉式選單裡頭卻看不到想要的參數時,有可能是因為變數的型態不同。舉例來說,有個變數名稱為 “temp”,但是在新增的時候型態是 string(字串),若在變數型態非 string(字串)的欄位選擇 “temp” 時,就會因為型態不同而看不到 “temp”。

 

解決方案:

另外新增一個參數。

 

  • 為什麼我的 DOS 視窗當掉了?

 

原因:

如果流程的順序錯了、函式裡頭少填了參數,或是函式裡頭參數填的值不對,都會造成程式當掉的可能性。

 

解決方案:

可參考其他範例程式、確認函式裡頭的參數,來排除當掉的原因。

 

  • 為什麼我拉了列印的函式卻在 DOS 視窗裡頭看不到我要的資訊?

 

原因:

  1. 如果你使用的是偵錯函式內的列印,在執行時,並不會執行偵錯函式的任何函式。
  2. 如果使用的並非偵錯函式內的列印,有可能因流程順序的關係而不會執行到該列印的函式。

 

解決方案:

  1. 改按上方除錯按鈕即可看到列印的資訊。
  2. 移動或確認列印函式在流程的位置。

延伸閱讀

1.
OpenR8 - 人人都會用的 AI 軟體 (下載)

2.
OpenDBT - 開源大補帖

3.
開源機器人俱樂部的「開源大補帖」,參加南部科學園區舉辦的國際 AI 大賽獲得首獎300萬元台幣的獎金

4.
[OpenR8 解決方案] Image_PCB_SSD512_Caffe (影像分析使用 SSD 512 演算法及 Caffe 函式庫進行 PCB 物件偵測)

[CP 值最好的 AI 人工智慧電腦熱賣中]
硬體採用最新最快的 Titan RTX, RTX-2080Ti-11G, 及 TESLA V100!
視窗圖控介面,易學易用。
硬體優勢:針對深度學習最佳化設計,且經過客戶端 24H 運作驗證。
軟體優勢:事先安裝人工智慧軟體及優化設定,每週提供最新 AI 演算法下載。
公司優勢:專業人工智慧機器人設計公司,資本額一億。
歡迎企業、學校、及公家機關大量採購。
可租用,歡迎來信或來電洽詢。
詳細資料請參閱以下網址: https://tw.leaderg.com/ai_computer