- #include
- #include
- #include "opencv2/opencv.hpp"
-
- int main(int argc, char *argv[]){
- cv::Mat src = cv::imread("../test1.jpg");
- printf("row: %d, col: %d\n", src.rows, src.cols);
-
- cv::Rect rect(50, 50, 250, 250); // 划定区域
- cv::Mat roi = src(rect);
-
- // printf("Size:(%d,%d)\n", rect.size().height, rect.size().width);
- std::cout << "roi_size:" << rect.size() << std::endl; // 返回rect的尺寸
- std::cout << "roi_area:" << rect.area() << std::endl; // 返回rect的面积
- std::cout << "roi_tl_point:" << rect.tl() << std::endl; // 返回rect的左上顶点的坐标
- std::cout << "roi_br_point:" << rect.br() << std::endl; // 返回rect的右下顶点的坐标
- std::cout << "roi_width:" << rect.width << std::endl; // 返回rect的宽度
- std::cout << "roi_height:" << rect.height << std::endl; // 回rect的高度
-
- cv::imshow("src", src); // 显示图像
- cv::imshow("roi", roi);
- cv::waitKey(0);
- return 0;
- }
- cmake_minimum_required(VERSION 3.24) # 指定 cmake的 最小版本
- project(test) # 设置项目名称
- find_package(Opencv REQUIRED)
- add_executable(main_demo main.cpp) # 生成可执行文件
- target_link_libraries(main_demo ${OpenCV_LIBS} ) # 设置target需要链接的库

①主要掌握cv::Rect类的用法
②在Rect rect(50, 50, 250, 250)中,前两个参数50、50表示roi区域的左上角坐标(x, y);后两个参数250、250表示roi区域的宽和高(w, h),并不表示roi区域的右下角坐标。