DEVELOPMENT OF IMAGE PROCESSING SYSTEM ON EMBEDDEDEPICS FOR BEAM DIAGNOSTICS
Jun-ichi Odagiri, Kazuro Furukawa, Takashi Obina
High Energy Accelerator Research Organization (KEK)
1-1 Oho, Tsukuba, Ibaraki, 305-0801

Abstract
A new image processing system was developed based on EPICS and the FA-M3 PLC made by Yokogawa ElectricCorporation. The hardware of the system comprises an F3RP61 CPU module running Linux and an F3UM02 frame
grabber module. The CPU functions as an IOC to analyze the raw image data acquired and transferred by the frame
grabber on the PCI-bus which connects the two modules. A custom record, graphicsRecord, holds the raw image data,
the results of analysis and parameters set by the user over the network. GUI panels were created by using EDM in order
to display the image and to set relevant control parameters into the fields of the graphicsRecord on the F3RP61-based
IOC. It was confirmed that the developed system is able to acquire image data, analyze them appropriately, and send
them over the network to a host computer to display the results of analysis.

ビーム診断のための組込み EPICS による画像処理システムの開発
1.

はじめにSystem (EPICS) [2] のフロントエンド・プログラム（iocCore）を実行することができる。この PLC を利用した組込み EPICS 技術には、これまでに KEKB,J-PARC をはじめとした複数の加速器の制御システ
ムにおいて多数の実績がある[3]。この技術に FA-M3用画像入力モジュールである F3UM02[1]を組み合わせることによって高い信頼性と長期に亘る製品サポートが保証された画像処理システムを構築できることが期待できる。

従来、ビーム診断のための画像処理を行う計算機としては、デスクトップ型の PC などが利用されてきた。画像処理のプラットフォームとして PC を選択することには、フレーム・グラバー・ボード、画像処理ソフトウェアの選択の幅が広がるなどの利点がある。その反面、ハードウェアとしての信頼性、製品寿命の短さに起因する長期運用上の問題があった。
F3UM02 による画像入力
これらの問題を解決するために、2008 年以来、 2.
加速器制御分野での応用が進みつつある PLC を
F3UM02 画像入力モジュールは 2 枚のフレーム・ベースとした画像処理システムを開発した（図 1）。
グラバー・ボードを内蔵し、2 チャンネルの RGB
横河電機社製 FA-M3 PLC の CPU モジュールであ信号を処理できる。CPU モジュールとして使用する
る F3RP61[1]は Linux を OS として採用しているため、F3RP61 との間での画像データの転送には PLC バス
こ の CPU 上 で Experimental and Industrial Control
ではなく、PCI バスが使用される。両モジュールは、モジュール側面に設けられた PCI バス用コネクタを使用して接続され、F3UM02 から F3RP61 へ DMAによりデータが転送される。1 ユニットには最大 2個までの F3UM02 を挿すことができる。表 1 に
F3UM02 画像入力モジュールの主要な仕様を示す。
表 1：F3UM02 画像入力モジュールの主要な仕様

図 1：評価中の画像処理ユニット。左端の黒いモ
ジュールは電源モジュール。その右隣が F3RP61。
さらにその右隣が F3UM02。

チャネル数2ch対応カメラ

シングルタップ （8bit/pixel）/
デュアルタップ（16bit/pixel）
カラーRGB カメラ（24bit/pixel）

最大接続数

6 台（モノクロカメラの場合）

1 チャネル当たりのデジタイザ

8bit

A/D コンバータ

100MHzF3RP61 上で実行される iocCore プログラムが取得したデータに基づく画像処理、上位計算機上で実行されるユーザ・インタフェースとの通信などの主要な処理を担う。

3.

EPICS サポート・ソフトウェアの開発

3.1

レコード・サポートの開発

ビーム診断のための画像処理は、取得した生画像からバックグラウンドの差し引き、水平・鉛直両方向に投影したプロファイル・データの作成、プロファイルのピーク・サーチ、総光量の計算などが必要とされる。これらの処理、及びそのための各種パラメータの設定は、EPICS で標準的にサポートされるレコードの組合せたランタイム・データベースにより構築することも可能ではあるが、多数のレコードから構成されたランタイム・データベースの維持・保守はユーザにとって負担となる。そこでSeat-gas Beam Profile Monitor (SBPM) によるビーム
診断のために既に開発された独自レコード（graphicsRecord） [4]を可能な限り再利用することによって開発の効率化とユーザの負担の軽減を図ることとした。
基本的にはオリジナルの設計を踏襲したが、レコードのフィールドについての若干の加減と仕様変更を加えた。
3.2 デバイス・サポートの開発
graphicsRecord とハードウェア（F3UM02）をインタフェースするためのデバイス・サポートについて
も SBPM 用に開発されたものをベースとして開発した。デバイス・サポートは、デバイスの違いを吸収するレイヤであるため、当然のことながら、この部分については、ほぼ新規開発に近い作業となった。
このように、EPICS は、画像処理のようなデバイスに依存しない抽象的な処理と、デバイスに依存する入出力処理が分離されたレイヤ化構造を持つ。このレイヤ構造に従ってソフトウェアを構成することは、新たなハードウェアへの対応を容易にするという観点から極めて重要である。
デバイス・サポートは初期化時にカメラの設定を記述したコンフィギュレーション・ファイルを読み込み、それに従ってハードウェアの初期化を行う。
ハードウェアがデータを取得する度に I/O イベント待ち状態にあるレコードをプロセスするための要求を発行する。
3.3

