什么是cv :: setTo函数

use*_*254 6 c++ opencv

我在C++中使用OpenCV编写代码,此代码使用函数setTo.基本上,它用作:

cv::Mat xx; //prefedined and has some values
cv::Mat yy; // initially empty

yy.setTo(0,xx);
Run Code Online (Sandbox Code Playgroud)

所以你能解释一下这个集合在这里意味着什么吗?是否将所有零值都放在yy中,或者将xx设置为非零,0将xx设置为零?

Boa*_*oaz 19

yy.setTo(0) 将所有像素设置为0.

yy.setTo(0, xx)将xx中具有值为1的相应像素的所有像素设置Mat为0.

例:

yy =
2 2 2
2 2 2
2 2 2

xx =
0 0 0
0 1 0
0 0 0

yy.setTo(0, xx) =>

yy = 
2 2 2
2 0 2
2 2 2
Run Code Online (Sandbox Code Playgroud)

  • 校正:第二种形式将所有具有xx Mat中具有_non-zero_值的对应像素的像素设置为0. (5认同)