2011-06-29 18 views

答えて

12
  1. は、任意の計算はこの領域のみを介して行われている意味します。

    image.ROI = new Rectangle(x、Y、Width、Height);

  2. は、 "TYPE" は、グレースケール

    用カラーグレー

TYPE平均= image.GetAverage(画像)に対する画像依存BGRあるROIの平均を計算します。

  1. イメージROIをリセットしたら、イメージ全体をもう一度見ることができます。

すべてのプロセスは、各ピクセルをループし、その値を加算して合計ピクセル数で除算します。自分でコードを書くのを忘れてしまいます。

おかげで クリス

1

私はOpenCVのの新しいバージョンが(2.3以降)のROIを行うための別の方法を持っていると思います。ここでは、マニュアルが言うことだ。ここでは

// create a new 320x240 image 
Mat img(Size(320,240),CV_8UC3); 
// select a ROI 
Mat roi(img, Rect(10,10,100,100)); 
// fill the ROI with (0,255,0) (which is green in RGB space); 
// the original 320x240 image will be modified 
roi = Scalar(0,255,0); 

は、私は1つのインスタンスでやったことです:

// adding a header on top of image 
Mat dst = Mat::zeros(frame.rows + HEADER_HEIGHT, frame.cols, CV_8UC3); 
// frame portion 
Mat roi(dst, Rect(0, HEADER_HEIGHT-1, frame.cols, frame.rows)); 
// header portion 
Mat head(dst, Rect(0,0,frame.cols, HEADER_HEIGHT)); 
// zeros to clear the header portion 
Mat zhead = Mat::zeros(head.rows, head.cols, CV_8UC3); 

frame.copyTo(roi); // copy new image to image portion of dst 
zhead.copyTo(head); // clear the header portion of dst 

あなたの平均を計算するサブフレーム(私の例ではroihead)のいずれかを使用することができます領域。関心領域を移動させる機能はadjustROIであり、使用する可能性がある関数locateROIもあります。

関連する問題