我是OpenCV的新手(两天前开始使用它),我正在尝试从Kinect获得的深度图像中剪切手部图像,我需要手部图像进行手势识别.我把图像作为一种cv::Mat类型.我的问题是:
cv::Mat,cvMat以便我可以使用cvGetSubRect方法来获得感兴趣的区域?cv::Mat我有什么方法可以用来获取图像的一部分吗?我想使用,IplImage但我读到cv::Mat了现在首选的方式.
Mic*_*val 37
您可以在以下位置使用重载函数调用运算符cv::Mat:
cv::Mat img = ...;
cv::Mat subImg = img(cv::Range(0, 100), cv::Range(0, 100));
Run Code Online (Sandbox Code Playgroud)
查看OpenCV文档以获取更多信息以及需要a的重载函数cv::Rect.请注意,使用这种切片形式会创建一个新的矩阵标头,但不会复制数据.
Ang*_*ano 11
也许另一种方法可能是:
//Create the rectangle
cv::Rect roi(10, 20, 100, 50);
//Create the cv::Mat with the ROI you need, where "image" is the cv::Mat you want to extract the ROI from
cv::Mat image_roi = image(roi)
Run Code Online (Sandbox Code Playgroud)
我希望这可以提供帮助.
| 归档时间: |
|
| 查看次数: |
62458 次 |
| 最近记录: |