openCV-矩()函数中的参数
OpenCV - parameters in moments() function
c 函数是:
时刻矩(inputarray阵列,bool binaryimage = false)
我理解的第一个是,因为第二个说:
二进制图 - 如果是真的,则所有非零图像像素均被视为 1。该参数仅用于图像。
这到底是什么意思?我说仅对于二进制图像是正确的,而对于非二进制图像是错误的?在我的应用程序中,我使用二进制图像来计算简单的时刻。
这意味着如果此值是正确的,则您插入的图像将被视为二进制图像,即使您的值大于1,它们也会被视为1。
i(x,y)> 0 = 1
i(x,y)== 0 = 0
如果您插入的值比时刻中的值是错误的
例如,假设您有以下3x3图像:
100 0 10
10 0 1
0 0 0
m00是图像的区域:
如果标志是正确的,那么我们有4个非零的像素,值将为4个。
如果标志是错误的,我们将拥有100 10 10 1 = 121
什么时候应该使用什么?
可以说,我们的图像中有一个斑点。如果我们将图像视为二进制图像,那么瞬间将为我们提供有关斑点的空间信息。例如,M01/M00和M10/M00将为UST提供对象的质量中心。
但是,如果我们将图像视为二进制,那么我们比时刻会给我们纹理/颜色信息。例如m00/(斑点中的像素数)=斑点的平均颜色。
相关文章:
- 将可变参数函数的参数封装在类实例中
- QML 使用带有参数C++函数
- 使用可变参数函数作为模板参数
- 如何在C++中伪造虚拟可变参数函数模板?
- 为什么可变参数函数不适用于模板
- C++ std::functional 中的可变参数函数模板
- 可变参数函数指针的定义对于VxWorks spyLib来说不清楚
- 使用可变参数函数覆盖具有不同函数签名的虚函数
- 考虑引用和常量的可变参数函数包装器
- 使用可变参数函数将整数和/或整数数组放入单个 int 数组中
- 在可变参数函数中转发特定范围的参数
- 通过引用传递参数;函数返回类型是否必须为 VOID?
- 使用带有一个参数函数的递归找到数字的平方
- 可变参数函数模板不能很好地使用 std::function 作为参数
- 多个可变参数函数的单个模板参数包?
- 参数数据类型未知的可变参数函数
- 可变参数函数参数包扩展
- 使用模板可变参数函数将多个参数传递给另一个函数
- 对可变参数函数的递归调用的链接器错误
- 通过像printf这样的可变参数函数传递一个带有常量字符*转换函数的类