我在Windows 7上使用OpenCV 2.2.
我正在制作一个掩码,其中所有行都是1到第400行,0是超出该行的行.我使用cv :: Mat :: ones()初始化掩码,并想知道将行超过400的最有效方法是什么.我可以使用for循环但是想知道是否有更高效,更整洁的方法它.
谢谢,彼得.
有多种方法可以做到:
首先是子矩阵
Mat bigImg(width, height, CV_8UC3);
bigImg(Rect(0,0,width, height/2)) = Scalar::all(1); // upper half ones
bigImg(Rect(0,height/2,width, height/2)) = Scalar::all(0); // lower half zeros
Run Code Online (Sandbox Code Playgroud)
或者您可以使用RowRange和ColRange获得相同的效果
bigImg(rowRange, colRange) = Scalar::all(n);
Run Code Online (Sandbox Code Playgroud)
只需查看有关如何使用范围的文档
| 归档时间: |
|
| 查看次数: |
2509 次 |
| 最近记录: |