Renesas Community
Renesas Community
  • User
    Join or sign in
  • Site
  • Search Community
  • User
  • Renesas Engineering Community
  • FAQ
  • HELP
  • More
  • Cancel
がじぇっとるねさすコミュニティ
がじぇっとるねさすコミュニティ
IDE for GR フォーラム OpenCVの記述方法お教えください
  • Forums
  • Files
  • がじぇっとるねさす ゆーざー会 - Wiki
  • Tags
  • More
  • Cancel
  • New

 

 GR-SAKURA

 GR-KURUMI

 GR-COTTON

 GR-CITRUS

 GR-PEACH

 GR-KAEDE

 GR-ADZUKI

 GR-LYCHEE

 GR-ROSE

 GR-MANGO(*)

 SNShield

 Web Compiler

 IDE for GR

 TOPPERS関連

 女子美コラボ

 その他

 ※プロデューサミーティング中

 作り方使い方資料

 イベント関連

 作品記事

 体験記事

 その他

 

 ライブラリ

 ツール

 その他・過去ファイル

  • Replies 4 replies
  • Subscribers 281 subscribers
  • Views 8921 views
  • Users 0 members are here
Options
  • Share
  • More
  • Cancel
Related Tags
  • GR-ADZUKI
  • gr-citrus
  • GR-LYCHEE
  • GR-PEAC
  • gr-sakura
  • I2c
  • IDE for GR
  • mac
  • MP3
Related

OpenCVの記述方法お教えください

hero
hero over 5 years ago

Ver1.02になり
OpenCVができるようになり
OpenCVの勉強始めました。
検索すると色々とサンプルプログラムが出てきますが
IDE for GRにあるスケッチの例の記述とくらべると
少し異なるようですが
記述の参考になるサイトや資料などありましたらお教えください


 

  • Reply
  • Cancel
  • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 5 years ago

    IDE for GRの活用ありがとうございます。具体的に異なる点はどんなところですかね?

    私自身は以下の本「実践OpenCV3 for C++画像映像情報処理」で勉強をしつつ、今回のサンプルの参考にさせていただきました。回し者ではないですが、非常に分かりやすい解説本でした。

    http://shop.tsutaya.co.jp/book/product/9784877833800/

    基本的にGR-PEACH用のOpenCVは99%はGithubソースから構築されてますので、Version 3.2であれば基本的に一般に公開されているサンプルは動くのですが、

    https://github.com/d-kato/opencv-lib

     

    RZ/A1の仕様上「カメラ入力はYCbCr422」「JPEG圧縮はYCbCr422」である点が、一般のサンプルとIDE for GRのサンプル記述が異なってくることにつながっていると思っているような気がしてます。GR-PEACH/LYCHEEではYCbCr422→BGR888(あるいはGRAY)→YCbCrが必須の流れになり、一般のサンプルには不要な変換です。サンプルではすぐに結果が見える形にしたいため、PCに表示/SDに保存のどちらかになると思いますが、そもそも一般のサンプル(Windows用とか)ではimshow一行でPCに表示できます。

    OpenCVでの画像処理のサンプルの多くは例えばPNG画像などを読み込んで、BGR888で行われてますが、GR-PEACHの場合YCbCr422のため、BGR888かGRAYに変換します。しかし、BGR888はメモリ消費量が大きく(単純に640x480だと、画像データだけで900Kバイト)、OpenCVのAPIでメモリ不足のエラーになることが多かったです。このため、以下の記載はGR-PEACH/LYCHEE特有といえば特有で、一般のサンプルにはほとんどない処理です。

    Mat img_raw(IMAGE_VW, IMAGE_HW, CV_8UC2, camera.getImageAdr());

    cvtColor(img_raw, src, COLOR_YUV2GRAY_YUYV); // //covert from YUV to GRAY

    ちなみに、今回のサンプル構築の際に苦労したのはBGR888/GRAYからYCbCr422にするOpenCV変換はVersion3.2の時点では存在しなかったことです。YCbCr444はできます。cvtColorの処理結果を、J-LINKエミュレータを使ってメモリを見た結果がそうでした。このため、CameraライブラリにJPEG変換の際、ソフトでYCbCr422に変換する処理を追加してます。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • hero
    hero over 5 years ago in reply to Okamiya Yuuki
    早速のコメントありがとうございます。
    書籍は買おうと思います。

    YCbCr422とか無視して出力してました。
    ※とりあえず動いてます。

    この説明で
    サンプルプログラムのcannyは3回変換してたのが理解できました。

    まずは見てみます。

    ☆ついでにもう一つ質問させてください
    peachでコンポジット入力する設定にするには
    どこで設定すればいいのでしょうか?
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 5 years ago in reply to hero
    コンポジット入力の場合は、以下Cameraオブジェクト生成時の第3引数に"0"を指定してください。
    Camera camera(640, 480, 0); // specify VIDEO_CVBS in case using CVBS
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • hero
    hero over 5 years ago
    スケッチの例の記述との違い
    CV;;がなぜいらないのかでした

    using namespace cv;

    これを書いてたから
    書かなくてよかったのですね。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
サイト使用条件
プライバシーポリシー
お問い合わせ
© 2010-2022 Renesas Electronics Corporation. All rights reserved.