佐藤先生
産総研 安藤です
EclipseおよびJavaについてはあまり詳しくないので、
そちらに詳しい方にぜひともアドバイスを頂きたいのですが、
基本的な考え方として、処理結果をRTSystemEditor (RTSE) 側で
受け取らなければならないので、RTSEにもInPortまたは
それに相当するものを持たせる必要があります。
考えられる方法はいくつかあります。
1.コンポーネントを1個持たせる。RTCには例えばCameraImage
方のデータポートが幾つかあり、画像を取得したいと思う
コンポーネントのOutPortに接続して画像を取得する。
2.RTSEにデータポートだけ持たせる。画像を取得するのに
RTCそのものは必要なくデータポートだけあればいい。
したがって、InPortオブジェクトだけを
持たせてこれを画像取得したRTCのOutPortに取得しデータを貰う。
3.InPortCdrインターフェースだけ持たせる。データだけをもらうのであれば
InPortのインターフェースであるInPortCdrだけでも画像は取得できる。
これを対象とするOutPortの接続する際のConnectorProfileに代入して
OutPort::connect() 関数を呼んでやれば画像が送られてくる。
※もしかすると、こちら側がProvided Serviceなので、RTCのポートの
※構造上でいないかもしれません。逆だと問題なくできるのですが。。。
以上の方法のいずれかで画像が取得できるようになったら、
それをRTSEのエディタ上のコンポーネントアイコン内に
描画すればご希望のことが出来るかと思います。
2011年10月12日15:09 Shunji Satoh :
> 電気通信大学の佐藤と申します.いつもお世話になっております.
>
> System Editor では各コンポーネントが均一色(状態に応じて青や赤など)の長
> 方形で表示されていますが,この長方形をどうにかして画像にしたいと考えてい
> ます.具体的には OpenCV との組み合わせを考えおり,画像処理結果をコンポー
> ネント内に直接描画したいと思っています.が,調査が思うように進みません.
> 解決策を教示いただければ幸いです.
>
> たとえば,
> http://openrtm.org/openrtm/ja/content/cvflip%E9%96%A2%E6%95%B0%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6-0
> では,画像を左右反転させる cvFlip 関数のモジュール化が紹介されています.
> モジュール Flip によって左右反転した結果は,「別途」,表示用コンポーネン
> トに接続することで確認することができます.
>
> 私がやりたいことは,flip による反転結果の画像を,System Editor 内に直接
> 表示することです.現在は緑色の四角形で,各コンポーネントが表示されていま
> すが,緑の四角形ではなくコンポーネントの状態(flip した結果の画像)を
> System Editor 内で直接可視化できれば,とても便利だと思っています.
>
> プログラムソースを追いかけて,refreshVisuals() あたりを書き換えれば可能
> だと想像していますが,そもそもこの考え自体が適切かどうかもわかりません.
> アイディアや関連ドキュメントなどありましたら教えていただければと思います.
>
> ----
> 四角形の描画は Draw2D を用いている.
> コンポーネントの状態に応じて色を変更する関数は,refreshVisuals()
> おそらくは,setForegroundColor() の周辺を修正すれば所望の機能が達成でき
> ると考えていますが,どうすれば画像を表示できるのか見当がついていません.
> ----
>
> 以上よろしくお願いします.
>
>
>
> _______________________________________________
> openrtm-users mailing list
> openrtm-users@openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users
>
電気通信大学の佐藤と申します.いつもお世話になっております.
System Editor では各コンポーネントが均一色(状態に応じて青や赤など)の長
方形で表示されていますが,この長方形をどうにかして画像にしたいと考えてい
ます.具体的には OpenCV との組み合わせを考えおり,画像処理結果をコンポー
ネント内に直接描画したいと思っています.が,調査が思うように進みません.
解決策を教示いただければ幸いです.
たとえば,
http://openrtm.org/openrtm/ja/content/cvflip%E9%96%A2%E6%95%B0%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6-0
では,画像を左右反転させる cvFlip 関数のモジュール化が紹介されています.
モジュール Flip によって左右反転した結果は,「別途」,表示用コンポーネン
トに接続することで確認することができます.
私がやりたいことは,flip による反転結果の画像を,System Editor 内に直接
表示することです.現在は緑色の四角形で,各コンポーネントが表示されていま
すが,緑の四角形ではなくコンポーネントの状態(flip した結果の画像)を
System Editor 内で直接可視化できれば,とても便利だと思っています.
プログラムソースを追いかけて,refreshVisuals() あたりを書き換えれば可能
だと想像していますが,そもそもこの考え自体が適切かどうかもわかりません.
アイディアや関連ドキュメントなどありましたら教えていただければと思います.
----
四角形の描画は Draw2D を用いている.
コンポーネントの状態に応じて色を変更する関数は,refreshVisuals()
おそらくは,setForegroundColor() の周辺を修正すれば所望の機能が達成でき
ると考えていますが,どうすれば画像を表示できるのか見当がついていません.
----
以上よろしくお願いします.
_______________________________________________
openrtm-users mailing list
openrtm-users@openrtm.org
http://www.openrtm.org/mailman/listinfo/openrtm-users