3

私はOpenCVでアクティブコンターアルゴリズムを開発しています。勾配-V[I(x、y)]の負の値を取る必要があるステップの1つで、この操作を実行するにはどうすればよいですか。これを試しました。

//load image (type CV_32FC3) and calculate gradient
neg = cv::Mat(gradient.cols,gradient.rows,CV_32FC3,cv::Scalar::all(-1));
gradient.mul(neg,1);
//to verify negatives value
double minVal, maxVal;
int maxIdx[3];
cv::minMaxIdx(gradient.reshape(1,0),&minVal,&maxVal,0,maxIdx);
std::cout << maxVal << " , " << minVal << std::endl;

しかし、印刷すると10^-38の範囲の値しか得られません。ありがとうございました。

4

1 に答える 1

0

opencv::mul(gradient,neg,gradient,1) は同じことをしますか?

しかし、gradient = gradient.mul(neg) にする必要があるかもしれません。私はopencvをインストールしていないので、チェックできません。

于 2012-11-11T06:06:17.690 に答える