Aurora Visio Studio TOP » Program Examples » Parallel Image Saving

Parallel Image Saving

目的

The task is to save the last image with drawn results.

Input

An image containing a gasket.

Output

Saved image with drawn results.

ヒント

Read more about the original Gasket Inspection example here. In order to reduce the execution time, draw and save results using a Worker Task Macrofilter.

接続のラベル付けについては こちらを参照ください。

Solution (AVS)

  1. Use the code from the Gasket Inspection example to prepare the inspection.
  2. From the Project Explorer window create a new UserType named InspectionPacket. All the inputs, which need to be created, as well as their corresponding data types are shown in the image below.

  3. From the Project explorer window create a new SavingQueue with the InspectionPacket data type.

  4. From the Project explorer window create a new Worker Task called SaveLastImage.

  5. Add the Queue_Push filter to the main program's PROCESSING section and assign it the SavingQueue queue.

  6. Right click on the inValue of the Queue_Push filter and select "Expand Structure Fields".

  7. Connect created inputs using the following scheme:

  8. Go to the SaveLastImage Worker Task macrofilter.

  9. In the ACQUIRE section add the Queue_Pop and the Loop filters.

  10. In the PROCESS section add following filters in specified order: the DrawRectangles_SingleColor, the DrawCircles_SingleColor, the DrawCircles_SingleColor, the DrawSegments_SingleColor, the DrawArcs_SingleColor, the DrawArcs_SingleColor, the DrawSegments_SingleColor and the SaveImage.

  11. Right click on the outValues of the Queue_Pop filter, select the PropertyOutput and check all visible outputs.

  12. Connect created outputs by following the scheme in the image below.

  13. Set the inFile input of the SaveImage filter to LastResult.bmp.

  14. Program is ready to use. In the current version, programs using worker tasks can be properly run only in the Run mode (F5).

マクロフィルタ メイン

使用したフィルタ

アイコン 名前 説明
DrawRectangles_SingleColor 画像上に単色で四角形を描画します。
DrawCircles_SingleColor 単一の色で画像上に円を描画します。
LocateSingleObject_Edges1 輪郭がシャープで硬い物体の検出。 多くの場合、プログラムの最初のフィルターの 1 つです。
FitArcToEdges Precise detection of an arciform edge, whose rough location is known beforehand.
Loop このフィルターを、ループを持つ必要があるタスクに配置しますが、他のループ ジェネレーター (例: GrabImage) を持たないようにします。
PointToPointDistance 2つの点の間の距離を測定します。
SaveImage Saves an image to a file.
DrawSegments_SingleColor Draws segments on an image with a single color.
DrawArcs_SingleColor Draws arcs on an image with a single color.
EnumerateImages ディスクに保存された画像を使用して画像取得をエミュレートします。
FitCircleToEdges 既知の粗い位置に基づいて円形のオブジェクトまたは穴を正確に検出します。

その他の資料