視覺序列及物件
視覺序列的概觀
本章針對視覺序列的基本知識及使用方式,
說明下列各項相關內容。
- 視覺序列定義及一般資訊
- 序列視窗
- 建立及刪除視覺序列
- 視覺序列屬性及結果
- 從Vision Guide視窗來執行視覺序列
- 針對視覺序列進行測試和除錯
- 如何從SPEL+語言執行視覺序列
- 影像擷取 (從視覺序列中拍攝影像的方式)
視覺序列定義及一般資訊
視覺序列是什麼?
視覺序列是一組可從Vision Guide Development Window或由SPEL+語言,以特定順序執行的Vision物件。
與Vision物件相同的是,視覺序列也具有可用來設定其執行的特定屬性。例如,Camera屬性定義將會使用哪部攝影機來為本視覺序列擷取影像,而RuntimeAcquire屬性則定義如何為本視覺序列取得影像。
雖然Vision物件可以個別測試及執行,但大部份的視覺應用程式都需要依序執行一系列Vision物件,才能計算出最終結果。這就是視覺序列的作用。
視覺序列是用來以特定順序執行Vision物件的。在建立及測試個別Vision物件之後,您就必須測試視覺序列。
視覺序列如何運作?
視覺序列包含一或多個Vision物件,而視覺序列的基本用途是依序執行這些Vision物件(依據使用者先前所定義的順序)。
下列步驟顯示視覺序列執行時所發生的情況:
視覺序列使用其屬性設定值來設定序列的執行。這包括像是使用哪部攝影機來擷取影像,以決定用來擷取影像的方法 (RuntimeAcquire設定等)。
影像經擷取後,並放置在影格緩衝區中,以供之後執行的Vision物件使用。(若將RuntimeAcquire屬性設定為「None」,那麼已在影格緩衝區中的影像將用於序列。這可以讓多個序列在相同的影像上操作。)
現在會使用在上述第2步驟中所擷取的影像,依序執行Vision物件。一旦所有Vision物件皆已執行,就會將序列及物件結果提供顯示在Sequence視窗及Object視窗上,也可提供給SPEL+語言使用。
視覺序列和Epson RC+ 8.0專案
Epson RC+ 8.0是依專案概念為基礎,
每個Epson RC+ 8.0專案皆包含程式、教導點,以及特定應用程式所需要的所有其他機器人組態參數。
當在Epson RC+ 8.0專案內使用Vision Guide 8.0時,在該專案內所建立的所有視覺序列也會隨著專案一起儲存。
使用者可藉此在下次開啟特定專案時,使用及修改之前在專案中所建立的所有視覺序列。
Vision物件的概觀
Vision物件是Vision Guide 8.0的核心元件,更是其他一切根據的基礎。
本章提供如何使用Vision Guide 8.0,以解決您視覺應用程式問題的基本知識,將會討論下列內容:
- Vision物件的定義和運作的方式。
- 各類Vision物件的形狀說明。
- 如何定位及調整Vision物件大小。
- 每個Vision物件的用途說明。
- 如何使用每個Vision物件。
- Vision物件的屬性及結果。
- Vision物件的詳細資料說明。
- Vision物件所使用的公用程式。(直方圖、統計及Vision物件圖形調整。)
Vision物件的定義
Vision物件是什麼?
Vision物件是一種可以套用至影像的視覺工具。
在初次接觸時,許多視覺開發人員會認為Vision物件只是支援Vision Guide 8.0的演算法的另一種稱呼。但在使用Vision Guide 8.0之後,您會發現視覺演算法只是定義一個Vision物件的其中一部份。
Vision物件就像是容器,用來保存使用特定視覺演算法的所需資訊。可輕易調整及檢查(透過屬性及結果)本資料的獨特方式,是Vision物件之所以如此強大的原因,比其他視覺系統更能讓使用者快速開發出新的視覺應用程式。
所支援的一些Vision物件Tools包括:Correlation Search、Blob Analysis、Polar Search、Edge Detection、Line Creation、Points,以及Frames。所有Vision物件皆可執行(套用至目前的影像),並皆會回傳像是Vision物件執行的時間、位置資訊、角度資訊,以及是否找到Vision物件。
請參考本節後續內容中關於各Vision物件的說明,以了解更多詳情。