3

我正在 OpenCV 中开发一个主动轮廓算法,在其中一个步骤中我需要对梯度负值 -V[I(x,y)] ...我该如何执行此操作,我已经尝试过:

//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.mul(neg)。我没有安装opencv,所以无法检查。

于 2012-11-11T06:06:17.690 回答