qt图像实现伽马变换_使用仿射变换实现图像裁剪和letterbox变换

本文探讨了图像处理中的仿射变换,包括平移、旋转、缩放和切变。重点介绍了Letterbox变换在保持纵横比前提下的resize操作,以及如何使用OpenCV实现这一变换。此外,还讨论了如何结合裁剪和Letterbox变换来适应目标检测任务,并指出图像仿射变换在图像增强和计算效率上的优势。
摘要由CSDN通过智能技术生成

654bc8cdbd946d16072591aa2c9671bb.png

从几何上来讲,图像可以被理解为像素的二维平面,平面上最简单的变换是线性变换,在图像上我们通常叫它们为仿射变换,仿射变换通常由一个2x3的矩阵,之所以用2x3的矩阵,而不由2x2方阵来描述,是考虑到了平移,任意仿射变换都可以分解为以下四类变换的叠加:平移,放缩(尺度变换),旋转和切变。

更一般的,在图像几何变换中我们更常用的一般是旋转,裁剪和resize,它们都是仿射变换的具体类型。在用深度学习做目标检测的时候,我们通常需要把检测框检测到的物体,裁剪出来,如果检测框有旋转,我们还需要旋转检测框,并缩放到同一尺寸。这里就不得不提到lettebox变换了,这个一个被忽视的很重要的变换,我们在数据集上训练网络的时候,通常需要把数据集变换到同一尺寸,但是通常的resize函数会破环图像的纵横比,aspect ratio,做过检测任务的同学都知道,aspect ratio对于检测的效果非常重要,letterbox就是在保持纵横比的前提下对图像做resize,先resize然后按需要在周围pad上0像素。

使用opencv来实现letterbox变换的代码如下:

def cv2_letterbox_image(image, 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值