OpenCV 图形API(71)图像与通道拼接函数-----从图像(GMat)中裁剪出一个矩形区域的操作函数 crop()

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

裁剪一个2D矩阵。

该函数根据给定的 cv::Rect 裁剪矩阵。

输出矩阵必须与输入矩阵具有相同的深度,大小由给定的矩形大小指定。

注意:

函数的文字ID是 "org.opencv.core.transform.crop"

函数原型

cpp 复制代码
GMat cv::gapi::crop 
(
 	const GMat &  	src,
	const Rect &  	rect 
) 	

参数

  • 参数 src 输入矩阵。
  • 参数 rect 用于裁剪矩阵的矩形区域。

代码示例

cpp 复制代码
#include <opencv2/gapi.hpp>
#include <opencv2/gapi/core.hpp>
#include <opencv2/opencv.hpp>

int main()
{
    // 创建一个400x400的测试图像
    cv::Mat img = cv::imread( "/media/dingxin/data/study/OpenCV/sources/images/Lenna.png");
   
    // 定义要裁剪的矩形区域
    cv::Rect rect( 100, 100, 250, 250 );  // x, y, width, height

    // 将cv::Mat转换为GMat
    cv::GMat in;
    auto cropped = cv::gapi::crop( in, rect );

    // 定义并编译G-API图
    cv::GComputation crop_comp( cv::GIn( in ), cv::GOut( cropped ) );
    cv::Mat cropped_img;

    // 应用G-API图到输入图像
    crop_comp.apply( cv::gin( img ), cv::gout( cropped_img ) );

    // 显示原始和裁剪后的图像
    cv::imshow( "Original Image", img );
    cv::imshow( "Cropped Image", cropped_img );
    cv::waitKey();

    return 0;
}

运行结果

相关推荐
Fuliy9628 分钟前
【自然语言处理】——基于与训练模型的方法【复习篇1】
人工智能·自然语言处理
项目管理打工人29 分钟前
高端装备制造企业如何选择适配的项目管理系统提升项目执行效率?附选型案例
大数据·人工智能·驱动开发·科技·硬件工程·团队开发·制造
江苏泊苏系统集成有限公司31 分钟前
集成电路制造设备防震基座选型指南:为稳定护航-江苏泊苏系统集成有限公司
人工智能·深度学习·目标检测·机器学习·制造·材料工程·精益工程
吹风看太阳32 分钟前
机器学习03-色彩空间:RGB、HSV、HLS
人工智能·机器学习
Ronin-Lotus1 小时前
深度学习篇---Pytorch框架下OC-SORT实现
人工智能·pytorch·python·深度学习·oc-sort
雾迟sec1 小时前
TensorFlow 的基本概念和使用场景
人工智能·python·tensorflow
Blossom.1182 小时前
人工智能在智能健康监测中的创新应用与未来趋势
java·人工智能·深度学习·机器学习·语音识别
GIS小天2 小时前
AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月31日第94弹
人工智能·算法·机器学习·彩票
星辰生活说3 小时前
理想树图书:以科技赋能教育,开启AI时代自主学习新范式
人工智能·科技·学习
说私域3 小时前
定制开发开源AI智能名片S2B2C商城小程序:数字营销时代的话语权重构
人工智能·小程序·开源·零售