ユーザ・インタフェースの開発

上位計算機（CPU サーバ）上で実行される GUI
としては、EPICS の標準的な Display Manager の一つである Extensible Display Manager (EDM) [5] を使用した。図 2 に取得した生画像を表示した結果およびEDM により作成されたユーザ・インタフェースを示す。いずれも EPICS の標準的通信プロトコルである Channel Access (CA) により iocCore プログラムを実行する F3RP61 から画像データと解析結果を取得し、また Region of Interest (ROI) などのパラメータの設定を行う。EDM には一次元の配列データから二次元配列として表示するオブジェクトが用意されているため、画像表示を容易に行うことができる。

4.

基本動作の確認開発したソフトウェアの基本動作を確認するため、
図 1 に示した機器構成により取得した画像データと解析結果の表示を行った。画像入力には SONY 社製のモノクローム・カメラ（XC-HR50）を使用した。
まず 1 台のカメラを外部トリガモードで駆動することにより画像データを取得し、水平・鉛直両方向のプロファイル生成、ピーク・サーチ機能などの動作を確認した。さらに 2 台のカメラを配置し、これらを同一のフレーム・グラバーの異なるチャネルに接続して共通の外部トリガにより画像データを取得した結果、2 個のカメラで取得した画像に同期が取れていることを確認した。また、バックグラウンドを生画像から差し引く補正が正しく行われることについても確認することができた（図 3）。

5.

今後の課題と予定

5.1

パフォーマンスの改善

前節に述べた基本動作を確認する過程において、生画像取得のための外部トリガ入力のレート、画像処理の有無、GUI を実行する上位計算機への画像データの転送の有無などの諸条件を変えて CPU に掛かる負荷をモニタした。その結果、デバイス・サポートでの処理過程で必ずしも必要としないバッファ間でのデータ転送を行っていることが分かった。
また、レコード・サポートでの画像処理では、大きな配列データの処理にさらなる高速化を図る余地がある可能性など、幾つかの改善、再検討すべき点が見出された。これらの点を改良し、パフォーマンスの改善を図ることが今後の最優先の課題である。
5.2

既存の画像処理システムとのインタフェース

3 節に述べたように、本画像処理システムにおいて graphicsRecord は画像入力に用いるハードウェアに依らない汎用性を持つ。このため、既に開発された EPICS ベースの画像処理システムへ容易に応用することができる。そのためのインタフェースとして機能するソフト・デバイス・サポートの開発を予定している。これにより、graphicsRecord は標準の配列型レコードである waveformRecord を入力チャネルとして画像データを読み込むことができるようになり、本システム以外の既存システムへの応用が可能となる。
5.3

実システムでの運用

今回開発した画像処理システムは、2010 年秋から、KEK の電子・陽電子リニアック、フォトン・ファクトリーにおいてビーム診断のために試験的な運用を始めることが予定されている。

図 2：EDM により作成された GUI。画像データの左と下に添えられたスライダーは Region of Interest (ROI)を graphicasRecord に設定するために使用される。その下の左側のグラフは水平方向へのプロジェクション、右側のグラフは鉛直方向へのプロジェクションを示す。プロジェクションの原点は画像の左側上端に採られている。

図 3：バックグラウンドの補正。生画像（左上）からバックグランド（左下）から差し引いた画像が下図に示されている。

6.

まとめLinux を OS として採用した FA-M3 PLC 用の CPUモ ジ ュ ー ル （ F3RP61 ） と 画 像 入 力 モ ジ ュ ー ル（F3UM02）から構成される IOC による画像処理システムを開発した。既存の EPICS カスタム・レコードである graphicsRecord の修正およびデバイス・サポートの移植を行い、その動作を確認した。
外部トリガにより駆動されるカメラから入力された画像に対し、水平・鉛直両方向のプロファイルの作成、ピーク・サーチ、総光量の計算などの解析を行うことができることを確認した。また、バックグラ
ウンドの取得と、それによる生画像への補正が正しく行えることを確認した。
基本動作を確認する過程において、デバイス・サポートにおけるパフォーマンス改善の余地があることが判明した。また、レコード・サポートについても、処理の高速化を図る可能性が見出された。

本画像処理システムは、KEK において 2010 年秋の電子・陽電子リニアック、フォトン・ファクトリーの運転に投入され、ビーム診断に利用される予定である。

参考文献[1] http://www.yokogawa.co.jp/rtos/rtos-index-ja.htm[2] http://www.aps.anl.gov/epics/[3] J. Odagiri et al., “Application of EPICS on F3RP61 toAccelerator Control”, Proc. of the 2009 International
Conference on Accelerator and Large Experimental Physics
Control Systems (ICALEPCS2009), Kobe, Japan, Oct. 1216, 2009.
[4] http://accelconf.web.cern.ch/accelconf/ica03/PAPERS/
WP579.PDF[5] http://www.aps.anl.gov/epics/docs/USPAS2007/
lectures/EDM.odp