• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:openCVのエラー)

openCVのエラー

このQ&Aのポイント
  • openCVの関数をOpenGLと組み合わせたプログラムで使用する際に、不正なチャンネル数のエラーが発生しています。
  • エラーが発生したプログラムでは、glutDisplayFuncとglutIdleFuncの中でcvCvtColor関数を使用しています。
  • openCV単体では正常に動作することが確認されていますが、OpenGLと組み合わせるとエラーが発生します。

質問者が選んだベストアンサー

  • ベストアンサー
  • t0m0_Lab
  • ベストアンサー率100% (1/1)
回答No.1

もう解決してしまわれたかな・・・? Bad number of channels (Incorrect number of channels for this conversion code) 訳すと 「チャンネル数が間違っています(この変換コードに合っていません)」 という感じになります。これは cvCvtColor(frameImage, hsvImage, CV_BGR2HSV); のframeImageかhsvImageのチャンネル数が変換コード(CV_BGR2HSV)に合ってないっていうことです。チャンネル数はRGBなら3色なので3、グレースケールなら1色なので1、というような感じになります。frameImageとhsvImageを IplImage* frameImage = cvCreateImage(cvSize(640, 480), IPL_DEPTH_8U, 3); IplImage* hsvImage = cvCreateImage(cvSize(640, 480), IPL_DEPTH_8U, 3);                                              ↑ここが重要 というように定義したかと思いますが、この最後の引数が3以外になってたりしてないですか?このあたりのソースコードを見てもらえると原因が分かるかなあと思います。参考までに・・・

vjpo
質問者

お礼

実はすでに解決していたのですが・・・ まさにそのとおりでした!!!! おもしろいくらいそのとおりでしたwww でも意味はわかっていなかったので、 勉強になりました!!ありがとうございました!!!

関連するQ&A

専門家に質問してみよう