opencv如何把一个矩阵不同列分离开_【opencv基础】OpenCV从Mat中提取某些行或列

本文介绍了如何在OpenCV中使用`colRange`函数提取矩阵的特定列,并提供了`align_mean`函数示例,该函数根据给定参数调整矩阵列。此外,还探讨了如何在初始化阶段间隔提取数据。
摘要由CSDN通过智能技术生成

前言

Opencv中可以调用函数提取某些连续的行或者列,Mat的rowRange和colRange可以获取某些范围内行或列的指针;

这两个函数返回的是指向原矩阵内部位置的指针,类似于浅拷贝;

example

cv::Mat align_mean(cv::Mat mean, cv::Rect facebox, float scaling_x=1.0f, float scaling_y=1.0f, float translation_x=0.0f, float translation_y=0.0f)

{

using cv::Mat;

// Initial estimate x_0: Center the mean face at the [-0.5, 0.5] x [-0.5, 0.5] square (assuming the face-box is that square)

// More precise: Take the mean as it is (assume it is in a space [-0.5, 0.5] x [-0.5, 0.5]), and just place it in the face-box as

// if the box is [-0.5, 0.5] x [-0.5, 0.5]. (i.e. the mean coordinates get upscaled)

Mat aligned_mean = mean.clone();

Mat aligned_mean_x = aligned_mean.colRange(, aligned_mean.cols / );

Mat aligned_mean_y = aligned_mean.colRange(aligned_mean.cols / , aligned_mean.cols);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值