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

配列のエラーが出る(opencv)

このQ&Aのポイント
  • 配列のエラーが出て困っています。
  • ルックアップテーブルを作成している際にエラーが発生しています。
  • 調査しても解決策が見つからず困っています。

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

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

とりあえず, 配列の添え字が想定した範囲にあるかどうか確認してみてはどうでしょうか. と書いておくけど, ・for(int j = 0; j <680 ; j++) は明らかに変 とか ・実は S や V は 255 まであり得る とかいうオチだったりして. あと, #1 を素直に受け取るなら添え字は ( i * image5->width + j) * 3 + 0 よりも i * image5->widthStep + j * 3 + 0 の方が自然じゃないだろうか.

tototohihihi3
質問者

お礼

回答ありがとうございました. HSVのところを256に変更してみたら,エラーなく動かすことができました!助かりました!

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

関係ないかもしれんけど cvCvtColor(image3, image5, CV_BGR2HSV); IplImage* image5 = cvCreateImage(cvSize(640, 480), IPL_DEPTH_8U, 3); の部分, 何を期待しているんだろう.

tototohihihi3
質問者

補足

こちらのミスです.反対に書いてしまいました. 指摘ありがとうございます.

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

http://opencv.jp/opencv-1.1.0/document/opencvref_cxcore_basic.html#decl_IplImage > int widthStep; /* アライメントが調整された画像の行のバイトサイズ */ ということで、widthStepまでチャンネル数倍する必要はありません

tototohihihi3
質問者

補足

ありがとうございます. widthStepのところをwidthに変更してみたのですが,途中までうまくいっているのですが,止まるってしまいました.『○○○の 0x000000013f2c6f69 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0xffffffffffffffff を読み込み中にアクセス違反が発生しました。』というエラーがまた出てきます. よろしければ,回答よろしくお願いします. if((LUT[(unsigned char)(image5->imageData[( i * image5->width + j) * 3 + 0])] [(unsigned char)(image5->imageData[( i * image5->width + j) * 3 + 1])] [(unsigned char)(image5->imageData[( i * image5->width + j) * 3 + 2])]) == 1){

関連するQ&A